At this point, it is worth mentioning that every language fits into a specific category.
There are three categories of languages:
Programming languages
Scripting languages
Markup languages
Programming languages are used for writing logical sets of instructions for computers to execute and solve a problem.
Programming languages are written in a human-readable form but get converted to machine code (binary).
And this conversion happens with the help of a compiler, which fully translates at once all the instructions written in a high-level programming language into something the computer's CPU can easily understand.
Once the instructions are in a machine-readable form, the computer executes them, and they can run on the machine.
Scripting languages go hand in hand with programming languages – you can think of them as a subset or subcategory of programming languages.
The main difference between programming and scripting languages is how each gets compiled.
Scripting languages get intrerpreted rather than compiled.
Scripting languages use an interpreter which translates each instruction, executes it, and then moves on to the next instruction and continues to do the same line by line instead of all at once as a compiler does.
Markup languages are presentational languages and not programming or scripting languages. They are entirely different since they don't involve logical processing.
Markup languages are languages used for defining, describing, and structuring data on a web page. They also lay out and style data on a page.
In the following sections, I list some of the most popular languages that beginners choose to learn. I also list their use cases and some resources for you to get started learning them.
HTML and CSS are not technically programming languages, but according to the Stack Overflow developer survey for 2022, they rank first as the most popular languages for people learning to code.
HTML and CSS are markup languages, and you use them to create static web pages.
They are two languages you need to learn if you are interested in becoming a frontend developer. You can also learn them alongside JavaScript to add interactivity to the static pages you create.
HTML (which stands for HyperText Markup Language) defines the structure and content of a web page. So, the paragraphs, headings, lists, forms, and links you see on a page, along with their hierarchies, are all HTML code.
And thanks to the latest version of HTML, HTML5, you can embed images, videos, and audio in web pages eliminating the need to use extra plugins like you had to in the past.
CSS (short for Cascading Style Sheets) styles HTML elements. It is responsible for presenting content in a visually appealing way.
CSS code enables all the different colors and fonts. The sizing of elements and how those elements get displayed on the page. The page layout and how items get arranged next to one another.
To learn HTML and CSS, check out the following resources:
According to the Stack Overflow developer survey for 2022, JavaScript has ranked first as the most commonly used programming language for ten consecutive years. And it is the second most popular language for people learning to code.
JavaScript (not to be confused with Java) is a scripting language that lets you add interactivity and dynamic behaviors to otherwise static web pages.
Some interactive features JavaScript can add are:
A map with a user’s current location
A message shown to a user once they land on the page
A change on the page based on user input
An animation when a user clicks a button
A smooth scroll effect when there is a button to scroll back up to the top of the page.
Mouseover effects
One of JavaScript's strengths as a language is that you don't need to compile your code to see the results of your work.
Javascript is built in and runs in browsers, meaning you don't need to install it on your local machine and go through a complicated and error-prone installation process.
JavaScript is used primarily for client-side programming and server-side scripting.
Specifically, JavaScript is used for frontend web development and even backend web development with the help of Node.js, a JavaScript runtime environment for running JavaScript on a server and not just the browser.
Knowing JavaScript is a must if you want to work as a frontend developer, and it is a popular language of choice for backend and full stack web development roles.
To learn more about the differences between frontend and backend web development, give this article a read. And to learn what the job of a full stack web developer entails, give this article a read.
Besides creating complex web applications, JavaScript is also used for creating browser games.
To learn JavaScript, check out the following resources:
Python is a general-purpose server-side scripting language. And according to the Stack Overflow Developer Survey for 2022, it is the third most popular language for people learning to code.
Python is a great language for beginners thanks to its readable, intuitive, concise, and beginner-friendly syntax.
It is a popular language when working with large amounts of data, so it's often used for machine learning, data science, data analysis, and data processing.
It is also the language of choice for web scraping. Web scraping is an automated technique that extracts, collects, and processes large amounts of raw data from the web.
You can also use Python for backend web development to create web applications with the help of frameworks such as Django and Flask.
In addition, Python is a popular language for test automation.
Instead of writing all the tests for your programs manually, you can rely on automation tools, Python libraries, and Python scripts to get the job done.
To get started learning Python, check out the following recourses:
SQL is short for Structured Query Language.
You will likely hear it pronounced one of two ways – "S. Q. L." (ess-kew-ell) or "sequel" (like a sequel to a movie).
Either way, SQL is a language used for working with databases and any job that involves storing, managing, accessing, and analyzing data. It is one of the languages of choice for data scientists, data analysts, statisticians, and marketers.
Specifically, with SQL, you can access, query, manipulate and interact with data stored in relational databases.
A database is an electronic storage localization for data. In databases, you can easily retrieve and search through your data.
And a relational database stores data in a structured and tabular format. That is, it stores information in tables (which you can think of as storage containers for the data) organized in columns and rows. All data items stored have pre-defined relationships with each other.
With SQL, you can write database queries to perform any CRUD (Create, Read, Update, Delete) operations on the data.
It is worth mentioning that SQL is not technically a programming language - you cannot build web applications or software tools using it. It is a query language and a tool used for managing relational databases and performing operations on the data stored in them.
And although it ranks fifth as the most popular language for people learning to code according to the Stack Overflow Developer Survey for 2022, it ranks third as the most popular language for professional developers.
So, it is a good idea to learn SQL as you may need to use it in a professional setting.
To learn SQL, check out the following resources:
In the early 1980s, Bjarne Stroustrup created a language influenced by the C programming language. It could get close to the machine hardware and do demanding low-level computational tasks, but it also provided a higher level of abstraction without losing the low-level efficiency of C.
So, the language 'C with classes' was created, and in 1984 'C with classes' was renamed C++.
C++ is a superset of C and provides additional capabilities to the C language.
C++ allows the programmer close access to and manipulation of the machine while providing efficiency and high performance for large-scale systems. At the same time, it is higher level with enough abstraction away from the machine.
C++ is both a procedural and an object oriented programming language. OOP divides a program into objects.
Everything gets organized and divided into smaller groups of related parts or objects, which are an instance of a class, following a bottom-up approach.
This programming style creates more readable and usable code that is easier to maintain while providing better data security.
C++ is a popular language for:
creating game engines
creating computer graphics
creating applications
creating VR applications
creating web browsers such as Google Chrome, Mozilla Firefox, Safari
creating web browser extensions - the Google Search Engine is built in C++
According to the Stack Overflow Developer Survey for 2022, it ranks sixth as the most popular programming language for people learning to code. And it is a great language if you want to get a software engineering job and develop programs and applications.
To learn C++, check out the following resources:
Java is an object-oriented, general-purpose programming language whose syntax is based on the C and C++ programming languages.
One of the language's advantages is its portability. Portability in computing means that programs get written once on one machine and can be transferred and run smoothly on another.
The Java Virtual Machine lets Java run on any device and operating system.
Java is used for:
Building mobile applications for the Android Operating System
Backend web development
Game development
Creating embedded systems
Building desktop applications
Building enterprise-level software tools for the banking industry
Building artificial intelligence and Internet of Things (or IoT) devices
Keep in mind that Java is not the same as JavaScript – they are in no way related to each other despite having the word 'Java' in their names.
JavaScript is an interpreted scripting language that runs in the browser and doesn't need to be compiled.
Java uses a combination of a compiler and an interpreter and runs on machines - not in browsers.
According to the Stack Overflow Developer Survey for 2022, Java ranked 4th as the most popular language for people learning to code.
Java coding skills can help you get a job as a software engineer, a web developer, and an android developer.
To start learning Java, check out the following resources: