DEV Community

Discussion on: Why Are Some Developers so Allergic to IDEs?

Collapse
 
idanarye profile image
Idan Arye

I don't prefer simple editors in general. I prefer Vim in particular. If for whatever reason I can't use Vim for a specific project (and I've already tried to hack around it and failed) and have a choice between some other editor (which isn't Vim-like) or an IDE - I may choose the IDE, because I won't have the proficiency of usage&configuration with that other editor like I have with Vim, and the IDE probably has more easy-to-access power.

But that's for me. For the people I work with, I prefer them to use editors (whichever editor they like) over IDEs. Because editors tend to be an all-encompassing solution, and put you in the mindset that this particular IDE is the only correct way to work on the project. How do I build the project? With the IDE. How do I add a module? The IDE will do the ceremony. I want to add some debugging facilities. No need for that - the IDE has everything. The coffee machine won't start. Oh, we wired it to only work via an addon we wrote for the IDE.

My previous workplace was like this, and it was very frustrating. I liked Vim too much, and found the Vim emulation in Visual Studio subpar, so I had to find weird workarounds in order to be able to keep using Vim. Building the projects with MSBuild wouldn't work (They did something weird in the configuration...) so I configured Vim to launch VS from the command line and parse the errors into the quickfix list - which was a bit clunky because I had to keep a VS instance open and sometimes I had to close and reopen it, or close files in it that were opened by the debugger so that I can edit them in Vim. I also had to learn the VS project file structure in order to add files (you need to add an XML tag with the file name in two different places).

In my current workplace the majority are editor users. The most popular editor here is Sublime, but being editor-oriented developers the shared development configuration is not targeted specifically at Sublime. So we have a proper build system which we can run from a command line - or configure our editors to run. And to add a file you just add the file and it just works because the build system is configured to build all the source files in the directory (except for some specific cases which we need to configure separately for by-module build). And we have logging-oriented debug facilities, all easily usable no matter which editor you prefer. And Sublime users and Emacs users and Vim users and Atom users all live happily together. There are even some Eclipse users that edit the code with their IDE and build via CLI.

So, it's not the IDEs themselves I'm "allergic" to - it's the mindset that usually comes with the IDE, to let it handle everything and the heck with anyone who prefers to use a different tool.

Collapse
 
waterlink profile image
Alex Fedorov

In the environments I work in, a separate IDE-independent CI (build server) environment is a must. So I didn’t experience that. Also, we all use our own little tools for various tasks like using Git from terminal or separate UI tool (like Tower); or writing markdown in a nice specialized editor MacDown; or grepping through a humongous text/json/xml/etc file using Vim or cat|less.

And this point again: In order to be a well-rounded developer one should be proficient within IDE and without, know various alternative tools and make the best decision which one to use in which context. There is not a single tool for any task. Every tool is the best tool in its own small thing.