johnbeetem wrote:Ive never used the Eclipse IDE myself, but from what I've read about it Eclipse sounds like flying a jet airliner with 100,000 switches.
It's not quite that bad

, but your analogy is correct in general terms.
It has always puzzled me why this should be so. There is no inherent reason why an IDE needs to be made obscure through having a zillion little config windows and no obvious relationships between them. You have to learn those relationships by rote, and it takes quite some time to become proficient in using the tool. This detracts from what you really want to do which is to become proficient in understanding computers and programming them. Learning an IDE is not programming, it's just a largely unnecessary barrier that stands in the way of programming.
Now I know that dyed in the wool IDE supporters will immediately answer that learning the commandline tools is likewise an unnecessary barrier, which is true in principle, but they'd be missing the key point about the size of the two barriers. In both cases you need an editor, so that balances out. With commandline tools, since you've edited your program source file you already know it's name. Beyond that, all you need to know is the name of the compiler to run, and if you don't know that then you don't deserve to be in computing. This alleged "barrier" is orders of magnitude smaller than learning an IDE and setting up "projects" that have no a priori known relationship with your directory structure and filling in configuration windows containing fields that are completely opaque to you at this stage. And then figuring out where all this info was stored and what needs to be backed up and how to export all this stuff in a portable and IDE-independent way.
The above isn't really specific to any particular IDE, because they all have elements of this --- it's called the
Big Tool Syndrome. It appears to be mandatory that designers of programming IDEs must aim for that "jet airliner with 100,000 switches" ... and the labels on the switches must be obscure.
OK, I'm exaggerating a bit, I know. But if there is an "
consciously transparent" IDE around, one which just provides a visual interface to commandline tools so that your project is automatically portable and not IDE-dependent, I've yet to find it.
I would have no problem recommending an IDE
for educational programming if it did not hide the processes involved nor the inputs and outputs of those processes, and did not add eclectic configs of its own which are quite tangential to the task that students are given. I'm no big fan of extra typing. I'm an advocate of transparency, and in my experience, transparency is essential when trying to educate people.
Morgaine.