Summary
The article advocates for Python as the top language to learn in 2020, emphasizing its versatility and relevance in object-oriented programming, machine learning, and various industries.
Abstract
The article "The Top Language to Learn in 2020" by [author name not provided] discusses why Python is the ideal choice for those looking to start or expand their programming skills in the new decade. The author highlights three reasons for this: Python's object-oriented programming (OOP) approach, its role as the gateway language for machine learning and AI, and its widespread use across multiple industries. The article provides a brief introduction to OOP concepts, such as abstraction, inheritance, polymorphism, and encapsulation, and explains their relevance in Python programming. It also mentions popular machine learning libraries, like Tensorflow, Keras, Theano, ONNX, and Pytorch, that rely on Python, making it an essential skill for those interested in these fields. Lastly, the author emphasizes the versatility of Python, citing its use in web development, finance, neuroscience, and mobility industries.
Bullet points
Hi guys! So 2020 has just rolled around. New year, new you, huh? And some of you may be interested in expanding your skill-set and learning how to write code.
I mean, There are so many languages out there, right? How many of you just have a gut feeling that if you had that one technical skill, you could manifest your fullest potential?
Well today, I’m here to share what I believe to be the greatest gateway language to becoming this fellow in the GIF above, in 2020. I will also slyly teach you a key concept taught by this language…
If you’re completely new to programming, and you want to skill-up fast and be versatile, then I strongly recommend that you start your quest with learning…

That’s right, Python. I previously featured the five top languages to learn in 2020 for a variety of aspiring, new software engineers. However, Python wins as the first choice for maximizing your potential in this upcoming decade. Whether you are new to programming, or are looking to skill up, the three reasons to explore Python are below.
As of 2020, understanding the concept of object oriented programming is essential to pick up other languages down the line. In Python, everything is an object.
Everything you ever code in Python will be made of either an “integer,” a “char” or a “float,” and these types are linked to the objects that you declare. But what’s an object? Well, an object can be thought of as a blob of data that has meta-data, and/or functions.
Meta-data is more often called “attributes” or “features,” and you can think functions as instructions that describe what the object can do.
For example, if I have a “bird” object, then a possible attribute/feature could be, “Beak” or “Feathers.” Likewise, possible methods or functions of a Bird object may include include “Fly” or “Sing.”
Learning the concept of objects is an important first step, because it teaches you how to abstract actions and features that might otherwise be vaguely represented. In fact, a cute acronym is “AIPE” (pronounced APE) to help you remember the four key elements of object oriented programming.
A: Abstraction — The presentation of “only relevant” information. For instance, in Python, you typically do not know how pointers are directly manipulating the memory address that stores the attributes and methods you define. You only care about defining a Bird with the attribute “hasFeathers” and the method “canFly.” Similar to driving a car, you only want to get from point A to point B. Few people know how the engine deeply works when they press the pedal, and few people will ever care to know.
I: Inheritance — The ability to set up the “is a child of” relationship. For example, if all birds fly (the mother / super class), then all subtypes or children of the bird class, such as sparrow, will inherit the method “toFly”.
P: Polymorphism — It literally means many forms, and enables concepts like “method overriding.” Think of the previous “Bird” class creating both a British House Sparrow and an Icelandic Puffin. Both will inherit the ability to Fly. However, the exotic child of Bird, “Icelandic Puffin,” will also have a new ability, “toSwim.” Thus, the puffin inheriting
E: Encapsulation — The ability to “hide” private data in a little “capsule,” preventing its visibility from public methods. In some ways, the use of a class to enclose protected ( _ ) and private ( ___ ) methods and attributes is done in Python:
class Bird:
def __init__(self):
#protected attribute
self._hasFeathers = True
#private attribute
self.__hasPrivateFeathers = TrueA protected variable can only be accessed by a class (in this case Bird) and it’s corresponding subclasses.
Meanwhile, a private variable can only be accessed by the class that it belongs to, and never by its subclasses.
Abstraction and Encapsulation are deeply intertwined, as are Inheritance and Polymorphism, respectively.
In the “programming world” these attributes are considered high level, and my recommendation stems from a pedagogical philosophy to first teach high level programming languages for ease and clarity before moving on to lower level languages like C. There are sure to be those who disagree with this philosophy, but starting with Python was how I began my journey at MIT in 2012, and I’ve seen it continue to work for multiple cohorts since then.
Learning these four AIPE traits of object oriented programming both prepares you to better grasp lower level concepts, and simultaneously allows you to deliver value almost immediately. In several Hackathons that I’ve either participated in or mentored, Python appeared most frequently and would be normally used by people who had learned the language within one year.
Python is the perfect gateway language for people seeking a job in Machine Learning. In fact, plugs into the most commonly used machine learning frameworks in 2020.
Opportunities that leverage applications of machine learning are only expected to increase in 2020, and gaining fluency with the primary tool to handle this type of data will give you a competitive leg up.
Tensorflow, Keras, Theano, ONNX and Pytorch all heavily rely on Python as part of they process. Specifically, both Theano and PyTorch are machine learning libraries that are heavily based on Python.
For the curious who want to go deeper, ONNX and Tensorflow are actually written in C++, but both use Python APIs to make working with them easier for the broad range of researchers, ML engineers, and data scientists who see to do this kind of work.
However, what if you don’t know if you want to do “this kind of work”? Or what if you don’t know where you want to go in life yet? Well, that’s fine, because…

Now you’re bound to find multiple websites online. Did you know that many of these platforms were built using Django? At Oracle, a classic “tech” company, when I was working on web development, I used Django, a Python library to build internal web applications.
When I was studying theoretical neuroscience in academia, we built experimental neural networks using Tensorflow, which utilizes NumPy.
Now in the mobility industry, I use libraries like “sci-kit Learn” and “Numpy” to process data for machine learning projects. Or, maybe you’re thinking about Finance?
A recent talk by JP.Morgan in 2017 revealed that their internal trading platform involves somewhere around 35 million lines of Python code!
Whether you’re split between biomedical engineering and finance, looking to explore web development, or considering a path in AI and ML, learning Python will give you access to a tool that can be used across multiple industries. I hope one of these three reasons gave you some motivation to get started and jump into a Python tutorial today.

For those of you rapid readers who just want to get to the heart of the matter, I’ve repackaged the three main reasons for why you should learn Python in 2020.
TL;DR:
1. Python prepares you for object oriented programming, a nice high level foundation for starting out your journey.
2. Python is used by most major machine learning and AI libraries.
3. Python is used across multiple industries. From finance to neuroscience, you’re bound to run into Python somewhere.
I would also be curious to find out what you think is the best gateway language for somebody aspiring to learn software engineering in 2020. I’ll make it a point to reply.
Benedict NeoA free curriculum for hackers and programmers to learn AI
Benoit RuizPractical tips for those who want to advance in their careers
Lars WiikMeasuring English Language Understanding of OpenAI’s New Flagship Model
Sufyan Maan, M.EngThink before you speak. Read before you think. — Fran Lebowitz