woodinblack wrote:It teaches you absolutely nothing about programming, but a lot about configuration and tools, which you may or may not have to do again.
And using an even bigger and more esoteric tool, the IDE, doesn't do this? Your implied assertion simply doesn't make sense.
My assertion only makes sense if you believe that an IDE is more esoteric than a make file, and in my experience, it simply doesn't.
Most IDEs make more sense than a makefile as they don't have pseudo rules based setups.
The IDE hides pretty much everything concerned with the tools that really do the job, and worse, it adds a whole pile of IDE configuration knowledge to assimilate that is totally useless to know except within the IDE in question. Knowledge of the individual tools that the IDE invokes is applicable to all IDEs or to development without any IDE, and it acquaints the student with the kinds of problems that appear in each phase. With development under IDEs, it's truly a case of "and magic happens now", and the user is more trained than educated.
Again, will have to completely disagree with that assessment, but I think that is because I am more interested from an education point of view in people learning about what is going on within the processor or within the machine, logic, algorithms, control flows. Make files don't teach you that (any more than IDE setups do), they just get in your way. Programming itself teaches you that. Both make files and IDEs are covering flaws in the machine that we need a variety of strange tools that vary from machine to machine to produce the code that actually does the work but an IDE will get you to that point quicker.
In your later post (and its late so I am not finding it now!), you ask do you want drivers or engineers. Make files don't teach you either part, they teach you mechanics. If you want a load of mechanics thats fine, we need people to keep the old stuff we have running, but we are going to be a bit lost when we want to create new cars, and that is where we need engineers.
I'm not disputing that IDEs are useful for personal productivity. I'm just disputing that their impact on education
is a good one. From what I've seen, they result in the creation of less capable software engineers (poor for education) who deliver systems that won't even build unless you happen to be running their particular IDE (poor for portable open source projects).