One percent of Americans are professional programmers. But for the remaining 99 percent of us, learning to code may be nearly as important as good old reading, writing, and arithmetic. At least, Steve Jobs thought so. The Apple cofounder said in 1995:
“I think everybody in this country should learn how to program a computer because it teaches you how to think.”
Here’s a step-by-step guide to take you from code newbie to know-it-all.
1. Understand what coding is.
Coding is, quite simply, a way of telling a machine what to do.
“Coding” is the most common term used by educational sites, but it’s a bit more complex than that. First, there’s no one way to code — there are numerous languages used to code for different types of projects. Second, knowing how to code with a particular language doesn’t make you a programmer or developer.
Though there is some debate about the overlap of coding, programming, developing, and other related pursuits, most people agree that to get beyond coding, you need to be able to understand logic and algorithms, connect different systems and languages, and communicate and collaborate with other people.
2. Understand how coding can help you.
Enhance digital literacy; Cultivate skills; Expand your horizons; Solve problems.
3. Pick your path.
Before you start, remember to figure out what you want to do with your future coding skills. Figuring that out is important for two reasons: first, different programming languages are used for different things, so you want to make sure you learn the language that best fits your goals. Second, having a specific, meaningful goal motivates you to keep going.
So which language should you learn? The Learn Programming subreddit offers this guide in determining which language to learn:
4. Pick your course.
Check out our ultimate resource list for learning to code for a curated list of sites that are highly rated by users, recommended by experienced programmers, and associated with well-known institutions.
All of the sites on the list offer courses for people with zero programming experience. Each listing details the types of courses offered, cost, time commitment, experience level, and a sampling of topics covered. Though many courses are free, courses geared toward people seeking a career in programming are usually paid. Among all the options, you’re sure to find one that’s right for you.
5. Have a support system.
Code can be intimidating, but you’re not alone — the programming community values collaboration. Here’s how you can get help:
Get a buddy. Look for a buddy on Perunity or the Programming Buddies subreddit. You can also find local buddies by searching Meetup for interest groups focused on what you’re learning. Girl Develop It has chapters that help women network and team up to learn and practice programming.
Get a mentor. Mentors can help you when you get stuck and make sure you’re on the right track. Find one on CodeMentor or the Code Mentors subreddit.
Ask a forum. The most popular programming forum is Stack Overflow, followed by Reddit — the general programming subreddit is Learn Programming.
Ask good questions. If people feel like you’re wasting their time, you’ll get either no response or a snarky one. Consider these tips:
- Before you post, search the forum to see if your question has already been answered.
- Write a descriptive title and post.
- Demonstrate that you’ve made an effort to tackle your problem- you’re not expecting people to do the hard work for you.
- This article on asking smart questions has more great advice and is also a useful introduction to the distinct character of the programming community.
6. Go beyond the basics
It’s true you can quickly learn the basics of code. But just as learning English (or any other language) doesn’t make you a great novelist, learning code doesn’t make you a great programmer- that takes plenty of practice!