CS248
Software and Data

Software and Data focuses on software engineering and data management processes, preparing students for upper-level, data-intensive courses. The course emphasizes: 1) software development skills, such as package installation, creating virtual environments, and using version control to enhance collaborative coding and project management. 2) Advanced Python programming by exploring new data structures, libraries, and object-oriented programming techniques to improve code efficiency when working with large datasets. 3) Data management techniques including file handling, databases and SQL, web scraping, and API interactions for effective data manipulation and retrieval. Throughout the course there are discussions on the ethics of building software and working with data, as the students work towards building a data-driven application, integrating all learned skills.

Units: 1

Max Enrollment: 15

Prerequisites: CS 111 (or CS 111X or CS 111M) and CS 230 (or CS 230P or CS 230X) and permission of the instructor. CS 230 (or CS 230P or CS 230X) can be taken concurrently.

Distribution Requirements: MM - Mathematical Modeling and Problem Solving

Typical Periods Offered: Spring

Semesters Offered this Academic Year: Spring

Notes: