Life is full of choices and dilemmas, and for a developer one of the greatest queries is whether to use a text editor or an Integrated Development Environment (IDE). Of course, using the latter provides for a much more complete experience, and yet, it might not be an absolute must in all situations. But how can one decide? There is a plethora of articles and opinion forums, so we’ve taken three to assist you with this choice.
Follow Your Heart (and Needs)
As Erik Dietrich puts it in this article, no single tool will do the trick forever, so it’s perfectly normal – and highly advisable, for that matter – to make the change whenever needed. His advice is simple: pick what you truly need at the required moment, and what makes the most sense. What does that mean? The variables are the language used, project complexity, your team preferences, community choices, and the cost — even though some editors and even IDEs are either free or offer a freemium model, the extra plug-ins that you might specifically require will, usually, carry a price tag.
An IDE — A Cure for All?
It might seem that an IDE would be the choice due to its completeness. Indeed, it has many advantages, as Dan Albright explains here: all the tools you need come together in a single editor, debuggers are part of the picture (most of the time), there is an array of what he calls “convenience features” (an ability to navigate easily, complete your code automatically, etc.), as well as tools that help with development automation, such as source version control, among others. Yet, most IDEs do not support all the languages, and sometimes there simply isn’t a need for a full-blown development environment. If your project is straightforward — done with Arduino or Ruby, as he exemplifies — a code-centric text editor will do the job. Some developers even prefer working with command-line tools (in this case, they get the benefit of learning how their machines work at a basic level). Again, it all depends on what you are looking for!
A Text Editor, an IDE… Both?!
If a text editor is the right choice for you, then Matt Rozema’s advice in this article will come in handy: an editor must allow you to accomplish all the basic tasks at hand, be useful in different work situations and, of course, be updated regularly — you would want the certainty of having the best tools possible. But, above all, an editor is the way to go if your project has open-source tooling and if you are very comfortable with your source code. However, if you are hopping onto a new project and aren’t that much at ease navigating through a huge codebase, then an IDE is the way to go. He even takes it further: sometimes a combination of both is the right choice, because if you love your IDE’s tools but hate the editor features, then there is no reason for not using both. The solution is simple — use the editor for your coding, and the IDE for its tools.
Here at Genuitec, we’ve been developing IDEs and IDE tooling for a very long time – the fact that we’re biased towards IDEs should come as no surprise to anyone! We believe in the complete IDE experience – we developed Eclipse’s first JSP debugger way back in 2003, and are at the forefront of debugger tech even now, with our full-featured TypeScript and Angular debuggers. We have all the IDE conveniences, like integrated version control, code completion, validation, formatting, efficient navigation, etc., but we also realize the flexibility and power of command-line interfaces (CLIS). Our Angular tooling exposes its use of CLIs so you can use them too, if you so choose, without having to leave the IDE!
In the end, the choice is yours: whether you go for an IDE or a text editor, there is quite a variety to choose from. Genuitec’s IDE repertoire includes Angular IDE, Webclipse, and MyEclipse. Angular IDE is perfect if you’re looking for world-class Angular tooling, in a ready-to-use IDE; however, if you have an existing Eclipse install, try our Webclipse plugin suite for all-around modern web features. Finally, if you’re looking for a truly full-stack IDE, from Java EE to the modern web, give MyEclipse a shot.