Is Python right for you?
Tags: python, webdev, career, beginners
Published: 2020-05-22 21:48:36

Though, Python is one of the most loved languages in recent years. Is it the right choice for you or for your career? 
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/pgp1po4urvt8bemmk2r1.jpg)
<figcaption>Photo from wallpaperaccess.com</figcaption>

<h1>Why Python is popular?</h1>
No doubt, Python is booming like hell, it has the most number of tags in posts on almost every platform. Most of the resumes have Python on it. And there are many reasons for it.

**Beginner friendly**
Python has the most elegant syntax. It is a lot easier than many other languages like for example, you don't have to declare the data type of a variable also a variable used as an integer can be used as a string according to the need.
*If you are not from a programming background and just want to experience coding, then Python is the best option.* It’s easy to read, learn, and understand.

**Vast Library Support**
Python is an ocean of libraries and modules.
*Numpy*
*Pandas* 
*TensorFlow*
*Pytorch*
are some of them and there are very fewer chances that Python doesn't have a library for your task.

**Been around for a long time!**
 Python was conceived in the late 1980s, and its implementation was started in December **1989** by *Guido van Rossum*. It is much older than many people think. 
If you search for the solution of a problem in Python, there are high chances that you will find it in a few clicks because someone has searched for it in the last couple of years.
<h1>Why "Not Python" ?</h1>
**Now, after having many beautiful features, Python still may not be the right choice for you. Let me take you through some of the facts!!**

**Slow**
It is slower than many other languages. Speed is one of the biggest problems in Python as speed is the main concern for the projects.

**Memory Consumption**
Due to its flexibility in data types and other packages, Python consumes a lot more memory than languages like C, C++, Java. So again, Python fails at memory-intensive tasks.

**Database Access**
There is a whole lot of limitations in accessing the Python Database, it is *quite underdeveloped* and *primitive*.
Enterprises need flawless interaction of data for their projects but Python has high risks.

**Mobile Development**
Everyone doesn't have a desktop but they have mobile phones. It is necessary to build mobile responsive websites so that it reaches to maximum people effortlessly.
For desktop and server platforms, Python has been successful. However Python is rarely used for Mobile Development, it is *significantly weaker* than other languages and *not at all optimum*.
The two major platforms:- IOS and Android do not support Python as an official programming language.

**The most important**
Though Python has got a lot of love from Developers, very few or none of the Enterprises are completely backing up Python as their core language for making software.
It is important for a language to be backed by MNCs and huge Enterprises to flourish.
**If you want to be a core software developer, then you have to dig a little more and analyze the current industry situation of Python.**

<h3>On the other hand!</h3>
In fields like Research, Automation, and Data Science Python is very useful because here, __the work is done via codes and APIs, not by writing the code.__
Many data extraction and testing tasks can be done by using Python’s rich libraries of packages efficiently.
<ul><li>NumPy,PyTorch, Scikit-Learn are some powerful libraries for Data Science</li>
<li> TensorFlow is used in almost every Google application for machine learning.</li>
<li>NLTK is an Open source Python module used for research and development in natural language processing and text analytics with distributions for Windows, Mac OSX, and Linux.</li>
</ul>
**Choosing Python completely depends on the direction where you want to go in the future.** Clearly, Python is a very useful language in some specific field. But,
**For core programmers who only want to work on code, Python may not be the best choice.** There are better options open for you.