Python for audio programming
We’ve started teaching the fourth-year audio programming class in
python. Labs are here:
Python programming course
Why write a whole new introduction to python? Well, I wanted to
focus on exactly the stuff we needed for the class. Also, these
poor kids haven’t been taught how to program before, so I wanted
to introduce the building blocks of programming rather than just
giving a quick overview of python for programmers. But I didn’t
want to throw them at Zed Shaw’s "Learn python the hard way",
since that would cover python in more depth than they need.
I am an outspoken opponent of teaching C to new programmers – C
is a horrible language. It requires compiling, it has no array
bounds checking, it uses non-obvious symbols like |, etc. Using C
to teach the concepts of conditionals, loops, functions, and
arrays is absolutely stupid. There are far better
languages for this task; my favorite is Python.
However, it seems to be the language of choice for departments of
electrical engineering. I’ve written these labs and used them for
the past two years, and they seem to work decently-well. They’re
not perfect, but I’m uploading them here on the off chance that
anybody else finds them useful:
C programming course
Teachers: you are quite welcome to use any elements of these labs
for your own courses. Grab an assignment, use an explanation...
whatever you want. They’re published under the Creative Commons
Attribution-ShareAlike 2.5 license.
Note: Over the next month, I hope to clean up a few loose ends.
If you’re trying out these labs and notice a problem,
please let me know so I can fix it! The best way to
generate good course material is to test it over and over again.