If you are in the industry for a long time and especially as a consultant/contractor you have seen a lot of fads coming and going, a lot of spats in “what is the best …” but mostly, I hope, you have concluded there is no “swiss-knive” language for development. If you are in the camp where you know and used only one language all your professional life, just skip this post, it is not for you…
We have seen it before and it happens almost every year: Golang, Swift, Kotlin, ATL, MFC, WPF, VB… The acronyms abound in software development: new languages, frameworks, design concepts float around, but some are here to linger a little bit more. And we recognized the beauty, utility and especially the portability of some of the languages across OSes, hardware platforms and mostly the involvement, dedication of the community to create packages and libraries. This post is about Python. We have several components developed in python, and those are not hardcore/high maintenance ones. The attributes which made the language very special to us, to mention a few:
- lots of packages for web apis, http, logging, making prototyping and testing a few hours job instead of days
- drivers for database galore
- testing is extremely nice with Python, especially for load/performance/speed
- creating a pipe-line, manipulating files, lists, maps, tuples are so easy in python
- the language is not that rigid as Java,C/C++
- testing hardware, communication protocols, making external builds, scanning files all “menial” jobs are a snap in python, and we encourage QA/DevOps to add the language to their arsenal of tools
It just so seems that the post on Stackoverflow resonated with us and I want to emphasize that until now we have not used it heavily, but profitted for the “time-to-release-and-test” properties of it.
In a future post will discuss about Flask, Tornado and Requests packages.