Chapter 5: Intro to Programming Languages

Chapter 5: Intro to Programming Languages#

How do you know what Programming Language to learn? Do you need to learn more than one Programming Language, and if so in what order should you learn them?

While I can't answer these questions for you, I can give you the resources and some guidance so you can answer those questions for yourself.

In this chapter, we will discuss the state of Programming Languages, which ones are the most heavily used, and what they are used for. We will look at recent job postings for programmers, going through the requirements to decipher what Programming Languages the job might require.

All of the Exercises in this chapter use different websites to glean more information. Unlike the Exercises in the previous chapters, which have asked you to open HTML files or the DevTools, the Exercises in this chapter are more about introducing you to online tools. I hope to show you how to use these tools. Then, depending on your level of curiosity on the subject, you can use these tools to answer questions specific to your interests or needs.

What is a Programming Language?#

Before we begin, I want to define what a Programming Language is. So far the only Programming Language we've introduced is JavaScript; HTML and CSS are both markup languages.

Put very simply, a Programming Language is a language that is used to write a set of instructions. These instructions are written to produce some output. A programmer is someone who writes these instructions.

You might be wondering, but aren't HTML and CSS just a set of instructions telling the browser how to build a web page? This is a natural point of confusion, while there might be some theoretical debate here; HTML and CSS are not considered "Programming Languages."

How do I know what Programming Language to learn?#

You can approach this question a couple of different ways. One is to look at the most popular Programming Languages. Several helpful resources collect information about Programming Language popularity. We will look at two: Stack Overflow's Developer Survey Results, and GitHub's Octoverse survey.

Stack Overflow's Developer Survey Results: Popular Technologies
GitHub's Octoverse: Top Languages Overtime

Stack Overflow includes non-programming languages, like HTML, CSS, and SQL. Also, Stack Overflow looks at the last year, 2019 at the time of writing. GitHub looks at the last 4 years and only includes Programming Languages.

You can see some patterns between the Stack Overflow and Octoverse charts. The most obvious is that JavaScript is at the top of each list. This shouldn't be a surprise after learning about JavaScript in the previous chapter.

Java and Python are also growing in popularity. Python, in particular, has gotten lots of buzz recently.

Ruby's popularity seems to be going down, and the new kid on the block is something called TypeScript.

To get an even better picture of what's happening, let's use Google Trends, which tracks Google searches. In Google Trends, you can define the search term, period, and location. We will play around with these options, investigating and comparing different programming languages in the next exercise.

1. Open the Google Trends website.

2. If you haven't played with Google Trends, get ready to have some fun. For someone who likes data, Google Trends is one of my favorite websites.

Let's start by comparing Python on a US level - see chart here.

You can either click the link I've included or if you'd like, type JavaScript and compare it with Python. Make sure you select the "Programming Language" term though and not just the word "Python." Otherwise, you'd be comparing JavaScript to the snake.

I am using the default search settings, which has me looking at the US in the last 12 months.

JavaScript vs. Python, US, last 12 months

Notice that even though JavaScript is the more "popular" Programming Language, Google Trends shows that Python is searched more often. Stack Overflow uses a survey of developers to gather its data, and GitHub bases its data on the "amount of code written" type measurements. This upturn in Python searches may support the buzz that Python is on the up-and-up.

3. Let's switch it up and look at JavaScript vs. Python, but this time worldwide, and over the last 5 years - see chart here.

JavaScript vs. Python, Worldwide, last 5 years

Looks like not long ago, JavaScript used to be more searched than Python! Additionally, there are still lots of countries where folks search more for JavaScript than they do Python.

It's impossible to explain these differences completely. But it's a good guess that Python is "growing" in popularity, and the rate at which it's growing varies depending on where in the World you are.

  1. Now let's look at PHP, in the US, over the last 5 years - see chart here. GitHub and Stack Overflow show that PHP isn't growing, but it is not obvious if PHP's "popularity" is decreasing.

PHP, US, last 5 years

Google Trends gives a little more insight into what's going on with PHP. Depending on how much weight you give searches of the term "PHP," it might be a reasonable guess that PHP's popularity is decreasing. Or, at least there's some evidence that suggests it is.

No discussions yet