I am not an IOS user. I have an iPod touch… somewhere. It’s the only Apple product I own. I’m not big on Apple, in the past I hated all products made by Apple, but then I grew up a bit and came to accept that Apple’s products aren’t all that bad – they’re just overpriced in a major way. I actually quite like IOS as an operating system; it works well, it’s fairly seamless and quite easy to use (although nothing can trump the majesty of Windows Phone). I would probably get an iPhone if they weren’t quite so expensive and if it weren’t for their dependants on iTunes (the worst software ever), and I’ve come to appreciate something quite clever about the design of IOS – in particular, the way it treats applications and how they communicate with each other. To explain why it’s a cool idea, I’ll have to take you back in time…
Modern operating systems are based on some very old operating systems written as far back as the late 1950s. These were designed for very clever people to use. These people had to go through months of training in order to properly use these computers, so simplicity wasn’t that important, and neither was building an idiot-proof environment because this was not being used by idiots. These computer users had full access to all the stuff on the computer and if they screwed it up, it’s their own damn fault – they couldn’t complain about it on the then nonexistent world wide web. Any application could grab any file, fiddle about with it, move it around or even destroy it – but at this point, viruses weren’t a thing, so you’re not likely to have applications doing this sort of thing unless you actually want these things to happen to you. These were computers designed for clever people.
This was the starting point of computers, the foundation on which modern computing is built. Sure, you’ve got systems in place which try to prevent software from modifying files that they shouldn’t be modifying, but these systems don’t seem too difficult to get around; viruses still find new and exciting ways to ruin your day. The problem operating system engineers have is they don’t have a chance to go back and change this to build an operating system for stupid people to use (I mean that in the nicest way possible), especially because it would upset the many people who like the way modern operating systems work. I would hate it if, in the next version of Windows, all the software I used to use suddenly didn’t work anymore, and all software from then on has to fit into claustrophobic restriction in the name of simplicity. Although it would be better for people who want computers to be simpler, it would be awful for people who understand computers and have a deep affinity with them on a spiritual level.
So, when Apple got together and started working on the very first iPhone, they saw a chance to make an operating system in which viruses could not be installed and could be very simple to use, because they were designing the very first of its kind, and they were designing it for a normal person. It works like this: you have a bunch of apps installed that you trust because they were designed by Apple and Apple are trying to help you have a good time. These apps manage your stuff, all the important things you want to protect from nasty viruses and spyware. If you want access to your stuff, you have to ask this set of applications. One example would be the Photos app. The only way anything, including you, can access your photos is via the photos app. When a third party app comes along and wants a photo, it asks the photos app, which asks you. You have to approve Mr. Third Party App’s use of this photo, and you have to know about it before the third party app can even see the photo. It can’t see any of the contents of your phone unless you let it – and only the things you want it to see.
This is how every app works, and not just with photos. All the apps are separated into their own little bubbles. They can put stuff in their bubbles, but they can’t put stuff into other bubbles or get anything from another bubble without the user’s permission, they can’t even see any other bubbles, and they need to tell the user what they are doing every time they want something outside of their own bubble. Then only stuff they can mess up is anything inside their bubble. This way, everything that matters can be put in special trusted bubbles which stops bad things from happening to them. But this is done in a way which is so streamlined, I bet you didn’t even ever notice. This is actually Apple being pretty clever here (although I’m not convinced they actually came up with the idea themselves). It removes the need for the user to ever need to open a file manager and look at folder structures, or worry about where they put that word document because all your word documents are in the word app. You know where everything is, and it is a great way to eliminate confusion.
Now, obviously, this adds some restrictions to what the user can do. It makes everything simpler and safer, but it makes it hard for some applications to do what they need to do. This is a kind of design which would only work on phones and mobile devices, but couldn’t work on desktops – imagine if Windows worked like that – it would be horrible and quite painful to use, but because we are so used to the openness of the was our computers work and the freedom that gives us. Any application can access your documents, but that’s okay; we have user permissions – which work sometimes. The IOS system takes all control from the user to control how stuff is stored. The user can’t make folders and put different things in it. It doesn’t work well for proper work, but it does work well on a mobile device like a phone, which is already awkward to use. IOS gives us a system which is simple to use and easily understood, and I think we all, whether you like IOS or not, need to appreciate how clever this is.