ABSTRACT
On a growing number of campuses, data science programs offer introductory courses that include a non-trivial amount of programming. The content of such courses overlaps that of traditional computer science introductory courses, but neither course subsumes the other. This talk argues that a common introductory course that covers both data science and data structures supports students and provides curricular flexibility, while also bringing social impacts of computing into the early curriculum. We’ll discuss both the design and implementation of such a course, including the programming language features that support it and the educational research that informs it.
- [n.d.]. CPO: the Pyret Programming Environment. http://code.pyret.org.Google Scholar
- [n.d.]. CSCI 0111–Computing Foundations: Data (course at Brown University). https://cs.brown.edu/courses/csci0111/.Google Scholar
- [n.d.]. Pyret Programming Language. https://www.pyret.org/. Accessed: 2022-05-6.Google Scholar
- [n.d.]. Racket Programming Language. https://racket-lang.org/.Google Scholar
- Francisco Enrique Vicente Castro and Kathi Fisler. 2016. On the Interplay Between Bottom-Up and Datatype-Driven Program Design. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education(SIGCSE ’16). ACM, New York, NY, USA, 205–210. https://doi.org/10.1145/2839509.2844574Google ScholarDigital Library
- Francisco Enrique Vicente Castro and Kathi Fisler. 2020. Qualitative Analyses of Movements Between Task-level and Code-level Thinking of Novice Programmers. In Proceedings of the 51st ACM Technical Symposium on Computer Science Education(SIGCSE ’20). Association for Computing Machinery, Portland, OR, USA, 487–493. https://doi.org/10.1145/3328778.3366847Google ScholarDigital Library
- Tristan Dyer, Tim Nelson, Kathi Fisler, and Shriram Krishnamurthi. 2022. Applying Cognitive Principles to Model-Finding Output: The Positive Value of Negative Information. In ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications.Google ScholarDigital Library
- Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, and Shriram Krishnamurthi. 2001. How to Design Programs. MIT Press. http://www.htdp.org/Google Scholar
- Kathi Fisler and Francisco Enrique Vicente Castro. 2017. Sometimes, Rainfall Accumulates: Talk-Alouds with Novice Functional Programmers. In Proceedings of the 2017 ACM Conference on International Computing Education Research(ICER ’17). ACM, New York, NY, USA, 12–20. https://doi.org/10.1145/3105726.3106183Google ScholarDigital Library
- Kathi Fisler, Shriram Krishnamurthi, Benjamin S. Lerner, and Joe Gibbs Politz. 2021. A Data-Centric Introduction to Computing. Published on-line. https://dcic-world.org/, accessed 2021-12-29.Google Scholar
- Xingjian Gu, Max A. Heller, Stella Li, Yanyan Ren, Kathi Fisler, and Shriram Krishnamurthi. 2020. Using Design Alternatives to Learn About Data Organizations. In SIGCSE International Computing Education Research Conference.Google ScholarDigital Library
- Daniel Jackson. 2006. Software Abstractions. MIT Press.Google Scholar
- Shriram Krishnamurthi and Kathi Fisler. 2020. Data-Centricity: A Challenge and Opportunity for Computing Education. Commun. ACM 63, 8 (2020).Google ScholarDigital Library
- Shriram Krishnamurthi and Kathi Fisler. 2021. Developing Behavioral Concepts of Higher-Order Functions. In SIGCSE International Computing Education Research Conference.Google Scholar
- Hadley Wickham. 2014. Advanced R. Chapman and Hall/CRC.Google Scholar
- Hadley Wickham. 2014. Tidy data. Journal of statistical software 59, 1 (2014), 1–23.Google ScholarCross Ref
- John Wrenn and Shriram Krishnamurthi. 2017. Error Messages Are Classifiers: A Process to Design and Evaluate Error Messages. In SPLASH Onward!Google Scholar
- John Wrenn and Shriram Krishnamurthi. 2019. Executable Examples for Programming Problem Comprehension. In SIGCSE International Computing Education Research Conference.Google Scholar
- John Wrenn, Shriram Krishnamurthi, and Kathi Fisler. 2018. Who Tests the Testers?: Avoiding the Perils of Automated Testing. In SIGCSE International Computing Education Research Conference.Google Scholar
- Data-Centricity: Rethinking Introductory Computing to Support Data Science
Recommendations
Data Science Education: Global Perspectives and Convergence
ITiCSE '19: Proceedings of the 2019 ACM Conference on Innovation and Technology in Computer Science EducationOver the past two decades, data science or data analytics degree programs have begun to emerge, reflecting the world's demand for data specialists to make sense of the vast amounts of collected data in the sciences, engineering, business, and other ...
Equalizing Data Science Curriculum for Computer Science Pupils
Koli Calling '20: Proceedings of the 20th Koli Calling International Conference on Computing Education ResearchData science is a new interdisciplinary field of research that focuses on extracting value from data. As an interdisciplinary science it integrates knowledge and methods from computer science, mathematics and statistics, and the domain knowledge of the ...
Computing in Data Science or Data in Computer Science? Exploring the Relationship between Data Science and Computer Science in K-12 Education
SIGCSE 2024: Proceedings of the 55th ACM Technical Symposium on Computer Science Education V. 2students to learn in order to succeed in an increasingly data-driven world. Foundational data literacy skills currently live in a number of subjects across K-12 (e.g., data collection and analysis in science classes, statistical calculations in ...
Comments