
Back in the Dark Ages (i.e., the 1970s and early 1980s), programming compiled languages was a bit of a clunky process: load the editor, edit the source code, save it out, run the compiler; if any errors were found, take note of them, then reload the editor and the source code, go to the error line and fix it, save, and so on.
Then along came IDEs (Integrated Development Environment), starting with Borland's Turbo Pascal in 1983. No more clunky development cycle; now the compiler could read the source code directly in the editor and position the cursor on the first line with an error. Since then, compilers have progressed to finding errors as you type; through IntelliSense, you can see what parameters are needed by methods. In the last year or two, thanks to AI, they can even suggest the code you need based on code you've written. At times, it's almost like having your mind read.
Let’s take a look at the top five most popular editors according to PyPL (Popularity of Programming Index). The data comes from Googled trends and the top five in order are:
The first two need little introduction, especially for anyone who builds regularly in a Windows environment, so instead let's start with Eclipse.
Eclipse
This IDE’s purpose was to eclipse Visual Studio, its main competitor—hence the name. Written in Java and originally released in 2001, it was one of the first to go all 64-bit back in 2018, dropping 32-bit support for Windows and Java. It's built on plugins and these can be written in Java and C or Python.
If you don't want to write plugins or extensions, there's the Eclipse Marketplace, which currently offers 1,230 solutions.
Criticisms of Eclipse are that it can be a bit slow at opening and closing and it has a complicated and unfriendly interface. But that's true of many IDEs. Eclipse is popular with Java developers, particularly on Linux and Mac. Over the years, Eclipse has also been used as a framework for standalone applications and sometimes appears in unexpected places. For example, a quick search on my Windows PC found a few hundred eclipse jar files as part of the DBeaver Community edition SQL client.
PyCharm
PyCharm is a JetBrains product and comes in a commercial version and a free community edition (just like IntelliJ Idea, which it is based on). Paying for the commercial version gets you support for Django, Flask, FastAPI plus full line code completion, remote development and integrated database management.
The community edition lets you edit, navigate and visually debug (locally) with autocomplete and supports Rust and Dart as well as Python. It’s definitely an improvement over working in a terminal.
Android Studio
Android Studio is also built on IntelliJ Idea. It’s the official development tool for Android, and there’s no commercial version—Alphabet/Google obviously wants as many people using it as possible. Through plugins, this IDE covers other languages such as Flutter/Dart, Perl, Scala and Perl; this includes desktop and web applications as well as mobile.
If you have the recent versions of Android Studio (named Koala and Jellyfish), then you can try Google's AI assistant, Gemini. This is free (for the moment) and offers AI code completion as well as explaining errors, offering fixes and answering development questions. You just need a Google account. Bear in mind that if you enable this, Google collects your prompts, related code, generated output, and related feature usage information, as well as your feedback.
There's a JetBrains Marketplace for plugins or you can search for them from the relevant application.
Visual Studio Code
Visual Studio Code is not only the 2nd most popular IDE… it's the most popular IDE on Linux which is ironic given the attitude of Microsoft to Linux in the not-too-distant past. Technically, Microsoft only call it a code editor rather than an IDE, but it has a very wide range of extensions available at its marketplace, with over 62,000 available (all free).
It's quite straightforward to develop VS Code extensions if you know JavaScript or TypeScript; you can also write a debugger in it. There are extensions supporting all of the better-known programming languages (and a few of the not-so-well-known). For instance, there are 98 extensions for Haskell, one for Snowball, three for Snobol and 58 for COBOL. It is a very healthy ecosystem and Microsoft deserve praise for it, especially as it's open source. If you really don't want Microsoft's built-in telemetry, there's VsCodium, which is Visual Studio Code sources built without the telemetry code.
Visual Studio
It’s taken a long time to get there, but the current version of Visual Studio is the first to go fully 64-bit using vastly more RAM. You can open thousands of projects within a solution.
Visual Studio is the still the number one IDE, albeit just on Windows, and continues to receive updates on a regular basis and new versions of C# and .NET as they come out. Of all the IDEs, it has by far the best debugging for local and remote applications.
The WinForms editor for .NET was a bit rough initially compared to the .NET Framework version, but seems almost fully stable now. I say ‘almost’ because occasionally the Designer seems to lose track of code Properties and the window stays blank until you close and reopen the solution.
Like VS Code, it can be extended with extensions in its own marketplace, but there are only 13,300 or so. Most are free but there’s a couple of hundred paid ones.