History of Python: Inception and Development
==================================
When we talk about the history of Python, we cannot miss ABC programming language because it was ABCs influence that led to the design and development of programming language called Python.

In the early 1980s, Van Rossum used to work at CWI (Centrum voor Wiskunde en Informatica) as an implementer of the programming language called ABC. Later at CWI in the late 1980s, while working on a new distributed operating system called AMOEBA, Van Rossum started looking for a scripting language with a syntax like ABC but with the access to the Amoeba system calls. So Van Rossum himself started designing a new simple scripting language that could overcome the flaws of ABC.

Van Rossum started developing the new script in the late 1980s and finally introduced the first version of that programming language in 1991. This initial release has module system of Modula-3. Later on, this programming language was named ‘Python’.

History of Python: Story behind the name
==============================
Often people assume that the name Python was written after a snake. Even the logo of Python programming language depicts the picture of two snakes, blue and yellow.  But, the story behind the naming is somewhat different.

Back in the 1970s, there was a popular BBC comedy tv show called Monty Python’s Fly Circus and Van Rossum happened to be the big fan of that show. So when Python was developed, Rossum named the project ‘Python’.

Python history: A timeline of different versions release
=======================================
The first ever version of Python(i.e. Python 1.0) was introduced in 1991. Since its inception and introduction of Version 1, the evolution of Python has reached up to Version 3.x (till 2017).

Here is the brief chart depicting the timeline of the release of different versions of Python programming language.

Python Documentation by Version
==========================
Some previous versions of the documentation remain available online. Use the list below to select a version to view.

Python 3.8.2, documentation released on 24 February 2020.
Python 3.8.1, documentation released on 18 December 2019.
Python 3.8.0, documentation released on 14 October 2019.
Python 3.7.7, documentation released on 10 March 2020.
Python 3.7.6, documentation released on 18 December 2019.
Python 3.7.5, documentation released on 15 October 2019.
Python 3.7.4, documentation released on 08 July 2019.
Python 3.7.3, documentation released on 25 March 2019.
Python 3.7.2, documentation released on 24 December 2018.
Python 3.7.1, documentation released on 20 October 2018.
Python 3.7.0, documentation released on 27 June 2018.
Python 3.6.10, documentation released on 18 December 2019.
Python 3.6.9, documentation released on 02 July 2019.
Python 3.6.8, documentation released on 24 December 2018.
Python 3.6.7, documentation released on 20 October 2018.
Python 3.6.6, documentation released on 27 June 2018.
Python 3.6.5, documentation released on 28 March 2018.
Python 3.6.4, documentation released on 19 December 2017.
Python 3.6.3, documentation released on 03 October 2017.
Python 3.6.2, documentation released on 17 July 2017.
Python 3.6.1, documentation released on 21 March 2017.
Python 3.6.0, documentation released on 23 December 2016.
Python 3.5.8, documentation released on 29 October 2019.
Python 3.5.7, documentation released on 18 March 2019.
Python 3.5.6, documentation released on 8 August 2018.
Python 3.5.5, documentation released on 4 February 2018.
Python 3.5.4, documentation released on 25 July 2017.
Python 3.5.3, documentation released on 17 January 2017.
Python 3.5.2, documentation released on 27 June 2016.
Python 3.5.1, documentation released on 07 December 2015.
Python 3.5.0, documentation released on 13 September 2015.
Python 3.4.10, documentation released on 18 March 2019.
Python 3.4.9, documentation released on 8 August 2018.
Python 3.4.8, documentation released on 4 February 2018.
Python 3.4.7, documentation released on 25 July 2017.
Python 3.4.6, documentation released on 17 January 2017.
Python 3.4.5, documentation released on 26 June 2016.
Python 3.4.4, documentation released on 06 December 2015.
Python 3.4.3, documentation released on 25 February 2015.
Python 3.4.2, documentation released on 4 October 2014.
Python 3.4.1, documentation released on 18 May 2014.
Python 3.4.0, documentation released on 16 March 2014.
Python 3.3.7, documentation released on 19 September 2017.
Python 3.3.6, documentation released on 12 October 2014.
Python 3.3.5, documentation released on 9 March 2014.
Python 3.3.4, documentation released on 9 February 2014.
Python 3.3.3, documentation released on 17 November 2013.
Python 3.3.2, documentation released on 15 May 2013.
Python 3.3.1, documentation released on 7 April 2013.
Python 3.3.0, documentation released on 29 September 2012.
Python 3.2.6, documentation released on 11 October 2014.
Python 3.2.5, documentation released on 15 May 2013.
Python 3.2.4, documentation released on 7 April 2013.
Python 3.2.3, documentation released on 10 April 2012.
Python 3.2.2, documentation released on 4 September 2011.
Python 3.2.1, documentation released on 10 July 2011.
Python 3.2, documentation released on 20 February 2011.
Python 3.1.5, documentation released on 9 April 2012.
Python 3.1.4, documentation released on 11 June 2011.
Python 3.1.3, documentation released on 27 November 2010.
Python 3.1.2, documentation released on 21 March 2010.
Python 3.1.1, documentation released on 17 August 2009.
Python 3.1, documentation released on 27 June 2009.
Python 3.0.1, documentation released on 13 February 2009.
Python 3.0, documentation released on 3 December 2008.
Python 2.7.17, documentation released on 19 October 2019
Python 2.7.16, documentation released on 02 March 2019
Python 2.7.15, documentation released on 30 April 2018
Python 2.7.14, documentation released on 16 September 2017
Python 2.7.13, documentation released on 17 December 2016
Python 2.7.12, documentation released on 26 June 2016.
Python 2.7.11, documentation released on 5 December 2015.
Python 2.7.10, documentation released on 23 May 2015.
Python 2.7.9, documentation released on 10 December 2014.
Python 2.7.8, documentation released on 1 July 2014.
Python 2.7.7, documentation released on 31 May 2014.
Python 2.7.6, documentation released on 10 November 2013.
Python 2.7.5, documentation released on 15 May 2013.
Python 2.7.4, documentation released on 6 April 2013.
Python 2.7.3, documentation released on 9 April 2012.
Python 2.7.2, documentation released on 11 June 2011.
Python 2.7.1, documentation released on 27 November 2010.
Python 2.7, documentation released on 4 July 2010.
Python 2.6.9, documentation released on 29 October 2013.
Python 2.6.8, documentation released on 10 April 2012.
Python 2.6.7, documentation released on 3 June 2011.
Python 2.6.6, documentation released on 24 August 2010.
Python 2.6.5, documentation released on 19 March 2010.
Python 2.6.4, documentation released on 25 October 2009.
Python 2.6.3, documentation released on 2 October 2009.
Python 2.6.2, documentation released on 14 April 2009.
Python 2.6.1, documentation released on 4 December 2008.
Python 2.6, documentation released on 1 October 2008.
Python 2.5.4, documentation released on 23 December 2008.
Python 2.5.3, documentation released on 19 December 2008.
Python 2.5.2, documentation released on 21 February 2008.
Python 2.5.1, documentation released on 18 April 2007.
Python 2.5, documentation released on 19 September 2006.
Python 2.4.4, documentation released on 18 October 2006.
Python 2.4.3, documentation released on 29 March 2006.
Python 2.4.2, documentation released on 28 September 2005.
Python 2.4.1, documentation released on 30 March 2005.
Python 2.4, documentation released on 30 November 2004.
Python 2.3.5, documentation released on 8 February 2005.
Python 2.3.4, documentation released on 27 May 2004.
Python 2.3.3, documentation released on 19 December 2003.
Python 2.3.2, documentation released on 3 October 2003.
Python 2.3.1, documentation released on 23 September 2003.
Python 2.3, documentation released on 29 July 2003.
Python 2.2.3, documentation released on 30 May 2003.
Python 2.2.2, documentation released on 14 October 2002.
Python 2.2.1, documentation released on 10 April 2002.
Python 2.2p1, documentation released on 29 March 2002.
Python 2.2, documentation released on 21 December 2001.
Python 2.1.3, documentation released on 8 April 2002.
Python 2.1.2, documentation released on 16 January 2002.
Python 2.1.1, documentation released on 20 July 2001.
Python 2.1, documentation released on 15 April 2001.
Python 2.0.1, documentation released on 22 June 2001.
Python 2.0, documentation released on 16 October 2000.
Python 1.6, documentation released on 5 September 2000.
Python 1.5.2p2, documentation released on 22 March 2000.
Python 1.5.2p1, documentation released on 6 July 1999.
Python 1.5.2, documentation released on 30 April 1999.
Python 1.5.1p1, documentation released on 6 August 1998.
Python 1.5.1, documentation released on 14 April 1998.
Python 1.5, documentation released on 17 February 1998.
Python 1.4, documentation released on 25 October 1996.

So that’s all about the history of Python programming.

Advantages of Python
=================
1. Easy to Read, Learn and Write
Python is a high-level programming language that has English-like syntax. This makes it easier to read and understand the code.

Python is really easy to pick up and learn, that is why a lot of people recommend Python to beginners.



You need less lines of code to perform the same task as compared to other major languages like C/C++ and Java.

2. Improved Productivity
==================
Python is a very productive language. Due to the simplicity of Python, developers can focus on solving the problem.

They don’t need to spend too much time in understanding the syntax or behaviour of the programming language. You write less code and get more things done.

3. Interpreted Language
==================
Python is an interpreted language which means that Python directly executes the code line by line. In case of any error, it stops further execution and reports back the error which has occurred.

Python shows only one error even if the program has multiple errors. This makes debugging easier.

4. Dynamically Typed
================
Python doesn’t know the type of variable until we run the code. It automatically assigns the data type during execution. The programmer doesn’t need to worry about declaring variables and their data types.

5. Free and Open-Source
====================
Python comes under the OSI approved open-source license. This makes it free to use and distribute. You can download the source code, modify it and even distribute your version of Python. This is useful for organizations that want to modify some specific behaviour and use their version for development.

6. Vast Libraries Support
===================
The standard library of Python is huge, you can find almost all the functions needed for your task. So, you don’t have to depend on external libraries. But even if you do, a Python package manager (pip) makes things easier to import other great packages from the Python package index (PyPi). It consists of over 200,000 packages.

7. Portability
=========
In many languages like C/C++, you need to change your code to run the program on different platforms. That is not the same with Python. You only write once and run it anywhere. However, you should be careful not to include any system-dependent features.

Disadvantages of Python
===================
1. Slow Speed

We discussed above that Python is an interpreted language and dynamically-typed language. The line by line execution of code often leads to slow execution. The dynamic nature of Python is also responsible for the slow speed of Python because it has to do the extra work while executing code. So, Python is not used for purposes where speed is an important aspect of the project.

2. Not Memory Efficient
To provide simplicity to the developer, Python has to do a little tradeoff. The Python programming language uses a large amount of memory. This can be a disadvantage while building applications when we prefer memory optimization.

Any doubts in Python advantages and disadvantages till now? Mention in the comment section. We will be happy to help you!!

3. Weak in Mobile Computing
Python is generally used in server-side programming. We don’t get to see Python on the client-side or mobile applications because of the following reasons. Python is not memory efficient and it has slow processing power as compared to other languages.

4. Database Access
Programming in Python is easy and stress-free. But when we are interacting with the database, it lacks behind. The Python’s database access layer is primitive and underdeveloped in comparison to the popular technologies like JDBC and ODBC. Huge enterprises need smooth interaction of complex legacy data and Python is thus rarely used in enterprises.

5. Runtime Errors
As we know Python is a dynamically typed language so the data type of a variable can change anytime. A variable containing integer number may hold a string in the future, which can lead to Runtime Errors. Therefore Python programmers need to perform thorough testing of the applications.

Summary
=======
Python is a simple, versatile and a complete programming language. It is a great choice for beginners up to professionals. Although it has some disadvantages, we can observe that the advantages exceed the disadvantages. Even Google has made Python one of its primary programming languages.


Comments

Post a Comment

Popular posts from this blog

Python pandas

Python class IX