After my trip to Google I/O 2013 last year, I wrote about the development of applications on the Google Glass. As a prequel to the review on Google Glass (which I have been recently gotten one unit through a private unit via the glass explorer program and using it for at least a week), I thought it might be good to share this earlier article I have written about how one should think about developing applications. One important thinking is that the development philosophy on the Glass follows closer to web development than native mobile application in either iOS or Android SDK.
I have been following the developments of Google Glass from the island of Singapore. Unfortunately, the only channels for me to learn about the device are limited to the images and videos from various sources (Google and technology pundits who are reviewing the product) and the recent release of the Glass API documentation.
When I attended the Google I/O 2013 conference last week in San Francisco, I finally get an opportunity to test drive the device, learn on how to develop with the Glass API and hacking the device provided by the Google Glass engineers and speak to a few 3rd party developers who have or are currently developing applications on the device. Prior to this, I have limited imagination to what one can really do with the glass. After a hands on with the device, I am able to think about the interesting possibilities out there that one can do with the glass.
Here are some key learnings that I have taken from the Google engineers and 3rd party developers during Google I/O 2013:
- Do not develop Glass apps that will inundate or overwhelm your user with information or data: If you watched the recent TED talk entitled“Why Google Glass” by Sergey Brin or talked to the Google Glass engineers during the I/O conference, one core principle on developing apps on the glass is that it is not meant to overwhelm the user with information. Essentially, the device should present the information to the user in a concise manner and move the user towards one action that can allow them to interact with the environment quickly. The most obvious actions which they have done is image capture and video recording. Hence figuring out how the user can generate data or interact with the environment is crucial to building a successful app for the glass and not let too much data overwhelming the user.
- Developing an app on Google Glass is akin to developing a web service: From the API documentation, you are essentially building a web-based service with the Google Mirror API. The content are delivered via the management of timeline cards which display the text, rich HTML, images or video and at the same time, organized by a timeline. Once you know how the timeline cards are managed, you can specify your own custom actions specific to your service. Obviously, there are currently built-in actions such as reply by voice or voice navigation. Other auxiliary parts of the API includes subscribing to the notifications system, sharing of contacts and user location.
From talking to 3rd party Google glass developers, the way to think about how to develop an application on the glass is more web service development than native mobile application development. For example, if the developer want to insert a timeline item, for example, an image into a timeline card, it is just to POST a JSON representation of that item to the REST endpoint. In layman, it just means that the developer needs to focus on the data delivery and the layout of the data within the glass app.
- The form factor for a glass requires the app to have one or few actions or concise information which the user can access: The screen resolution to the Google Glass is about 640 x 360 pixels. The screen real estate for the glass app forces the developer to be concise about the information delivered upon request of the user from the app. For example, if I am searching for a piece of news content within a location with my Google glass, the summary of the news content has to be concise and be understood by the user in a short sentence. To be efficient for the user, the developer has to simplify the user interface such that the user should only have one customised action upon access of the app. The form factor coupled with concise content delivery and limited actions from the user makes it challenging to the type of apps that one can build with the glass.
- Potential opportunities for Google Glass: Despite the limited form factor of the glass, there are potential opportunities for Google Glass. The biggest opportunities lies in areas where instantaneous data on the environment coupled with the time and space data of the user can build up a profile that could alert or guide the user to certain actions. A simple example that I can conjure is the example of a fireman in a hostile environment. With a simple glass app, the fireman can transmit the real time data for analysis interlaced with data on the building so that he can work out exit routes for himself and the people that he might be trying to evacuate. Other opportunities lies in the areas of healthcare and exploratory missions where data collection and analysis in real time are essential and pivotal.
Nevertheless, as an early adopter to new technologies, I am looking forward to Google Glass opening up to international markets and try out a few interesting ideas to develop apps on the device when it is made available to where I am.
Author’s note: I have written this article earlier and published in on Medium.