Python: The Origin Story

2019-10-15

People by night

Let's dive into the history of Python

Machine Learning, Data Sciences and Analytics

Those are the key terms that pull enthusiasts into the Python community nowadays and all that seems to be discussed on forums but where did the language come from and why has it become so popular?

Developing a solution to the issues he faced with the ABC programming Language, Guido van Rossum took on a hobby project to keep himself busy during his Christmas Break from CWI in 1989. The first version of this solution fixed most of ABC’s flaws and in February 1991, it was uploaded to alt.sources, bringing into the world a new scripting language under the name Python 1.0.

💡 Fun Fact: Python was named after Monty Python's Flying Circus and not the reptile that is seen in its logo!

Compatibility

Python's compatibility with several OS such as Windows, Mac and Linux is also one rationale for it being such a widely used programming language.

Success Factors

Authored by Tim Peters, the guiding principles of the language are known as The Zen of Python and describe the crux of what makes the language unique.

The notable points of The Zen List emphasize and detail the notions of beauty, simplicity, explicitness, practicality and readability. These are the design elements which make Python the coding language it is today and sets it apart from the competition.

Python has a readability and syntax that makes it relatively easy to use as it needs fewer lines of codes than other programming languages like C or Java to do the same task.

This is due to it being a high-level programming language that is dynamically typed, which basically means that the code is closer to the language of humans than it is to computers and you don’t have to specify every variable’s type.

It’s compatibility with several OS such as Windows, Mac and Linux is also one rationale for it being such a widely used programming language.

Python>>> import this
The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!

Popular and Future Usage

For startups, the factors of time and capital are vital to the decision-making process for choosing the language to base their application and systems on, as they are already dealing in a scarcity of resources. 

The ideal platform for rapid development, minimal coding and low implementation costs; Python has thus understandably become one of the top contenders in the contest for ideal programming languages due to it preserving both factors: time and capital, in the form of hours spent coding and funding allocated to related projects.

With over 4000 startups being formed internationally in just 2018 and attracting funding of over USD $14.6 Billion, one can predict several of them - such as Password Boss - adapting the language as the foundation to their businesses.

..The ideal platform for rapid development, minimal coding and low implementation costs..

Future-proof

Another key element that works to make any programming language future-proof is that of community. Unlike other lower-level languages, where the levels of expertise required result in higher barriers to entry for learning the language, the Python Community is huge and very vocal in forums such as StackOverflow and CodeAcademy so help for newcomers is readily available.

Machine Learning, Data Science, Finance and Web applications

Machine Learning, Data Science, Finance and Web applications are just some of the products of Python that we see being used on a much larger scale in coming years due to the powerful APIs and libraries available for all these fields.

One of such examples is TensorFlow, the open-source platform developed and released by Google for high-speed numerical computing and to create Deep Learning models, which is a testament to the potential of Python and its further usage in the near-future. SciKit-Learn, Pandas and Keras are similar tools based on Python that are instrumental in the field of Machine Learning, one which is already and will be exhibiting immense scope in the future.

Not even considering the multiple breakthroughs - that Python forms the backbone of - in other fields, just two in Machine Learning are sure to pique your interest:

Social Listening to identify, understand and summarize whatever your customers are commenting about you on Social Media.

The Self-Driving/Fully Autonomous Google car was partially trained to drive based on the aggregate of the data that you and other users have been entering on reCaptcha. Now you know why you picked out all those traffic lights and signs from images to prove you’re not a robot!

Will the future of self-driving cars be powered by Python?

Headlight of a a white car