Wish list for WWDC 2016 Part 2

We have written our Wish list for WWDC 2016 from a developers’ perspective. This is part 2 that includes some more wish lists.

MapKit for the Web

MapKit is currently limited to iOS and OS X. It is spotted that Apple is using its own map data at the newly launched WWDC site. Lets hope Apple will open up their Map database for third party web apps. Opening web API for MapKit will allow iOS and Mac developers to reuse the same data for web and Android version of their app.

Keeping OS X Command Line Utilities Current

As with any Unix based operating system, OS X contains a large number of command line utilities and tools. Apparently Apple is not keeping these tools updated even if there are security vulnerabilities.

This post highlights one example with the git tool. The version that is in the latest OS X El Capitan 10.11.4 contains two bugs that allows remote code execution. Worst still, it is not easy to remove the git version installed in OS X due to the rootless protection by El Capitan. Lets wish Apple applies their security update practice to these command line tools.

Sample Android Java app

Apple has its own Android app. How about teaching its developers how to develop one that uses CloudKit? WWDC will shock Android developers if there is such a talk.

Mac Bootcamp for Linux

It is possible to install Linux operating system such as Ubuntu for dual boot usage on a Mac. But there is no official support and installation instructions are coming from the communities. There is always the concern of hardware compatibility. There are large number of developers using Linux for their work. There is definitely a market as evident by Dell’s Linux based XPS 13 notebook. It makes sense for Apple to target these segment with a bootcamp for Linux. Apple is in the hardware business and not the OS business.

Siri API

It is long overdue. Apple seems to be ok with Amazon Echo and Alexa taking over the market.

Migrating from Parse to CloudKit

To reduce the number of non functional apps in the App Store that uses Parse, it might be in Apple’s interest to guide developers on how to migrate from Parse to its platform.

Swift Playground for iOS

It will probably be a few more years before we see Xcode for iPad, but there is no reason why there is no standalone Swift Playground for iOS. 

Push Notifications Kit

Push notifications is basic requirements for many apps but it requires a third party server in order for app to send out notifications. It is straight forward to implement such server using open source push notification server, or developer could implement push notifications via a provider.

The wish list is for Apple to be a push notifications provider in order to simplify the interfaces for apps to use push notifications. This could be implemented as add-on services on top of CloudKit. Interface could be implemented using web API or using server-to-server key similar to CloudKit.

Safari Downloader for iOS

Have you ever try to download a large file via mobile Safari? Its time Apple implements a background downloader for Safari in iOS.

Print to PDF for iOS

Print to PDF is basic feature in OS X. It is curiously missing in iOS. It should be implement right within iOS system printer to allow saving PDF output to iCloud Drive.

News app for the Rest of the World

Apple News app is available only in U.S., UK, and Australia. It appears to be an experiment for Apple as it is not rolled out to more countries months after its debut last September.

“Login With Apple” Identity Kit

Games that uses iOS Game Centre API is able to obtain unique user identity. This allows games to bypass user account registration and signin process. Apple prohibits non-games app to use this API. For normal apps, CloudKit provides similar mechanism whereby apps are able to obtain unique identifier for each user. Thus it is possible to implement a “Login with iCloud” to provide seamless signing without password.

However “Login with iCloud” requires user to grant additional permission by switching on iCloud. Not all users have iCloud enabled. The wish is for Apple to implement a general purpose Identity Kit that allows apps to implement “Login with Apple” that ties to users’ Apple ID. 

API for Notes App

Many are using Notes app for note taking. Notes app has become a goto app to store all sorts of personal data. It would be ideal if there is an API that allows third party apps to use Notes as the base for user’s data collection, be it notes, links, snippets, quotes etc.

Core Data sync with CloudKit

It is possible to roll your own codes to enable Core Data sync using CloudKit as store. It is however a complex undertaking. An official reference implementation from Apple is most welcomed.