This is a particularly important point when Apple is denying apps that compete with theirs, but have functionality they don't. (Podcaster, or whatever the name of the app that let people download podcasts directly to their iPhone.)
What Ballmer recognized was that if you have an environment that's friendly to developers, eventually you will have things regular users want. I'm surprised Apple doesn't seem to understand this.
Because Windows PCs are well known to be friendly to developers, with a lovely, powerful Win32 API that's a joy to use, has no horrible warts and... oh. wait.
Thanks to an accident of history (NeXT) combined with Apple killing backwards compatibility with OS9 down, they have a really developer-friendly API compared to Windows. On a purely technical level, Apple is far more developer-friendly than Windows.
They are doing their very best to shit that all away though, when it comes to the legal and backwards-compatibility side of things. That's one reason I doubt I'll ever spend my money on Apple.
That makes Apple friendly to new developers, but I would say that the backwards compatibility guarantee that Microsoft gives is pretty friendly. It's nice to know that your program will run forever, no matter what changes take place.
1. the Win32 API is not the only thing to develop on Windows with. Personally, I find C# &.NET to be much more comfortable to program in than Objective-C & Cocoa.
2. There is no silver bullet. Some platforms are better at some things than others, but it's largely a matter of accidental complexity.
What Ballmer recognized was that if you have an environment that's friendly to developers, eventually you will have things regular users want. I'm surprised Apple doesn't seem to understand this.