Learn to Code: 13 Tips that Could Save You Years of Effort

Hard at Work — Louish Pixel (CC-BY-NC-ND-2.0)

When you’re new to coding, it can be hard to know where to start, and it’s easy to get sucked down paths that could waste a whole lot of your time and money.

I’m Eric Elliott, author of “Programming JavaScript Applications” (O’Reilly), development team leader, JavaScript instructor, and public speaker. I teach and hire JavaScript developers. I know both sides of the market very well. Here are some of my favorite tips for aspiring coders:

  1. Forget university programs. Unless it’s from Stanford or MIT, your degree will mean a lot less than having some apps to show off. In fact, most university programs struggle to keep up with changing technology. A degree will buy you a few thousand dollars more for the first 1–3 years. After that it makes exactly zero difference. Unless you like flushing time and money down the toilet…
  2. Start with JavaScript. JavaScript is the most popular programming language in the world. It’s the standard language of the web platform, and it’s very commonly used to code mobile apps, too. You can even program robots, drones, and games with JavaScript.
  3. Score a quick win right now. Confidence holds coding students back more than anything else. Get a boost by starting with something easy. Code.org has Star Wars and Minecraft hour of code curriculum designed for kids. Even if you’re an adult, it’s a great way to prove to yourself that you can do it.
  4. The best way to learn how to code is to code. Lots of students start by reading books. It’s OK to go that route — that’s how I learned to code when I was just getting started, but if you really want to get off on the right foot, start out with some exercises. FreeCodeCamp’s 10-hour basic JavaScript track will give you a good opportunity to stretch your wings.
  5. Learn by example. One of the best ways to score major breakthroughs is to watch somebody else code, and pick up on how they think about problems. Find a study buddy and try some pair programming. I recently started a new show called “Shotgun with Eric Elliott” — a video screencast show that lets you ride shotgun while I build real apps. I talk you through what I’m thinking with every step, and drop a lot of knowledge for you to pick up along the way. I’m journaling each episode on this blog.
  6. Read Blogs. I may be biased, but JavaScript Scene is a great blog to subscribe to. I’m a fan of 2ality as well — a great way to stay on top of what’s coming next in the JavaScript specification.
  7. Try a Bootcamp. If you can afford to attend school full time, forget university programs (see point 1). Try a bootcamp, instead. Bootcamps are great if you need to feel really invested (commonly $10k — $25k), and you need to be accountable to somebody other than yourself. I’ve hired bootcamp grads who had zero experience before the bootcamp. They did a great job with a little guidance from the experienced team members.
  8. Learn Online. If you don’t have the money for a bootcamp, or you’re a more self-motivated, self-directed type, try online training. “Learn JavaScript with Eric Elliott” picks up where the introductory training you’ll find many other places leaves off. A great stepping stone from entry level to senior level jobs.
  9. Find a Strong Mentor. Graduating from a bootcamp or online course is just step one in your learning journey. At the pace this industry changes, you’ll never stop learning. You should always have a strong mentor to learn from. You don’t have to know them in-person in order to learn from them. It can be somebody you follow online.
  10. Find a Meetup or Study Group. Meetups are a great way to find mentors, study buddies, and new friends, regardless of your current skill level. And there’s often free pizza involved. Check out Meetup.com.
  11. Mix it up. Video lessons are great, but you need to practice to learn. Exercises are great, but typically only drill very specific concepts and leave out great coding wisdom you could learn from a video guide. In-person is great, but tends to lack structure. Books are great, but most readers don’t get enough practice from books. Whatever you’re doing, mix it up once in a while. Try to learn from more than one medium.
  12. Build a Portfolio. No matter how you learn, if you want to code for a career, you’ll want to start building a portfolio of your projects. Open a GitHub account and post your projects there so that potential employers can see your work. Check out the GitHub Guides to get started.
  13. Learn more than one language. I strongly recommend you read “Seven Languages in Seven Weeks.” I’ve coded in Basic, Assembly Language, Pascal, Delphi, C/C++, Java, Lisp, and JavaScript — to name a few. Learning different languages with different philosophies will teach you different ways to think about the same problems. Expand your mind, expand your creativity. But give yourself a solid year to focus on JavaScript before you branch out. Don’t spread yourself too thin.

Don’t stop there. Read this next: “10 Priceless Resources for JavaScript Learners”.

Eric Elliott is the author of “Programming JavaScript Applications” (O’Reilly), and “Learn Universal JavaScript App Development with Node & React”. He has contributed to software experiences for Adobe Systems, Zumba Fitness, The Wall Street Journal, ESPN, BBC, and top recording artists including Usher, Frank Ocean, Metallica, and many more.

He spends most of his time in the San Francisco Bay Area with the most beautiful woman in the world.


If you can find a good university program and it will cost you little or no money, by all means, take advantage of that. My anti-university rant is mostly about universities in the US who will happily eat up hundreds of thousands of dollars in tuition money that you will never earn back on the job.