Time: Mon/Wed/Thurs 9:00-11:40am Location: CIT 368 (though first two classes in CIT 477/Lubrano)
CSCI-50 provides an introduction to computer programming with a focus on skills needed for data-intensive applications. Topics include core constructs for processing both tabular and structured data (including lists and trees); decomposing problems into programming tasks; data structures; algorithms; and testing programs for correct behavior. The course does not assume any prior programming background; many assignments will have (optional) advanced material for students who already have some programming background or who want to cover the topic in greater depth.
This is a computer science and programming course, not a data science course. While we will cover concepts and programming constructs and software practices that are highly relevant for data science, we will not cover statistics or statistics-focused programming. The course has been designed to provide the computer science background needed for Brown’s Data Science masters program (but the course is open to all who wish to enroll). CSCI-50 does not currently satisfy the introductory programming sequence requirement for CS (undergraduate) concentrators. If you are interested in options that lead into the CS concentration, talk to Professor Fisler.
Class sessions will interleave lecture and hands-on exercises (both programming and conceptual). Students are expected to participate and work with others during class sessions.