Where can I learn programming online, and what language should I learn first?
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:
Want to go further? See Mashable's collection of 4 free places to learn programming online.
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.
Thanks for posting this. Always a good idea to add one more thing to my skills!
I like Stack Overflow as a source for learning. Try to do something, realize you can't, find answer in Stack Overflow.
I want to edit my comment for proper formatting! *sob*
Laura, you'll get the ability to edit comments early next week. Maybe sooner!
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.
Ok, I sent you an invite. :)