02-201/02-601 Programming for Scientists
02-201/02-601 COURSE PROFILE
Course Level | Undergraduate/Graduate |
Units | 10,12 |
Special Permission Required? (If yes, see “Notes:) | No |
Frequency Offered | Fall & Spring |
Course Relevance (who should take this course?) | 02-601 is designed for first-year graduate students at Carnegie Mellon looking for an intensive but reasonably paced introduction to programming, as a foundation for further programming courses at CMU. 02-201 is designed for undergraduate students at CMU outside of the School of Computer Science who are interested in learning to program in an environment with scientific applications. |
Key Topics | Scientific topics covered include the following:
Programming topics are listed below.
|
Background Knowledge | A strong ability in high school algebra and precalculus is typically helpful, but no prior background in programming is required. |
Assessment Structure |
Programming assignments (30% of grade) Exams (40% of grade) Project (15% of grade – 02-601 only) Pre-class exercises (7.5% of grade) Attendance and participation (7.5% of grade) |
Most Recent Syllabus | http://compeau.cbd.cmu.edu/wp-content/uploads/2018/01/syllabus_601.pdf |
Sample Class Notes | http://compeau.cbd.cmu.edu/programming-for-scientists/lectures/ |
Sample Assignment | http://compeau.cbd.cmu.edu/programming-for-scientists/homework/ |
Sample Lecture Recordings | https://www.youtube.com/watch?v=I5XCvYs0tGo&list=PL6e46jdIySr-21W8XaP_kownPMbgyamMr |
Course Goals/Objectives |
Our first goal for this course is to make you comfortable writing your own programs and have a better understanding of how computing works, at multiple levels. Our second goal is to convince you how much fun programming is! Writing a program is like solving a sudoku puzzle — programming tests (and builds!) your powers of concentration and logical thinking. But programming is more rewarding than sudoku because it equips you with a transferable skill instead of the ability to fill in a square of numbers. Our third goal is to help you understand some fundamental scientific (in particular, biological) algorithms on a high-level. Finally, for students taking the graduate version of the course (02-601), we want you to gain independence to hack your own scientific problem by planning and executing a longer programming assignment of your own choice, so that you will be capable of programming independently in the future. |
Course Website | http://compeau.cbd.cmu.edu/programming-for-scientists/ |
Pre-reqs, Cross List, Related | Cross-listed with 02-201. No prereqs. |
Department Website | http://cbd.cmu.edu |
College Website | https://cs.cmu.edu |
Updated January 2018 |