/ Learning to code

What programming language should you learn first?

Thinking about learning to code but not sure where to start? One of the most common questions we hear is, “What programming language should I learn first?”

The industry changes fast. And with over 600 possible languages to choose from, it can be overwhelming to sort through them and find the one that suits your needs. In the following video — and the rest of this article — we’ll do our best to set you up for choosing the best first programming language for yourself.

Before we can answer this question...

Before we dive into answering the question of what programming language you should learn first, there are a couple quick questions we want to address.

What are programming languages?

If you’re trying to decide which programming language to learn first, the first step is understanding what a program language is in the first place. The short answer, as defined in a recent blog post on what is a programming language, is that “programming languages are the tools we use to write instructions for computers to follow.”

Computers think in binary and programming languages help us translate 1s and 0s into something that can be more easily understood by humans. Programmers are the ambassadors between the worlds of humans and computers, and programming languages are the tools they use to tell computers what to do.

What if I choose the wrong programming language?

It’s also important to know, before you start learning your first programming language, that no matter what language you choose you’ll be learning valuable skills. There’s really no such thing as picking the wrong language.

Programming languages may look different on the surface, but they have a lot in common. They share similar patterns and structures and by learning one language you’ll be introduced to key coding concepts that will help you learn other programming languages in the future. Once you pick up your first programming language — no matter which you choose — it’ll be easier to pick others up.

You should also know that it’s not uncommon for a developer to move between different languages throughout their career as they are asked to solve different sorts of problems. You’re definitely not locked in to using the first programming language you choose. So don’t worry too much about focusing on whether you’re learning the best programming language. Instead, focus on gaining that foundational knowledge with whatever language you choose.

What programming language should you learn?

Now that you’ve got some background, it’s time to decide what programming language you should choose. There are a couple routes you can go with making this decision. The first is to choose a programming language based on your goal and the second is to choose a programming language based on what’s the most in-demand or popular in the industry.

Finding the best programming language for your goals

Why do you want to learn a programming language? Are you programming just for fun? Curious about what coding is like? Trying to build something specific or get a new job? Answering this question is a great way to get an idea of what language might be best to start with.

If you’re just learning for fun, pick any language you like! Some popular languages for those starting out include HTML, CSS, JavaScript, or Python. You can learn more about these in the following section.

If you’re at the very beginning of your coding journey, you'll want to learn basic markup languages like HTML and CSS just to get your foot in the door. These two are essential to front-end web development and can be used to design attractive webpages simply by adding some interactive elements.

Learning HTML and CSS is an excellent starting point for those who want to build websites from the ground up. Once you are familiar with HTML/CSS, you can move on to languages like JavaScript, Node, or React to give your website the functionality it needs. Keep in mind that you will need to showcase a diverse portfolio of your past projects to become a web developer.

Want to analyze data? SQL is a great option if you're looking for help with accessing data and Python and R are good starting places for data visualization. Ruby, JavaScript, and Python are useful for automating tasks.

If you’re looking to make a career transition or get a new job, talk to people in the industry you’re interested in. If you’re interested in mobile development, web design, data science, IT, AI, or another industry, reach out to folks in those communities and ask what a typical day looks like for them. What languages do they use and what do they recommend starting with? You can also join the Codecademy forums or our community on Facebook to ask for advice.

If you’re considering a career in coding, it’s recommended that you stick to mainstream languages when you’re getting started. They generate the highest demand in the tech industry, with countless job openings listing them as required skills for entry-level developers.

Check out the following list of some of the most popular programming languages to learn more about them and what they’re used for. We've listed them here in alphabetical order.

C++

C++ is a powerful, all-purpose programming language used for building applications with faster performance and far more effective scalability. In fact, the basic foundation of most Windows software was written in C++.

C++ is ideal for managing resource-heavy applications like web browsers, operating systems, desktop apps, cloud computing, and even video games. It’s used in a variety of industries, including VR, robotics, software and game development, and scientific computing. The key features of this language are its cross-platform hardware support and adaptability to a changing internal environment.

C#

C# is Microsoft’s programming language. Being one of the most popular languages, it has since been adopted into the Windows, Linux, and iOS and Android platforms. C# is also known for having a huge collection of libraries and frameworks.

It is often the language of choice for game developers and mobile app creators, though it has also been implemented in enterprise software like Azure and IoT. If you’re interested in game design, you’ll most likely encounter C# when building assets in the Unity engine for a new game.

JavaScript

A dynamic programming language, JavaScript is used primarily in web development to design interactive, user-friendly websites. It provides stylized web pages with added functionality and allows brands to increase their user engagement by displaying animated elements on their websites.

This versatile programming language is the core component of web browsers and is suitable for most beginners who are curious about front-end web development or mobile game development.

Ruby

Ruby is general-purpose, dynamic programming language, most popularly implemented with the Ruby on Rails framework. Ruby on Rails is praised for its disruptive, server-side framework and for providing users with cutting-edge features, all thanks to its concise syntax and object-oriented support.

Although Ruby is a backend language, it is designed to be readable by people instead of just machines. It has turned into a staple language valued by many tech companies. On top of that, Ruby has attributed to the success of software implemented on Twitter, Airbnb, and GitHub.

Python

Python is another general-purpose programming language. It has played an important part in data science, machine learning, and web development. Python’s documentation library covers how to visualize and compile large quantities of data using Matplotlib, Pandas, and more. People have also used it to program desktop applications.

Python has a low barrier to entry. It’s simple but elegant, with many real-world applications — one notable example being artificial intelligence. As seen in web scraping, Python has the capability to extract a large amount of data.

R is another statistical programming language suitable for data analysis and visualization.

SQL

SQL (pronounced "sequel") is a data-driven programming language. Its purpose is to store information into separate data sets so you can retrieve them to generate accurate reports based on your search query. SQL is an absolute must for any aspiring data scientist, given that data science uses relational databases. However, it’s not the best language for building apps from scratch.

SQL allows marketers to translate and analyze business data to understand how well certain products perform on the market or which sales funnels are converting leads into customers. SQL is inputted into database systems like MySQL, Oracle, and MS Access for manipulating structured data. It identifies connections between multiple variables for creating new tables.

More resources for getting started

If you’re still unsure about which programming language to learn first, we’ve got a couple more tools to help you out.

The first is our sorting quiz! Take the quiz for a recommendation on which language is right for you. It’s kind of like a personality test, except that it gauges your programming preferences and finds the right language for you. Basically, it determines what language best matches your approach to problem-solving.

You can also check out our Career Path in Code Foundations. Code Foundations will introduce you to the world of code, explain the paths of web development, data science, and computer science, and help you make an educated decision about which path (and language) is right for you.

Whichever language you end up choosing, we’re excited you’re getting started with coding and we wish you all the best on your journey!


Get more practice, more projects, and more guidance.

What programming language should you learn first?
Share this