Python is simple; it’s quick to learn and quick to function. And unlike some programming languages, the syntax doesn’t appear like something from Mars. But is it all sunshine and rainbows? InfoWorld’s Paul Krill lays out his view of the major pro’s and con’s:
- “Read it, use it with ease.” Python code is far more readable to the untrained eye than many other languages, such as C++. The ease of translation lowers barriers to entry and augments open-source development.
- “Internet of Things Opportunities.” Python is increasingly popular for use inside consumer electronics, offering a simple and powerful platform with a wealth of open-source support.
- “Asynchronous Coding Benefits.” When multiple processes need to be done in small units, Python rocks the house. Rather than rely on “multi-threading”, which makes for confusing and error-prone code, Python’s asynchronous qualities make for less deadlock and resource
- “Speed can be an Issue.” As Python Foundation board member Brian Curtin describes, “Because [Python] is an interpreted language, it is often many times slower than compiled languages. However, it comes back to separating the language from the runtime. Certain benchmarks of Python code run under PyPy run faster than the equivalent C code or others.”
- “Absence from mobile computing and browsers.” Python is not frequently seen in use on mobile platforms or behind web clients. Furthermore, there presently are no mainstream web browsers running Python with no major plans for it on the horizon.
- “Design restrictions.” For instance, Python utilizes dynamic typing; because of this, more testing is usually needed, and many errors do not show up until runtime. In addition, Python’s global interpreter lock allows only one thread to access Python internals at any time.
Either way, Python has enjoyed considerable popularity in recent years, showing an increasing trend of usage and interest from developers. In the hands of the right developer, Python has an enormous amount of potential.