Saturday, 3. November 2007
Why IDEs are evil
IDEs are great! They allow you to develop software in a fast and efficent way. Whenever you have a big project you are well-advised having a powerful IDE at hand. But: As always not everything is as good as it looks like.

People tend to be lazy. That means if they have a working IDE most of them do not care about the underlying procedures. "Most of them" means most of my fellow students.

Last Monday we got a homework where we should do some ECharts stuff. It was pretty though. Mostly because we did not have any clue about ECharts and how to use them beforehand. The supervisor of the exercise did a very brief introduction into ECharts. Whatever, it was a pain. Actually I woke up in the night at 04:00 am and had my head full of transitions and states and stuff like that. So I got up an solved the exercise.

To come back to the topic: IDEs are evil, because while I solved the exercise using a simple editor and a very simple Makefile most of my fellow students are still trying to get started using their favorite IDE. They are still trying to set up a project. They are overdoing it. I even showed them how to use a simple editor and make. They did not care. They want to have a project in an IDE.
By the way: We are talking about compiling just 5 files. You do not need a IDE for that!

To clearify my point: IDEs are great. They are important as soon as you have a serious project going on. However you should know the basics. You should know your tools.

To use a analogue: If you want to cut up a small log of about 3 centimetres diameter you do not use a circular saw. You use a plain old handsaw. You use the tool with is best suited for the job. And which is fastest.

The same is true for computer science. You use the tools which are best suited. But therefore you have to know all tools. Not just the IDEs, but also the compiler, etc.

So IDEs are evil, because people using them tend to know nothing about the internals. Or to put it another way:

High abstraction is good, but in the long run you need to know more details

... comment