The Logitech Revue review

I got just a Logitech Revue, which was the first implementation of Google TV platform.  I’ll spare you all the gory details, but here are the high’s and low’s of this device, particularly as it stands now, a few months after all of the tech-site reviews of the system.

Highs

Web Browser

Having the web browser on my TV is pretty awesome.  I posted to Facebook, Google Plus – this blog post was even written in the built-in Chrome browser (with full Flash support!).  Now this alone is not hugely different from just hooking up your computer monitor to your TV; however, a number of sites have optimized their experience for Google TV (like CNET, Cartoon Network and YouTube).  This experience can be a little jerky at times, but the idea shows a lot of promise.  I have found myself browsing these TV-optimized sites more than I would have imagined.  As a side note, one of the major reasons I got the revue was because of its HBO Go support; this is enabled through the web browser.  In practice, this works fine; however, in the future, I think I will prefer the app version.

Search

Google TV integrates search directly into the experience.  Instead of browsing for titles, you can search for shows or web content.  Pretty neat.  With the hundreds of channels available to cable and dish users these days, this seems like the logical way to go.  Google TV also offers a view of TV content organized by category (movies, sports, news, etc.).  Oddly enough, Google TV does not offer a view of TV content by channel.  To browse by channels or favorites, I had to go through by cable box.

By the way, I was skeptical of using a keyboard to navigate around my tv, but I’m becoming a believer.  The keyboard is really light, and search with a keyboard is a much better experience than using a remote.

Apps

There are only a handful of apps available for the Google TV, but hopefully that will change with the new Honeycomb UI.  However, the apps really showcase some of the cool possibilities of the platform.  For example, you can watch a show and see tweets about it in real-time.  You can also see NBA scores, stats, and standings while watching a game (this will be exciting during the actual NBA season).

Lows

Buggy and Slow

The Logitech Revue (and, I think, the Google TV system) are still a bit half-baked.  Our wireless connection flops around like a fresh-caught trout, and the Revue has frozen or rebooted on me a half-dozen times on the first day I had it.  This is kind of sad considering that the Revue has been out for a number of months already.  Hopefully, future updates will alleviate these issues although I think I’m out of luck until the next Google TV version is released.

In addition, the Revue slows down periodically, and I think it’s a bit underpowered for what the OS requires.  While I have vague hopes for better stability in the future, I think I’m stuck with the sluggish performance.    Oh well.

Better Streaming Support

It’s unfortunate that Google TV access is blocked for sites such as Hulu, NBC, CBS, etc.  I’d like to see these services embrace subscriber- or ad-supported internet access to shows and movies.  However, you do have access to services like Netflix, Amazon VOD, and HBO Go.  So screw network TV.

Partial Harmony Support

From reading the Logitech website, you would think you’re getting Google TV and a Harmony remote all in one.  Unfortunately you’re not.  The Revue offers partial Harmony support, which means that you can send some commands to your TV, cable box, and receiver.  In practice this works ok.  You have to turn on each on separately, but there’s a dedicated button for each component so this isn’t horrible.  When you change the channel it routes appropriately to the cable box and when you change the volume it routes to the receiver.  However, I would have liked the ability to add more devices (like an XBox or PS3) as well as true macro support (the Harmony’s killer feature).

Summary

Here’s the quick summary: at $400, the Revue was a buggy piece of junk, appropriate only for tech reviewers and early adopters.  At $100, this is a really nice tool.  For the same price, I believe the Apple TV and Roku fall short with their lack of partial Harmony support, a full web browser, apps or search.   However, if you are going to buy the Revue, I would suggest that you get powerline ethernet or an access point to prevent the wireless issues.

What Google’s acquisition might mean

Google announced that they are purchasing Motorola Mobility for about $12.5B dollars.  What could this announcement mean?

The patent wars end?

Google made no secret of the fact that it bought Motorola for patent protection.  Motorola has a large and comprehensive treasure chest of patents.   Will this protect Google against patent suits by Apple, Microsoft and Oracle?  Who knows.   The patent system in the US is screwed up beyond belief.   Motorola has a number of great patents in the mobile area; however, I don’t think the patents will protect against the specific patent violations mentioned in the Oracle suit.

Control of the Android ecosystem?

I think one observation that has been missed in the analysis is how much this improves Google’s control over the Android ecosystem.  Google has tried to push a number of changes through its mobile phone makers, with poor results:

  • Less Carrier Control: Google has been continually pushing against carriers to change the end user experience.  They have attempted to work with manufacturers to produce “pure” Android phones (the original Droid, Nexus One, and so on).  When the Nexus One debuted, Google attempted to build a new model of phone buying that bypassed carriers.  However, “pure” Android phones are still rare, and Google’s attempt to sell the Nexus One without carrier support fell flat.
  • Fragmentation:  Google puts out updates to their Android OS roughly twice a year, and most end users look forward to these updates.  However, end users typically end up actually getting the updates only several months after the update is publicized, due to carrier testing and manufacturer customizations.
  • Near Field Communication (NFC):  Early this year, Google released the Nexus S, one of the first phones with NFC support.  NFC support enables technology like pay by phone and “smart-tagging” signage or merchandise to trigger an action (such as opening a web site).  Although the technology is promising, no one else had produced a phone with NFC support enabled.

With the purchase of its own phone manufacturer, Google now has the ability to push these trends.  I look forward to more unlocked phones, “pure” Android phones, and more phones with direct pay capabilities using NFC.

Chicago as a first tier tech city?

Could this mean the rise of Chicago as a first-rate tech city?  I am not sure.  Motorola already has a significant presence in the Valley; it’s questionable what they will remain in the Chicago area.  And does Google even intend to build its own phones, or will it retain the patents and sell off the remains of the company?  There are a lot of unknowns here; nonetheless, the cachet of the Google name with a large presence in Chicago is bound to have some influence in the burgeoning Chicago tech scene.

Chicago TechWeek – my thoughts

TechWeek is winding down.  Here are my thoughts on a few of the broad themes apparent throughout the conference-

Data is being liberated

Data rules in this new tech landscape.  Facebook, Yelp, Google, and Bing are companies that have amassed a treasure trove of collective intelligence.  Aneesh Chopra, CTO of the US government, said “Data is the rocket fuel of the internet economy.”  And, oddly enough, the companies with this valuable data (Facebook social graph, Google search results, Yelp recommendations, etc) are giving them away to developers for free.  Go figure.

In addition, the city of Chicago and the US governments are literally begging people to use their gigantic datasets for free.   For Chopra, this is a way to help improve social services under the growing budgetary constraints.  He gave two great examples.  In the first one, a person built a website that mapped federal clinics for US residents.  This application has the potential to reduce Medicare spend by driving users towards these lower-cost clinics and away from higher-cost emergency rooms.  He also highlighted an application that mapped 401k mutual fund management fees.  This app showed that small companies typically paid almost 10% for management fees.  With this knowledge, smaller companies are now setting up 401k pools that they can use to negotiate lower rates.

This trend towards data liberation is great for startups, but also for bread-and-butter businesses as well.  As a solution provider, we can encourage any company to take advantage of these valuable sources of data.  Digitizing metropolitan information is huge for utility construction projects, retailers, real estate companies, and so on.

Velocity is king

Startups prefer to release early and often.  Velocity is king.  This means that coding conventions, enterprise standards, scalability concerns, et al take a backseat to delivering a viable product fast.  Why?

  • Business value rules:  no business, small or large, wants to put a big upfront spend before seeing value.  The rule is to build and grow along the way.   It is only after a company builds value that it scales its application up, refactors for enterprise growth, and re-designs performance chokepoints. Think of this as just-in-time development.
  • Talent and tools over processes: It seems that small business owners are willing to trust talented developers, marketers, sales folks, and other staff to construct a business fast and then change or fix things along the way.  And better tools like cloud deployments, rapid development platforms, and better analytics allow companies to change on the fly cheaply and quickly.  Why worry too much about processes and standards when change is the name of the game?  Those processes and standards (and even the whole business model) may change in six months.

Velocity is king Pt 2

As a development shop, you need to plan to deliver value faster.  1-2 month turnaround times are the norm and are shrinking rapidly.  Even Aneesh Chopra expects his teams to develop a minimum viable product in 90 days.  If you can’t hack something functional together in a few nights, you should upgrade your skillset until you can.  Think about that – the best new companies are looking for great hackers, who can get stuff functionally done even if it’s not the most elegant.  Of course, those who can hack something elegant quickly will be the cream of the crop.

Last decade’s stuff won’t work for the current decade

Development is going towards agile (small-A) tools like Amazon EC, RoR, Javascript frameworks, and small mobile apps.  The popular languages and tools of the last decade (C#, Java, PHP, MySQL) just doesn’t deliver the same productivity and scalability.  If you are a C# or Java developer, add these agile tools to your portfolio.  There will always be jobs for C# or Java programming, but adding these languages will prevent “calcification”.  Unfortunately, if you grew up on Java, PHP or C#, you’re approaching stone-age by tech standards.  Frankly, as you age, you need to demonstrate aptitude with cutting-edge tools just to maintain parity with younger prospects.

Disconnected teams are the new norm

All the companies who presented work with disconnected teams on a regular basis.  Jason Fried, of 37 Signals, said that more than half of his development team is remote.  Providers like oDesk and eLance are helping facilitate this transition.  Startup companies are willing to have remote team members because good talent is so scarce, and because technology support for remote teams (Yammer, Google Docs, etc) is so good now.   The CEO of oDesk (an online staffing company) believes remote work helps top talent succeed, by removing some of the promotion biases that come from underachievers who network well.

Chicago is big

According to JB Pritzker, Chicago had more VC funding in Q2 than any other city other than San Francisco.  Obviously, most of the credit goes to Groupon for this.  Even so, the excitement at TechWeek was palatable.  Whether it was the attendance at TechWeek, the urgency at which VC’s were looking at Chicago, or the unabashed shamelessness of people peddling crappy ideas, the tech scene (including in Chicago) screamed high activity.  Honestly, it also screams bubble – try to take advantage before the bubble pops.

There are four ways users do stuff on their mobile device…developers only code for two

When most people think of doing something on their mobile phone, they think “There’s an app for that.” Credit Apple for a great platform and really catchy tagline. But in actuality, there are four ways that people “get stuff done” on a mobile device:

  • Click on an app: Duh.  A user clicks on an an app and does something useful.  Think Safari or Google Maps.
  • Notifications: A user gets an annoying notification that launches their app, with some context (i.e. Facebook or Twitter).
  • Through the web: There’s no app for what I want to do!!! Arrg! Ok, ok – I will just search on Google.
  • Through voice: Yes, you can get things done through voice!  Google Voice Actions allows you to long-press a button and perform operations such as call a contact, send a text message, and get directions to a location.

Now the first leg is already well-known.  There are almost a half million apps on the iTunes App Store, with another couple hundred thousand on the Android Market.  The second leg and third legs have been there for a while as well.  Push notifications are quite mature, and users have had access to a full-fledged web browser since the first iteration of the iPhone came out.  Even the fourth leg has existed for a bit – the most mature implementation is Google’s Voice Actions, but others exist as well (i.e. Nuance).

However, I think there is a lot of innovation in the last two legs that app developers have yet to take full advantage of.  Microsoft’s upcoming release of Mango features AppConnect, which integrates apps across the phone, notably including search.  It’s a great feature that may eventually create a seamless transition between the first and third legs.  Imagine typing in a search, and then being able to carry through on your intention from there with an app.  For example, search for a restaurant and then look up its rating within your Yelp app.

In addition, Google’s Voice Recognition is really underutilized for such an awesome product.  The API is relatively straightforward to use.  In addition, Apple is widely expected to release Voice Control (their version of Google Voice Actions) in the next release of iOS or the following.  Voice isn’t now a strong fourth leg, but I think it will rapidly become one, notably once Apple releases Voice Control.

If you want your app to be “sticky,” or one that users access often, make it easy to access and implement from each of the four main pillars, and not just by clicking on your app.

Things you can do on Android that you can’t on iOS: Part 1 – Bluetooth and WiFi settings

Here’s my first in a (hopefully) multi-part series highlighting some of the unique things you can do in Android that you can’t on iOS.  First off, changing antenna settings.

In iOS, direct access to the Bluetooth stack requires a third party library, which violates the terms of the app store and risks rejection.  In Android, however, access to the Bluetooth stack is fully supported within Android.  Here’s a quick snippt of code that illuminates how to use the Bluetooth API’s:


public void turnOnBluetooth() {
BluetoothAdapter bt = BluetoothAdapter.getDefaultAdapter();
if (!bt.isEnabled()) {
bt.enable();
}
}

The BluetoothAdapter can turn BT on or off; enable discovery; query devices, and more. There are a multitude of ways to use this. For example, there are a number of widgets in the app store that flip Bluetooth on or off as well as some neat unique applications that facilitate and automate bluetooth file transfers.

Likewise, Android includes an API to access Wifi connections. The Wifi API is shown here. See the snippet below:


public void toggleWifi() {
Context ctx = getApplicationContext();
WifiManager wifiMgr = (WifiManager)ctx.getSystemService(Context.WIFI_SERVICE);
if (wifiMgr.isWifiEnabled())
wifiMgr.setWifiEnabled(false);
else
wifiMgr.setWifiEnabled(true);
}