Quick Links

Code is something we use every day but probably don't realize it, and understanding a language your computer understands is incredibly powerful. By learning how to code, you can build mobile apps, create websites, and even contribute to larger projects.

UPDATE: 3/2/22

Updated pricing for Mimo.

Which Language Should You Learn First?

Programming is one of those skills that doesn't necessarily have a set order of components to learn, and as such, there isn't really a standard for which language you should learn first. The method that most programmers use to figure out which language to learn is that they consider what they want to do career-wise, or what they want to build.

That, in turn, determines which language (or series of languages) they need to learn. So, look up the types of jobs you are interested in, look at their job descriptions, see which languages they require. From there, find an app that's compatible with the language(s) you'll be learning and jump on in.

That said, the most common computer programming languages you are likely to see are Python, JavaScript, and Java. And, you can take some solace in the fact that, although programming languages are different and are designed to perform differing tasks, their logic is mostly the same no matter what language you use, and that is ultimately what you need to learn.

The Best Apps for Learning How to Code

Not all learn-to-code apps and websites are created equal. Some only cover the basics of a single programming language, while others are far more comprehensive in the number of languages they teach and the breadth of content they teach for each. It just depends on what you need to learn.

Jump into JavaScript: Grasshopper

Grasshopper (Free) teaches the fundamentals of JavaScript, while showing concepts that apply to other coding languages as well like operators, array methods, recursion, object editing, and callbacks. Grasshopper uses short fun lessons to teach you new concepts without overwhelming you while progressing through challenging puzzles that help you build and apply your skills. It's available on all web browsers, as well as iOS and Android, so you can learn on the go.

Learn more at Grasshopper

Free Courses for More Languages: Khan Academy

Khan Academy (Free) has long been regarded for its excellent courses in subjects like math, history, and economics. Now it is offering a substantive amount of courses for computer programming. With this app, you'll learn JavaScript for drawing and animation, SQL for database queries, and even HTML and CSS for website design. Courses are taught by professional coders with years of experience, and the app is available on both iOS and Android.

Learn more at Khan Academy

Plentiful Low-Cost Tailored Courses: Udemy

Udemy is a much more robust website for programming education, partially because it is a paid service. (Entire coding courses average $100 to $200 a pop, which isn't too much considering the cost of other learn-to-code services and college courses.) Udemy covers every major programming language, different applications (like web or mobile development), and has tons of tailored courses so you can find the perfect one for your career needs. Each course typically consists of several lectures and takes anywhere from about three hours to over 40 to complete. By purchasing a course, you'll have lifetime access to it, on both iOS and Android, so you can learn at your own convenience. You'll also earn a certificate of completion for finishing a course.

Learn more at Udemy

Small Daily Lessons: Enki

Enki (Free) is a solid choice for beginners, and as a supplement for intermediate programmers. Enki teaches topics like JavaScript, Python, SQL, Java, Git, and more through rich structured lessons, practices, and quizzes. Lessons are led by veteran instructors and are full of information, and rely on spaced repetition algorithms that are tailored to each learner. And, with small digestible lessons and apps available on both iOS and Android, Enki is most effective in small daily sessions.

Learn more at Enki

Learn Solo, With a Community: SoloLearn

With SoloLearn (Free), you'll join a huge community of mobile code learners. It offers courses for a decently wide variety of languages, including Python, JavaScript, Swift, Ruby, C++, Java, and PHP, as well as topics like jQuery and SQL. Courses are broken down into modules and quizzes, and you can talk with other students in the community forums. You can enjoy your courses online or in the iOS and Android apps.

Learn more at SoloLearn

Get Swifty: Swift Playgrounds

If you want to write an iOS app, you have to learn Swift, period. All new iOS apps are written in Swift. As such, you'll only be able to learn how to write the language on your Mac or iPad; it (understandably) does not offer an Android app, Windows app, or browser extension. Swift Playgrounds (Free) is intuitive and fun, and you don't have to have any prior coding knowledge to jump in. As you learn the language, you'll be given puzzles and use the actual code you write to guide a character through the given 3D world and then focus on advanced concepts as you progress. And honestly, the app is super cute and free, so there's no reason not to learn Swift!

Learn more at Swift Playgrounds

Have the Ol' College Experience: Udacity

Udacity's educational service is only available online and does not have mobile apps, and its pricing can be a bit confusing. Over 200 of its general courses are free, but its nanodegree programs (the ones that provide you with official certification) can cost several hundred dollars, like a course at a real university. However, the cost may be warranted, as you'll have real-world professionals as your instructors, technical mentor support, corporate certifications, and access to personal career coaches and career services like a LinkedIn profile review, interview prep, and automatic resume sharing with over 95 employers. You can talk with other students, and your education centers around real-world projects with feedback from experienced reviewers. Udacity is a great choice for those with a professional mind-set, rather than those learning to code as a hobby.

Learn more at Udacity

Bite-Size Lesson: Mimo

Mimo ($6.66/mo) offers bite-sized coding lessons, which is great for those with super busy schedules. The subscription service gives you unlimited access to all of their courses, where you'll get hands-on experience with real-world exercises and projects. Mimo also adds new exercises weekly and supplies a code playground wherein you can experiment with code examples, and write and run your own code. You can learn on Mimo's web version, or with iOS and Android apps,so you can take your lessons at home or on the go.

Learn more at Mimo

Learn to Code Efficiently: Codecademy

Codecademy (Free) is a powerful teaching resource for beginner coders. It's a great place to start if you don't know any code at all and if you're not totally sure what you want to do once you learn how to. You can browse courses by subject or language, see the contents of the course, and how long it takes to complete.

If you're unsure of what to do with code and don't feel like researching jobs to see what you need to learn, considering upgrading to Codecademy's Pro version ($19.99/month) and get a helping hand. The Pro version gets you more courses and practice content, lays out paths you can take in learning how to code, lets you connect with other community members, and helps you build a portfolio of real-world projects to prove just how awesome you are.

Learn more at Codecademy

Straightforward Learning and Interview Prep: FreeCodeCamp

If you don't want to deal with the frills and extras that many other code teaching apps and websites offer, FreeCodeCamp (Free, if it wasn't obvious) is where you want to learn. You can even see from the website's clean design that it cuts to the chase and wants to get you learning, building projects, and getting certifications so you can get out into the workforce as quickly as possible.

In addition to teaching JavaScript, HTML/CSS, jQuery, React, APIs, and other common coding topics, it also offers an Interview Prep section. Here you can look through thousands of hours of challenges similar to what you may be asked to deal with in a real-world interview, including topics like algorithms, data structures, and more. What more could you ask for?

Learn more at FreeCodeCamp