Frequently, I am asked how to program websites by teenage students, photographers looking to setup, and those wanting to try something new and unique. This is beyond the basics of HTML that anyone could do on their own and more directed at PHP, JavaScript, and even C++. Short of teaching them myself, all I could is point them to self teaching books, one of the worst ways to learn programming.
Then this year, I discovered the CodeAcademy. While it currently seems limited to just JavaScript, they promise to expand it in the future. This was a perfect resource to show those that want to have the initiative and time.
With the New Year came a new years’ resolution tool. Code In A Year, will break up how to program in little snippets and really dig into the concepts and how-to’s of programming.
Currently, they are setup to email you the week’s tutorials and resources, but they have the potential to create a great forum and community of teachers and learners.
What other great programming resources have you come across that you have used or shared with others?
Ivan Bickett says
Jeremy, Thanks for the link! I’m definitely going to be checking this out. One of my big goals for 2012 is to learn some sort or coding / programing (I hear there’s a difference, but don’t know it). And I’m looking for resources to help me learn. I really appreciate you putting this out here for us.
~Ivan
Jeremy Smith says
Let me know how it works out for you coming from the stance of truly learning from it.
Eric E says
I’ve been going through all the Project Euler (http://projecteuler.net/) for the past couple months. I wouldn’t recommend it for beginners, but its a great tool to help you learn to program smarter. It’s geared toward more mathematical programming.
Jeremy Smith says
Are they impossible kinds of problems that take a lot of time and research or do you have fairly good success with them? Thanks for the share!
Eric E says
They aren’t impossible but some are much harder than others. I’ve solved 120 out 365 problems so far. The nice thing is that they progressively get harder, so it eases you into the difficult ones.
Eric E says
Just to give you a taste of the difference in difficulty, here’s problem 1:
“If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.
Find the sum of all the multiples of 3 or 5 below 1000.”
And here’s problem 365:
“The binomial coeffient C(1018,109) is a number with more than 9 billion (9109) digits.
Let M(n,k,m) denote the binomial coefficient C(n,k) modulo m.
Calculate M(1018,109,p*q*r) for 1000pqr5000 and p,q,r prime.”
Josh says
I’ve been tinkering around with http://tryruby.org/ to learn some Ruby. It’s fun for a little change of pace.
Jeremy Smith says
Love it! Has it seemed beneficial to you on a live server with ruby?
Josh says
I haven’t gotten that far yet. They do make it fun though to learn!
Jeremy Smith says
Sounds good. Let us know how it makes that transition from learning to applying. Very interested!
Brian Notess says
I’ve seen a lot of momentum building for online training of developers. Probably because it’s one of the most in-demand jobs in the country. I still have yet to find anything that comes close to a good classroom environment (with Q&A and feedback on your work).
My goal for 2012… build a :truly: interactive training platform for learning to code. I’ll let you know how it goes 😉
Jeremy Smith says
We look forward to it! Good luck on the project and if you need any beta testers, let us know.
Josh says
Another great resource is ThinkVitamin’s http://teamtreehouse.com/. I wish that had been around back when I was just learning how to code.
Jeremy Smith says
Agreed! Have you actually accessed that? I’ve been curious how well it is. Sounds like the gaming aspect is great, just curious if the ThinkVitamin tutorials are still top notch.
Josh says
Just watched the free ones. They seem very well put together and very clear for the beginner.
Jeremy Smith says
Sweet. Adding that to my never ending list of things to check out. Thanks for the reference.
Jay Caruso says
I am going to be doing the Team Treehouse lessons starting this month, together with my son. I did a small write up on it and plan on doing something that is more in depth as we go through it.
Jeremy Smith says
Look forward to it. Thanks for the share Jay!
Eric Dye says
*like*
Raoul Snyman says
The best book I’ve come across in my 20 odd years of developing (note: not programming, there’s a big difference) is a free ebook about the best programming language. The book is called A Byte of Python[0], and it teaches you how to develop in Python.
Python is a brilliant programming language because it allows you to develop in whatever programming paradigm you prefer (procedural, object-orientated or even functional). It is easy to learn, but very powerful, making it a language suited for both beginners and professionals alike. I highly recommend looking at learning Python over Ruby, at least initially.
[0] http://www.byteofpython.info/