03 Jul 2014 Geekapalooza: My recent visit to Google I/O
Last week I had to pry myself away from my day-to-day life as a software developer and fly over the Pacific to attend Google I/O. Okay maybe I didn’t have to pry myself away – rather, it was more like me excitedly not sleeping for 2 days, giddy as a school kid, prior to leaving. I was lucky enough to be personally invited this year to both the conference and to other GDG organiser events to meet other community leaders across the globe. It’s safe to say I had high expectations.
I was expecting it to be big, but what I found was a mecca for geeks. A place where being a nerd was cool, wearing glass and wearables was not only normal but encouraged, and a place where everyone wanted to talk to you about the products they have been building and what tech stack and services made it possible. To say that I was blown away is an understatement — and this is just the people and culture surrounding the event. Let’s not forget the main reason I was there: I/O is the main stage for Google to announce their new product pipeline for the year. In this blog entry I’ll highlight the big announcements, albeit at a very high level.
“Design is the art of considered creation. Our goal is to satisfy the diverse spectrum of human needs. As those needs evolve, so too must our designs, practices, and philosophies.” – Material Design Documentation
There are 9 core principles for Google’s newly-announced Material Design guidelines are:
- Material Metaphor
- Tangible Surfaces
- Dimensional Affordances
- One Design
- Bold and Intentional
- Emphasize Actions
- User-initiated Change
- Animation Choreography
- Meaningful motion
These are also the new guidelines for the Android L release, but style guides have also been published for the web as well – I will cover that further down when discussing Polymer. To sum it up, Material Design adds a z-axis into a minimalistic design relying on the z-axis to provide the user with motion and call to actions, whilst moving away from the screen to screen navigation and animating UI layers into the foreground.
Android L Release
Sadly the L release of Android is still not ready for a production. However we did see a release so developers can bring forward their application designs, start playing with the new features, and start testing with the ART runtime (In the L release, ART will be replacing Dalvik as the primary runtime). In addition to ART, Project Volta is the next-iteration attempt to give devices better battery life. These two combined, and the new Job Scheduler API that allows developers to easily prioritise jobs for “run when you get a chance” as opposed to “run right now”, allowing a much more sustained battery life.
Enhanced notifications also made their way into the release, allowing non-intrusive notifications as well as an API to let the developer to display stripped-down versions of their notifications on a password- or pattern-protected lock screen, whilst still maintaining privacy. This can also be managed on a system level to maintain backward compatibility with displaying no notifications on the lock screen.
If you are anything like me, you rushed out and bought a Pebble watch for just one reason…. you’re a geek. What you didn’t expect was the impact it would have on your day-to-day workflow. After wearing it for a few days, you may have noticed that your phone was staying in your pocket more and you were getting distracted by technology less. It was no surprise to see Android Wear to be one of the big announcements of I/O. Android Wear extends the core principle of glanceable technology and unifies the experience across all of your devices.
On top of dismissing notifications globally, you get “just the right information at just the right time”. This may sound gimmicky at first, however my first experience of this was perfect. All attendees were tasked with the decision of choosing between a Samsung Gear Live and a LG G Watch. I chose the latter. A day before I was scheduled to come home, strange things started to happen on the watch. I was getting weather and time notifications for San Francisco, Auckland and Melbourne, with Auckland being my layover. I was seeing notifications about my pending time zone changes and if there were any delays for my flights. It was amazing how seamlessly this was conveyed to me – things that were actually adding real value. Information I wanted, right as I wanted it. And this was just the beginning.
With a few simple changes, anyone can implement this new functionally straight into their phone apps. I am very excited to see what innovations come from this.
I think a lot of people have had the brilliant idea of ripping out their car stereo and putting in a Nexus 7 tablet – Android auto is just that with a little twist. Following the Open Auto Alliance announcement earlier this year, it seemed fitting to see Google’s plan to extend Android to car technology. The result of this effort: an in-car interface that is driven by your phone. This means your car – and any other compatible car you get into – can be personalised for you. Your music, your navigation, your points of interest, and your phonebook.
My mind was racing at the possibilities of this platform on top of what was announced. Google will be providing developers the means to extend their current apps to have a car mode. This means no more outdated car navigation software, fully-live traffic updates and full integration to phone, SMS, and music. And there are plenty of manufacturers on board.
This is a keen area of interest for me over the last few years, including a recent attempt to pull apart a car keyless entry fob and solder it to an Arduino board to allow NFC entry into my car, driven by you guessed it… an Android phone or tablet. I really hope to see developments into car OBD-II and ECU APIs to allow developers to take the platform to the next level. But it’s still very early days.
The Android TV platform was one of the worst kept secrets at I/O. Android TV allows users to view free-to-air TV as well as Play Music and Play Movies & TV. To follow up from last year with Play Music: All Access, I was expecting a similar all-access PAYG regime, so that Play Movies & TV could compete with the likes of Netflix. Sadly, no such announcement.
That said, I found it very interesting that they are releasing a standalone set-top box. For me, this went against the grain of the general theme of your phone being your central access point to the world of Google’s technology. Nevertheless, it was still very cool (and maybe the beginning of Android@Home?). I’ll reserve my judgement for the time being until I get a my hands on a device to play with, but for now I’m much more sold by the Chromecast workflow, especially given my setup at home – a shared tablet that has a user with limited access to Play Music and Play Movies & TV.
Cloud Endpoints and Cloud Save
Cloud Endpoints allow developers to create very simple backend JSON API’s extremely easily. Android Studio has support for this, allowing you to maintain your data model and endpoints easily along with Google authentication; other OAuth providers will be implemented further down the track. Whilst this is hardly groundbreaking technology, it really shines through that it’s a 1-click deployment to a scalable backend with very little code – all of the boilerplate is done for you.
To support this even further, Google have also announced Cloud Save. Cloud Save allows developers to easily save application data from the user and sync it across multiple devices and platforms (Android, iOS, Web). These two new services are an addition to the Google Cloud Platform so you get App Engine, Compute Engine, API integrations, cloud storage, data store and big data all out-of-the-box.
The Polymer Project
Supporting only the last two browser versions, Google challenged themselves to see where they would end up if backwards compatibility wasn’t an issue. You may think that’s hippy talk, but the fact is the idea of the evergreen browser may be a reality in the not-too-distant future. The result was the Polymer Project.
Polymer is built on top of the new web components standards to make developing web pages a breeze. I won’t go into great detail about this, however it’s definitely something on my tech radar. It provides the developer with some very similar features to AngularJS on a lower level, but since it has the benefits of the new web components standards, a lot less of the negatives. I really hope this gains traction.
Summing Up: The Google of Things
The ‘Internet of Things’ is a term that is hugely popular in recent time. It is hardly a new idea or concept, however mainstream adaptation of mobile technology has made it more possible than ever. Wearable technology is here whether you like it or not. This year at I/O we got to see Google’s vision for its own ‘Internet of Things’, with the core focus being around the user’s mobile phone and semi “dumb” terminals feeding and consuming data without distracting the user from the world around them. I was definitely sold by their vision, however it is still to be seen how the non-technical users react. I think it’s definitely a safe assumption that we’ll be seeing some very cool technology coming out of Google this year.