Bill Gates was able to get into programming at an early age because the prep school he attended gave students access to a GE mainframe computer. Mark Zuckerberg, meanwhile, had a private programming tutor growing up. And while that early coding education wasn't the only factor that led to those guys becoming incredibly successful developers (and, ya know, billionaires), it certainly didn't hurt either.
The majority of us, however, didn't grow up with this type of exposure to the world of coding. And many of us are still unclear how it all works -- how writing and combining complex strings of words and characters can lead to the creation of web browsers, websites, operating systems, smartphone apps, and more.
The good news: It's never too late to learn. And to help you learn how to code (or to simply help you better understand how coding works), we've put together an exhaustive list of resources. Let's dive in.
And just to clarify: These aren't lecture-style courses we're talking about here. You actually get to do some hands-on coding and see changes in real-time. Best of all: Codeacademy courses are 100% free.
Another major player in the coding education space is the nonprofit Khan Academy, whose mission is to "provide a free, world-class education for anyone, anywhere." Like Code Academy, Khan Academy offers courses in several different programming languages, which include interactive segments where you get to play around with code.
The one major difference is that Khan Academy courses rely more heavily on video. Founder Salman Khan got the idea for the academy after creating and sharing tutorials on YouTube.
Online technology school Treehouse offers coding courses from beginner level to expert. But unlike the first two options on this list, you'll need to fork over some cash before you can start learning. For $25 per month, you can gain access to Treehouse's library of 1,000+ videos and take interactive coding challenges. For $49 per month, you can unlock bonus content and gain the ability to download videos for watching offline.
The aptly named Code School follows a similar model as Treehouse: students watch video tutorials, and then get a chance to put what they've learned into action with interactive coding challenges. For $29 per month, you can get access to Code School's 50+ courses and 200 videos. (There's also a free option, FYI, which gives you access to 10 of their courses.)
Founded by Stack Overflow developer Jon Chan, Bento is free a coding education website that offers two distinct ways to learn. One option is to follow learning tracks, which feature educational content that's been curated by professional programmers. The second option is to look through the Bento Grid (pictured below), which is a meticulously organized collection of the top coding resources on the web.
MIT OpenCourseWare is a free online library of course materials from more than 2,200 MIT graduate and undergraduate courses. The idea behind the program, according to MIT School of Engineering Professor Dick K.P. Yue, is simple: "to publish all of our course materials online and make them widely available to everyone."
Each OpenCourseWare course consists of two components: an instruction component (e.g., a lecture or reading list), and a learning activity (e.g., an exam or assignment).
Describing itself as the "Programmer's Playground," coding platform Programmr takes a more lighthearted approach to teaching people how to code. In addition to offering seven different interactive courses, Programmr lets you hone your skills through taking challenges, signing up for projects, and even entering coding contents where you can win cash prizes.
Similar in spirit to MIT OpenCourseWare, Udacity got its start in 2011 as a way to make Stanford University computer science courses available for free. Since then, it has evolved into an education platform that offers courses and "nanodegree programs" from educational institutions as well as tech companies like Google, Facebook, and Twitter.
Coursera is a for-profit, ed-tech company that offers massive open online courses, also known as "MOOCs." MOOCs are courses from universities and other institutions that have been made available online with few (if any) limits on who can participate in them.
Offering courses like the popular "Complete Java Developer Course," Udemy is another (for-profit) MOOC provider that can help you develop your coding skills. One of the unique features of Udemy is that anyone can sign up to become an instructor and create their own course.
While it was designed for kids and teenagers, the educational web app Scratch -- created at the MIT Media Lab -- can be a fun way for adults to learn about the basics of coding. The app lets you program your own games, animations, and interactive stories, and you can share these coded creations with others via Scratch's online community.
The free iPhone and iPad app Hopscotch is another fun option for learning coding basics. With Hopscotch, you can create unique games and share them with others so anyone can play. There are also in-app tutorials that provide line-by-line instructions for creating specific types of games. Hopscotch currently has 4.5 stars in the app store (based on 515 ratings).
Wiredonce referred to Codea as the "Garageband of Coding." The $14.99 iPad app is like a grown-up version of Hopscotch. Through tapping, dragging, and dropping different elements, you can code up games, simulations, and other visual creations. Codea currently has 4.5 stars in the app store (based on 746 ratings).
This site page, which we co-created with Codeacademy, is a great starting point for marketers who want to understand the basics of HTML, a.k.a. "the language of the web." From formatting text, to customizing colors, to creating internal page links, this free resource provides HTML tips and tricks that will definitely come in handy.
Know of any other great resources for learning how to code? Share them in the comments section below.
Originally published Apr 11, 2016 8:00:00 AM, updated July 28 2017