upvote
LOL. That security bogeyman argument is a convenient post-hoc justification. The real reason is much simpler: Because "computers" started out with "Owner can run code of their choice on it" as one of the main definitional qualities agreed upon by the market.

Devices which only ran code that the vendor had specially packaged for the device always had other names, like Games Console, Word Processor, MP3 Player, Graphing Calculator, or just plain "Toy." Nobody confused those with computers and nobody accepted them as computers.

Phones entered this world already in that second category, long before Apple even considered making one. Apple kept an iron grip at first and after careful consideration, decided to only allow third-parties to even enter on terms extremely favorable and profitable to Apple, and always under their direct control.

Closing off the Mac would be very messy and also cause tremendous headaches due to it being the development platform for iOS. They don't want to bother. But the reason iOS is closed is because it's always been closed, and they'll never open it unless forced, because money.

reply
I respect your overall point but I think the picture is more nuanced than that. "Computer" as a term is simply unpopular, in favor of something referencing the intended application, as determined by things like the form factor:

Graphing Calculators are computers in every sense, it's hard to find one you can't at least program in a high level language like Basic or Python, and many accept assembly programs - even Texas Instruments models did, before their signing keys were brute forced.

Games consoles too almost invariably run third party code, although they tend not to be end user programmable - no different than an iPhone in that regard, really.

"Feature phones" - pre-smartphone phones with cameras and internet etc - usually had the ability to run Java Midlets without manufacturer blessing, even though you couldn't touch the OS. You could SSH into servers from those!

I think a big problem is that the distinction between "general purpose computer" and "end user programmable general purpose computer" is functionally meaningless when you can't write programs, which is most people. Instead they understand it in a functional context - what is this device for? How does it compare to how such devices usually work? The general purpose CPU inside is an implementation detail, and just because you think of an iPhone as a computer doesn't mean everyone does. They think of it as a "phone".

reply
Most people consider the iPhone as a "phone", not as a "computer". It's even in the name. So it fits your definition for devices which only run code that the vendor had specially packaged.
reply
People obviously consider it a computer; they install and use third party software on it. The question is whether the vendor should be allowed to monopolize the market for the third party software even when both the user and the third party developer don't want them to.
reply
> Because malware breaking the sandbox of one of them can mostly only spy on the owner, while malware breaking the sandbox of the other can spy on whoever the owner walks past, GPS trace their movements…

Then fix your s****y sandbox, Apple.

reply
Sure, great idea.

[Incoming call: National Security Agency] "Don't you dare stop our malware doing all that stuff you just said".

:P

All the other nations' agencies, outisde Five Eyes at least, will probably want to stop the NSA's malware, but may have their own instead.

reply