This may have come to be an intentional moat, but I don't think it started as one. Remember that iOS and its derivatives are themselves OS X derivatives, and that there was little to no demand for OS X dev tools that ran on other platforms prior to iOS. It was originally more of a historical artifact of all of the tooling being deeply steeped in Apple's own tech stack.
Back in the Rhapsody days there was a version of Cocoa, Project Builder (Xcode predecessor), etc that ran on Windows, but that got scrapped likely because at that point Apple was not the juggernaut that the iPhone turned it into and it was likely judged too expensive to maintain for dubious benefit.
I would say that it is tied to an institutional memory of what can go wrong when your platform depends on third party development tools.
Back in the classic Mac OS days, most developers used a compiler toolchain (Codewarrior) and application framework (PowerPlant) from a company called Metroworks.
They were bought by Motorola and those products were discontinued leaving developers in a bind.
After that, Apple decided that they needed to offer their own first party development tools.
Not saying this is a correct point of view, but I do think it's widely held at Apple, and there's little impetus for them to build developer tools for other platforms because of it.
[1]: https://www.theverge.com/2022/9/7/23342243/tim-cook-apple-rc...
If you don’t want that thing don’t buy it. If you do want that thing, it dies it pretty well.
I don’t have an iPad. My wife uses her, a lot.
It is very hostile to users and their freedom. They are requiring you to buy things that they approve of. I guarantee you somewhere in their backlog is an item that says "require app store for app installations on macOS". In line with iOS.
You have paid for some hardware, and you can only run their software. They are refusing to give you information on running one of many other operating systems. They are refusing to allow you to buy hardware that runs their operating system[0] (this is in my opinion more okay, unless they are willing to sell the software separately).
They then refuse to give you new versions of the same software that they enforce to run on the hardware you bought. The hardware is probably still in perfect working order, and will still work with an older version of said software, but soon after some zero day is found, and you are stuck with this software that you can either never connect to the internet, or suck it up and accept the risk.
You can recycle it sure, but apple will give you pennies on the dollar (if they give you anything at all) and no one else really wants it because Apple refuses to let them (or you for that matter) fix it if it breaks, give it a new life through Linux (or Windows for that matter). So now you have at best some expensive paperweight, at worst e-waste.
So yes, Apple is user hostile whether it affects you or not. And no, Apple is not the only one.
This has been said for over a decade and it still hasn't happened, and Apple hasn't even tried to do so.
I think a better way to model their approach is to push non-technical users further and further away from the typical .dmg app installation approach, and put hoops up to prevent them from following malicious instructions, like the privacy/security and unverified developer hoops. Mildly annoying for technical users, but near impassable for the tech illiterate. We've been seeing this transition across windows and android for a long time, and it seems to be a net positive, if my family is anything to go by. I spend much less time on tech support now.
Unless motivated and instructed by a scammer, then it's useless.
We can run old versions of macOS on ancient hardware just fine; Apple supports this up to about 7-8 years, anything after is possible through community support since Darwin is open.
They also support their mobile/embedded OSes longer than any other ecosystem.
They're
Apple isn't the company that has already attempted to lock their PC operating system to only accept apps from an app store.
That's Microsoft with both WindowsRT and Windows S.
Just because the first attempt failed in the marketplace and Microsoft backed down on the second doesn't mean they haven't already tried to lock Windows to only run app store apps multiple times.
For sure shareholders will start demanding it at some point.
The fact that we think this is normal for phones is crazy. And the longer we wait the more Apple fuel stations and Apple roads there will be, until there is no way back.
OTOH we know tablets, smartphones and cars can operate in an open manner, and their users benefit from this. Apple choosing not to make such tablets and phones is similar to cars that could operate on any road and fed any brand oil, but Apple choosing not to for their own benefit.
Imagine your car would only let you drive on road approved by the manufacturer, obviously, for your safety. But then they would approve roads only if 30% of anything you paid for in that road would go to the car company.
Sounds stupid? Well phone manufacturer taking 30% of everything is exactly that to me.
The speed limit analogy I can sort of see if I squint and I think highlights the reason people buy Apple: they want simplicity in their life. They don't want to monitor the speed limit for every road they drive down, they just want to know that if they're driving they're doing so at the recommended speed and won't end up getting a ticket (or crash!) because of an unnecessary choice (speeding).
Of course if we extend the analogy further: if it's a car then the automobile industry is dominated by just two car manufacturers and they both exercise a level of control over what you can and cannot do with the car. And people need cars, so they make a choice between two suboptimal choices.
I was an Android enthusiast, bought a Nexus One the day it came out. Then a Nexus 4, then a 5. Did custom ROMs, the lot. Ended up switching to Apple for simplicity around messaging and FaceTime with family/friends. I haven't ever looked back, I can't say there's anything I miss. Except the notification system maybe.
That analogy would be the charging port. Until the EU forced them to use USB-C, they refused to let you use anything but their proprietary (inferior) connector.
I buy an iPhone because the combined product is ultimately the best option, that doesn’t mean I agree with every single thing. If there was “iPhone but you can sideload apps” I’d buy that instead.
If the alternatives are clunky linux machines or awful microsoft machines, I'll stick with my Mac, thanks.
I can tell this is a bad faith argument considering Linux can practically run on a toaster if you'd like.
And if Apple would allow it, Linux could easily run on Apple hardware, but that's the user hostility Apple gives. The things you've mentioned Apple does, Linux OSes have been doing for way longer.
And yes, Microslop is user hostile. It seems any org with an ounce of necessity for profit eventually turns hostile to user. This includes all FAANG. And yes, though far less hostile (and still not an excuse), even Valve has made some user hostile decisions.
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.
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.
And of course, android studio is available on three platforms. Apple could choose to do the same.
And Linux to this day still mostly does not get energy efficiency right, partially because manufacturers only test their crap hardware and ACPI tables against Windows.
- normal people are morons when it comes to computers
- developers can extract money from those morons by using Apple's platform