> Here’s the thing: If you’re a developer for iOS or macOS and want to charge customers money, the Apple-provided payment tools, which demand a 30% cut, are the only ones you’re allowed to use. It’s not even a discussion.
Why does macOS keep getting offhandedly roped into these discussions? Not only is the Mac App Store not a requirement, it's rarely used.
Maybe Apple intends to change that some day, but that's speculation, not reality. And frankly, from where I sit, people have been predicting the demise of macOS sideloading for nearly a decade now, and they're still waiting.
Probably because part of the ios appeal is the insanely smooth interoperation between your mac laptop, your appple watch, and your iphone. If you already have a mac because, say, your work got you one (which in the tech industry is ludicrously common) then getting an iphone if you're shopping for a new device makes a whole lot of sense.
So what? The question was why macos gets mentioned, this is why. There is deep interoperation between ios and macos that Apple themselves relies on to sell users a better total experience than can be achieved in isolation.
>Maybe Apple intends to change that some day, but that's speculation, not reality.
I'd say it's pretty obvious that this is a desired outcome on Apple's part. You can either wait until it's too late or bring it up before it's happening.
Based on what? Have Apple executives said anything on the matter? Even vague warnings? You're relying on your own interpretations of their intentions.
Over the years, Mac's defaults have changed to protect inexperienced users via restrictions like Gatekeeper and SIP. Apple has never attempted to make any of these systems mandatory. All it takes is a few terminal commands to gain complete kernel-level access to my system.
> Have Apple executives said anything on the matter? Even vague warnings?
Because companies never lie or say that "we're not going to do XYZ" until next week/month/year where they go "XYZ is the new awesome". Expecting companies to be honest is like placing a cat near a canary and expecting them to be BFFs, especially when the topic is something that people have negative concerns about.
It is MUCH better to be explicit and loud about what you do not want to see before it happens, than try to reverse a situation after it has already happened. You lose nothing by doing the former, even if there were never plans to do what you fear might happen.
I tend to look at things from the lens of social capital. If I'm always yelling about something, it desensitizes them when something bad actually happens. The "boy who cried wolf" is the downside, and being explicit and loud about something that hasn't even happened and (to most people's eyes) isn't in the works... It marginalizes you. A lot.
I don't think they ever will do that with Mac, and will be a key reason the platforms remain separate.
They have to realize how popular Mac is for developers, going down this path would completely remove that market for them.
I obviously agree with you, but tiny nitpick—the App Store was not introduced in 10.6, it was added in a 10.6 point release. So your "7 releases ago" statement isn't quite accurate, although it depends on how you count.
Why would eliminate the ability to develop apps for the iOS? You could be able to download a development environment "app" from the Mac App Store just like now. You'd be a bit more confined inside the environment itself, but there is nothing that would prevent developing applications with Apple's own tools while disallowing installing anything outside of MAS.
Any ability to execute arbitrary code is the ability to bypass the MAS. What's more, it's nice and efficient - iOS apps in development are compiled right to x86 machine code for the "simulator" that is little more than a thin VM.
100% of the projections I've seen about MacOS becoming a walled garden have been from people that don't actually have any real familiarity with Apple's ecosystem as developers.
There are all sorts of restrictions Apple could place on software compiled "unofficially" with Xcode. For example, they could automatically sign it with testing certs that automatically expire after 7 days.
macOS is a more open platform because Apple has decided to leave it that way, not because the property is literally essential for development.
They already require periodic resigning of self-signed side-loaded apps on iOS, it doesn't stop even relatively casual users.
(That's actually the funniest part about all this, now that I think about it. While everyone is wailing and gnashing their teeth about some speculative possibility that macOS ends up locked down like iOS, Apple has been making iOS more open.)
Is there a significant number of power users who are resigning their apps every seven days? I find this somewhat hard to believe, given just how annoying it is, combined with the three-app limit.
I didn't even know there was a three app limit on it. Most people don't use very many apps. But yes, quite a lot of us routinely sideload apps on non-jailbroken iOS devices.
So you really think Apple is not going to not allow the Mac to run any scripting language or program that runs on top of a VM? Do you think they are also going to take away shell access?
They are also not going to allow any Electron apps?
This is exactly what I'm talking about. You're using bad or outdated second or third-hand info with no regard for the game of telephone involved in getting it to you, nor the anti-Apple zealots obfuscating the truth on its way.
Are you sure? I admittedly can't find a definitive source on this now, so perhaps the restriction is more nuanced than I realized.
What I do know is: if you try to use more intensive emulators like PPSSPP on a non-Jailbroken iOS device (via a developer account, enterprise cert, or similar), you will not get acceptable performance, because the emulator is forced to fall back into an interpreter mode.
The only JIT “restriction” is App Store policy. No downloaded code is allowed unless it’s JavaScript (and runs, as it happens, on one of the JITs iOS has built in). This is policy, not technical limits. You can even install a Python environment and code in it. And, as it happens, write code that downloads other code to be evaluated. Because you did it on your device with full knowledge. Not the developer who put it in the App Store.
I’m not even going to try and address whatever weird issues a console emulator might have, those always have problems being ported to non-x86 platforms, especially when they include a JIT. As it happens, dynamic recompilation of machine code not designed for that purpose can be pretty damn hard. Take a look at the posts the Dolphin emulator team make about the fun they encounter.
> I’m not even going to try and address whatever weird issues a console emulator might have, those always have problems being ported to non-x86 platforms, especially when they include a JIT. As it happens, dynamic recompilation of machine code not designed for that purpose can be pretty damn hard. Take a look at the posts the Dolphin emulator team make about the fun they encounter.
This isn't that! The JIT works when you remove iOS's sandbox (by Jaibreaking). And this applies to every iOS console emulator.
Oh, that's right, it's because iOS normally doesn't allow dynamic code modification in memory. That's not an iOS specific thing at all, Apple is just one of the few companies willing to make that nod to security.
Why does macOS keep getting offhandedly roped into these discussions? Not only is the Mac App Store not a requirement, it's rarely used.
Maybe Apple intends to change that some day, but that's speculation, not reality. And frankly, from where I sit, people have been predicting the demise of macOS sideloading for nearly a decade now, and they're still waiting.