Lectures

Lecture topic Description
Version Control Learn how to collaborate with other people and automatically create a record of previous work using a version control system.
The Shell Much of scientific computing involves the Unix operating system. Effectively using the shell is one of the first steps to efficient Unix programming.
Python A popular, versatile, open source language that is increasingly popular among scientific programmers.
Testing The basics of software testing, including exception handling and unit testing.
Sets and Dictionaries Using associative data structures to better represent data that isn’t a list or vector.
Regular Expressions Manipulate text quickly with this powerful set of pattern matching tools.
Databases An introduction to SQL, the most popular database query language.
Data Management Short discussions of all things data-related.
Make This tool will help automate everything from large software builds to batch processes.
Matrix Programming Use array libraries to make numerical programs smaller and faster.
Multimedia Programming Work with images, sound, and other media.
Spreadsheets Learn to use spreadsheets for data organization, analysis, and visualization.
Program Design An example driven introduction to effective program design.

  1. November 28th, 2010 at 20:31 | #1

    These lessons are fantastic. Just the perfect amount of depth for people with some programming experience, but looking to get familiar with something new and possibly more powerful than what they’ve previously used. I’ve been working my way through several different lectures here, and will be pointing anyone this way who I think could benefit. Thanks a ton for putting all this together and doing such a great job.

  2. Mark Betnel
    January 7th, 2011 at 14:57 | #2

    Would it be possible to add the length of each lecture subunit to the page describing them? For example, on the page describing the lectures on Version Control, put “4:04″ next to “Introduction”, “8:01″ next to “Basic Operations”, and so on? It would help in deciding when someone will have time to work through them.

  3. Greg Kow
    May 22nd, 2011 at 20:10 | #3

    Absolutely awesome! The best lectures I ever read/heard/seen. Thank you very much!