7.16.2011

IDE vs. editor (once again)

You know that feeling when you're editing a piece of code inside a stand-alone editor and someone else comes around, looking over you shoulder and saying that he doesn't understand how one can program without an IDE? This happens to me quite often and I shouldn't be surprised: almost no student around me has programmed using actually minimal tools. And if I think about it... I learned to code in BASIC before. It's common among not-so popular BASIC dialects to only have a multifile editor with build support for the current file where the only project-alike structures come from including other files or specifying build options inside the code (I always like that approach for universality reasons). So it's typical that I prefer a simple scratchpad that's very basic (surprise, a pun) but still fully functional. I simply can't explain it to the people asking for my code editing preferences. They use code completition, automatic bracket insertion, code formatters and error checks while typing. But the only feature I really use is syntax highlighting and (again very basic) automatic indention. I think because I used those simple editors for a very long time, I got more than used to it and found joy in it's simplicity. There are so many IDEs and they have so many functions which's use I was able to appreciate. So when you don't any of the features it has, it only becomes a slow ressource-draining piece of monstrous software - that is probably because I don't like IDEs that much. One exception I found over time is Geany, a very lightweight IDE you can use for few files or projects with more than two or three files. Since I experienced QtCreator for a while now, I once again appreciate the central convenience of source management, but this doesn't pay off when working with more complex file and project structures that depend on each other. Maybe the software isn't as finished as the version number tells, but all the stuff it offers isn't necessary with a more elegant and simple API. However, my expertice isn't the work with big toolkits but bare on a system or even directly on a machine. This is where my approach of editing is more useful than with IDEs: I can work nothing but text if it comes to that - do you? And don't say this doesn't matter today because it actually does. It doesn't shine through all the glitter and glammer of today's software development habits. But if it fails, everything else failes, too. That's why rising nations fall hard if they forget about the small things. A matter of fact you can't deny all the time - especially not if it's standing on you and pointing it's sword at precious parts you value the most.

No comments: