C. Izu, Violetta Lonati, Anna Morpurgo, Mario E. Sánchez
{"title":"CS1程序处理数据系列的目标清单","authors":"C. Izu, Violetta Lonati, Anna Morpurgo, Mario E. Sánchez","doi":"10.1109/FIE49875.2021.9637360","DOIUrl":null,"url":null,"abstract":"This Research Full Paper presents a study of programming strategies to manipulate data series presented in a range of CS1 courses. We collected and analyzed programs from multiple institutions in different countries, covering a range of programming languages (Python, Java, Go, and C). We started from a list of core strategies (that is, strategies that process the series as a whole, e.g., goals/plans for counting, linear search, etc.) drawn from the literature. We then expanded and refined the list, based on the analysis of the collected programs. We used a mixed method: we first analyzed the programs qualitatively to identify the recurring goals; then we conducted a quantitative analysis of the frequencies of goals. The result of the qualitative analysis is a data-driven list of basic goals that are required in order to cover the input, storage, and processing of data series, independently of the chosen programming language. The list has 13 well-separated goals (no goal in the list is a sub-goal of another one) that share a similar structure and the same level of abstraction. The quantitative analysis shows that the category of core goals is, not surprisingly, the most frequent one; around half of the programs contain a core goal, with total, count, and linear search being the most recurrent ones. Besides them, goals related to input and storage play a significant role as well: taken together, they occur with a frequency similar to that of core goals. The list of goals, if used to select or design practical exercises and teaching materials, can be a valid reference for CS1 instructors who want to foster the acquisition of strategic knowledge by their students. Implication for teaching and learning are discussed.","PeriodicalId":408497,"journal":{"name":"2021 IEEE Frontiers in Education Conference (FIE)","volume":"06 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2021-10-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"An Inventory of Goals from CS1 Programs Processing a Data Series\",\"authors\":\"C. Izu, Violetta Lonati, Anna Morpurgo, Mario E. Sánchez\",\"doi\":\"10.1109/FIE49875.2021.9637360\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This Research Full Paper presents a study of programming strategies to manipulate data series presented in a range of CS1 courses. We collected and analyzed programs from multiple institutions in different countries, covering a range of programming languages (Python, Java, Go, and C). We started from a list of core strategies (that is, strategies that process the series as a whole, e.g., goals/plans for counting, linear search, etc.) drawn from the literature. We then expanded and refined the list, based on the analysis of the collected programs. We used a mixed method: we first analyzed the programs qualitatively to identify the recurring goals; then we conducted a quantitative analysis of the frequencies of goals. The result of the qualitative analysis is a data-driven list of basic goals that are required in order to cover the input, storage, and processing of data series, independently of the chosen programming language. The list has 13 well-separated goals (no goal in the list is a sub-goal of another one) that share a similar structure and the same level of abstraction. The quantitative analysis shows that the category of core goals is, not surprisingly, the most frequent one; around half of the programs contain a core goal, with total, count, and linear search being the most recurrent ones. Besides them, goals related to input and storage play a significant role as well: taken together, they occur with a frequency similar to that of core goals. The list of goals, if used to select or design practical exercises and teaching materials, can be a valid reference for CS1 instructors who want to foster the acquisition of strategic knowledge by their students. Implication for teaching and learning are discussed.\",\"PeriodicalId\":408497,\"journal\":{\"name\":\"2021 IEEE Frontiers in Education Conference (FIE)\",\"volume\":\"06 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2021-10-13\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2021 IEEE Frontiers in Education Conference (FIE)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/FIE49875.2021.9637360\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2021 IEEE Frontiers in Education Conference (FIE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/FIE49875.2021.9637360","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
An Inventory of Goals from CS1 Programs Processing a Data Series
This Research Full Paper presents a study of programming strategies to manipulate data series presented in a range of CS1 courses. We collected and analyzed programs from multiple institutions in different countries, covering a range of programming languages (Python, Java, Go, and C). We started from a list of core strategies (that is, strategies that process the series as a whole, e.g., goals/plans for counting, linear search, etc.) drawn from the literature. We then expanded and refined the list, based on the analysis of the collected programs. We used a mixed method: we first analyzed the programs qualitatively to identify the recurring goals; then we conducted a quantitative analysis of the frequencies of goals. The result of the qualitative analysis is a data-driven list of basic goals that are required in order to cover the input, storage, and processing of data series, independently of the chosen programming language. The list has 13 well-separated goals (no goal in the list is a sub-goal of another one) that share a similar structure and the same level of abstraction. The quantitative analysis shows that the category of core goals is, not surprisingly, the most frequent one; around half of the programs contain a core goal, with total, count, and linear search being the most recurrent ones. Besides them, goals related to input and storage play a significant role as well: taken together, they occur with a frequency similar to that of core goals. The list of goals, if used to select or design practical exercises and teaching materials, can be a valid reference for CS1 instructors who want to foster the acquisition of strategic knowledge by their students. Implication for teaching and learning are discussed.