Programming for Scientists

Class Number: 98-111

Meeting Times: 6.30-7.30PM SH 220 (or SH219, which is next door)

Syllabus: See Class Info

Office Hours: 4.30pm on Tuesdays (either in 409D Mellon Institute or virtual office hours)

New Stuff

  • [Apr 29] No class on Thursday (Apr 30).
  • [Mar 26] Homeworks 8 & 9 (see Homeworks).
  • [Mar 3] Homework 7 (see Homeworks). Also, updated project webpage.

Virtual Office Hours

During office hours, you can IM me at cmu_98111@jabber.org using the jabber protocol (gtalk uses it, you can use gtalk), or ekiga cmu_98111@ekiga.net. I also promise to reply to all outstanding class email during that period.

Who is this class for?

If a large part of your day is spent programming, but you’ve never had more than one semester of formal programming training (or less), then this is for you. If all you know is Matlab, then this is for you. If you do not use version control (or don’t even really know what it is), then this is for you.

Programming for Scientists is a course for scientists (biologists, physicists,...) who find themselves programming with not more than an introductory programming course or even just having informally learned how to write code.

The goal is to make students more effective programmers, who spend less time doing it, who write code that is more efficient, more readable, and has less bugs. A one semester course on the basics of good programming can increase programmer’s productivity by 20%. Twenty per-cent is a full year of the typical PhD [numbers from Greg Wilson, U. of Toronto].

For the practical part of the course, the Python programming language will be covered. Python is a modern language which is increasingly used for scientific programming.

Who teaches it?

This is a student taught course, taught by Luís Pedro Coelho, a third-year Ph.D. student in Computational Biology. Luís has a BS and an MS in computer science from IST in Lisbon.