[quote]what about improving workflow? does it make the programmers work more efficiently? or is the IDE in the way?
[/quote]
An IDE won’t make anything, it may help the programmer be more efficient but it’s a give take thing.
A good editor doesn’t think of code as text, it will provide a more meaningful expression of the code that the programmer can navigate though.
An plain text editor thinks of a file as lines with bytes on them. Some provide higher levels of abstraction and let you do things like move the cursor a word at a time. Besides that the content of the file has no more meaning than each byte that makes it up.
A good IDE, I’m gonna use IDEA as my example because that is what I use, expresses the source as more than the bytes that make it up. Instead of literally injecting bytes into a file I’m modifying and changeing a meaningful structure. If I type something that doesn’t validate as well formed source IDEA marks that source in red. If I type a variable name wrong, it marks that in read. If I try to call a method with the wrong type of variable it marks that too.
There are other ways IDEA helps me express code with less effort that are more than error/typo detection. If I type out a method name that doesn’t exists with some parmeters, with two more clicks of the mouse I can have IDEA create a stub method in the current class with the curser in body waiting for me to write the implementation. Refactoring is powerful too. Being able to reshape and re-express code in a more meaningful manner to humans is quite powerful. Search and replace almost works but it falls apart in ways that are subtal and error prone.
You should think of an IDE in terms of how it lets you express and edit code. All that other stuff, being able to build code, intergrated debugger, or some feature of the moment, they are all secondary. Under perfect conditions an IDE would make it so I wrote perfect code the first time. I’m not sure that is possible but what many editors/IDEs do is treat the symptomns of poorly written code which is a second rate solution.
Experience programmers that compain about good editors are full of shit and simply refuse to adapt to a better means of expression. I used to be a vi/vim freak, I still am for non-java stuff. I’m sooo glad someone wacked me on the head and showed me how foolish I was being.
Now that I’m done with my rant. Use ant to manage the project. Encourage programmers to write better code by making better editors available to them.