Why developers should learn Python

I recently started learning Python after reading a blog post on Simple Programmer talking about the benefits of learning Python. I am probably just over 2 weeks old in my knowledge of Python but I am compelled to share with you the things I have learnt so far and why I think every programmer should learn Python. In fact, I strongly believe that if you want to get into programming, Python should be the first programming language you learn.

Below is a summary of some reasons why I think every developer should learn Python.

Syntax is easy to read and understand

I am an experienced C# and PHP developer and this gives me the opportunity to sometimes compare both languages from a perspective of how easy it sometimes is to understand and quickly grasp both syntaxes. It is fair to say that C# being a strongly-typed language sometimes can have complex syntax which may take any experienced developer sometime to grasp. With PHP7.* we are starting to see PHP adopt even more complex features to its syntax. However, I can assure you that with Python the case is different.

Check out how easy it is to write a function in Python compared to C# or PHP.

Python

def foo():
print(“Hello World”)

No curly braces to worry about, no semi-colons to bother about in you line endings. If you are in the habit of forgetting to end your statements with a semi-colon, then Python will make programming a pleasure for you.

Declaring variables in Python is also a piece of cake. See example below;

name=”Eatcodesleepcode”

amout=25.90

That’s really all you need to do to declare a variable. Python is clever enough to know what data types your variables should be at run-time. Really cool.

 

Python is a multi-purpose programming language

For years of working with ASP.NET with C# and PHP with Laravel, I have mentally put myself in a box as a ‘web developer’ because I have mainly developed web applications using these programming languages. But with Python, I am starting to experience the freedom of being a ‘software developer’ who can develop any kind of app. It is true that you could develop desktop apps with PHP and C# but the ease of doing so in these languages cannot even be compared to how fast you can accomplish the same tasks with Python.

There are tons of Python libraries that you can just install and utilize to build all sorts of apps.  Motion detection, face detection, GIS apps, Machine Learning, Data Visualization, Web development, Desktop apps, Mobile apps, Games, Web scraping, Scientific calculations etc. The list is endless. In fact, I can’t think of any automated solution that cannot be built with Python.

Python is even very popular among the academic programming community and is being used for all kinds of research projects. During my university days, a number of lecturers used Python to accomplish many of their tasks.

 

Python is open source 

Python is open source which means it is free and open for anyone to contribute to it. Python, however,  is not just open source but also boasts of an active community of developers whose mission it is to promote, protect, and advance the Python programming language, and to support and facilitate the growth of a diverse and international community of Python programmers. They are called the Python Software Foundation.

I believe this reason is strongly responsible for the immense growth we have seen in Python over the years.  In comparison to PHP which is also open source, I do not know of a central group responsible for doing the same thing which Python Software Foundation does for Python. The PHP and Javascript community seem to have many people trying to lead without us having an actual organization to act as guardian of these languages.

 

Tons of resources to get started

Only a quick search on google about Python will show you loads of resources online that you can use to start getting your feet wet in Python. Various resources from books, videos, and blog posts are so many on the internet. So learning Python is very much within the reach of anyone willing to give it a shot.

Personally, I like to get premium resources when learning as I believe you always get what you pay for when it comes to learning. If you like premium resources you can find plenty of Python Tutorials on Udemy.

 

Python Web frameworks

One thing I find sometimes frustrating is the amount of PHP and Javascript frameworks that are constantly being released. The main issue I have here is how easy it is to get lost while trying to choose a web framework for your project if you want to build with Javascript or PHP.

Even more annoying is the fact that there really isn’t any organization responsible for drafting best practices for these languages so we end up with a free-for-all marketplace with all sorts of frameworks.

I was having a conversation with a work colleague who said he was not even going to bother learning any Javascript framework because they keep releasing new frameworks every week.lol. Not actually every week but you get the idea. So it can be a pain trying to keep up with the constant bombardment of new frameworks being released.

This is not the case with Python. So far I have identified Django and Flask as the leading web frameworks for Python Web development and each of these frameworks have various areas of strength depending on your project needs. If you happen to need any advice on a web framework to use in your Python project, you are likely to be directed to either Django or Flask. I think this makes things easy for beginners who may not be sure where to start.

 

Python makes it easy to grasp complex programming concepts

One thing I can say for sure about Python is that it makes it easy for you to understand complex programming concepts hence the reason I believe this should be the first programming language any newbie programmer should learn. Concepts such as Arrays, Data Structures, Loops, Functions can be easily understood with Python. The good thing is you can then transfer this knowledge to understanding most programming languages like Java and C#.

In conclusion, while there are loads of things that can be said in this blog post, I strongly believe that mastering Python will put any developer in a better place to learn and master another programming language. Mastering Python will definitely give you the confidence you need to learn and understand other programming languages thus making you even more valuable as a programmer. I like to also add that Python is brilliant in a start-up environment because it helps to quickly develop a Minimum Viable Product which you can ship to test your app idea.

I am still continuing to go even deeper in my knowledge of Python and may sometime in the future write some posts with Python tutorials in them.

So consider learning Python today!

Share this: