Hacker News new | ask | show | jobs
by koenigdavidmj 5681 days ago
MIT hosts a lot of their course materials online at http://ocw.mit.edu/index.htm . Dig through some of their classes.

I'm not sure at what level you mean by 'beginner', but my recommendation is to run through 6.001 (Structure and Interpretation of Computer Programs). MIT has a new Python-based intro class that has since replaced 6.001, but the old class is still a very well-baked and well-respected curriculum.

After that, if you want, dig into a couple data structures and algorithms classes (like 6.006) to build up your theoretical background.

Next look into a software engineering course (theirs is 6.005). This should get you a bit of feel for diving into a large system without getting lost, or organising one of your own.

After that, just start poking around at things that look interesting. Build something shiny. (That's the great thing about our industry---you can get your tools for free, and build something useful without making a huge initial investment. That would not happen in a lot of other fields.)