Profound and awe-inspiring quote about the grandeur of knowledge
Want to become Gandalf?
Here goes a compilation of the best resources I know for learning programming in the internet. Some of them are free, some of them are not, but they are definitely worth paying for. In no particular order:
- Safari Books Online
- Team Tree House
- Channel 9
- Tuts+ Premium
Safari Books Online is the biggest library on the internet for technical and business books. They have sort of 20000 books on every technology, discipline, methodology and technique that you can imagine. Not only they have all the classics on stock, they also get a huge number of books in alpha version (what they call rough cuts), so that you can access a book even months before it is published. Isn’t that awesome…
You can read the books on the your computer (html or flash), but they also have a great iPad app, with the option of an offline bookshelf if you are on the run and have no connection. Subscriptions start from something around 12$ dollars and access to 5 books per month, but you have the option of a free 10 day trial.
Pluralsight is the e-learning reference for .NET in the web. They have courses given by top notch developers on absolutely everything: Windows 8, Windows Phone 7, ASP.NET MVC, ASP.NET, WCF, Design Patterns, C#, F#, C++, IronRuby, Business Intelligence, WPF, Silverlight, Entity Framework, SQl Server, and the list goes on.
This is a must for any .NET developer. Check out the 10 day trial
Rob Conery is one of my favorite developers out there, and he is a great, great teacher. It was through him that I learnt IoC, TDD and ASP.NET MVC, and all via TekPub. TekPub feels a little bit more personal than Pluralsight and has courses by awesome developers like John Skeet, Ayende Rahien, Scott Hanselman and Steven Sanderson among others.
Main topics are .NET, Ruby and best practices.
Code School’s approach to e-learning is absolutely amazing and out-of-the-box. They are the creators of the notorious Rails for Zombies - which by the way you can do for free - with courses with a high degree of interaction and game elements. All their courses are very practical and they always provide small controlled runtime environments so you don’t need to install anything on your machine when going through the courses.
Kudos to these people! Absolutely awesome job indeed.
Team Tree House is mainly focused in web development, web design and iOS development. Their e-learning model consists mainly in a series of courses that provide both videos and exercises, also with game elements, badges and the like. Particularly interesting are what they call Projects, which are end-to-end tutorials of real world web development projects. Subscription plans start from 25$/month.
If you like something that feels more like university classes, then Udacity is the right match for you. It is completely free and truly awesome. You can, for instance, learn the foundations of computer science and how to program in python by building a web crawler, or learn algorithms to analyze relationships between people in social networks. They have a dozen courses or so and growing, on a variety of software development topics, perhaps more from a Computer Science perspective but very practical and fun to follow nonetheles.
If you are a .NET developer you have probably heard about Channel 9. Channel 9 is basically the Microsoft Developer Network television. This means that in it you are going to be able to find event videos (like from aspConf2012), shows like Visual Studio Toolbox and the famous Coding4Fun series. In summary, lots of great content for .NET developers.
[Tuts+ Premium] is my first stop for technical design knowledge, that is, how to use Photoshop, Illustrator and the like. They also have an ever increasing offer on web development courses.
PeepCode is one of the best resources for Ruby on Rails screencasts and courses on the internet. Instead of having a subscription plan, screencasts and courses are sold individually or in packs.
So that is about it. Those are my favorite resources for keeping my programming skills up to date. So, which one are yours? Am I missing any?