Let’s face it – there’s nothing more annoying than your workflow being restricted by the tools that you use to get your tasks done. There are some Python tools I truly love. But there is also a great deal of things I hate about some other commonly used Python tools, and I bet pretty much every programmer does too! Here I have compiled a list of ten things that I hate about popular Python tools.
1. Do they have Instability?
I’m starting with, clearly, the most important one. If the IDE crashes and you end up losing work, then that’s a definite NO. My time is precious and I have no will to waste it by doing the same work more than once. It is imperative to have steady and fully tested python tools.
2. Do they have an unintuitive or eye-straining GUI?
I like being able to define how my development environment looks like and behaves like. And this is particularly true for the color scheme. I have sensitive eyes and I need just the right balance of contrast but not too much or my head will explode with pain. My favorite IDE, PyScripter, comes with 25 built-in themes that fit my needs perfectly. The icons on the toolbar are easy to spot, and I do not need to stare and wonder, what exactly is meant by that picture. Everything is nice and clear. I can also save the layout of the panes.
3. Which Python version is this actually running with?
With Python, it is important to know which version you are using. The world has largely moved to Python 3 but there is still some old code out there. But telling the version alone is sometimes not enough. If I have both Python 3.8 and Python 3.10, I might want to test my code with both to see how it will behave for other users. In PyScripter this happens easily by going to the Run menu and then choosing Set up Python Versions.
4. Are they sluggish to use?
Many seasoned programmers argue that they will never use an IDE because they are hogging on memory and run slowly. It is a pity that such still exist out there. Unlike other jacks-of-all-trades, PyScripter is designed exclusively for python. Any unneeded features related to languages I will never use are omitted. In fact, the zip that can be downloaded for free from Embarcadero’s webpage is only 12.1 MB, growing about four-fold after extraction.
5. Is the debugging good or is it debugging hell?
The code crashes, yet it all looks perfectly fine… every developer’s nightmare… Python tends to spit out error messages that are often cryptic and one has to google what other users have done to solve a similar problem. PyScripter comes with a debugger that helps with locating where exactly the error originates from.
6. Why is my code running so slow?
This is a question I was asking myself many times. On a certain computer, it was taking 6-8 seconds to load the pandas package alone from command line! And that is before executing my program. Writing well-optimized code is critical nowadays. Python allows plenty of freedom to the programmer but that comes with the responsibility that you have to know what is the proper way of implementing your algorithm. Simply achieving the result is not the end goal. PyScripter comes with a code profiler that helps identify the bottlenecks in the code easily.
7. Does the IDE come with my favorite extension?
Yes, I have heard myself saying that, too. As feature-rich as some IDEs can be, there might be something missing. PyScripter provides excellent extension support. Tools such as PyLint and TabNanny are readily available.
8. Does it have indentation problems?
Python is sensitive to indentation. You are not allowed to have a different number of them within the same block. It can be annoying but in the end it is worthwhile since the code becomes more readable. PyScripter takes care of that with a simple keyboard shortcut.
9. Is the code testing tedious?
Unit testing is critical for the integrity of the code. Implementing a feature may sometimes break another functionality unnoticed. Without the right unit test setup, the programmer may delay the tests for “a bit later” and before long, something has gone wrong, having no idea why, when, and where. PyScripter offers a simple way of automatically creating a script to execute the unit test. This ensures that the code is always in a good shape.
10. Is it missing Python packages?
I personally hate it when packages are missing. It becomes even worse when there are multiple Python versions installed on the computer. In PyScripter, I can choose the Install packages with pip tool and type in the package name. As the tool’s name implies, it makes a call to pip over the command line and installs the package, together with any dependencies. There is no need to wonder where exactly pip is, and what command to give to it. It prints the status in the Output pane.
These are my top 10 annoyances about Python development tools. I am sure that many will agree, having struggled with similar problems. How about you?
Ready to try a new Python tool that solves some of these headaches?
If you are still looking for the right tool for python coding, download the free lightweight PyScripter now.