There has been a lot of nonsense lately about Apple’s decision to charge $5 for XCode 4. Lots of otherwise intelligent people are claiming that this is somehow the end of the world as we know it, and that it represents some “new low” for Apple.
First, if you’re complaining about this, you’re probably a software developer. A software developer who makes >= 60,000 a year. It took hundreds of man years to build XCode 4. That’s millions of dollars. Since 99% of the people who actually care about XCode 4 already got it for free (iOS or Mac dev program), Apple might actually sell maybe 100k copies, very optimistically. So they’re losing at least a million dollars. From a cost point of view alone, Apple is insane.
Second, it makes everyone else in the app store look bad. Most of us can’t afford to produce a multi-million dollar app and then take a multi-million dollar loss. If consumers ever come to expect XCode-quality software at a $5 price tag, we’re in serious trouble. I know people who say that 99cent apps are bad for business, but imagine what all the premium IDE makers are huddling behind closed doors about right now. There’s a psychological difference between a free IDE and a paid IDE (even for only $5) and now TextMate and Komodo and all those other guys are suddenly competing with Apple. But not just IDEs, it sets a really low cost bar for extremely high-quality OS X software, and I really think Apple should be charging a lot more for it than $5.
Third, anybody who wants XCode 4 can afford $5. I mean, you did buy a Mac. That was a nontrivial purchase. It’s even cheap enough for a starving student. It’s cheap enough for a ten-year-old. (In a box, with a fox, etc.) I hear people complaining “But purchase orders are really complicated in my red-tape company!” I’m very sorry about that, but it’s not Apple’s job to employ hundreds of devs to build software for you even at more of a loss than they already do because your employer is stupid. How is that Apple’s problem? And, worst-case scenario, you could always pony up 5 bucks yourself. Sucks, I know, but so does your whole life if the red tape is that bad. Maybe get a better job?
Fourth, XCode 3 is already free. Go download it. Nobody’s taken anything away from you. It’s like the whining tyke who’s mad because his friend got a newer, shinier toy. You can still have the same great tools that cost bajillions of man-years to build that you’ve always had, totally free. Except now, you have the option of getting a newer, better, version, if you want to. It almost breaks my mind how many intelligent people are running around saying things logically equivalent to “holy $#*#, Apple released a new product that I am in no way obligated to use, I am incredibly angry at them for this.” Thought experiment: if the exact same product was released in the exact same way, except instead of being released by Apple, it was released by “Snapple” (YC 11) there would be zero outrage. Oh look! Great new IDE and it’s only $5! etc. etc. Million-dollar VC deals would happen. Techcrunch. Slashdot. But heaven forbid we let Apple build a nice IDE.
Fifth, this is not going to destroy open source. Of course, if you’re sending source code to your users as a primary distribution method, you’re doing it wrong, but you already knew that. So I’m going to assume that you’re a developer taking some sort of principled stand and/or that this $5 represents some insurmountable barrier to supporting OS X for your open-source project. The elephant in the room, Microsoft, does not, and to the best of my knowledge, never has shipped a POSIX compliant compiler and subsystem for any of its consumer operating systems at any price, ever. Apple always has, and still does (see point #4). People are coming out of the woodwork wondering if someone else will do the terrible deed of maintaining compiler binaries free of charge, because apparently XCode 3’s are somehow insufficient. Behold:
GPLed and everything. All you have to do is type make, and by the Holy Power of the GPL, you may distribute the binary however you like. It’s not that hard.
And then, get this–not even gcc is good enough for Apple. They had to go out and write their own compiler which is at this point pretty much better in every way. And it’s BSD-licensed, by the way. No other commercial software vendor has a compiler that even comes close to what llvm can do. And as far as I’m aware, no compiler written by a major commercial software vendor was ever open-sourced (try submitting patches to VS’s compiler). By any objective measure, Apple has contributed more to the state of compilers in general or freely distributable compilers in particular than any for-profit entity in history.