Why IDEs are Important

IDEs are often seen as slow bloated monstrosities that only bad programmers use.

But today, I came to realize how important they actually are.

Here’s what happened…

There was a function X in a file called commands.py but I realized that X should actually be in handlers.py.

X was called by other functions from other modules all over the place.

Instead of refactoring it, I said “eh, no big deal” and left it as is.

At the time, I was using my Vim + Tmux setup which means that doing anything beyond basic text editing and reading was a pain.

As soon as I got home (I only use Vim when I have to use my laptop on the go), I fired up PyCharm , right clicked on X and clicked “Refactor”. Now the code was better.

The harder it is to do something, the more you’ll end up avoiding it. In PyCharm, refactoring is as simple as right clicking. In Vim, refactoring means having to use grep, find, arg lists, and other wizardry. There’s no way I’m putting myself through all that.

This reminded me of a talk by John Carmack in which he realized the same thing.

I believe that one of the reasons why we have many more programmers and software today is because of the tools. Instead of having to write C with pointers and malloc, we can use Python. Instead of using Vim or Emacs, we use VSCode and an assortment of Jetbrains IDEs.

I can’t wait for the day when computers will become so advanced that it will be possible to write device drivers, kernels, and operating systems in Python. That my friend, will be true breakthrough.