We can discuss about iOS vs macOS, etc. and I feel that others have litigated that already, but where I see no way to view their current position anything besides user hostile is in the fact developers are forced to buy a Mac to develop for any Apple device.
Own an iPad? Can't develop on that, pay for a Mac.
Prefer Linux, BSD or Windows? Tough noogies for you, you will have to both pay for a Mac and deal with macOS regardless of your preference.
Already developed a cross-platform app that could run on macOS and iOS via React Native, Flutter/Dart, Kotlin? Well, buy or rent a Mac to compile and in all likelihood iOS devices to boot as the simulator in Xcode has idiomatic misbehavior vs physical devices so some things work on it which don't on real iOS hardware and vice versa.
Beyond the App Store and Apple Pay being the only game in town in many jurisdictions, limitations on JIT hampering innovation and rules that are less than consistent (why is game streaming not permitted but video streaming is, why does Amazon Prime Video get an exception but Netflix and others do not, etc.), the fact that developing software for Apple devices means you have to own their hardware in ways other platforms do not require and are forced to use Xcode with its bugs and peculiarities feels very hostile. Then there is what you have to do as part of actually testing your in development app on your own hardware. Ridiculous to the n-th degree and I'd argue textbook user hostile.
Saying this as someone who daily-drives a Macbook Pro because, having tried three laptops from other vendors that are as or more expensive to the Macbook due to my preference for Fedora Silverblue over macOS, the Macbook continues to be the only one that has decent hardware. Good lord, there is a circle of hell for whomever thought that POS clicky excuse of a touchpad in the Asus ProArt P16 is serviceable in a € 299,- bargain bin special, let alone a high-end workstation. And the less said about HP and Dell in 25/26, the better...
Own an iPad? Can't develop on that, pay for a Mac.
Just like I can't run Android Studio on my Pixel or Samsung Tabs, but for some reason, that doesn't seem to get people hopped up. Why should I expect to run Xcode on a consumption device? And yeah, if I want to run Xcode, I need a Mac just like if I want to run Android Studio, I need a computer.
You're welcome to write code however you want and invoke xcodebuild via the command line, granted so long as it's on a Mac. But look at all the vibe coded apps we're seeing these days - plenty of folks are developing without opening Xcode.
Developers are just a subset of users. If Apple e.g. didn't allow third-party apps to access the camera for more granular control over photography, we wouldn't differentiate between user hostile and photographer hostile either, because photographers, like developers are just users.
Comments
We can discuss about iOS vs macOS, etc. and I feel that others have litigated that already, but where I see no way to view their current position anything besides user hostile is in the fact developers are forced to buy a Mac to develop for any Apple device.
Own an iPad? Can't develop on that, pay for a Mac.
Prefer Linux, BSD or Windows? Tough noogies for you, you will have to both pay for a Mac and deal with macOS regardless of your preference.
Already developed a cross-platform app that could run on macOS and iOS via React Native, Flutter/Dart, Kotlin? Well, buy or rent a Mac to compile and in all likelihood iOS devices to boot as the simulator in Xcode has idiomatic misbehavior vs physical devices so some things work on it which don't on real iOS hardware and vice versa.
Beyond the App Store and Apple Pay being the only game in town in many jurisdictions, limitations on JIT hampering innovation and rules that are less than consistent (why is game streaming not permitted but video streaming is, why does Amazon Prime Video get an exception but Netflix and others do not, etc.), the fact that developing software for Apple devices means you have to own their hardware in ways other platforms do not require and are forced to use Xcode with its bugs and peculiarities feels very hostile. Then there is what you have to do as part of actually testing your in development app on your own hardware. Ridiculous to the n-th degree and I'd argue textbook user hostile.
Saying this as someone who daily-drives a Macbook Pro because, having tried three laptops from other vendors that are as or more expensive to the Macbook due to my preference for Fedora Silverblue over macOS, the Macbook continues to be the only one that has decent hardware. Good lord, there is a circle of hell for whomever thought that POS clicky excuse of a touchpad in the Asus ProArt P16 is serviceable in a € 299,- bargain bin special, let alone a high-end workstation. And the less said about HP and Dell in 25/26, the better...
Just like I can't run Android Studio on my Pixel or Samsung Tabs, but for some reason, that doesn't seem to get people hopped up. Why should I expect to run Xcode on a consumption device? And yeah, if I want to run Xcode, I need a Mac just like if I want to run Android Studio, I need a computer.
Sure you can, via e.g. Termux. Have done so.
Also, I don't want to run Xcode, it is arguably the worst development environment and hasn't gotten any better over the years.
I have to use Xcode regardless, if I want to develop for iOS or macOS. I don't have to use Android Studio, I got plenty of alternatives for that.
You're welcome to write code however you want and invoke xcodebuild via the command line, granted so long as it's on a Mac. But look at all the vibe coded apps we're seeing these days - plenty of folks are developing without opening Xcode.
That goalpost has moved a few miles in two comments.
Yet apple has been trying to tell us all along that it's not just a consumption device, that you can achieve real work with one.
And of course, android studio is available on three platforms. Apple could choose to do the same.
There are plenty of real jobs where people do real work that do not require a development environment.
Android Studio is available on Android? Got a link to that? iPadOS isn't macOS.
Android studio is available on Mac, Windows, and Linux.
What platforms is XCode available for?
I didn't say all platforms.
You can build and distribute apps (up to and including selling them on the App Store) in Swift Playground on iPad. The full iPad SDK is in there.
https://apps.apple.com/us/app/swift-playground/id908519492
There seems to be a lot of confusion between user hostile and developer hostile.
Developers are just a subset of users. If Apple e.g. didn't allow third-party apps to access the camera for more granular control over photography, we wouldn't differentiate between user hostile and photographer hostile either, because photographers, like developers are just users.