Last update on Nov 30, 2014 to add a great link to the “Compilations” section.
- A couple of weeks ago, a friend asked me for advice on giving advice to beginners.
- One week ago, I taught a class on JavaScript for beginners (or advanced beginners –as I like to say).
- A few days ago, I recently found a Quora question about getting better at JS.
These three moments have had my brain wondering about how to point coding newbies in the right direction. After some Googling and recalling my own past, I’ve gathered some links that will hopefully help beginners and maybe even intermediate folks. However, I should warn you that I haven’t tried out all the various services for myself.
The Basics
This Imgur post lists 6 sites that provide tutorials for getting started in coding. I’ve personally used Code School and Codecademy. They’re great, but after awhile, you’ll want to explore other options. They are not sufficient by themselves.
Compilations
These sites gather tutorials and various resources into one place. Most of these also give some guidance or roadmap to help beginners prioritize what to learn:
- Programming, Motherf…: Categorized links for various languages.
- Bento: Links organized into manageable sections.
- What’s Next: Links grouped by topic and difficulty.
- The Odin Project: Open-source web dev curriculum.
- JavaScript The Right Way: Links covering the entire JS ecosystem (basics, patterns, testing, frameworks, news/podcasts/feeds).
The Fundamentals of JS
If you’re specifically trying to learn the quirks of JavaScript, then classes like the one I teach are perfect for you. If you’re not near San Francisco, you can try online classes taught by the one who helped me become a teacher (@BiancaGando).
But these aren’t free. Ya know what is free? This great gathering of words describing vital JS concepts: 16 JavaScript Concepts JavaScript Professionals Must Know Well
The Community
San Francisco is my neck of the woods. If you’re lucky enough to be around here, then you should take advantage of the stellar community. There are lots of free meetups/events that can help you learn. If you’re not in the area, check Meetup.com for groups that provide similar events.
- Tinderbox: They often host “hack nights”, which might sound intimidating, but they’re very open-ended so you could show up and just ask for help learning a particular subject.
- SF Rails: Much like Tinderbox, the SF Rails group hosts open-ended “protonight” events. The group might focus on Ruby on Rails, but you’re likely to find people who can help with any beginner or intermediate level coding topic.
If you’re female, you might want to search for organizations that provide free support for women. Some examples:
Back in the day, I used a free, online curriculum created by Railsbridge to learn some web dev skills.
A Hack Reactor alum recently launched a free service called Hackvard. It helps people quickly find nearby programmers who want to meet up. After a few weeks (or days?), it was renamed to Codaround. One of the co-founders contacted me and mentioned that Codaround might be changed to focus on helping match mentors/teachers with students/beginners. I don’t know any details, but it’s worth keeping an eye on this.
Games
Want to play while you program? Here are some sites that turn learning to code into a game:
- CheckIO: When I tried them out, I wasn’t impressed by their attempt to cover coding challenges in a layer of gamification. A CheckIO employee reached out to me and told me things have changed a lot. I haven’t verified his claims, but their user base was pretty large last time I checked, and their blog is very active, so they’re alive and kicking.
- Code Combat: I played with this a couple months ago. It was fun, but a tad buggy. I like the idea of writing code to control your character.
- Screeps: This looks quite promising. You write code to control small armies.
What else?
Let me know in the comments (or via Twitter) if you know of any other solid resources that help people learn JavaScript and other programming skills.