I read two great articles over the past few days detailing how Apple could improve iOS by taking a page from its competitors' book (specifically, Android and Windows Phone 7) to enhance the way apps communicate with each other, and by looking at the way webOS handles multitasking and application windows on the TouchPad. They are good articles with some clever ideas, so make sure to check them out.
I have been writing a lot about ecosystems, file sharing and inter-app communication in the past months. After the public launch of iCloud last October, I've argued that Apple's cloud solution is the platform for the next decade that might as well become the "operating system" itself, although it (and, by reflection, iOS) still lacks document-oriented functionalities to facilitate the process of creating and moving documents between apps. I have also made the case for a "universal save" option for iOS apps that might take advantage of iCloud, and, fortunately, it seems Apple is listening.
Today I'd like to go on the record with a list of features and options I'd like to see in a future version of iOS. I'm not typically huge on lists or "feature request" (last one was a series of predictions for WWDC '11), but I believe it's worth discussing the direction where Apple is headed with its mobile operating system and, while we're at it, propose solutions to improve existing apps and system utilities. I'll check back on this list after WWDC '12.
Sync browser tabs through iCloud: We're getting this one with Mountain Lion, so supposedly a sync feature is coming to Mobile Safari in the next major version of iOS. Whilst I think it'd be great to have full-session sync like Firefox or Chrome for tabs, bookmarks, history, and passwords, bookmarks & tabs through iCloud is a good start, and the next obvious step is a complete "browser profile" synced through devices.
Facebook integration: Twitter integration in iOS 5 is great to let you quickly share webpages and photos with your followers. Facebook integration, spotted in a previous internal seed of iOS, would be particularly good, I believe, to fetch profile pictures for your contacts, pull photo albums from Facebook and, who knows, Game Center integration (think about that for a second). I still think quick status updates and webpages are better off with Twitter, but I suppose Apple could revamp the system sharing menu to include Facebook for those as well. Either way, I think Facebook integration would be a fantastic addition, not just for the sharing aspect but for the social graph and data Facebook could integrate with Apple's services.
Search in All Mailboxes: True, server-side, native search for all mailboxes and folders in the main screen of Mail.app. Perhaps with the same token options of Mountain Lion's Mail.
Copy link and text in App Store: I wish the descriptions for iOS apps could be copied in the App Store, and that Apple allowed us to copy an app's link directly from iOS devices. Which brings me to the point below...
Sharing options in App Store: This should be doable considering Apple has also enabled sharing on store.apple.com. I'd like to have Twitter, Email and Facebook integration in the App Store so I can share apps with my friends.
iTunes wish list: Similarly, why is that I can't view my iTunes wish list items on iOS? I use the feature all the time on my Mac, and it's strange that Apple still hasn't brought this functionality to iOS devices. Right now, I'm forced to use AppShopper to maintain a synced wish list for apps.
Per-contact read iMessage status: You know the option to let other iMessage users see you've read a text? I'd like this option to gain a power-user feature so I can selectively choose which contacts know I read their messages, and which don't. With iMessage increasingly becoming a full-featured chat app, I suppose it's not an uncommon request to think I'd like my parents to know I've read their texts, and let others wonder.
Mail-style rich text system-wide: iOS needs better text facilities available to developers. Apple should build an API for rich text, and allow developers to include a Mail-style popup menu for styling text in their apps. This would be great for text editors and word processors.
AirDrop: On the Mac, AirDrop is such a fantastic little utility built into the Finder. It allows me to effortlessly push files around Macs in my local network, and it's immediately accessible by less tech-savvy users. On iOS, it would obviously be nice to be able to exchange documents with Mac users, but I think there's an even bigger opportunity to turn AirDrop into a mobile utility to quickly share contact cards, pictures, videos, or other documents with iOS users around you. Sort of like Bump, from Apple, integrated with the system, with a nice UI that makes it easy to pick items you want to share. One can only imagine the possibilities this would open to "beam" trial of apps to other users and improve file sharing without forcing users to upload to iCloud or Dropbox first.
Move multiple icons at once: Jailbreak tweak MultiIconMover has showed that a simple system based on multi-item selection can work as a way to move application icons on the Springboard. This, however, is part of a much bigger issue.
Rethink the iOS Home screen concept: I have already argued that the iOS Home screen as a concept is fundamentally broken as Apple has added layers upon layers of interaction over the years, breaking the physical metaphor of "items you can drag and drop on a surface" with the multitasking tray, Notification Center, folders, and Newsstand. Meanwhile, Android and Windows Phone 7 are proving that a "smarter" Home screen is possible not only because of "extra functionality" (iOS should do this! iOS should do that!), but intrinsically smarter in that apps "come alive" on the Home screen with additional information, live results, widget areas, better folders, and more. I don't think Apple should "copy" every Home screen feature of Android and WP 7, but I believe they should look at the interactions implemented by their competitors and come out with their unique take on the subject (much like they did with Notification Center). Practically speaking, I'd like to see application icons becoming more than a simple graphic on screen, but a way to convey information prior to launching an app (think a weather app with a live-updating icon); widgets, as a way to take part of an app's core functionality and make it easily accessible on the Home screen without having to open the full-blown version (think "quick add" for OmniFocus on the Home screen); vertical scrolling, to better blend Springboard navigation and multitasking together without burdening the Home button. The last point brings me to…
Rethink iOS multitasking: If there's anything the PS Vita does sufficiently well, I believe that's multitasking. Or, better: I like the way the device displays icons and open "apps" both vertically and horizontally. The PS Vita lays out installed apps and games as a vertical list you can scroll with page indicators on the left; horizontal swipes are dedicated to accessing the rightmost part of the Home screen, which lists your recent apps and games as "Live Areas" rather than icons. This is smart, I believe, for a couple of reasons. First, Live Areas enabled Sony to provide richer app previews that not only show an app's latest screen (when available), but also include additional functionalities such as information, shortcuts, and media. Second, the mix of vertical and horizontal scrolling ensures you can get rid of a physical Home button to invoke the multitasking UI, making recent apps available on the "next pages", thus enabling a sort of "drilling down" metaphor where the Home screen can be seen as the top layer with apps underneath. Of course, Sony's implementation is far from perfect (they don't have enough gestures to back up this metaphor), but it shows that a different Home screen concept is possible and technically feasible. How would Apple benefit from such a radical rethinking? First, and I'm looking at the iPad here, they could look at Mission Control on the Mac, and bring some elements of it back to iOS. Imagine a supercharged multitasking UI that takes advantage of the iPad's screen to show app previews, perhaps grouped by windows as in webOS, alongside pinned apps (the dock). The multitasking tray feels like a waste of space on the iPad, and I think a bird's eye view of "what's going on" on your device with a Mission Control-like approach on the 10-inch screen could work. In general, focusing a new multitasking UI around better app previews and gestures could help Apple alleviate the Home button woes that have found some users confused and baffled by the ever-changing feature set of said hardware. I can't help but think Apple's implementation of multitasking is somewhat antiquated -- it's like they're stuck in 2010, while other companies have come up with a series of clever ideas. As usual, I don't expect Apple to copy them just for the sake of copying, but a little spark of inspiration could sure help them.
Deeper Gmail integration: This one's fairly simple. Work out your issues with Google, and find a way to ship Android-class support for Gmail in the native Mail app. Better visualization of labels, threads, and Priority Inbox would be a nice start. Millions of Gmail users who also happen to have an iOS device would cry tears of joy over this.
Automatic app updates option: I always know one of the apps I have installed has an update available, but that's because I'm a nerd and I follow developers on Twitter, read blogs, etc. Most users, however, rarely update their apps, and they're often stuck with older versions of software that has, quite possibly, been updated to include more functionality or bug fixes. iOS could have an option to enable automatic app updates, much like automatic downloads are sent to an iOS device both over WiFi and 3G. This could even be integrated with Notification Center, informing a user that an update is available in the App Store if they don't want the process to be automatic.
Open up Siri: This would be the big one for developers: wouldn't it be great to add data or interact with our favorite apps, without actually using them? Think about the possibilities of a Siri API for developers: "Siri, tell OmniFocus that I need to write a post" or "Add [test note] to Evernote" -- these are just two examples of what I imagine developers would be capable of doing with Siri as a new input method available to them. Just like the original iPhone kickstarted a revolution of a new breed of software built around touch, voice control could be the next big interface of the next five years, and generate another wave of apps meant for natural language input. This could be huge.
Better inter-app communication: Apps should be capable of easily talking to each other and share their basic features at a system level. Sort of like a Services menu for iOS and a mix of Android and Windows Phone 7, apps could advertise a basic functionality they perform (example: "upload .jpeg file" or "display .pdf document") and allow users to easily pass along data and files through a revamped sharing menu. Make sure to check out the links at the beginning of this article for a technical background, and the reasons behind the need for apps that are not data silos.
Improve Notification Center: Months of iOS 5 usage have made me reconsider what I initially thought would only be minor annoyances given the overall convenience of the Center. Things such as the lack of a Clear All button, or the fact that you can't tap on an app's name to group notifications have contributed to making me feel I need to "manage Notification Center" -- which is bad, because the system needs to be totally independent and automatic. UI tweaks aside, Apple needs to figure out a way to understand that if I haven't looked at a notification for two weeks, I'm probably not interested in it, and thus it can be automatically hidden (while still optionally badging an app). More importantly, I'd love to see Apple developing a way to -- get ready, this is meta -- syncing notifications across devices. Case in point: my Notification Center gets filled with the same email, Tweetbot, iMessage notifications on my iPhone and iPad. iCloud could, in theory, understand that I've acted upon a notification on my iPhone, and "sync" its read status back to other devices. Sort of like IMAP, for notifications, to avoid clutter. This can happen.
Make iOS devices aware of each other's presence: This plays well with the Notification Center idea above. Since the release of Messages for Mac beta, we've discovered how annoying it is to have the convenience of iMessage on your Macs…with an onslaught of notifications buzzing and beeping on all our devices at once. What's the problem here? It's that many people already have a Mac and multiple iOS devices, and whilst Notification Center does a fairly good job an unifying alerts and missed items, multiple devices mean multiple instances of the same alert at the same moment. This can be annoying. Here's my idea to fix it: go to the root of the issue and let iOS devices see each other's location. Make an iPhone understand that it's sitting near my iPad in the same room of my Mac. Figure out a way to implement proximity and fire off notifications only on the device at hand. How could this be possible? A few ideas: Bluetooth 4.0, geolocation, NFC chips. The future of notifications isn't real-time, which has been pretty much nailed down at this point, it's context.
Bring AIM to iMessage for iOS, and let us selectively mute threads: More on this here.
Calculations in Spotlight: I can't tell you how many times I went to Spotlight on my iPhone, thinking it could do basic operations like the Mac, only to find out it wasn't possible.
Steal Zephyr's gestures: They work pretty well in the jailbreak tweak, I'm sure Apple could make them even better.
Let users change default apps: As with the Mac, it would be great to be able to change the default browser and email client. No need to add an option in the Settings -- once apps adopt the correct API, this could be handled directly within an app's Preferences.
Make Notification Center for iPad Mountain Lion-like: The iPad is held differently than an iPhone, yet Notification Center is simply a bigger version of its iPhone counterpart, awkwardly laid out in the middle of the screen. With the iPad's screen, Apple could take the 10.8 approach, and make Notification Center appear at the side -- although this would probably require a smart bezel as it would lose the status bar as a starting point for the gesture.
Improve Notes with Mountain Lion features: Take the improvements made in Notes for 10.8, bring them back to iOS. Make a widget while you're at it, too.
Documents UI for iCloud: Apple has already announced an extension for the classic Open/Save dialog menu in Mountain Lion based on iCloud. The next step: bring this to iOS, let "iCloud 2.0" offer an improved set of documentation and APIs for developers so that they can build apps that can "save" documents directly to iCloud. Also build something like this.
VIP contacts for Mail and Messages: Again, Mountain Lion. Take VIP contacts from Mountain Lion's Mail, bring it to iOS, and add VIPs for Messages as well (which would be great combined with muting on a thread basis). Sounds doable, no?
Easy access to WiFi, Bluetooth switches: Steal from webOS, rethink how icons are displayed in the status bar, and make the WiFi and Bluetooth area tappable to quickly toggle on/off without launching the Settings app.