Tag Archives: Google

Impressions of Android Wear (LG G Watch) with my Nexus 5

I finally got the LG G watch that I won in a contest about a week ago. I replaced my Pebble smart watch with the Android Wear device along with using my spare Nexus 5 instead of my iPhone. It’s been about four days or so since I made the switch so I thought I’d write up my impressions.

The Watch


The LG G watch is one of the two currently available Android Wear devices for purchase. My coworker Jason, who also won a watch in the same contest, got the Samsung model. We both would have rather had the Motorola watch, but it isn’t available until later this summer so Google decided to send us these ones.

The LG watch is not particularly fashionable. It looks like a pretty generic black rectangle with rounded corners. It comes with a pretty neat charging base that you can magnetically attach the watch to. I would’ve preferred some kind of wireless charging, but this gets the job done, and the watch actually charges pretty quickly. The quick charge time is good because the watch only last about 24 hours anyway.

The Software

Android Wear Software

The software for the LG watch is basically an enhanced version of the notification dock in Android. This actually mirrors Google Glass a bit, but the execution is less awkward because you’re not wearing a watch on your face. Each notification that lives on your phone will also appear on the watch. If the notification is enhanced, you might be able to take action on it through the watch. For example, you can reply to a text message or Google Hangout by dictating a message. This is probably the killer app of the watch, though I feel like talking to your watch is still going to be considered antisocial behavior.

Aside from the notifications, you can also tell the watch to take notes, send e-mails, and set alarms. The watch still relies pretty heavily on your Android phone, though. Notes get saved to Google Keep (which I am not really sure is an app that will stick around), and GPS navigation simply opens Google maps on your phone. I’m guessing that in the future the watch will get smarter, but for now I think that’s a pretty decent feature set.

I’ve been toying around with the idea of writing an app that creates a persistent notification that just shows me how late the bus is going to be in the morning. Every morning I check the AATA website to see how it my bus is going to be. The information is contextual and time sensitive, and I only need it for that one time during the day, so it would make sense to make this something that shows up on my watch when I need it and goes away when I don’t. I think that Google Now could do this to some extent, but it’s not smart enough to know that I want to leave 5 minutes before my bus comes around and not when it’s “scheduled” to arrive.


In order to fully test out the Android Wear watch, I took my SIM card out of my iPhone 5S and put it into my Nexus 5. So far the transition hasn’t been too difficult as I mostly rely on Google services anyway. There aren’t really any apps on the iPhone that I haven’t been able to use on my Android phone.

I may have said this before in previous blog post, but I really think that the quality of Google’s services is catching up to the polish of the iPhone. Consider how bad Apple’s online services are, and how good Google’s are. I can live without iCloud and Apple’s email service (does anyone use their .me email as a real email address?), but I am locked into Gmail, both personally and professionally.

I am guessing that Google could increase Android’s marketshare sharply by simply withdrawing support for all Google services on iOS. Meanwhile, Apple is relying more and more on third parties to fill out the expertise that it is lacking (I mean, really, who the fuck uses WebObjects?). I can’t really see a situation in the long term where Apple beats Google on services, either directly or by convincing third party developers to do it for them. As for whether I am actually switching to Android as my main device, I’d need to see what Apple has in store for their next generation. (Sadly, this LG G watch is not nearly awesome enough to make me switch on its own)

On top of the awesome built-in services of Android, the material design stuff coming from them from this past I/O is looking pretty sweet. If Android can give iOS a run for its money in terms of look and feel, and ease of creating really nice custom views and animations, then developers might just defect en masse. I guess the only thing Android needs to do now is get away from Java (if Apple can do this with Swift, then I’m sure Google can figure it out), because developing on it really sucks the joy out of being a developer.

Anyway, enough reverse-fanboying. I think it’s time for the…


While I think Android Wear does a lot of things right, and it has a lot of potential, the watch really isn’t all that revolutionary. To put it in terms of the HBO show SIlicon Valley, it’s not disrupting or making the world a better place through compression algorithms. It also isn’t a particularly stylish piece of metal and glass, so I wouldn’t wear it if it didn’t serve a purpose. Having said that, Google stuff is all about the integrated services, so I am feeling bullish on the fact that Google Now is always getting smarter, and developers should be able to hook into it, giving it a bit more life than it has right now. Would I buy it if I hadn’t won it? Maybe if I was an Android user already anyway, but I tend to buy too many gadgets as it is.

Android Wear Design Contest!

Last week I went to a GDG Ann Arbor Android meetup on Android Wear. The presentation was set up by Google and had a bunch of information on the upcoming Android Wear SDK. At the end, it was announced that there would be a few vouchers for Android Wear devices available. A design contest was announced and the deadline was set at Sunday.

Being naturally competitive and really into new technology, I made a design mockup for a home automation app that I thought would be useful to have on a wearable device (the most common form factor happens to be a watch). Here’s my submission that I originally posted to Google Plus:

Home Arrival

The app uses the user’s location as a way to provide feedback only when it’s necessary, and to stay out of the way when it isn’t. In this example, the app can detect when a user is arriving home and can ask if they want to switch the lights on.

Voice Controls

Instead of switching individual lights on and off, the user can create preset groups and activate them with voice commands. Users can set commonly used groups like “living room” and “kitchen.”

Sleepytime Reminder

Night owl users can set reminders to go to bed, and the app can turn off lights if the user decides to stay up late.

Motion Sensor

The app can also use sensors to detect when motion is occurring in the home and alert the user if no one is supposed to be at home. The user can decide whether the motion is a false alarm or if further action should be taken.

There is obviously much more that can be done with a home automation app, but these are just a few scenarios that would work well on an Android Wear device. I’m looking forward to experimenting on Android Wear when it becomes available!

I heard this week that my submission was a winning entry, so I’ll get an Android Wear device as soon as they go on sale some time this Summer. Thanks to Google and the GDG group here in Ann Arbor for setting up the event!

Impressions on Google Glass

Obligatory double-glasses Glasshole shot.
Obligatory double-glasses Glasshole shot.

I had a chance to play around with Google Glass Explorer Edition via my employer. I was able to successfully hook it up to my personal Google account, contrary to stuff I’ve read about the Explorer program not allowing loans, etc. If there’s a specific policy behind that, it doesn’t seem to be enforced on a technical level.

Anyway, I figured I should write down some of my initial impressions on the thing. It’s always interesting to look back and see how well I did in my predictions, like when I thought Twitter was just for narcissists (not sure I was wrong on that one).

The two strong feelings I have from Google Glass are that I wish it was less visible (to others) and I think it will greatly improve on video and photo sharing.

While I understand that technology can work as a fashion accessory (see anyone who owns an iPhone), I also feel like it shouldn’t burden the user with its outward appearance. Everyone writes about how Google Glass will create some kind of panopticon state, but the one wearing them is really the one who feels watched. I once tried walking to get my mail while wearing the gadget, and felt super awkward as I said hi to a neighbor. The awkwardness could have also had something to do with the fact that I have to wear the Google Glass over my normal glasses, which looks super dumb.

On a positive note, I think the ability to take first person videos is going to be the killer feature of Google Glass, if one ends up existing. I took a few videos of myself making dinner, which aren’t really that interesting now, but I can see a sort of lifestream genre bubble up from taking short videos of doing really mundane stuff day to day. Here’s a sample video I took:

As far as developing for the Glass, I found that the Google Mirror API is a bit lacking if you don’t already have some existing app you’d like to integrate. It’s basically glorified push notifications with a few extra location features built in. As an Android noob, I haven’t really pushed anything interesting to the Glass device yet in terms of native apps (just the Hello World one and a few samples). I’d wait for the official GDK to start developing in earnest, and maybe in the meantime, learn Android.

I had some mixed experiences with the Glass, overall. While the technology is neat, I feel there are many social hurdles that the device must pass before the thing can take off. Remember those Bluetooth headsets that you can wear on your ear? Google Glass is basically twice as useful, yet also twice as awkward. I think that a lot of the awkwardness will go away once sub-vocal microphone technology advances to the consumer level (think Metal Gear Solid). Then all Glass will need is a makeover to disguise the camera and screen into a normal set of glasses. Once the technology becomes outwardly invisible, the technology will be able to speak for itself.

Until either the technology makes itself less conspicuous or society decides that it’s socially acceptable, Google Glass wearers will all look like this guy.

Hacking Google’s Text To Speech “API”

When I was at my previous job, one task I had was localizing a large set of phrases to multiple languages, both in text and audio files. I did this by using the awesome Google Translate API.

The Google Translate website has features for translating text and playing audio of it in the translated language. There’s no official API for getting audio, though. Luckily, I’ve never let a lack of an official API stop me before.

I had read a few old blog posts about how Google’s undocumented TTS API could be used, albeit with a 100 character limit. Going over 100 characters would result in a truncated audio file. Some of the text I needed to output to audio was longer than that. It turns out that with a little bit of Chrome web inspector, I could replicate the functionality of the Google Translate site.

The first thing to check out is the url scheme of the audio files, which looks like this:

Breaking down the parameters, “ie” is the text’s encoding, “q” is the text to convert to audio, “tl” is the text language, “total” is the total number of chunks (more on that later), “idx” is which chunk we’re on, “textlen” is the length of the text in that chunk and “prev” is not really important.

The Google Translate site itself gets around its own character limit by breaking big blocks of text into “chunks”. It seems to try and break along punctuation, but for super long sentences it will also break in the middle of a sentence, which ends up sounding pretty weird. Using the Gettysburg Address as an example, Google makes a request for the chunk “civil war”.

Gettysburg Address

In order to download audio files for longer chunks of text, I wrote up a python script that broke the text down and made separate requests to Google. The script would write all of the files to one file, and somehow, it worked! Just to be safe, I also set my script up to use Google’s Flash player as the referer (sic) and set the user agent to a version of Firefox.

At the time, I didn’t want to release the code as it was being used for some uber top secret stuff. But since I’m not working on that project anymore, I refactored the original code into a command line Python script. Along the way I had to learn how to use Python’s argparse, which is a pretty neat way of parsing command line arguments.

The project is available on Github right now, so go grab it and try it out. If you’re curious what the output sounds like, here’s a recording of female Abraham Lincoln reciting the Gettysburg Address (yes, she mispronounces some words). One fun thing to try out is outputting clashing input and output languages. Here’s Female Japanese Abraham Lincoln reciting the same speech (she just seems to be spelling words, slacker).

If you enjoyed this hack, let me know and I could post some other ones I’ve been working on. And if you find a way to improve the code (probably not difficult at all) go ahead and submit a pull request on Github. And if you’re from Google, please don’t shut down my Gmail and Adsense accounts.

Google Reader and Skating to Where The Puck Used To Be

I just wrote a couple of tweets about this, but maybe this is a better blog post subject.

Google Reader is shutting down, apparently because its user base is shrinking and Google wants to focus on fewer products. Because of the huge void this will leave, many startups are rushing to fill the space that Google Reader took up. So far I’ve heard of plans from Digg, Flipboard, Zite (whatever that is), Feedly, and maybe some others.

While this might be a good opportunity for those startups, it strikes me as odd. There’s a concept called being a “fast follower” where you copy some innovative company’s product immediately after they release it. Think of Facebook’s clone of that Snapchat app. What we’re seeing now is sort of the “slow(est) follow.”

I suppose it makes sense to go into a space that you know is going to swell up with demand, but honestly, how much longer does the classic Google Reader style app have left? How much of the original Google Reader market are you going to get? Will you be able to re-create the community that the sharebros loved so much? On top of that, do any of these new products have a solid plan on monetization?

To put it another way, what is the opportunity cost of rebuilding Google Reader (even if it’s a “reimagined” version) versus putting time into another product that might actually be new and useful? At this point, it’s probably not worth it considering how many others are eager to clone Reader.