I've never understood this line of thinking.
Maybe it's because I've been selling programs commercially since the 1980's. Back then, if you wanted to develop a program for a Commodore 64, you bought a Commodore 64. If you wanted to port it to a TRS-80, you bought a TRS-80. If you needed an Atari version, you bought Atari gear.
In the mid-80's it was just ordinary business that if you were developing a program, you released it on Commodore, Apple, Texas Instruments, IBM, and a few others. And to achieve that, you bought at least one machine from each of those companies.
The concept of "I want to build an iPhone app on a Windows box" is a strange new phenomenon to me.
To be fair, I can build an android app on a Windows or Mac.
Also you're talking about buying a computer to build on that computer. I think the argument was about needing a particular brand laptop to develop apps for a different device.
I don't think anyone would object of all it took to develop for iOS was the device bring targeted, or even an iOS device. The fact that you have to buy a different piece of Apple hardware is this the issue.
You can build Android apps on an Android device. Optionally, you can use Linux, MacOS, or Windows, instead.
> The concept of "I want to build an iPhone app on a Windows box" is a strange new phenomenon to me.
The iOS situation isn't like “you must buy a PC to build PC software”, but more like “you must buy an IBM mainframe to build PC software”.
So it really is on a different platform already, but one within the walls of the brand.
Sure most bought C64, Spectrum and so forth.
However if you actually wanted to be productive, you would be buying a bigger computer running CP/M, VMS or UNIX variant, cross compile Assembly code and use a transfer cable.
Apple is the lone hold out here.
But they also have no reason to change.
Follow the steps at https://sites.google.com/site/easylinuxtipsproject/oldgrub for a free Windows VM development license.
For Apple, it is an entire hardware platform.
Fighting the customer doesn't usually go well in the long run.
For testing, yes. To protect their sanity, developers of big projects developed their code using rented CPU minutes on a mainframe.
Maybe apple should provide pay-by-the-minute xcode-as-a-service for the real 1980s feeling?
There certainly seem to be enough developers who complain about this. I wonder if there'd be a market for a virtual-iphone-dev-box-thing.
As a developer, it constantly burns my biscuits that Apple software only runs on Apple hardware. The fact that I have no choice but to buy expensive Apple devices to develop for their platform is irritating.