For the first time since 2014, WWDC is Apple’s first keynote of the year, which naturally means that there is a lot of pent up excitement and expectation surrounding the event. WWDC has always been the most significant event for developers, but what should we expect to see this year…
AI
AI and in particular ambient computing devices such as the Amazon Echo and Google Home are becoming ever more present in the last couple of years, and although Apple launched Siri way back in 2011 it finds itself playing catch up. AI is set to be a major theme for WWDC this year, as Apple continues to make improvements while maintining a major focus on privacy and internationalisation.
Home Kit
Apple’s integration with smart home devices centres around HomeKit, which means that providers have to go through a rigours certification process and include a proprietary chip in their devices. I don’t expect many changes to HomeKit this year, but a possibility an update of its adoption during the keynote.
Analysis APIs
I would expect Apple to open up some of its on device data analysis APIs to third party developers, and these API will be optimised for any AI co-processors that will be added to upcoming devices.
Siri Domains
The biggest thing holding Siri back is the available domains that it supports, so seeing these expand this year is a no brainer. The most obvious domains are music controls and to dos.
Siri Ambient Device
Does it exist? Does it have a screen? Nobody outside of Cupertino knows, but if it does, one thing is for sure, that it will revolve around Siri. Apple have pre announced a devices months before its release before (AppleTV, iPhone and Apple Watch to name but a few) but Apple could get away with just announcing the new enhanced Siri capabilities in its other SDKs at WWDC, and leaving the big unveil of the hardware for the holidays.
Unlike other Siri hardware, an ambient device shouldn’t be tied to a single user, so support for detecting individual users by their voice would be an important feature of this device.
A major focus of the Siri hardware will be music, in particular sound quality and its integration with Apple Music.
iOS 11
iOS, as has been the case since iOS 5 will be the headline update at WWDC. While nobody is expecting a major overhaul to the UI like in iOS 7, the UI will continue to roll back the extreme aspects of flat UI introduced in iOS 7, such as getting filled buttons, thicker fonts etc
iOS 11 is will have major improvements for the iPad, including an overhaul of the multitasking interface, and the ability to drag and drop files between apps.
Dark mode is an obvious feature, and is already available in macOS and tvOS. Integration at the OS level means that it can be activated automatically in conjunction with night shift.
macOS
Improving AI and therefore Siri on macOS will be a major area of focus this year, which will hopefully include merging Spotlight and Siri together. SiriKit came to iOS in 10.0 last year and watchOS 3.2 earlier this year, so this update of macOS should see it make its way across to the Mac.
Developers can hope (as we do every year) that UIKit, or at least a UIKit replacement/wrapper for AppKit is unveiled at WWDC. The ability to share more than the model layer code between all of Apple’s platforms would probably see the biggest cheer of all at the keynote.
iOS 10.3 saw millions of iPhones successfully migrate their file systems from HFS+ to APFS, so I would expect to see this release of macOS to do the same.
watchOS
watchOS 3 was a major update, focusing on fitness and simplifying the most common real world workflows on the Apple Watch. watchOS 4 is set to add more refinements and niceties akin to unlocking your Mac, with any major features requiring new hardware such as a cell radio or glucose monitor.
tvOS
The Apple TV hasn’t as of yet set the world on fire, but rumours are rife that we will finally get an Amazon Prime app for tvOS. I expect tvOS to get an update, but nothing major as the single thing holding back the platform is the lack off content.
iPad
The “iPad” received an update in March, but both of the iPad Pro models are due for an update, with the 12.9 and 9.7 inch versions been released in November 2015 and March 2016 respectively. The iPad Pro line up will game feature parity and include a True Tone display in both models, it would be nice to see them both gain 3D Touch alongside their existing Apple Pencil support.
The iPad Pro 9.7 inch will be replaced with a 10.5 inch, thin bezelled screen, at the same resolution (but a higher pixel resolution) as 12.9 inch model, akin to the iPad and iPad mini.
In regards to the iPad mini, its days are numbered with iPad’s price drop and popularity of the Plus size phones.
Mac
The MacBook was released in the first half of 2015 and updated at the same time last year, so an update to the MacBook is due but just a spec bump isn’t really keynote worthy.
There are also rumours of a update to the MacBook Pro, which already saw a significant overhaul in October, so this will only be a minor spec bump.
The iMac is a bit long in the tooth, last being updated in October 2015 but it is already fast so I wouldn’t expect to see it unless we get the iMac Pro.
Although it only gets some words on a slide during the main Keynote, saving the rest for the state of the union presentation later in the day, the developer tools will obviously get an update at WWDC. Last year Apple finally fixed automatic code signing (for all but the most complex of cases), so next on the list has to be improvements regarding Swift, such as the refactoring tools.
Swift is now being developed out in the open, so I wouldn’t expect to see any major announcements on that front.
A few months ago I decided to migrate ObjColumnist.com from a custom Wordpress install to a Middleman generated static site. I thought I would document my thinking process about undertaking this migration and how it turned out.
I should start by saying that I have nothing inherently against Wordpress (although I admit I’m not the greatest PHP or MySQL fan), but it was in fact Wordpress’s extensive flexibility that lead me to move away from it. Wordpress in 2017 is so much more than a blogging platform, its essentially a constantly evolving, highly customisable CMS that has numerous Themes and Plugins. The truth is, as a solo blogger I don’t need any of Wordpress’s advanced functionality, I didn’t even need comments! Moreover installing a Wordpress theme is trivial, but to customise it? I didn’t even know where to start!
This meant that the requirements for my new site were:
- The ability to write posts in Markdown
- It to be a static website
- Can be self hosted
- Easily themed
I had a preference for a Ruby based static site generator, which naturally lead me down the route of Jekyll. The one area that I found Jekyll fell down on was the ease of theming, it’s theming is comprehensive but overkill and too complex for my needs.
I then took a look at Middleman, which is another static site generator written in Ruby, that has an official blogging extension. The blogging extension did exactly what I wanted, it generated a blog from a folder full of Markdown files (one for each blog post, or what Middleman refers to as articles) and also supported all of the more programmer centric Markdown features that I had become accustom to when using GitHub, such as language specific code fences. Middleman also forced me to use my own styling.
Here is an example of one of the Markdown files that can be viewed here (note that I have left the “tags” metadata in, even though I currently don’t make use of them on the site):
---
title: WWDC 2015 Review
date: '2015-06-13 11:38:06'
tags:
- opinion
---
Users and Analysts have finally got what they wanted this year, as both iOS and OS X are receiving a "Snow Leopard" like update. This will allow developers (including Apple's) to iron out the rough edges in their apps but still add a sprinkling of new features.
My original reaction to the Keynote was that I found it somewhat underwhelming, but in hindsight after watching the sessions, I've come to the conclusion that there are a lot of small and useful improvements that I can't wait to make use of in my own apps.
I personally didn't attend WWDC or any of the alternative conferences in San Francisco this year, but found the live streaming of sessions great for keeping up to date. It also increased the level of discussion and sense of community between fellow developers.
From watching the sessions and the keynote, its safe to say the following 3 points are going to be important things to think about going forward:
## Swift
Swift is the language that you should now be using to develop apps for Apple's platforms going forward. Personally I am not planning to rewrite any of my apps using Swift, but will be using it for any new apps that I create going forward. Swift 2 is a great update to an already great language (although there is still a long way for the tools to go). I also noticed that when Apple pointed out problems during the sessions they were often written in Objective-C, while the solutions were in Swift. I don't think that these subtle hints were by accident. Developers may take time to adjust to Swift's "Protocol Oriented" approach, but I feel it will be worth it it.
## Adaptivity
Apple have introduced numerous APIs over the last few years such as AutoLayout and Size Classes to support designing your UI for multiple window sizes. I say window sizes, as screen sizes don't matter anymore and you shouldn’t — can’t — make any assumptions based upon screen sizes, device model or orientation. This unfortunately may mean we see a reduction of bespoke iPad UIs, but maybe this is the price we have to pay for adaptability.
## Search and Deep Linking
Apple made a big deal about search in the Keynote and iOS 9 will allow developers to index their data so it appears in search. Apple has also introduced universal links, which allows apps to intercept and handle HTTP(s) URLs for their website with their app. Both of these changes mean that apps will also need to support "Deep Linking". This will probably end up being one of the more complex features for developers to implement this year, as apps must be able to present linked content regardless of the apps current view hierarchy.
## Privacy
Apple's common theme at the moment is privacy and this is reflected in iOS 9s API changes. NSURLSession now requires a secure connection by default and apps can no longer use URL Schemes to see what apps are installed on a device. We as developers should take note of this, and continue to keep user’s information secure e.g making sure user data is encrypted, storing passwords using Apple's Keychain APIs etc.
Those were my major takeaways from the conference and with iOS 9 and OS X 10.11 scheduled to be released in just a few months time, I better start coding ...
The entire migration of Wordpress to Middleman (including building the Middleman site from scratch) took about 5 hours. I used wp2middleman to export my Wordpress posts to Markdown files. Everything exported correctly, but I noticed lots of inconsistency in emphasis and headings throughout the files (which was my fault!), so I spent about an hour cleaning up all of the files so that they were consistent.
The Middleman side of things was trivial, but I still probably spent around 1 hour setting up the template and config files so that the produced site was exactly what I wanted.
This included:
- Disabling the Calendar and Tag pages
- Enabling “pretty urls” (this generates
article-1/index.html
rather than article-1.html
, meaning the file extension can be omitted in the browser)
- Configuring Google Analytics
- Configuring the Markdown engine to be Redcarpet
- Minifying CSS and JavaScript during the build
My Gemfile
ended up as:
source 'https://rubygems.org'
# Middleman Gems
gem "middleman", "~> 4.1"
gem "middleman-blog"
gem "middleman-syntax"
gem 'redcarpet', '~> 3.3', '>= 3.3.3'
gem 'middleman-google-analytics', '~> 2.1'
# For feed.xml.builder
gem "builder", "~> 3.0"
My config.rb
file ended up as:
###
# Page options, layouts, aliases and proxies
###
# Per-page layout changes:
#
# With no layout
page '/*.xml', layout: false
page '/*.json', layout: false
page '/*.txt', layout: false
###
# Helpers
###
activate :blog do |blog|
blog.permalink = "{year}/{month}/{day}/{title}.html"
# Matcher for blog source files
blog.sources = "{year}-{month}-{day}-{title}.html"
blog.layout = "article"
blog.tag_template = nil
blog.calendar_template = nil
blog.generate_day_pages = false
blog.generate_month_pages = false
blog.generate_year_pages = false
blog.generate_tag_pages = false
# Enable pagination
blog.paginate = true
blog.per_page = 10
blog.page_link = "page/{num}"
end
page "/feed.xml", layout: false
# Enable pretty urls
activate :directory_indexes
###
# Google Analytics
###
activate :google_analytics do |ga|
ga.tracking_id = "UA-MYTRACKINGID"
end
###
# Markdown configuration
###
set :markdown_engine, :redcarpet
set :markdown, :fenced_code_blocks => true, :tables => true, :smartypants => true, :autolink => true, :highlight => true, :with_toc_data => true
activate :syntax
###
# Build specific configuration
###
configure :build do
# Minify CSS on build
activate :minify_css
# Minify Javascript on build
activate :minify_javascript
end
The last 3 hours was spent implementing the site itself, and besides the few inevitable head scratching moments with CSS this went as smoothly as could be expected.
Deployment was a case of building the blog and uploading it to my server. The site has no dependancies as it is just static files.
In hindsight I’m really happy that I decided to migrate my blog from Wordpress to Middleman. The site looks better, loads faster, and it is now trivial for me to make any changes. Moreover I don’t have to deal with installing updates or fixing any issues that come up with upgrading Wordpress or one of its Themes or Plugins. Obviously I could of achieved this with one of the other static site generators, or doing it all by hand, but I can whole heartedly recommend building your static blog using Middleman.
In September Amazon announced that the Echo was coming to the UK, and that Prime members could preorder one for £99.99, rather than the usual price of £149.99. Over the last couple of years I have heard great things about the Echo (mainly from Podcasts with US hosts), and I was in the market for a new Bluetooth speaker anyway, so I knew that it wouldn’t a completely wasted purchase. So I went ahead and purchased the black model at the discounted price, in addition to the remote for £19.99.
I received the Amazon Echo on launch day, the packaging was nice but without the wow factor you get when unboxing an Apple product. The size of the Echo is what I expected from the various reviews and promo shots online, but a lot of the photos do a suspiciously good job of hiding the power cord coming out of it. The Echo itself has 2 buttons on the top, one for disabling the mic and another to trigger the setup process. Around the top of the Echo there is a light ring which is used to indicate activity. You can also twist the top of the Echo, which rather satisfyingly adjusts the volume.
I decided to put the Echo in my lounge as it is where I spend the majority of my time when I’m at home. The setup of the Echo using an iPhone was easy, you download the Alexa app from the AppStore and follow the on screen instructions. These involve connecting your iPhone to the Echo’s WiFi network and configuring it with your network’s WiFi credentials and Amazon account.
The Alexa app on iOS is clearly a hybrid app, in fact I would say it is predominately web based. There are a few strange behaviours with navigation (sometimes you press back and it appears to pop an entire web view from the navigation stack, thus you actually go back multiple steps) and it doesn’t use native controls which can be quite jarring at times. The app works, but I’m pleased that besides the initial configuration you don’t have to use it. It does have a nice feature where it shows you all the events you have triggered, and also (rather creepily) allows you to playback the audio from any of your requests that triggered Alexa, which is good for when you ask yourself “Why did it do that?”.
After configuring my Echo, i then proceeded to set up my Smart Home Devices. I have a Hive Thermostat and Smart Bulbs, and it was trivial to add these to my Echo. The Echo also allows you to to create groups of devices e.g. downstairs lights, which was a nice touch. My one issue with the integration (but I am not sure where the issue is), but simply saying “Alexa, Turn the hall light on” means that it sets the brightness to 100%, not the last brightness setting that was used.
I don’t use Spotify, but I have access to Amazon Music with my Prime Subscription, so I set this as my default music service and have used it to listen to music numerous times over the course of the last few months. In addition to music it also plays internet Radio, which I have used more than I thought I would. In my opinion the Echo sounds really good when compared to other Bluetooth Portable Speakers that I have heard, and has a loud enough speaker to fill a room although you lose some of the depth at full volume. In addition to streaming Audio from the internet, once paired you can say “Alexa connect” and it connects via bluetooth to your last paired device, in my case my iPhone, and then it works as a normal bluetooth speaker with support for voice commands to play, pause, next/previous track and volume up/down.
The Echo does a good job of listening to voice commands even when it’s outputting audio at a high volume (ducking the audio after it hears the trigger command), however this is the one scenario where by I would recommend the remote, as saying next track, adjusting the volume etc by voice can get a bit tedious. The remote is what you expect, it also has a mic button that you hold down to talk into it, but if you are not going to listen to audio I probably wouldn’t bother purchasing it.
One reason to use the Echo in the Kitchen/Bedroom is that it offers Timers and Alarms, you simple say “Alexa, set a timer for 7 minutes” and it will remind you. Obviously being in my Lounge means I don’t really make use of this feature, but when I tested it they both worked as you would expect.
Another major built in feature of the Echo is its ability to add items to both shopping and todo lists. Unfortunately these both require you to use the Alexa app, so I gave them a miss. Other than that, you can ask Alexa questions about the news, weather and more general questions such as unit conversions etc
Additional capabilities can be added to the Echo using Skills, which are in essence apps for your Echo. Once enabled you can then trigger a skill by saying “Alexa, ask SKILL QUESTION” e.g. “Alexa, ask TubeStatus are there any delays” (TubeStatus being the first Skill I downloaded to find out about delays on the London Underground). The Skills (if you can find any that you want) work fine, but they feel a bit robotic and you are conscious that you have to learn the syntax, whereas the built in features seem a bit more forgiving in wording and phrasing.
Obvious I couldn’t review Alexa without making the comparison to the other assistant in my life, Siri. After living with the Echo for a few months, the detection and transcription capabilities of Alexa on the Echo is leaps and bounds ahead of Siri on the iPhone 7. Alexa is also better at answering general questions, like the weather, unit conversion etc. However I feel that Siri’s intents API implementation means that for the few supported domains (8 as of iOS 10), your interactions feel a lot more natural compared to when interacting with a Skill. In short they are both coming at the problem from different directions, Alexa is currently winning but in my opinion that has a lot to do with the hardware.
So to conclude, would I recommend buying an Echo? Yes, if you want to make use of it as a Bluetooth speaker, whether than be with Spotify, Amazon Music or Internet Radio. I would also whole heartedly recommend it If you are interested in using it for interacting with your Smart Home Devices, but it is probably worth considering the cheaper (£49.99) Echo Dot device…. but I actually ended up buying a second Echo for my bedroom, so it is safe to say I recommend it.
So it is finally happening, Apple has called a second holiday Keynote to announce some major updates to the Mac lineup (sent with lasers). The question is what Macs will get a major redesign and which ones will just be getting a minor speed bump?
MacBook Pro
The MacBook Pro is set to be the headline product announcement at this keynote and receive its biggest overhaul since it was updated to a unibody enclosure in 2008. Although the MacBook Pro will feature a slightly thinner designer than its current incarnation, the major change will be the multitouch function bar with Touch ID, called the Magic Toolbar. This will allow developers to display contextual virtual keys and information on the function row, while Touch ID would reduce the friction of using Apple pay on the web, as well as giving you a convenient way to unlock your Mac.
The MacBook Pro will also make the transition to USB-C and Thunderbolt 3. It will be sad to see the MagSafe port go away (unless Apple have come up with a USB-C complient MagSafe cable since the introduction of the MacBook), but the bigger question is whether Apple will ditch the headphone port in favour of a Lightning port…
MacBook Air
The MacBook Air is an interesting product for Apple as it still sells in huge quantities (due to its price, number of ports, size and performance), but it is looking outdated with its huge bezel and lack of Retina Display. I expect it to remain (relatively untouched) in the Apple lineup until the MacBook hits the magical $999 price point, but a minor speed bump an inclusion of USB-C is on the cards for this event.
MacBook
The MacBook is the only Mac that has been updated this year, and already has a single USB-C Port, so it is unlikely to get an update at this event.
Mac Pro
When the current generation Mac Pro was unveiled at WWDC 2013 (yes it was unveiled 3 years ago!), Phil Schiller followed up the product film with the remark “can’t innovate my ass”. While Apple have been innovating else where (they have announced and released 2 generations the Apple Watch since then), the Mac Pro has remained untouched in both spec and price since it shipped at the end of 2013. Logic would suggest a spec bump at this Keynote, but there are rumours of this not happening till next year alongside the new Xeon processors.
iMac
The iMac is set to get its annual speed bump and support for USB-C, but nothing out of the ordinary having received major updates (to the display inpaticular) for the last 2 years.
Mac mini
The Mac mini aka The Home Server or The Build Machine, hasn’t had an update for over 2 years and with that “update” they dropped the option to have a quad core CPU, which has led to some people continuously checking the refurb section of Apple Store to grab a quad core Mac mini as soon as the come back in stock. If the Mac mini does get an update, it will just be a CPU bump and USB-C.
Cinema Display
Apple discontinued the Thunderbolt Cinema display earlier this year, so the question is wether Apple are out of the external display market altogether or just waiting until the Mac lineup can drive a 5k external display. If it is the latter, this will be the Keynote to do it.
iOS
iOS 10.1 has been in beta for over a month now, the main feature being the portrait camera mode for the iPhone 7 Plus. iOS 10.1 will get a release date during the keynote, which will probably be later on in the day.
macOS
macOS didn’t get any stage time at the last keynote, so I wouldn’t be surprised to see a small recap of some of the new features in macOS Sierra in addition SDK support for the Magic Toolbar.
Its that time of the of year again where Apple updates its products in time for the holiday shopping season, but with Apple’s ever expanding product line what should we expect to see updated?
iPhone
The iPhone has already been updated this year … well the 4 inch model has anyway, with the introduction of the iPhone SE in the spring. Even though the iPhone SE has been a great success for Apple, this event will only see the 4.7 inch (iPhone 6S) and 5.5 inch (iPhone 6S Plus) models being updated.
Unfortunately this year’s iPhones seem to be destined to be remembered as the one where Apple got rid of the headphone jack. It will be interesting to see how Apple puts a positive spin on this (water resistance, sound quality etc), but whatever the reasoning I would expect the Keynote to mention the benefits of both Wireless and Lighting Cable headphones. This will also mean that Lightning EarPods will be bundled with the this years iPhone’s, in addition to Apple’s offering its own premium wireless headphones called AirPods alongside the new iPhone.
One less noticeable physical change will be an update to the iPhone’s Home button, so that it has no moving parts and use Taptic feedback, much like the Magic Trackpad.
To ease the pain of the missing headphone jack, Apple will bump the capacities of the iPhone so base model comes with 32GB of storage and introduce a new colour to the lineup.
The iPhones will also be updated to have a True Tone display, that was introduced with the 9.7 inch iPad Pro earlier this year, so those 3x Emojis will look even better.
One of this years major hardware updates will be exclusive to 5.5 inch Plus models, and will be a dual camera system allowing for better depth of field and performance in low light conditions.
Unsurprisingly both the 4.7 and 5.5 inch will be updated to Apple’s A10 processor, which is set to be 50% faster than the current A9.
The new iPhones will be available on either Friday the 16th or 23rd of September.
Apple Watch
Apple Watch was unveiled 2 years ago and has been available for purchase for a year and a half, so it is set to get its first update, focusing on the health aspects of the Apple Watch.
The Apple Watch will gain a GPS chip of its own, meaning that it can accurately track your run without having to take your iPhone with you. The Apple Watch won’t gain any cellular capabilities this year, so what it can do untethered from your iPhone will be limited, but with the extra capabilities made available to apps in both watchOS 2 and watchOS 3, the Apple Watch is now more than capable of undertaking tasks while untethered from its iPhone.
In addition to the GPS the Apple Watch will get a Barometer to help monitor your fitness such all those flights of stairs you go up and down over the course off the day.
The new Apple Watch will be faster, lighter and have better battery life, but I think so insignificantly that the majority of users won’t even notice. The existing sensors such as the heart rate monitor will be updated for increased accuracy and have extra capabilities such as measuring blood oxygen levels.
In addition to updating the Apple Watch, Apple will also take this opportunity to release a new set of seasonal bands that will be compatible with both the 1st and 2nd Generation Watches.
MacBook Pro
The MacBook Pro is set to get its biggest overhaul since it was updated with the unibody enclosure in 2008. Although it will feature a slightly thinner designer than its current incarnation, the major change will be the multitouch function bar including Touch ID. This will allow developers to display contextual virtual keys and information on the function row, while the Touch ID would reduce the friction of using Apple pay on the web as well as giving you a convenient way to unlock your Mac.
The rumours point to this not being announced until later in the year, but anyone who is expecting this to be as thin as the MacBook Air will be disappointed. The updated MacBook Pro will be available in both 13 and 15 inch sizes, and include USB C and Thunderbolt 3 Ports.
iOS, tvOS, watchOS and macOS
All of Apple’s OSs had an update unveiled at WWDC in June, so the only updates you should expect to see (other than the refinements made during the betas) are those related to the new iPhone and Apple Watch hardware. Naturally we will get a run through of all the key features again during the Keynote, but it will be a similar presentation to what we saw at WWDC.
Apple’s second keynote of 2016 takes place on the 13th of June. Apple’s first keynote of the year focused on hardware but as this is WWDC, this keynote is going to focus heavily on software but what exactly should we expect to see?
Swift 3
Now that Swift is being developed in the public eye, you shouldn’t expect to see any Swift revelations at WWDC this year, but obviously it will dominate all of the sample code and have numerous sessions dedicated to it. One thing that Apple could have been kept under wraps is improved support in Xcode support such as refactor tools, and the rumoured Swift IDE for the iPad.
Siri
Siri is destined to become the focal point at this years conference, with it receiving a major update and making its way to the Mac. More importantly for the WWDC crowd, Apple is also set to (finally) unveil a developer API.
There is also an outside chance that Apple may launch a speaker akin to the Amazon Echo and Google Home, but with iOS having Hey Siri I’m not sure that it’s needed.
iOS 10
iOS is unlikely to get an equivalent to Android’s Instant Apps feature this year due to Swift 3.0 not being ABI compatible, thus meaning that the (30MB) runtime and standard library has to be bundled into every app that uses it.
iOS has been destined to gain the ability to pick the default apps (e.g. email, web browser, calendar and reminders) for the last few years, so this would be an obvious feature to debut alongside Siri.
A lot of iOS apps have started to include a Dark Mode recently and OS X gained an official Dark Mode last year. One thing that Apple could introduce is a system wide Dark Mode that apps could detect, and be automatically enabled alongside Night Shift.
iOS 9.3 introduced Multiuser iPad support for education, so I wouldn’t be at all surprised to see this rolled out to all users allowing families to share an iPad. Moreover following on from iOS 9 I expect to see improved Multitasking support on the iPad, such as drag and drop between apps.
tvOS 10
tvOS is the youngest of all Apple’s OS’s even though it shares its major version number with iOS.
It’s hard to predict what changes will be made to tvOS, as the biggest improvements will simply be access to more content (Amazon Prime app anyone?). One thing we may see unveiled at the event is an official Apple Game Controller, which will prove that Apple are serious about making Apple TV a gaming platform.
watchOS 3
watchOS still being young has lots of room for improvement, so I would expect watchOS to see some substantial changes in terms of both usability and APIs. I expect Apple to abandon the honeycomb springboard and address the functionally of the Apple Watch’s only button.
OS X 10.12
OS X, Mac OS, MacOS or macOS, who knows what it will be called after this event (bets are on macOS)! but it will certainly receive its annual update.
As mentioned OS X will finally get Siri support, the most interesting thing will be to see if Siri and Spotlight are unified allowing you to either talk or text Siri.
iOS Developers can hope for UIKit or at least UXKit be announced for the Mac, but this is probably unlikely.
MacBook Pro
The MacBook Pro is set to get a major update this year having a thinner and lighter design, OLED function row, Touch ID support and the migration to USB C/Thunderbolt 3.
The OLED function row will allow the (virtual) keys to be context aware e.g. Showing volume and playback controls when in iTunes. This is the exact same pitch that Steve Jobs made with the iPhone’s virtual keyboard in 2007.
Although the unveiling of the new MacBook Pro is imminent it looks like WWDC has come a couple of months too early, but we me see it unveiled for shipments at a later date.
iPhone
iPhone will stick to its pre holiday schedule and won’t get an update at WWDC, even then it’s looking increasingly likely it will be the 3rd revision of the iPhone 6’s design and not a true iPhone 7.
iPad
The only iPad that is due an update this year is the iPad Air, but I wouldn’t be at all surprised to see the iPad Pro 12.7 updated to have a True Tone display, but these won’t see an update until the fall.
Apple Watch
The Apple Watch has been available for a little over a year now so for any other Apple product you would assume that it is destined for an update soon, but not at this event.
Apple’s first Keynote of 2016 is set to be a tale of evolution not revolution, setting the stage before the more significant WWDC Keynote in the summer, but what can we expect to see announced…
FBI and Security
The biggest story surrounding Apple this year has unfortunately been to do with FBI and the the proposal of ‘GovtOS". I don’t expect this to be addressed head on during the keynote but I would expect a passing reference to it and Apple’s continued commitment to privacy and security.
iPhone SE
It has been nearly 2 years since Apple last updated the 4 inch iPhone (the iPhone 5s), and since then the iPhone has seen major improvements in terms of performance, camera and the inclusion of NFC to enable Apple Pay.
Although the 4.7 inch and 5.5 inch screen size iPhones have proved to be extremely popular and profitable for Apple, especially in Asia, it has become apparent that there is still a significant section of the market that wish to have a smaller and lighter phone. A lot of these customers are iPhone 5/5s owners that are now due an upgrade, so this is what the iPhone SE is attempting to address.
The iPhone SE will gain the physical appearance of the iPhone 6s/6s Plus and be available in the same 4 colours as the iPhone 6s/6s Plus and start at $549 with 16GB of storage. The iPhone SE will include a slower version of the A9 Processor that’s found in the 6s and 6s Plus and Apple Pay, but not 3D Touch.
iPad Pro 9.7"
The next update to the iPad 9.7" is set to see it rebranded to the iPad Pro. Like with its existing larger sibling it is set to gain a smart connector for accessories, four speakers and support for the Apple Pencil. I would expect it to have same storage and connectivity options as the existing iPad Pro (32 GB + WiFi, 128 GB + WiFi and 128GB + WiFi/Cellular), with the 9.7” Model starting at $599, sitting above the iPad Air in lineup which will remain at $499.
Apple Watch Bands
Following in the footsteps of Apple’s last keynote, Apple are set to an announce a new set of Apple Watch Bands including the previously leaked space black Milanese loop. This should keep the the Apple Watch Lineup fresh heading through the summer, before it sees a major update later this year.
Software Updates
iOS 9.3 is now at Beta 7, and comes with some significant improvements for a point updated including night mode, secure notes and multiple users on iPad. This will likely be released after the event alongside the less significant Mac OS (10.11.4) and Watch OS (2.2) updates.
Just as predictably as night follows day, Apple is set to refresh its iOS lineup in time for the holiday season, but what should we expect to see and what fails to make the cut?
iPhone 6S and 6S Plus
The iPhone 6S and 6S Plus (as the names suggest) will be an incremental update to the iPhone 6 and 6 Plus. In addition to the usual speed bump, this year’s iPhone will get Force Touch which will offer developers the opportunity of a “Contextual Tap”, rather the Apple Watch’s 1 Menu Per Screen. As Force Touch will be limited to only the 6S and 6S Plus, these features will be limited to shortcuts in the near term.
The iPhone 6S and 6S Plus will be available for preorder on Friday, with a release date of the following Friday at the existing price and 16 GB, 32 GB and 64 GB storage capacities.
Apple TV
An Apple TV hardware refresh and SDK is an almost certainty, since it made its appearance on the iOS Dev portal at WWDC. Apple dropped the price of the current generation Apple TV to $69 in January, leaving the $99 price point vacated for the next generation Apple TV. With the Apple TV set to include Siri support in a Motion Detecting Remote, a $99 price might be something that Apple struggles to meet while maintaining their healthy profit margins. I expect the Apple TV to start at $149 with 16GB of Storage, with Third Party Bluetooth Controllers being available for more traditional console like games.
iPad Pro
Last years iPad Air 2 update left us with an overpowered iPad without any major apps to take advantage of it. The iPad Pro is set to rectify this by having a larger 13” styli compatible screen. This alongside iOS 9’s Adaptivity APIs, might see the iPad finally break through and become a serious creation device.
Expecting to see the iPad Pro ship in October at around $799, but it is possible that it will not be unveiled until next month.
iPad Air
The iPad Air (as mentioned previously) is already overpowered, so Apple might take the opportunity to not update the iPad Air this year.
iPad mini
Last years iPad mini only received Touch ID and new colours, so it is a generation behind the current iPad Air. It is more likely than the iPad Air to receive an update, but that it is by no means guaranteed.
iOS 9
Inline with tradition we are going to see a round up of iOS 9s new features … basically the same presentation we saw at WWDC in June. Other than support for new hardware features I wouldn’t expect to see anything new added.
iOS 9 will be available to download next Wednesday for the iPhone 4S/iPad 2 and above.
watchOS 2
In conjunction with iOS 9, watchOS 2 will also be available to download next Wednesday alongside a plethora of watchOS 2 apps. I wouldn’t expect to see anything revolutionary, but apps running entirely on the Watch will improve the experience immensely, and custom complications add an interesting twist.
OS X El Capitan
OS X is also due to be released this fall, but I wouldn’t be surprised to see it pushed backed to an October Keynote, as there is nothing significant tying it to this event.
Conclusion
There are lots of things to look forward too over the next couple of months and indeed lots of things to develop for, but the Apple TV is set to steal the show a this Keynote.
Users and Analysts have finally got what they wanted this year, as both iOS and OS X are receiving a “Snow Leopard” like update. This will allow developers (including Apple’s) to iron out the rough edges in their apps but still add a sprinkling of new features.
My original reaction to the Keynote was that I found it somewhat underwhelming, but in hindsight after watching the sessions, I’ve come to the conclusion that there are a lot of small and useful improvements that I can’t wait to make use of in my own apps.
I personally didn’t attend WWDC or any of the alternative conferences in San Francisco this year, but found the live streaming of sessions great for keeping up to date. It also increased the level of discussion and sense of community between fellow developers.
From watching the sessions and the keynote, its safe to say the following 3 points are going to be important things to think about going forward:
Swift
Swift is the language that you should now be using to develop apps for Apple’s platforms going forward. Personally I am not planning to rewrite any of my apps using Swift, but will be using it for any new apps that I create going forward. Swift 2 is a great update to an already great language (although there is still a long way for the tools to go). I also noticed that when Apple pointed out problems during the sessions they were often written in Objective-C, while the solutions were in Swift. I don’t think that these subtle hints were by accident. Developers may take time to adjust to Swift’s “Protocol Oriented” approach, but I feel it will be worth it it.
Adaptivity
Apple have introduced numerous APIs over the last few years such as AutoLayout and Size Classes to support designing your UI for multiple window sizes. I say window sizes, as screen sizes don’t matter anymore and you shouldn’t — can’t — make any assumptions based upon screen sizes, device model or orientation. This unfortunately may mean we see a reduction of bespoke iPad UIs, but maybe this is the price we have to pay for adaptability.
Search and Deep Linking
Apple made a big deal about search in the Keynote and iOS 9 will allow developers to index their data so it appears in search. Apple has also introduced universal links, which allows apps to intercept and handle HTTP(s) URLs for their website with their app. Both of these changes mean that apps will also need to support “Deep Linking”. This will probably end up being one of the more complex features for developers to implement this year, as apps must be able to present linked content regardless of the apps current view hierarchy.
Privacy
Apple’s common theme at the moment is privacy and this is reflected in iOS 9s API changes. NSURLSession now requires a secure connection by default and apps can no longer use URL Schemes to see what apps are installed on a device. We as developers should take note of this, and continue to keep user’s information secure e.g making sure user data is encrypted, storing passwords using Apple’s Keychain APIs etc.
Those were my major takeaways from the conference and with iOS 9 and OS X 10.11 scheduled to be released in just a few months time, I better start coding …
Details regarding what Apple might announce at WWDC have been few and far between this year, but here is my thoughts and predictions:
Apple Tunes
Apple are set to launch a “new” music streaming service alongside iOS 8.4 this month, based on the technology that they acquired from Beats last year. The service will cost $10 per month and will also likely spell the end of iTunes Radio, as curated Playlists will be part of Apple’s service and would form the core of any free plan.
iOS 9
iOS 9 is set to be a “Snow Leopard” release, focusing on cleaning up the ruff edges that have been there for a couple of years now. A variant of the San Francisco font is expected to be adopted as the System Font (as seen on the Apple Watch and on the MacBook Keyboard) but this is set to be the most significant, albeit minor UI change.
Since the introduction of the Apple Watch it has become even more apparent that Apple needs to improve its notification handling and filtering, possibly based on the notification categories that are already supplied by apps. The Push Notification API could also be updated alongside OS X 10.11 to allow synchronisation (predominantly read status) across all Apple Devices e.g. allowing a developer to supply a globally unique id with a notification, which uniquely identifies it across all apps from developer.
Transit Directions are also set to make an appearance in the Maps app for capital cities, but I doubt Google or City Mapper have anything to worry about.
iOS 9 also provides the opportunity for Apple to open up more extension points and hopefully default apps. I would also expect Apple to hint at live resizable apps allowing for split screen on the iPad. Force Touch APIs (if they are coming) are likely to be held back until their is hardware to support it.
OS X 10.11
Like iOS 9, OS X 10.11 is going to be an opportunity for Apple to fix any outstanding issues, rather than focus on any major new features. Furthermore, after last years UI overhaul I wouldn’t expect any UI changes other than also adopting the San Francisco font.
An iOS Style Control Center (that was pulled from Yosemite) is set to be introduced, although this could simple be an improvement to Notification Center.
OS X is also set to take a security feature known as “Rootless” from iOS, preventing even Root users from modifying certain system files, in an attempt to prevent viruses an malware.
The most exciting feature (if it comes to fruition) is UXKit. UXKit is UI Compatibility Framework used by Apple in the Photos app, giving them a common API for both iOS and OS X UIs. If UXKit gets publicly released, I would expect a lot of apps to get ported back to the Mac, and a greater uniformity across iOS and OS X apps.
Apple Watch
Although we might finally get some sales numbers for the Apple Watch during the Keynote, you are not going to see any Apple Watch related hardware announcements during, but we will see introduction of the Native Apple Watch SDK. The Native Watch SDK will allow apps to run directly on the watch (so hopefully no more spinners) giving developers access to the sensors. With the limited storage, screen space and clock speed it will be interesting to see how much of change there will be when comparing these to the third party apps we have today.
Apple TV
The Apple TV is set to get a substantial upgrade, both in terms of specs and its role in the home. With the introduction of HomeKit peripherals last week, the Apple TV has become the Hub for HomeKit devices, allowing you to control them while you are away. It is also set to get a developer SDK which is set to turn it into a media center and capable games console, in addition to premium subscriptions services to complement HBO NOW. While the introduction of an Apple TV SDK is logical at WWDC, I think the hardware update and subscription services will not be available until later in the year.
Swift & Xcode
Currently the Swift runtime is embedded in all apps that use it, which increases their binary size by around 8mb each. If Swift’s binary interface is now considered stable, the Swift Runtime could now be included with the OS, allowing apps linking against it rather than embedding.
The majority of my Swift issues are more with the tooling than the language, mainly:
- Lack of Refactoring Support
- Long Compilation Times
- Autocomplete
In addition to this I would like to have a language feature akin to Ruby’s mixins (or something that would allow me to supply default implementations for protocols) which will encourage code reuse while maintaining Swifts strict type checking.
Native WatchKit apps may also see the reintroduction of Wireless Debugging directly for Xcode.