Integrated Development Environment
Well, really, I suppose your environment doesn't need to be fully integrated. For a long time, my toolset was a combination of Project Builder, Interface Builder, WebObjects Builder, EOModeler, and Edit. It does need to make you more efficient than the simple "text editor and make" combo of yore.
What's the big problem? Why so harsh on the text editor? Any time you have to stop making software to deal with your tools, there's a chance you'll lose concentration, forget what you were doing, and have to spend a few minutes reacquainting yourself with the problem. Losing a couple of minutes doesn't sound like too big a deal, but if you're doing it a couple of times an hour every working day, it quickly adds up to a frustrating drop in productivity.
You're going to be using your IDE for most of your working day, every working day, for the next few years. You should invest heavily in it. That means spending a bit of...