Where can I learn programming online, and what language should I learn first?
Adam Rifkin stashed this in JavaScript
Stashed in: Web Development, Software!, Learn!, Codecademy, Learn to program.
I love the article by Lifehacker, Programmer 101: Teach Yourself How to Code.
When people ask me what language they should learn as a first language, I say the Web is the best way to learn programming:
JavaScript is the language of the Web.
Want to go further? See Mashable's collection of 4 free places to learn programming online.
Note to n00bs: Java is not JavaScript!!
To all my 106ers, where else are good resources for people learning to code?
I'm also partial to CodeLesson.
Their classes are not free but in my opinion paying for personalized online instruction is well worth the money.
The founder of CodeLesson Jeffrey is now on 106miles.net.
Woot!
Rolling around GitHub is a great way to learn by reading others' code.
Quora also has a good list of free places to learn programming online.
Thanks for posting this. Always a good idea to add one more thing to my skills!
Actually, the HTML5 class at CodeLesson.com is quite good... Now, let's do some thread killing. :)
Here's a link to their Introduction to HTML5 and CSS course.
On the other hand, Peter Norvig makes a compelling case for teaching yourself programming in ten years.
This is a nice collection from Mozilla on JS: http://gim.ie/dSh
Good collection, Ed; Thanks! I also like Stack Overflow's best resources to learn JavaScript: http://stackoverflow.com/questions/11246/best-resources-to-learn-javascript
And for the person who wants super-advanced JavaScript skills, this is a great resource worth reading: http://nodejs.org/
I like Stack Overflow as a source for learning. Try to do something, realize you can't, find answer in Stack Overflow.
- Mozilla's P2P School of Webcraft: http://p2pu.org/webcraft
- Zed Shaw's Learn Python The Hard Way (for total noobs): learnpythonthehardway.org
- Koans in Ruby and Python: learn to program by fixing a series of failing tests. http://rubykoans.com/ and http://python-koans.appspot.com/
I want to edit my comment for proper formatting! *sob*
Laura, you'll get the ability to edit comments early next week. Maybe sooner!
Yay!
I'm surprised there's not an open-source, in-browser curriculum, in Javascript with live code in-page, going in tiny linked steps from programming fundamentals through all sorts of current applications.
I'm surprised, too. I believe sometime in the next decade someone will develop one. Khan Academy could use a second vertical besides the maths. :)
Still haven't seen anything better than LPTHW:
LPTHW does seem excellent, and there are a lot of other great Python learning resources, too.
I've always been a really big fan of tizag.com. The content on it is awesome. Look along the left sidebar for all of the languages there are tutorials for.
Cplusplus.com is also awesome. If you like programming in C++. (it was actually the 'textbook' for my intro class in undergrad)
EDIT: The sparknotes of learning to program in different languages: http://hyperpolyglot.org/ That site is AWESOME!
Tizag is nice but they have not updated the content in a few years. I wish they'd add HTML5...
Any suggestions for the easiest way to start practicing? I'm familiar with XAMPP (portableapps.com allows you to run it from a usb drive), but it would be great to hear other suggestions.
You mean where to get a server and stuff, Casey? Or the best way to think up a project?
Yeah, mostly getting the server and associated software going. For beginners, that can be the hardest part of getting started on a project once they have an idea or data they want to work with.
I agree. In theory Joyent, Google AppEngine, or Amazon Cloud Services should enable you to get started easily.
In practice, those aren't as easy as they should be.
Casey, this is an excellent question that had me scratching my head for quite a while. The thing is... all of us "olds" learned to program on localhost: set up your Linux laptop or Macbook and do it right there on port 80.
However, this method hasn't worked for me in several years now because being a web developer now entails working across the WHOLE web via OAuth and REST APIs. This means your dev server needs to be accessible at a public, permanent IP address or domain name. That actually makes the bar really high for a new dev.
What I would suggest is that you ask a friend for help setting up a server on AWS, EngineYard, or Orchestra. You don't have to learn everything at once! Don't be afraid to ask for help, hackers are friendly :)
Actually, I will reiterate this point: to get started, find a friend or mentor to help you get started. Asking questions is a great way to learn.
Haven't coded in ages... & by today's standards, either ancient or dead languages:(
As much as I've surfed and found great resources online, I'd have to agree with our fearless leader. Find a friend/mentor at 106; I did. Will let y'all know how it's going:)
Now if y'all can help me figure out how to create more time without a time machine or cloning, that would be awesome. Thanks in advance.
@ifindkarma @lmeadows I tried to sign up for this site called 106miles.net, but it said "i didnt hv invite" #stymied #weird
Ok, I sent you an invite. :)








9:55 AM May 09 2011