What started as a tongue-in-cheek reference to the wave of apps finally being updated to align with Android's Holo design guidelines became a rallying cry at Google I/O this year. The #holoyolo hashtag made its way onto more than a few slides during the sessions last week and now it has found its way onto a t-shirt. So any of you Android developers or designers out there looking for a cheeky way to induce a conversation about getting your Android app to adhere to the Holo guidelines look no further. This is the t-shirt for you.
Google I/O 2013 Recap
Last week I had the pleasure of attending this year's Google I/O. Before I got too far removed from the conference I thought I would try to capture my impressions and thoughts about last week.
Keynote
The keynote clearly wasn't as tight as WWDC keynotes and frankly not as cohesive as past I/O conferences. Lots of bits were spilled last week in the aftermath, and I will spare you a retread of the common complaints. I do think though that a majority of the problems stemmed from the lack of a unifying theme or major tent-pole announcement. It is tough to build a substantive keynote around the smaller, more strategic moves Google announced. That being said, I cannot argue with the complaints about the "blocking and tackling" problems Google had during the keynote especially at a conference this big.
Android Announcements
When the keynote came and went without an official Android bump to the API level, many took that as Google wavering on their commitment to the platform. Watching the keynote live I had the opposite impression, and the subsequent Android sessions during the week reaffirmed that.
The Google Play Services and the r13 Android Support Library UI enhancements showed us how Google plans to curb the fragmentation issues which have plagued the platform. By packaging these enhancements in libraries that are compatible back to Froyo and immediately available for integration, Google enabled developers to get these new features and services into the hands of users immediately. This eliminates the dependency Google had previously on hand-set manufactures to integrate new Android releases on their current and older devices.
Many have questioned the long term viability of the Android platform for Google as companies like Amazon and Samsung seek ways to circumvent or minimize Google's influenence on their products. The approach that Google adopted has provided a way forward that serves their needs as well as developers. That is a big deal.
Comparison to WWDC
The content and variety of sessions at both conferences is excellent. On the whole, WWDC's sessions appeared to be more polished and rehearsed when compared to the I/O sessions. I found the I/O sessions tended to be a little more light-hearted and included more variety in the session structure (fireside chats, interactive labs) which added to the enjoyment of the sessions and kept the sessions from becoming monotonous. Both conferences provide a tremendous amount of access to the engineering teams directly working on the frameworks and services developers interact with on a daily basis. These opportunities for interaction are easily the most valuable parts of each conference. While the Apple labs at WWDC predominantly allowed for one-on-one interaction with their engineers, Google made their engineers available in an Office Hours setting that had the engineers holding court for small groups around white boarded areas in the conference hall. If you had very specific questions, the WWDC labs could not be beat for access and personal attention. If you were interested in picking up some tips and inside scoop about your favorite Google developer topics, then the I/O office hours are great.
My biggest gripes about I/O are mainly with the logistics and the infrastructure at the conference. The most popular talks were being held in rooms that could have easily been filled if they were four times the size. The bigger tracks like Android and Chrome could have benefitted from being clustered on one floor near each other instead of being spread over two. That would've made bouncing between sessions easier and eased up the congestion around the escalators and the other traffic hotspots on the floors. The session rooms themselves were stuffy and hot during the talks and especially so in the popular sessions which typically had crowds sitting along the walls and in the aisles. While the range of these complaints range from the minor (too crowded at times) to major (uncomfortably hot rooms) annoyancess they still detract from an otherwise great conference experience. The best thing about these issues are that they fixable. Hopefully Google will make some changes to eliminate these issues from future conferences.
External Conference Activities
The best parts of conferences are social interactions and Google I/O was no different. I kicked off the week at the Meatup.io, made my way out to Twitter for their Mobile Showcase lightning talks and capped the week off by going to a meetup-style talk on Android testing at a local startup. It was great to meet so many great developers and engineers at these events and it was nice to be able to thank so many of the project creators and maintainers in person for their contributions to Android's open-source community.
Summary
I had a fantastic time at Google I/O. I'm still chewing on and trying to process all the great content, conversations, and code that I was exposed to last week. I highly recommend Google I/O, and if you are fortunate to get an opportunity to attend a future event, I strongly urge you to go. Being around 6,000 passionate and excited developers is an amazing way to spend a week learning and exploring new technologies and services.
Favorite Sessions
Android
- Volley: Easy, Fast Networking for Android
- Structure in Android App Design
- Taking Advantage of Android Platform Features
- The New Android SDK Build System
Non Android
That Conference 2013
I am excited and honored to be speaking at That Conference again this August in the Wisconsin Dells. That Conference will have multiple tracks for mobile, web and cloud developers as well as an interesting other track this year.
I'll be sharing some of the hard-won Android tips and best-practices that I have collected over the past few years while building and shipping apps for clients. Hope to see you there in August!
Setting Up Motorola ET1 for Android Development
Getting ADB to recognize the Motorola ET1 took longer than I'd like so I'm posting this with the hope that it'll help others who find themselves in a similar spot.
Like most Android-based devices, developers need to enable USB debugging on the device by toggling a setting in the developer section of the settings app. However, with the ET1, developers also need to add the device's vendor id (0x05E0) to the ~/.android/adb_usb.ini file or else the device won't be detected or visible to ADB.
Once the vendor id has been added, kill and restart the ADB server. After ADB starts back up, the ET1 should now be listed in the ADB device list and able to be deployed to.
Favorites from August 2012
A collection of some of my favorite links, tweets and quotes from August. While these aren't a comprehensive look at or summary of August 2012, they do capture the things that I found interesting, thought provoking, and/or cool over the past month.
Favorite Links
- Mars Curiosity Panorama Photo
- The Speed of Sound is Too Slow For Olympic Athletes
- Animated Pizza Gifs
- Infrastructure - Coming apart at the seams
- Grammarly
- RIP Nintendo Power
- Feynman diagram sculptures by Edward Tufte
- The wrong side must absolutely not win
- The Rap Board
- If Movies Had Crappy Fonts
- Mapping Mars with Open Planetary Data
- Tony Fadell: On Setting Constraints, Ignoring Experts & Embracing Self-Doubt
Favorite Quotes
- When you say "I seen," I assume you won't finish that sentence with "the inside of a book." -- someecards


