Where can I find free/high quality software design training videos online.
September 27, 2011 11:33 AM   Subscribe

I have a degree in computer engineering but I would like to expand my programming expertise. I have a very solid understanding of syntax and procedural programming but I am looking for video training on system design techniques and other 'higher-level' concepts like testability. I have recently been going through the Khan Academy math courses and love it. I would like something similar for software design. It can be proper training or just really good podcasts.

I am not looking for book suggestions, I have several good books already. This is specifically for free, high quality videos online.

Also, I know Khan Academy has a few programming videos but it is very basic stuff and is not what I am looking for.

posted by n-palmer to Computers & Internet (7 answers total) 22 users marked this as a favorite
Did I hear that MIT have offered online courses to everyone in the world? I'll go and check, eh.
posted by fraac at 11:43 AM on September 27, 2011

There's one book that every programmer, regardless of their level of expertise will benefit from: Structure and Interpretation of Computer Programs. It will teach you very little practical stuff. You won't be able to go out and write video games or web applications or anything like that immediately after reading it. However, it will give you the best foundation possible as a programmer, and once you master it you will be able to understand every other programming book 2x faster.

(Excuse some dramatic exaggeration).

The best part about it is that not only is the full text freely available online, there are also an entire semester's worth of videos by the authors themselves:

SICP videos.

You will also find these videos available for streaming on Google Videos. If you want more, there is also course material from MIT, which has assignments and such.

MIT Course.
posted by Idle Curiosity at 12:02 PM on September 27, 2011 [6 favorites]

Code Complete is widely recommended. The Mythical Man-Month is enlightening, but more on a meta level.
posted by mkb at 12:12 PM on September 27, 2011

Destroy All Software, podcasts by Gary Bernhardt. They're not free, but cheap. They're also not structured as a "lessons" necessarily, but more as excerpts from his thought process when building software. I find this format to be much more useful than a more structured text or video, because those tend to be further removed from the day-to-day decisions that you have to make when designing software. Code Complete is good, but it sort of reads like a list of 10,000 different characteristics that you're supposed to ensure that your code has. Destroy All Software is much more focused and more practical (much more practical than SICP too, which is nice in theory but is also somewhat removed from modern programming methods.)
posted by kiltedtaco at 1:21 PM on September 27, 2011 [1 favorite]

I subscribed to PluralSight for a few months in order to spin myself up on some new technologies I needed for a new job. They lean towards Microsoft products, but offer a lot of courses on design patterns, test-first development, security, concurrency, threading, etc. I got a lot out of it, and would recommend it without reservation.
posted by JohnFredra at 4:19 PM on September 27, 2011 [1 favorite]

Ah, I missed the free part, which PluralSight isn't.
posted by JohnFredra at 5:02 PM on September 27, 2011

Best answer: I am a (junior, junior) developer and this Stanford course was suggested to me by my colleague. They have a lot of other classes on youtube and iTunes U.
posted by getawaysticks at 6:30 AM on September 28, 2011 [1 favorite]

« Older Help me pick the best xmas card every   |   Road to Yosemite Newer »
This thread is closed to new comments.