> For the average consumer, their phone can run all the productivity apps they need. For developers and artists, this is not yet true, but it is surely coming.
I cannot say anything about artists, but for developers Apple is actively preventing this:
- no way to write apps that allocate executable memory
- hard to sideload applications (though possible with a developer account)
Development still isn't great on iOS devices. Nevertheless, the activities you mention are a subset of all developer use cases. Not all developers need root or raw sockets, just like not all developers need access to modify physical hardware. The landscape has shifted so that those needs which were once very important in development are now much less prevalent, and are thus not optimized for.
Much of the misunderstanding that I've observed around iOS relates to overgeneralizing the failings of some specific use cases. Like, (artists won't like this) because (it can't do specific use case in art that only some in the field do, and many/most don't).
Framing it this way is a bit unfair, because it limits the comparison to how much iOS can replicate the desktop experience, rather than seeing the new use cases that iOS unlocks. We don't realistically expect iOS devices to have low level hardware expansion ports like PCIe cards to supercharge its video or whatever, but somehow we have software comparisons that seem roughly equivalent.
I'm not saying you were doing this, just something I've observed in comments a lot regarding iOS and its capabilities/purpose/usefulness.
My central point was not about whether the iPhone/iPad is suitable for some use case or not, but about how Apple is actively preventing people (in this case developers) who need these capabilities to be able to do their work on iOS.
I understand it is not ideal, but I think you're still looking at this through the lens of today. What if Apple is aiming for a tomorrow when you won't need to do such things as gain root access or manage the allocation of memory.
Clearly, they don't want you sideloading because it doesn't fit their business model.
Theoretically, if they had a version of XCode on iOS and you could load your programs you are developing somehow, they could possibly be getting around the limitations you list above.
> What if Apple is aiming for a tomorrow when you won't need to do such things as gain root access or manage the allocation of memory.
How do you come to the idea that in the future this will not be necessary anymore? My personal (but this is perhaps biased by my personal values) thoughts on this is such properties will become much more important in the future than they are now.
Why this?
A lot of the advantages Moore's law gave in the past have ended. So it will become much more important in the future to apply more "clever low level hacks" (e.g. use special units of the CPU) to get more speed (allocation of (executable) memory is one such trick).
Also Snowden's revelations have shown that it is very dangerous not to have complete control of the device anymore (at least in Germany these lead to a deep distrust in cloud/SaaS offers for many companies, since these companies fear industrial spying). For this having root access is essential (though not sufficient, since there might be other backdoors).
I cannot say anything about artists, but for developers Apple is actively preventing this:
- no way to write apps that allocate executable memory
- hard to sideload applications (though possible with a developer account)
- no way to gain root access in a legal way (necessary for example to create raw sockets; cf. https://forums.developer.apple.com/thread/36230)