I’ve been thinking a lot lately about the process of learning to program. I’m currently teaching an introductory level programming course using C# at ASU. In order to prepare for this course I’ve read quite a few introductory texts using C#, not for myself but in order to find the perfect text for my students. The conclusion is simple. There is no perfect text.
I first heard about PeepCode sometime last spring. At the time I must admit I was not too keen on Ruby. Times have changed. I discovered for myself why Ruby (particularly Rails) is so cool this past summer. Recently, I actually went out to the PeepCode site and took a look at a few of their samples, then ultimately paid for a few tutorials. These guys do a nice job. This method of presenting tutorials on programming is probably the best I’ve encountered. The only way to learn faster would be to sit next to an expert and peek over their shoulder while they write code. I like this methodology so much that I’m working on using similar techniques in the introductory C# class I’m teaching this semester. Even if you are not interested in Ruby or Rails you should give this a look as it is a nice preview of the future of learning to program.