Python year in review 2016

- by just another Python lover

From moving to GitHub to the release of Python 3.6.0, 2016 has been an interesting year for the Python programming language. We had some uplifting moments like K Lars John’s keynote at Pycon and some downers like Zed Shaw’s article “The case against Python 3”. It was a good year for static typing, asynchronous programming and we finally got the long awaited f-strings. Here’s how I saw it all happening in the last 12 months.

December, 2015

Python’s year started with a bang with the language getting more traction than ever. Particularly, in December 2015, the keyword “Learn Python” overtook “Learn Java” for the very first time. Python maintained this lead throughout this year and it is ending 2016 as the clear winner. This is certainly great news for all of us.

January 2016

New year’s day was dramatic with Brett Cannon announcing in the Python core workflow mailing list that Python’s repository will be moving to GitHub. This caused a bit of a controversy as the open source GitLab was also under consideration. Brett Cannon defended his decision in more detail in one of his blog posts citing familiarity with the GitHub platform and Guido’s input as the major driving forces behind the decision . Guido later announced in Pycon that the move will happen by the end of this year, even though this doesn’t seem to be the case so far.

One of the biggest defining events this year was the American elections. We have all heard the president elect’s campaign slogan “Make America great again”. In a funny twist to the campaign, a computer science major at Rice University created a Python derived language called TrumpScript with the slogan “Make Python great again”. The features of this language deviate from Python in ways that Mr. Trump would personally approve. For example:

There are no import statements allowed. All code has to be home-grown and American made.

If the running computer is from China, TrumpScript will not compile. We don’t want them stealing our American technological secrets.

By constructing a wall (providing the — Wall flag), TrumpScript will refuse to run on machines with Mexican locales

For more such gag reels, check out their awesome repository on GitHub, which has more than 5000 stars now.

February 2016

The discovery of the gravitational wave was one of the landmark science discoveries in 2016. The experiment detected waves coming from a black hole merger 1 billion year ago, confirming Einstein’s prediction.

Python has always been a favorite among the scientific community. The team of scientists involved in the discovery used Python extensively. Most notably, the discovery plots that appear in the groundbreaking paper are made in matplotlib, a Python library for plotting. For a complete discussion of Python’s role in this discovery, see this blog post.

April 2016

As all of you know, Python 3 came out in 2008 and was intentionally backwards incompatible with Python 2. While this move made the language better, more modern and future ready, it has also created major headaches in the past 8 years. Many major libraries had to be ported and the porting process is still going on.

As if to rub salt into the wound, in a mail to the Python development mailing list, Victor Stinner announced that the next major version of Python will be Python 8 and it will break backwards compatibility again! But it was soon discovered that it was April first and the mail was nothing more than a sadistic April Fool’s prank. We all had a good laugh.

Since we are on the issue of Python 2 and 3, it is worthwhile mentioning that many operating systems had not adopted Python 3 at that time. This is one of the major reasons which was blocking Python 3 adoption in the community. In April, the new LTS of Ubuntu, codenamed Xenial Xerus, came out and it included Python 3 as the default Python distribution, answering many of our prayers.

May, 2016

The debate between Python 2 and 3 is never ending, but the PSF had declared that Python 2.7 will reach end of life in 2020. As if to bolster this decision, a website called pythonclock.org went online in May. The website is counting down to the end of life of Python 2.7. The website recommends Pycon 2020 as the venue for this major event and talks about an epic after party celebrating Python 2’s contributions to the Python community.