Right now, Python is one of the trending programming languages. Most of the developer wants to add Python as a star in their tool-box. But if we want to understand python from scratch then we can’t skip the great history of Python. So let’s get starts our journey with a simple question, What is the similarity in Python and English Alphabet? Don’t know? I will tell you that at the last of this post. But if you read this post you can also get it easily. Try Try……
![Guido van Rossum](http://localhost/wordpress/wp-content/uploads/2020/04/Guido-van-Rossum-300x240.jpg)
Python was firstly introduced by Guido Van Rossum ( “Benevolent dictator for life” (BDFL) Of Python) in 1991 and officially released in 1994. But the development process of Python began in the 1980s. Python’s design is influenced by the ABC language (general-purpose programming language and programming environment) which can be considered as the predecessor of Python. Creator of Python Van Rossum was previously worked on the ABC language at Centrum Wiskunde & Informatica (CWI) in the Netherlands. He worked that time in a project at the CWI, called Amoeba, a distributed operating system. The ABC language was capable of exception handling and interfacing with the Amoeba operating system. During December 1989, Rossum was looking for a hobby project and he started working on a new interpreter for a new language. And the result was Python.
![python old logo](http://localhost/wordpress/wp-content/uploads/2020/04/Pyhton-2006-300x88.png)
Sharing his experience of ABC and Amoeba in an interview Rossum said, “In the early 1980s, I worked as an implementer on a team building a language called ABC at Centrum Voor Wiskunde en Informatica (CWI). I don’t know how well people know ABC’s influence on Python. I try to mention ABC’s influence because I’m indebted to everything I learned during that project and to the people who worked on it.” He also mentioned, “I remembered all my experience and some of my frustration with ABC. I decided to try to design a simple scripting language that possessed some of ABC’s better properties but without its problems. So I started typing. I created a simple virtual machine, a simple parser, and a simple runtime. I made my own version of the various ABC parts that I liked. I created a basic syntax, used indentation for statement grouping instead of curly braces or begin-end blocks, and developed a small number of powerful data types: a hash table (or dictionary, as we call it), a list, strings, and numbers.”
![Python](http://localhost/wordpress/wp-content/uploads/2020/04/Python-Transparent-Background-300x150.png)
This clears that Python’s design is really influenced by ABC. ABC only inspires him to try out his own version of it. Furthermore, he improved features which he doesn’t like in ABC and later he added some more interesting things to make it perfectly a modern high-level programming language. A random hobby project started at CWI and inspired by ABC becomes a successor.
Taking about the official release of Python In February 1991, Rossum published the code (labeled version 0.9.0) to alt.sources which is considered as the first introduction of Python language. In 1994, Python 1.0 was released with new features like- lambda, map, filter, and reduce which is considered as the official release of Python. Python 2.0 was released in October 2000 which added new features like- list comprehensions, garbage collection systems.
![monty python and flying circus](http://localhost/wordpress/wp-content/uploads/2020/04/MP-214x300.jpg)
Behind the Name “Python”:
One interesting thing about python is its name. Most of the people think that Python’s name comes after the name of snakes, which is totally wrong. But to find the root of it you should go back in 1990’s British humor. The inspiration for the name came from BBC’s TV Show – ‘Monty Python’s Flying Circus’, He said in an interview, “I decided to write an interpreter for the new scripting language I had been thinking about lately a descendant of ABC that would appeal to Unix/C hackers. I chose Python as a working title for the project, being in a slightly irreverent mood (and a big fan of Monty Python’s Flying Circus).” So as Rossum was a big fan of the TV show and also he wanted a short, unique, and slightly mysterious name for his invention and hence he named it Python.
Zen Of Python:
One more interesting thing you many don’t know is The Zen of Python. It is a collection of 19 “guiding principles” for writing computer programs that influence the design of the Python programming language. Software engineer Tim Peters wrote this set of principles and posted it on the Python mailing list in 1999. Peters’s list left open the 20th principle “for Guido to fill in”, referring to Guido van Rossum. The vacancy for a 20th principle has not been filled and it remains vacant forever. Peters’s Zen of Python was included as entry number 20 in the language’s official Python Enhancement Proposals (PEP – the primary mechanism for proposing major new features, collecting community input on issues and documenting Python design decisions), which was released into the public domain. It is also included as an Easter egg in the Python interpreter.
#---------------------- #if you want to display Zen of Python interpreter import this #----------------------
Those 19 principles of Zen of Python are as follow:
1. Beautiful is better than ugly.
2. Explicit is better than implicit.
3. Simple is better than complex.
4. Complex is better than complicated.
5. Flat is better than nested.
6. Sparse is better than dense.
7. Readability counts.
8. Special cases aren’t special enough to break the rules.
9. Although practicality beats purity.
10. Errors should never pass silently.
11. Unless explicitly silenced.
12. In the face of ambiguity, refuse the temptation to guess.
13. There should be one — and preferably only one — obvious way to do it.
14. Although that way may not be obvious at first unless you’re Dutch.
15. Now is better than never.
16. Although never is often better than *right* now.
17. If the implementation is hard to explain, it’s a bad idea.
18. If the implementation is easy to explain, it may be a good idea.
19. Namespaces are one honking great idea — let’s do more of those!
So That’s it. This was a short discussion about the History of Python. If you remember, I asked you a question in the beginning that What is the similarity in Python and English Alphabet? I am sure that you got the answer. If not, the answer is both started with ABC :).
Have any doubts or suggestions? Please share in comments.