How to Decide Which Programming Language to Learn

Figure out which programming language is right for your dream projects

woman in glasses with hand on face, thinking

Is Tech Right For you? Take Our 3-Minute Quiz!

You Will Learn: If a career in tech is right for you What tech careers fit your strengths What skills you need to reach your goals

Take The Quiz!

I remember the first time I ever really dove into coding a website. I decided I wanted to create a website for a craft business I was running, and got it into my head that I would recreate the look and feel of the website of a luxury British lifestyle brand…that was built in Flash.

Except I didn’t want to learn Flash, so I taught myself to recreate many of the site transitions and animations using JavaScript (partly because I didn’t know which programming language to learn first, and it seemed as good as any). Yep, the first coding language I ever taught myself was JavaScript! And the site was a pretty good approximation of the original site, even if it wasn’t quite as fancy.

Fast-forward to now, and I’ve dabbled in a variety of programming languages: some PHP for working with WordPress, a little ASP.NET to work on an old employer’s site, Ruby and Swift for a few app projects, and SQL for various websites.

So how do you decide which programming language to learn first? JavaScript is pretty useful and in high demand, but then again, PHP will allow you to build custom WordPress sites…and you’ve probably heard Ruby developers waxing poetic about their language.

You’ll most likely learn several languages over the course of your career, it’s best to prioritize by thinking about what kinds of projects you’d like to work on first. Once you have an idea of what you want to build, refer to the list below to figure out where to start learning to code. You can always move on to additional languages once you get your feet wet!

Psst! Check out The Beginner’s Guide to Landing a Junior Developer Job for a roadmap to starting your career in web development! In the free ebook, you’ll get a list of job titles in development, plus the skills you’ll need to have down in order to get hired.

If you want to build a Mac or iPhone app, learn Swift.

Sure, tons of frameworks out there let you build native mobile apps using HTML and JavaScript. But if you’re really serious about building iOS apps, you really need to learn Swift. Bonus: Swift is also used for building Mac OS X desktop apps!

If you want to build Android apps, learn Java.

If you’d rather develop Android apps (which include apps for devices like the Kindle Fire, not just smartphones), then Java is the language to learn. Native Android apps are all coded in Java.

Java used to be the standard for learning to code in computer science courses (but has since been replaced by Python, which I’ll talk about further down), which means it’s a good language to tackle when you’re starting out programming. That said, it’s also incredibly powerful and has tons of advanced capabilities.

If you want to work with WordPress, learn PHP.

WordPress is the most popular content management system on the planet. 25 percent of all the websites in the world run on WordPress, with 50,000 new sites added daily. In other words, learning WordPress opens up a huge market for you.

WordPress is coded with PHP, so if you want to work with WP, you’ll need to master PHP. PHP is both easy to use for new programmers, and has advanced features for more expert coders. (There are other CMSs built with PHP, too, like Joomla and Drupal.)

For more on WordPress, check out our Freelance WordPress Developer Career Blueprint. You’ll get 3 months of step-by-step courses and a guided apprenticeship while you work with your first client.

If you want to build web app, learn Ruby (on Rails).

Of the languages that you can use to build web applications, one of the most popular is Ruby (and Ruby on Rails). It’s a full-stack framework that was built to keep developers happy by making common development tasks easier out of the box. Sites like Airbnb, Shopify, and Hulu are built with Ruby, which gives you an idea of how powerful the language can be.

If you want to work on big, complex, data-driven sites and apps, learn SQL.

Ambitious, data-driven websites and apps have one thing in common: databases. And most of those databases are written in some form of SQL (MySQL, PostgreSQL, Microsoft SQL, etc.). In fact, many smaller sites pull content and information from a database (including most blogs and sites built on a CMS). Basically, SQL is everywhere, and if you use the internet, you’ve definitely encountered it before, probably without even realizing it.

If you want a versatile set of skills that can come in handy on almost any website or web app, becoming proficient in SQL is a fantastic choice. Bonus: SQL skills are super valuable if you want to be a data analyst or strategist.

If you want to build games or audio/video apps, learn C++.

C++ is the programming language of choice for performance-critical applications like games or audio/video applications. (Also, all the Adobe design applications, like Photoshop, Illustrator, and After Effects, are built in C++.) It’s used in Apple’s OS X operating system. Parts of Facebook, Google, and various Microsoft applications are written in C++. It’s even used for the SETI@home project!

If you’re interested in working on these big software and web projects, C++ is a must.

If you want to build windows apps, learn C#.

C# is most commonly used for building applications that run on Windows. It’s used for web development (with Microsoft’s .NET framework), game development, and general Windows development. It’s now possible to write iOS and Android apps with C#, too, using the Xamarin platform.

If you want to build modern websites and web apps, learn Javascript.

You can build a website with nothing more than HTML and CSS, but if you want to build a website that will fit in with the modern web, then you need to learn JavaScript.

JavaScript is the most common way to make websites and web apps interactive. It’s most often used with libraries like jQuery and AngularJS to create web apps that work across all modern browsers and device types. JavaScript can also be used with frameworks like phonegap to create mobile applications for iOS and Android.

The downside to JavaScript is that it can be tricky to learn and especially to debug. But don’t fear! You can learn JavaScript (and jQuery, and a bunch of other great subjects) in our new Front End Developer Career Blueprint.

If you want to work in education, learn Python.

If you want to teach coding, or work on apps and sites aimed at schools and universities, Python is where it’s at. While there’s no single programming language being used across every university, college, public school, and private school, Python is definitely the most popular. Python is easy to learn, and focuses on simple and readable code (because it’s very similar to the English language).

Recently, Python knocked Java out of the top spot for beginner programming courses, with eight out of the top ten computer science programs now using Python to teach coding. Because of this popularity in the education sphere, Python has a lot of libraries for things like mathematics, physics, and natural processing. Besides, sites for both NASA and PBS are built on Python!

Want to know more about what it takes to be a developer? Check out our FREE Beginner’s Guide to Landing a Junior Developer Job for all the goods!

woman in glasses with hand on face, thinking

Is Tech Right For you? Take Our 3-Minute Quiz!

You Will Learn: If a career in tech is right for you What tech careers fit your strengths What skills you need to reach your goals

Take The Quiz!

Author Image

Cameron Chapman

Cameron is a staff writer here at Skillcrush, and spends most of her time writing and editing blog posts and Ultimate Guides. She's been a freelance writer, editor, and author for going on a decade, writing for some of the world's leading web design and tech blogs. When she's not writing about design, she spends her time writing screenplays and making films (and music videos for rock and metal bands!) in Vermont's Northeast Kingdom.