Archive for September, 2010

Creating the Ultimate IDE

Sep 09 2010 Published by Bryant under Programming

new_hero20100721

A friend recently showed me the all new Xcode 4 coming down the pipe and I couldn’t help but chuckle a bit.

Take a look at the fancy new features, and let me know if anything stands out:

  • Single Window: Instead of popping a new window for everything, Xcode will keep everything within a single window and display panes within that window.
  • Integrated Interface Builder: Instead of starting a whole new app to for the designer it will now be integrated.
  • Fix it: Integrated code correction (Think: Did you mean == instead of = ?)
  • Drag-Drop Data Modeling: Design your data visually and then generate classes from your designs.

Did you figure it out? Ok. I’ll tell you the horrible, dirty truth. Visual Studio.NET has had all of these features for over 5 years! That’s right, not only have you been programming in an antiquated language (objective-C) but you’ve been programming in an antiquated IDE.

Copying Microsoft?

In fact, all of these features basically make Xcode look much more link VS.NET.

For once, Apple is finally taking the lead from Microsoft. I know Mac people just love to bash Microsoft and talk about how Apple is so visionary (*cough* usually they are right *cough*), but when it comes to developer toolsets Microsoft is leaps and bounds ahead.

Anyone who has used both toolsets would agree that Xcode is a pain compared to Visual Studio. That said, these are huge new features for Xcode and I’ll be glad to have them when I’m developing for the iPhone.

But it raises a larger question…Is the design used by VS.NET the end-all be-all of IDEs? Is it what every IDE should aspire to?

Lean Tools

In a great irony, I’ve actually been moving away from using VS.NET in favor of leaner tools like VIM. So, as Xcode gets more like VS.NET I’m moving in a different direction.

There’s something wonderfully efficient about editing text in VIM that you just don’t get with an IDE. You’re never stuck waiting for the IDE to load or using the mouse to click through dialog boxes. Everything can be quickly done through the keyboard.

Also, knowledge of VIM can be applied everywhere in every environment without learning new key commands. When I began iPhone development, I started out with Xcode but all of the new windows and different key commands drove me insane! So instead of relearning another set of key commands for yet another IDE, I just built on my VIM knowledge and used it on my Mac for iPhone dev by adding a few plugins.

Now, as I’m playing with rails development in a Linux environment I can continue to use the same development tool. I guess I ascribe to the philosophy of the programmatic programmers in learning one editor really well and using it for everything:

Use a Single Editor Well

The editor should be an extension of your hand; make sure your editor is configurable, extensible, and programmable.

Conclusion

IDEs will continue to evolve, but I’ve essentially checked out of the IDE rat-race. VIM is made for customization and has a thriving community. So I’m never stuck waiting on the latest version of the IDE to do something new. And besides, compilers are overrated

View Comments

« Prev