Today we write to you simply to turn your attention elsewhere. An interesting article from a non-Mac developer tasked with developing an app on a Mac goes so far as to say that the Mac is "the worst development environment [the writer has] ever had to use." We were getting ready to fire up a rebuttal when we received an e-mail from our friends at iDevGames.com, a Mac gaming developer Web site, who had already done the job for us. Accordingly, we will direct you to that rebuttal.
First, the original complaint about developing on the Mac was published in the Bangkok Post, and signed with firstname.lastname@example.org. The piece is an informal rant/editorial piece that also includes news tidbits about the SCO/Linux/Unix battle, Microsoft news, and a comment about cell phones. The top portion of the piece is all about how bad developing on the Mac is. From the article:
In a typical development environment these days you drop stuff onto a blank window, assign some events, add some code and compile. With the Mac it is a lot different, the abbreviated version goes like this: Open a new project then drop stuff onto the Window, called a nib, so far so good. Create an Object from a separate panel and create an instance of that object. Add a series of Outlets and Actions. Connect each outlet from the object to each display kind of thing you dropped on your form. Connect each action to the do things object you dropped on your form. Generate the initial code. Add your bits of code, build and test. If you add anything new to your form, create new code, merge it with your old stuff and start again.
Another idiosyncrasy that the Mac has is no right mouse button. They believe that you should be able to do it all with a single button. While a noble idea, it also means you get a lot of windows to work with. Instead of right clicking and selecting, you have to open another window and select from there. Windows does it much easier.
In a nutshell, so far this is the worst development environment I have ever had to use. The most unfortunate part of the Cocoa environment is that the higher-level pieces appear to be separate from the underlying bits and the links between them are arcane and poorly documented. In some cases I found topics I wanted to know about "under development" in the online Apple documentation.
To date Iive managed to get about 20 percent of what I want to do figured out. I have e-mails out with the Mac community and hopefully someone will be able to steer me closer to my goal. My advice, if you are a developer and someone asks you to do something on the Mac, is to pretend not to hear them. I must admit that their equipment does look sharp though and I love those wide flat screens.
There is more in the full article at the Bangkok Post that explains how and why the writer found himself in the situation. We recommend that you read it before heading over to the iDevGames rebuttal. That rebuttal looks at each of the complaining writeris points, and offers a pretty straight forward assessment of those points, including agreement on the area of Appleis documentation.