Last week was Google’s big week for announcements. I had tried to buy a ticket for the conference a couple months ago. The morning that tickets were scheduled to go on sale I got set up with my laptop about thirty minutes in advance. Internet connection: check. Registration page bookmarked: check. Google Wallet set up: check. Accurate time clock: check. At exactly 7am I refreshed the registration page and clicked the button to register. Waiting, waiting, waiting, “No tickets available”. Various news blogs wrote that tickets sold out in twenty minutes but it was more like forty-five seconds as far as I could tell.
Anyway, the sessions are all available on YouTube. The keynotes get all the publicity but there are dozens of technical sessions. I had a chance to check some of them out this weekend. There were two which had interesting nuggets of info.
The Web Can Do That? with Eric Bidelman
This session was Eric talking about some of his favorite technologies. Most of it was related to HTML5/CSS3. One of the things he highlighted was “flex box”. This is a model for creating compartments for content so that they automatically and gracefully adjust size and position. It can be used with media queries to reorganize content for different display sizes.
I hadn’t been aware of flex box even though it has been around for a couple of years. The W3C has a working draft in last call: http://www.w3.org/TR/css3-flexbox/
Eric also reference an interesting site, HTML Rocks: http://www.html5rocks.com/en/
What’s New in Android?
This session provided a deep dive into many of the technical details of Android 4.1 Jelly Bean. One of the sections (28 min. in) dealt with two new elements of Notifications – both of which may be of interest to UA designers. One is a new feature called bigContentView. This is an expansion of ContentView which can present an icon, a title and a short amount of text. The new view is bigger. It is taller and support photos, buttons, and more room for text. I could see where a bigContentView would be a great canvas for first-time user instructions.
The other new Notification feature is called Priority. It lets you tag notifications on a range from very important to very optional. The Android UI is then automatically configured to display notification appropriately, depending on what is going on in the app. A very important message could be tagged as MAX whereas a helpful tip might be tagged MIN. In between are three other mid-range settings – HIGH, DEFAULT, and LOW.
I think it is interesting that there was no mention of Google TV in the keynotes or the technical sessions. Whether or not that is significant is for the pundits to decide. Personally, I’m not as interested in Google TV specifically as I am about the design of apps for big screens in general.
I had searched for sessions on Google TV, figuring there would be some. I did find two – but they were both from the 2011 event. However, I hadn’t seen them before and they each had some interesting information that is still relevant and generally applicable to large-screen app design.
Building Android Apps for Google TV with Christian Kurzke
In this session there were a few good tips:
- Make sure the UI or your app recognizes that a remote with a D-pad is likely to be the primary controller. With a D-pad you need to carefully arrange your UI elements to minimize the number of button presses. Anyone who has tried to type something with their cable TV controller knows what a pain this can be.
- The display size of a large-screen TV is not really larger than a desktop PC screen when you factor in the distance we typically sit relative to the TV. They did calculations based on screen size combined with pixel densities and viewing distances and came up with some useful guidelines. Some of the details are here: https://developers.google.com/tv/android/docs/gtv_displayguide
- The over-scanning that TV manufactures put into their displays can result in unpredictable effects. They suggest letting the Google API do the heavy-lifting to appropriately scaling content. Make sure you’re using relative positioning for UI elements so that they can automatically scale and position themselves.
Building Web Apps with Google TV with Chris Wilson
A similar session from 2011 was hosted by Chris Wilson, the long-time Internet Explorer product manager who now works at Google. Some of the issues were redundant with the Kurzske talk but Chris also discussed color contrast and scrolling cues.
One other interesting suggestion he made was to add activity to the UI of a TV app. Since TV is a passive medium, most TV programs have a lot going on all the time. You want to keep your app UI active so the viewer doesn’t think something is wrong.
In the second part of the session, Daniels Lee presented the Google TC jQuery UI library which he said was particularly useful for doing TV app prototyping.