Python Primary Uses

Achim Munene
Sep 9, 2018 · 7 min read

The very first day I discovered Python (2.4 at that time) the first question that came to my mind was, “what is this language used for?”. Forget primary uses I wanted to know of any uses that existed and to be honest during that time it was very difficult to find any interesting uses except server scripting. Now that did not amuse me as much, yet, I wanted to venture into game programming and pygame appeared to be a very simple and easy framework to start working with developing games, (C# was quite challenging and I was very lazy back in the day) the language itself was quite interesting and I managed to pick it up with ease. It is at this very moment that I realized that I was onto something with this language, its ease of use and short learning curve intrigued me, I started to invest heavily in the language that is in terms of time and as a result managed to acquire the language essentials however one question still remained unanswered “What is it primarily used for?”.

You need to understand that Python can do almost anything and today it is actually in use to do much more, now in this article, I will get into depth on some of the application areas, but, please note that the areas presented in this article are not the only ones as more areas exist. I will get into the most popular ones which you might have been thinking about in your search for a language.

Background of the language
History of the Language

For the benefit of those who are still starting out in the world of Python programming and also to give you some fun facts about the language, I am going to go over some historical facts about the language. Python is a very interesting programming language (oh yes it is a programming language) with a very rich and funny history. If I was to tell you that someone was watching a comedy series and named the language after the series you would say I am joking, it’s like watching Game of Thrones and naming the language Jon Snow. In the case of Python, Guido van Rossum who is the principal author of the language was watching the BBC comedy series “Monty Python’s Flying circus” which inspired him to name the language after the show. The language’s implementation started in 1989 and the first version of the language that is version 1.0 appeared in the year 1994, of course, there were other versions of the language between 1989 and 1994. Python is an open source project and is under active development, from the year 1994 till present date there has been several versions of the software, version 2.0 saw the light of day in the year 2000 and version 3.0 came to life in the year 2008. Currently, two stable versions of the language exist that is version 2.7.x and version 3.x, the world is gravitating towards the later version as it is a future version of the language and the former is being killed off (They will pull the plug in 2020) although some people still use it. If you would want to take a look at the old source code for the earlier versions of the language for interest’s sake you can get it here

Why Python is popular today

For a language that others consider new, python has been making noise in the tech-scape with major companies supporting it and building libraries for it, startups adopting it as part of their tech stack and some of the best Universities have included it in their curriculum replacing traditional languages like C. The low learning curve of the language has attributed to its success in the tech industry backed by an active and vibrant community with a very big corporate sponsor. Although the language itself is open source Google has made huge efforts to get the language popular not only by making use of it within their own company but by also their development and support of Tensorflow which has become the go-to library for Machine learning. This has made the conversation about the language more common as Machine Learning has started to take on the world by storm. The language is quite efficient and reliable as there is a guarantee that it will work across all platforms without any significant loss in performance, it is very simple to set up and start using and in a way, this has pushed its popularity as most developers have already adopted the language and its amazing frameworks.

Areas in which Python is being used (in no particular order)
Web Development

Python has found itself a sweet position in the web and internet programming space with amazing, well thought of web frameworks like Django, the language has started to occupy the space that used to belong to the likes of PHP. The language comes with a lot of capable frameworks that allow you to develop amazing web applications in collaboration with some amazing libraries for common web development tasks. You can make use of some of the following web frameworks to start developing web applications:

Django
Flask
Web2py
Pylons
Bottle
CherryPy
TurboGears

The above list outlines some of the python web frameworks that you can get started with today with minimal problems. They vary in complexity but they are all accessible with vibrant communities to support them. Some of the largest and most popular companies today are making use of python for their amazing web applications. Some are actually making use of one or more of the above-mentioned frameworks whereas some have built custom systems making use of the available libraries. Some of the popular websites using Python include:

Google
Youtube
Instagram
Reddit
Spotify
DropBox
Data Science

Python is a very simple language which the scientific community has embraced with inspiring openness, the language itself has amazing numerical processing capabilities which has made it attractive to the scientific community. With this age of big data and Artificial intelligence, the language is once again positioned in a near-perfect position in which it is dethroning the R programming language as the go-to language for Data Science. You have a wide variety of tools to choose from for purposes of data analysis and depending on the data you are working with python has data specific libraries that you could enjoy using. The libraries include:

Numpy
Pandas
NLTK
Theano
StatsModels
Matplotlib

Much complicated analysis and techniques are being done using the language which includes Deep Learning, image recognition, and Natural language processing. Due to the languages efficiency and ease you can get started developing Machine learning models and producing visualizations from data using charts and graphs thanks to Python libraries.

GUI Applications

If you have interest in developing GUI powered applications python as you covered, its suite of libraries makes it easy for you to develop intuitive GUI experiences across all platforms that are Mac, Windows, Linux and mobile too. This means you can develop applications for your favourite platform using the language without worrying if it will not work on other platforms as well. You can also use the language for android mobile development using the Kivy framework, this means not only are you able to develop your GUI application for your favourite desktop platform but also for the mobile platform as well. the libraries include:

Tk
wxWidgets
Kivy
Qt
GTK

Robotics and Automation

This one of the most interesting uses in my own opinion, with python you are able to build robots and automate several manual processes like switching the lights, monitoring the rooms or the entire house. With Python and a few prototyping boards like RaspberryPi, you can create amazing robotic automation that will impress your friends and get you feeling like Tony Stark. If you would want to ever automate your home or office using simple hardware you can always use the language to achieve this task.

Game Development

If you have ever wanted to develop your own game python offers a specific framework that you can make use of to start designing and developing games. I actually discovered python this way and along the way fell in love with how easy the language was, the experience is fun and it offers a more challenging learning experience as compared to the previous applications but when compared with mainstream languages like C# and C++ with game engines like Unity and Unreal, python offers by far the easiest learning experience for anyone starting out in game development. The tools you can get started with include:

PyGame
Panda3D
PyGlet

Summary of Python benefits

Python is here now and you can start making cool software or automation with it and the best part is you will not face a steep learning curve. The language is simple and effective, structured to support modern programming techniques such that you get to learn of the best modern practices in software development. The python community grows every day and support is available for you in any application area you might decide to venture into, be rest assured that as far-fetched your ideas might be you are not alone and the community is always there with the answers. In Summary, python is:

Easy to use and learn
Simple to read and write
Reliable and efficient in use
Cross-platform

Conclusion

There are several other applications that exist but I restricted this article to the above applications as I realized that they are the most prevalent applications today and if you are a newbie programmer this list aims to inspire you. Some experienced developers will have advanced use cases of the language that if you are starting out in python especially might scare you away or not make sense and some overrated use cases that raise peoples expectations.

Starting something new is always a challenge, it comes with complicated decisions that mitigate risk in some cases and to maximize opportunity in other situations. Whatever the situation might be the best thing to do is always to start and face what is within the journey. Python is one interesting walk and if you have been thinking of starting this journey this is where you start, looking at the bigger picture and figuring how you can be part of it.

Written by

Full stack Python developer| Kotlin developer |Swift developer | Xamarin Enthusiast and cross platform developer | WordPress fanatic | Speaker and Writer

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade