How do you actually write your first line of code?
First, you’ll want to pick a programming language you’re interested in learning.
-
“I always suggest going with the language that supports the platform you like most,” Alex Paul, Lead iOS instructor at Pursuit, says. ”If you want to build an Android app, learn Java; if you want to create a website, learn Javascript; if you want to learn to build an iPhone app, learn Swift. This will keep you more engaged with the learning process.”
Learning a programming language is just start of your journey: you’ll need a ton of practice and patience to hone your coding chops (you may even want to apply for a software developer training program like Pursuit).
Alex was working in construction after immigrating to the United States from Martinique. He, like many people learning how to code, had to start somewhere. He listened to podcasts (Build and Analyze), went to tech Meetups (there are plenty to choose from in New York City), and watched instructional YouTube videos (Stanford University lectures on programming).
When it comes to learning how to make iOS apps, he recommends Hacking with Swift. The website run by programmer Paul Hudson features YouTube videos, talks at conferences, tutorials, and books that help you learn to make apps for iOS, macOS, watchOS, and more.
For those of you who want to build apps for Android, Alex suggests Google Developers Training, a compendium of resources and certification exams; for websites, he recommends MDN Web Docs, which features a wide array of tutorials and references. Once you’ve gotten enough practice in you, try putting your skills to the test with #100DaysOfCode.
As with any professional skill, practice makes perfect. That’s the advice of Erty Seidohl, Google software engineer and Pursuit volunteer.
“Study with a friend and practice white-boarding questions on each other,” he says, referring to writing and solving programming problems on a dry erase board. “In prepping for my Google interview, a friend and I mock interviewed each other a few times a week. It forces you to not give up and it means that you have someone who can give you tips — just like in an actual interview.”
He also advises that having a sharp grasp of what he calls the “difficult fundamentals,” which include pointers, recursion, and first-class functions (to those of you who are just starting out: don’t worry, you’ll learn what these concepts are down the road).
He also has an important tip about the behavioral interview: “During their interview, a lot of people tend to say, ‘I’m really excited to learn.’ But I think it’s important to remember that the company is hiring you to do work for them, not just to learn on their dime, so focus on what you can bring to the company. Get comfortable selling your skills, get to know their product, and be enthusiastic about it.”
“Coding isn’t like riding a bike: if you don’t use your skills and learn new ones, your game will go stale,” says Elle Faraday, Head of Pedagogy at Pursuit. “And not to belabor the metaphor, but bicycles have worked basically the same since their invention. The world of web development changes all the time.”
-
The answer is to keep your skills fresh. To do that, Elle recommends signing up for CSS Weekly and Javascript Weekly newsletters, which offer up-to-date news, tutorials, tools and experiments, and visiting “challenge problem sites” like Code Wars.
However, most importantly, she says, is “to always be building a project,”
“It’s a great way to keep old skills fresh or try out new frameworks,” she says, “and it’s the best way to keep challenging yourself while creating passion projects that go beyond your normal workload.”
The bottom line: if you want to learn how to code, you should always be learning how to code.
- Pursuit Fellowship
- Podcasts: Build and Analyze and CodeNewbie
- Learn Swift (for building iOS apps): Hacking with Swift
- Learn Java (for building Android apps): Google Developers Training
- Learn Javascript (for building websites): MDN Web Docs
- Code challenges (to keep your skills fresh): Code Wars and #100DaysOfCode
- Newsletters: CSS Weekly and Javascript Weekly