DEV Community

Cover image for Why Python is not the programming language of the future?
Chaitanya Prabuddha
Chaitanya Prabuddha

Posted on • Edited on

Why Python is not the programming language of the future?

What is Python?

Python is an interpreted high-level general-purpose programming language. Python's design philosophy emphasizes code readability with its notable use of significant indentation.

(Credits - Wikipedia)

Basically you can do Backend, AI, Machine Learning, Sever Programming with this language. It is also one of the best languages to learn as a beginner because it is very easy to learn, even for a complete beginner.

Why Python is so popular?

Python was is a very old language and as with any other programming language, it took a lot of time to get it fame. As by today python is one of the most used languages used in the codesphere {Word Made By Me, LOL}. Yeah, I know python is great but is it will be great forever? No, I don't Think so as there are already many languages that are better than python. In this article, we will take about this.

Why Python is great?

Easy To Use

If anyone of us ever used python, we know that how easy is it to use python not only that it is very human readable i.e. if you give this code to anyone who even doesn't know an A about programming, they will be able to at least read and understand something what this language is going to do.

Also there is no need to specify the data type. We just need to declare the variable and it will automatically understand form that whether its a float, integer or a boolean value.

Already in the Enviroment

According to the Stackshare page for Python, there are 6,200 companies using Python in the real world. Companies like Google, Facebook, Discord, Microsoft and Many Many Others uses python as one of its main programming language.

As it is used by many companies, it makes sense to use learn this language for now.

I Started A Newsletter, Click Here To Subscribe
More information Down At The Last

Old & Reliable

As Python is so old, 25 years to be numeric, It has already made its way in the hearts of developers. It has not only grown a lot in these last decade but it also has became developer's choice as a backend, AI, Machine learning or something else programming language. It has proved Everyone that it is reliable as a programming language.

If you have any issue while you’re coding in Python, There is a probability that you can fix it with a google search. Simply because somebody will have already faced your problem and written something helpful about it.

Fact- over 20% of StackOverFlow Questions are tagged with python

*Versatile *

Versatile means it is easy to find answers of problem. Since Python has been around for so long, developers have made a package for every purpose. Whichever Programming Problem, you’re trying to manage, chances are that there is a Python package for it out there made by expert developers.

Because of this Python stayed on top of recent developments, can be seen from the surge in Machine Learning and Artificial intelligence over the past few years.

Downsides of Python, or why it isn't great?

Speed
Python is slow, Very Very Slow. On average, 2–10 times slower than to complete a task with Python than with any other language.

Every programming language can be described in two ways- code delivery speed and performance -

Delivery speed-
In this Python is one of the best languages to work with rather than Perl any other programming language can't beat this language. In this, no doubt that Python absolutely outperforms other languages in terms of delivery speed.

Performance-
In this case, in my experience python doesn't make its way to the top. It generally don't performs fast in Data Science & Web Development, but if you optimized the code enough well than for most applicant, it will be enough fast.

I Started A Newsletter, Click Here To Subscribe
More information Down At The Last

Mobile Development

We can see the transition of python from web, data science, artificial intelligence and machine learning to mobile development as well.

Originally this was not made for mobile development, but as the time passed many packages like KIVY was made, which made python capable of doing mobile development.

Runtime Errors

A Python script isn’t compiled for the first time and then executed. Instead, it compiles every time when you execute it, so any coding error occurs itself at runtime. This leads to poor performance, time consumption, and the need for a lot of tests. Like, a lot of tests.

What can Replace Python in Future

There are a few modern languages than have the potential to replace python-

1.Go/Golang - It is great for beginners made by google, and it is so simple that it’s even easier to maintain the code.

Fun point: Golang developers are the highest paid developers on the market.

2.Rust - It solves the performance issue that we face with python a lot. It is also the most-loved programming language of the last few years.

3.Node.js - In the point of view of backend this language can also replace python because its way more fast than python.

Finally this big topic is over now, Now I would like to talk about my Newsletter -

I have started a newsletter in which you will get Email twice a week directly from me. I will send you latest tech, coding & Other useful information. I will also be spending a one riddle each time and the first to complete the riddle will get a small gift from me

Alt Text

Follow me on Twitter Also.

Top comments (6)

Collapse
 
cjsmocjsmo profile image
Charlie J Smotherman

Node.js is a runtine environment not a modern language, javascript is. Javascript is older than python, and of the three modern languages you mention only Rust can be used for mobile development.

Using pypy and or cython can give your python programs a significant speed boost

Collapse
 
line profile image
Chaitanya Prabuddha

I wrote the blog after verifying as much as i can. But if its wrong, I will take care of it from next time.

Collapse
 
rehman000 profile image
Rehman Arshad • Edited

Python is a higher level programming language so there is always a performance cost associated with that. For example Java utilizes the JVM (Java Virtual Machine) which basically ensures you code can run on virtually any platform. You write code once, and it would work on any platform. The issue here is that the JVM is also criticized as one of the reasons why Java is slow compared to lower level languages like C, and C++.

Another thing to consider is that higher level programming languages like Java and Python also have garbage collection which also adds more overhead in speed.

Rust is a much lower level programming
language that is basically trying to overtake C++, since it is object oriented (unlike C) and it has the performance speed benefits of being lower level and has still modern creature comforts like garbage collection (that is fast) so you get the best of both worlds.

The issue with Rust is that it's extremely new and it will take time for developers to take advantage of it, and create tool sets and packages (similar to how the community develops packages in Python) but I'm seeing amazing progress being here.

Collapse
 
matheroy profile image
matheroy

Even with the Java write once perspective, you still have to tune your code to run efficiently on the platform of choice. I think that you get better multi-platform with python (mobile excepted) than people would expect.

Collapse
 
line profile image
Chaitanya Prabuddha

True

Collapse
 
hamidb80 profile image
Hamid Bluri

Take a look at Nim.

It's as fast as C and even more readable than Python.

With it's meta programing features and don't think you couldn't love it.