Two days ago, I saw a post on Slashdot which linked to Ted Dziuba’s blog post titled MacOS X is an Unsuitable Platform for Web Development. I’m not sure I agree with the point made about the cost of the hardware; my experience is that you get what you pay for, and a lot of cheap PC hardware is just that: cheap junk. Buy a ThinkPad with high-end specs and you’ll easily find yourself paying as much as for a MacBook Pro. There are cheap ThinkPad models, but I think you’d be hard-pressed to find them comparable to a MacBook Pro.
That said, I absolutely agree with the point about package management problems; it’s an incredible nuisance I’ve run into myself a few times. However, I would argue that the fact that Mac OS X, being a BSD derivative, is different in behavior than Linux isn’t an inherent flaw in Mac OS X. Besides, what about developers who are deploying their software on other BSD-derived platforms? As for editors, I’ve never tried Textmate, instead preferring Aquamacs Emacs.
But there’s another issue with the Mac as a development platform, one which I haven’t seen widely discussed. With the release of Xcode 4, Xcode is no longer free, and that doesn’t just affect developers writing Cocoa apps for the Mac or iOS. Xcode is more than just the IDE; the Xcode package is also how you get a compiler on Mac OS X. Even if you never intend to open Xcode, and want absolutely nothing to do with the Mac App Store, you’ve got to have Xcode installed just to compile a plain old C program. That never used to be much of a problem; Xcode came with new Macs on the “Developer Tools” disc, and in any event, it was a free (if hefty) download. Now, though, that has changed. Xcode 4 is no longer free. Sure, it’s free if you’re a member of the Mac Developer Program, but that program itself costs $99/year. If you’re not a member of the Mac Developer Program, then you can buy Xcode 4 for $4.99 from the Mac App Store. Aside from the fact that I have no intention of buying anything from the Mac App Store, there’s a point that remains: Xcode, which is the developer platform for Mac OS X, is no longer free (and by this I mean monetarily free). Even Microsoft does better than this, with Visual Studio Express. It’s not about the money, but rather the fact that it represents a barrier to entry which just wasn’t there before.