Computational Thinking and Programming with Python for Aspiring Data Scientists

A.L. Lamprecht

    Research output: Contribution to conferenceAbstractAcademic

    Abstract

    Today’s world is full of data. Data scientists are needed everywhere to design and implement the processes that analyze the data and turn them into meaningful information. Consequently, it is not surprising that students from all disciplines increasingly feel the need of having to learn how to build software for their solving their data analysis problems. The course "Computational Thinking and Programming in Python" at Utrecht University has been designed for accommodating the needs of these students. Computational thinking is about expressing problems and their solutions in ways that a computer could execute. It is considered one of the fundamental skills of the 21st century. To develop student’s computational thinking skills for data analysis problems, the course covers ways for systematically approaching such problems (CRISP-DM model, reference processes), abstract program description techniques (UML diagrams) and elementary software design principles (reuse, modularization). Programming is the process of designing and building an executable computer program for accomplishing a specific computing task. The course introduces students to programming with Python, which is currently one of the most popular programming languages in data science. After familiarization with the basics, the course addresses more advanced topics, such as access to web services, statistical analyses with the pandas package and data visualization with the matplotlib package. Furthermore, there are some lectures on additional practical topics like the FAIR principles and workflow management systems. Every lecture is accompanied by a practical BYOD lab session where students can work on the weekly homework assignments with support of the teaching assistants. To practice the work with more complex, realistic data analysis problems, students furthermore work on small group projects during the course, and present their results at the end. The presentation will discuss the specific learning goals and design of the course, also in light of practical conditions such as class size and teaching staff available. Furthermore, it will elaborate on the specific challenges involved, experiences and lessons learned that can be beneficial for computational science educators teaching similar courses.
    Original languageEnglish
    Publication statusPublished - Jun 2019
    Event19th International Conference of Computational Science - Workshop on Teaching Computational Science - Universidade do Algarve, Faro, Portugal
    Duration: 12 Jun 201914 Jun 2019
    https://www.iccs-meeting.org/iccs2019/

    Conference

    Conference19th International Conference of Computational Science - Workshop on Teaching Computational Science
    Abbreviated titleICCS WTCS 2019
    Country/TerritoryPortugal
    CityFaro
    Period12/06/1914/06/19
    Internet address

    Fingerprint

    Dive into the research topics of 'Computational Thinking and Programming with Python for Aspiring Data Scientists'. Together they form a unique fingerprint.

    Cite this