Sunday, July 29, 2007

Yahoo! Go: Nice Product, Sorry Testimony to the Horrific State of Mobile Dev Standards

I finally got my Yahoo! Go on this week, when the client for my Samsung Blackjack became available. I had been watching this project because it's one of the more ambitious mobile initiatives in a long time. You wouldn't know from the press coverage, but that's because it's in the middle of the land of purple, a giant doing everything and nothing, well and badly, all at the same time.

Let's pass over Y! Go's features and design for a sec. In terms of software architecture, we're looking at a smart client app: its content and features are network-oriented (mail, flickr, search), but it also runs offline, saves stuff locally to make that work, and masks fluctuating data rates and request latency under a locally controlled UI.

It's effectively got an embedded web browser (although it looks like page transcoding is happening on the server side, to save bandwidth and reduce complexity on the phone) and server-side support for viewing PDF, Microsoft Office documents, HTML email, etc. This strategy is a lot like the Blackberry's server-side translation, with the exception that Yahoo's actually works.

So Yahoo has basically built a 1990s-era AOL client, a monolithic app that provides a controlled experience and mediates access to the Internet. And they've built it on at least four platforms (Windows Mobile, Symbian, J2ME BlackberryOS, J2ME/MIDP vanilla) with countless versions and quirks. Which is why even versions for "similar" phones have trickled out over the course of months.

Why would Yahoo do an AOL? Because they want to take over the world with their platform, and control where users go? Nope. They did it because they didn't have a whole lot of choice. The phone development platforms remain extraordinarily fragmented across OS, API, version, and hardware install (!), and the carriers are more of a hindrance than a help. The worst part is that within six months there will be enough new devices and OS changes that the entire QA cycle and maybe even dev will have to be at full throttle just to keep this app viable.

Most likely, the original mission was to bring Yahoo to mobiles in a more consistent and usable way than the old mobile web site. And most likely they looked at mobile web options before realizing that those would require nearly as much customization for different devices as rolling their own app (plus mobile web would lack critical offline/low-data-rate functionality). So they did what everyone has to do: build their own native application to serve as platform and abstraction layer over the other APIs.

Who wins in this scenario? It's not the Yahoos, Microsofts, or Googles, who would rather not rebuild, test, and maintain the same app over and over. It's not startups, who kill themselves trying what only GYM can really afford to do. It's not the carriers, who want to increase revenue per sub by selling data plans, and who need compelling network-intensive apps to do that. And it's probably not the hardware folks, who don't care too much what's happening four levels up the software stack.

No one wins this game of 52 Pickup. It creates "small value" in the short term, while stifling "big value" in the long term, the same way a tornado wrecking a town brings a bunch of contracting and insurance dollars in the short term, but doesn't make the town a creator of value in the long term, the way building infrastructure like fiber-to-the-curb, or a decent university extension campus might.

I built a push-mail system in Perl in 1998, the same year RIM started shipping the precursor to the Blackberry, and I started reading my Yahoo mail on my phone in 2000 via WAP. So we're nearly at 10 years of mobile productivity apps and the trend is still toward more chaos rather than less. So... how can we reign this in, hopefully still preserving some biodiversity in phone DNA at the same time?

Friday, July 27, 2007

LifeLock: More Shenanigans, Now Featuring Radio Jingle

I almost feel bad piling on LifeLock at this point... after all, I passed on writing when I first had an inkling something was up, at the beginning of April.

It was curious that they ignored a polite email where I articulated that I might be interested in their service, and that I understand no system is perfect, so I would like to know their views on some potential security vulnerabilities. After all, they purport to close some ID theft gaps, but they create some new weak links in the process. My friend Andy, who knows more about security and financial fraud than I, wrote this post about my concerns.

The rest is history ... Kleiner gave them $6 million a couple of weeks later. And perhaps skimped on the due diligence, since Wired has been following the company and turning up gems like

Like I said, I almost feel bad piling on at this point (and wasting your time, since if you're interested in LifeLock you've almost certainly seen the latest already).

Why only "almost"? Because, as I wrote earlier this week, "the money has to go somewhere." In particular, Kleiner Perkins' money, and Bessemer's if there's any left, is now buying radio spots in the San Francisco area for these guys. Argh. On the other hand, if tracking down and threatening crooks becomes part of that ad campaign, I might not be so quick to change stations.

Thursday, July 26, 2007

Microsoft to Turn Your Windows Mobile 6 Phone into a Sideshow Device

Gadgets on the desktop are a little gimmicky ... But gadgets on ... gadgets are a lot cooler.

I love Windows Sideshow, the technology that gives lets you browse and control your media right on your remote or digital picture frame, or read your email on a watch or a digital fridge magnet -- even (especially!) when the "media" or "mail" apps are really running on your PC and your PC is powered down!

But I don't run Vista on my laptop (a post for another time). And anyway, I don't have any Sideshow compatible devices.

I find myself simulating Sideshow though, with my Windows smartphone: typically email pops up on the phone (via DirectPush) before it gets to my desktop. So I monitor my email on my phone, even when I'm at my desk. It's great to have that extra screen on the phone, so I don't need to bring up Outlook when I'm coding. Same thing with calendar items, contacts, and my notebarn list o' lists. The phone is always more "up-to-date" than desktop Outlook.

Admittedly, though, this isn't the full Sideshow experience.

So I was psyched to come across this thread where Microsoft contributor Dan Polivy writes

"Windows SideShow support is not built in to Windows Mobile 6, but we will be
releasing an application which will enable your WM6 device to work as a
Windows SideShow-enabled device. It's a software-only addition, assuming
your device already has a Bluetooth radio in it. Stay tuned for more
information; our current release target is the 3Q of this year."

This move is a brilliant way to tap into a ready-made pool of millions of powerful devices and enthusiastic users.

Sideshow is only supported on Vista, not XP ... but if I can get Vista in VMWare to see my Bluetooth radio, I might be cooking with gas...

Tuesday, July 24, 2007

Building the "Not Real" Internet: an On-line WYSIWYG Mobile Site Builder

The iPhone's browser renders the "real Internet" (after sucking the data through a pipette, and assuming your Internet doesn't include Flash applications). But notwithstanding the iPhone, it's a safe bet that making your application or data accessible to phones will involve publishing some kind limited type of html, xhtml, chtml, wml, etc. Probably all of them, using an adaptive rendering mechanism.

To take some of the alphabet soup out of casual mobile site creation, Sprint is promoting a free on-line wysiwyg mobile site builder, powered by mobiSiteGalore.

This page composer loads slowly and doesn't impress at first glance. But wait … keep going… it’s got templates ... AJAX editing ... limited forms support … an image resizer … a page hit counter … 1-click SEO-er-izer ... and automagic versioning with the ability to easily rollback to an earlier version.

In addition, there's a "wizard” that lets you add useful pseudo-widgets to mobile pages with one click -- things like launching a phone call from the browser, getting driving directions, viewing audio/video clips, even making payments via bango.

Then it generates slick reports (by ready.mobi) on how compliant the resultant site is, including running it in multiple emulators right in the online report.

Finally, there’s an integrated publishing workflow, where you can check your work and publish to your own site, publish to a free site provided (yourname.websiteforever.mobi – which is prolly a bit much to type on a phone!), or download your files. For complex sites with any kind of application functionality, you'd probably have to employ this last function and add use that output as template material for your ASP.net, PHP, etc.

If you are too lazy to press any buttons, there’s a demo movie.

Sprint and mobiSiteGalore call this “the world's first standards compliant mobile website design tool” with a “Guaranteed test score of 5/5 on MobiReady Report” that is based on w3c standards.

Which is nice. Now if only the mobile phone browsers were standards compliant too …

Monday, July 23, 2007

The Money Has to Go Somewhere: Ads as Boom Barometer

During the dot-com boom, it seemed as though every advertisement on the radio was for one dot-com or another. Some campaigns paid off (amazon.com had a big radio spend); some didn't.

This morning I heard a radio commercial for "pinger" ... which appears to be a voicemail site for when you want to leave a message and really don't want the other person to pick up the phone. Or when you want to spam a whole bunch of people with voicemail. I just don't buy it. I had heard of it before and it doesn't sound any more sensible now.

The commercial was on KCBS, an all-news watt-monster in the Bay Area that is not cheap to advertise on. Especially during morning commute hours. In poker, this is what they call "buying the pot" -- and pinger is lucky enough to be buying with Kleiner's money.

Having recently seen VC-backed mobile-YouTube-play Zannel placing large ads at art events in SF neighborhoods where the only dot-com you expect to see is laughingsquid.com, I realized the ripple effect is underway.

I was hesitant to promote anecdotal evidence as economics data, but my confidence was bolstered by the coincidental publication this morning that "VC Investment Hits Highest Level Since 2001"

The money has to go somewhere. Like free movie tickets just for applying for a job:

Thursday, July 19, 2007

Sore Thumbs: 1,000 Characters of Text Message via SMS Compression

I've been thinking a little about the amount of text that can be moved over SMS messaging. Like around 1000 characters ... or a whole lot more than the 130-160 characters allowed in a standard uncompressed message.

It seems that if I write a text message with lowercase letters, numbers and a few punctuation marks, I could get by with a character set of maybe 42 characters ... whereas raw SMS seems to be able to carry a full 224 characters (from 0x20 on up).

On this assumption, the true bandwidth of a 160-character message is 160*224 = 35,840 distinct signals. (Assuming also that carrier-side compression is adaptive, so that as a message uses more of the bandwidth, carrier compression drops towards zero.) 35,840 signals is about 853 characters in a 42-character set. In a 48-character set (or allowing for more mode/signaling codes) we get 747 characters. And this is before applying any Huffman coding, any knowledge of common txtspeak, etc. Assuming we get some yield from those techniques, I'm SWAGging we could hit 1000 characters.

Despite the fabulous data rates of HSDPA, EV-DO, etc., there are core benefits to SMS: living in the signaling layer of the network, it works where voice calls and 3G (or 2G for that matter) data transport don't. Plus it provides fire-and-forget together with delivery tracking.

The idea of compressing SMS messages is not new -- there are a couple of relatively unused consumer-facing applications that let you send and receive compressed messages. It's also likely that the Blackberry push system and Microsoft's older pre-DirectPush real-time ActiveSync -- which both use special SMS messages to trigger device sync -- compress those messages.

If SMS message plans offered by wireless carriers are priced to average some profit per message, then there's little reason a carrier would promote a technique that lets consumers send fewer messages.

Maybe building this compression into on-deck txting is a first hack for your new OpenMoko phone. Plus it will motivate your friends to get one too since no one else will be able to make sense of your compressed messages.

Wednesday, July 18, 2007

"Though Leadership" via (Company) Blog ... Part 2

I wrote about general approaches and challenges in launching a "thought leadership" blog, especially if it's supposed to assert some leadership position for your organization.

I promised an example of how this might work in the real world. So let’s take as an example this story "6 Months Later, a Report Card on Vista" that spawned comments a few days back

Re-reporting this story is not part of the thought leader program. So let's try and "think in value terms" and plug in other approaches:

Research. Pick some sampling of programs (top productivity apps, top games, whatever). Do some benchmarks. How many of them perform worse on Vista? How much worse? How many don't run at all? Which Best Buy customers choose which Vista SKUs? Why? How many people can name a Vista feature? How many know what Vista Media Center is? Some of this territory has been covered, but you get the idea. You do the legwork, pick a newish topic, and now you've gone out in front and created some value.

News. Work your contacts at Microsoft (hit LinkedIn if you don't think you have any, you probably do) to find someone who'll talk to you -- on the record or anonymously -- about this Vista adoption issue. What's the feeling inside Microsoft? Is there a SP1 or a Vista '08 coming? What will it include? Will it help or hurt? What are the big regrets about Vista that everyone voices at free-beer-Fridays? What kind of mitigation strategies are being discussed?

Be controversial: e.g., Microsoft worked hard on anti-piracy for Vista. Should they have made it easier for, say, college students to "steal" licenses and run the OS? Could that help viral adoption (assuming that Vista gained a lot of traction and it triggered a lot of legit purchased copies)? Write it up (with suitable anonymization of sources if absolutely necessary). For extra credit, see if you can find voices at Apple or voices from a Web-2.0-who-cares-about-a-client-OS-anymore-as-long-as-it-has-a-browser company. Write that up too.

Opinions/Predictions. How many of the Vista installs will be Business? How many Ultimate? Look at the (questionable) success of XP Media Center. Cross reference with XBox numbers to guesstimate how many people could possible run Vista media center in the living room. Ok, what does this say about building software for Vista MC?

Hmmmm... but "company opinions"? Always shaky ground. For the sake of argument, suppose your firm builds Vista Media Center applications. And let's suppose the above procedure leads you to the position that Vista Media Center is not going to be a big deal.

Is this a problem for the firm? Sure, you could go to clients interested in Vista Media Center work and say "Hey, forget you and your contract, what's the point?" ... but you could just as easily say "Hey, did you know that with an additional 30% investment in development, you could target all .Net 3.0 machines, not just Media Center? See, we’ve published this white paper that runs the numbers, and your customer base would be 7x bigger if you take our recommended approach. Which, incidentally, we’ve been pitching at industry events, so lots of other companies will be doing it anyway. Waddya think?"

Product. Suppose we are fairly certain (let's say) that Vista adoption rates will restrict the ROI and market size for new Vista Sidebar Gadgets. Bummer, 'cause your company also like to build those. But guess what? Maybe you think Sidebar is so cool that you hunker down and sketch out a Sidebar that installs on XP. "Here's the free download on our website, and you can bundle it with you own widgets if you want. Compatibility to Vista not good enough? Here's the source, help us fix it." Instant bigger pie for everyone. Value.

This might not be the best example, but it floated through my inbox and I sketched out these scenarios. And yes, ok, Jakob, these articles will probably not be the kind you dash right off. Not that you can't have some of those too.

Tuesday, July 17, 2007

"Thought Leadership" via (Company) Blog ... Part 1

Had an interesting discussion with a colleague last week about organizations manifesting (or not) "thought leadership" by means of a blog. It's certainly easier than hiring analysts and writing white papers. But there are challenges, particularly around the notion of org versus individual. Good blogs are almost universally individual.

Spending some time thinking about the problem I came up with a taxonomy of approached that I share here. At the time, I thought this line of thought was purely personal; by coincidence it's germane to the firestorm kicked of by Jakob Nielsen's high-handed post about serious blogging and the serious bloggers who do it.

A former boss once said, "It's hard to lead by following" ... he meant following someone else's products, R&D, deal flow, strategy, etc. Leaders lead, and they lead in a particular direction.

A couple of ways one can do this in the technology field with a publishing medium (like a blog):

Establishing thought leadership with facts

Reasearch. Discover and publish benchmarks, compatibility studies, polls, usability data, security vulnerabilities, etc. As with all research, part of the trick is finding something that hasn't been researched to death, and another part (pardon me, Mr. Nielsen)i s finding a "hook" that makes it a relevant part of current conversation in the field.

News. Many top bloggers are essentially journalists. Sounds fun, but it's hard work because you need to stay ahead of the rest of the blogosphere. Come to a story late? You're just another commenter. If you are interested in going this route, the next trick is to narrow your coverage area both topically and geographically.

Media and entertainment technology? Way too big.

"Tech in the U.S. for watching commercial video content on cell phones" or "OSS that interoperates with commercial VOD services" is getting a little more approachable.

Narrow down even more, like "Evolving interaction designs for VOD and time-shifting applications" and a single person can get it under control, though it still might be a big job

Leading with opinions, and opinions combined with research (such as predictions)

This approach is fun because you get to spout off. But it's tough because it's easy to have an opinion and there are lots of voices. The more trivial the opinion ("DRM sucks!" "Apple is cool!") the less value you're offering. But the more complex and subtle the opinion, the more attention and background knowledge you demand from your audience. You're making people pay a high price and they don't know if it will be worth it.

The other catch here is that opinion blogs work great for individuals, not so great for organizations. It's hard (and often futile) work to try and uncover a non-trivial organization-wide opinion about anything. And if you do find one in a group bigger than a small startup, there's a great chance it's just PR bull shiitake.

Leadership with product (not necessarily polished; includes any usable code, etc.)

Actually a combination of fact and opinion. The opinion is the assertion that the product is useful, interesting, worthwhile. The fact is that "Hey! It's here, done, built. You can't deny it. Love it; hate it; try and steal it... But you can't ignore it, because now it's out there." Arguably the best approach.

If you put product out there and it gets ignored, you're either ahead of your time (not a bad place to be in tech if you can afford to wait), "behind your time" (a good reality check to get with the program), or doing something off on a siding somewhere (indicating that either there's no market -- bad -- or you need to work to make your market -- potentially good).

So

How does all this work in the real world? Example in Part 2...

Sunday, July 15, 2007

Blogger Sponsorship and Unwitting (?) MSM Publishers

Plenty has been written about bloggers, sponsorship, and full disclosure. But generally we've seen disclosure on blogs, and bloggers' personal sites. What about bloggers who also write for mainstream-media publications? Especially dead-tree ones, where the printed paper context means background-digging on a columnist is not just a Google-search away?

I recently read a "full-disclosure" post by a top-tier blogger. Ok, cool. A little while later, my mind started doing a slow-motion double-take. A month or two ago, I read a column by this writer in a traditional media publication (which produces a paper edition). I remember thinking the writing was really sharp -- but one pop-culture reference seemed stilted or a little confusing to me. At the time I thought maybe at age 33, I'm old enough to miss a clever Gen-Z quip. But I wasn't convinced, because it referenced a tech area I specialize in. Put another way, this quip was unlikely to be the one I'd miss.

Well, the remark makes a whole lot more sense now. With the recent "disclosure" blog post, I now know that the company mentioned in the print publication has been sponsoring the writer's blogging (and other) activities. It was basically an awkward product placement, with no disclosure at all at the time of publication.

I don't love it. But my bigger question is: what does this print publication (a fairly serious establishment newspaper) think about being used in this way? Did they know and not mind, because it wasn't a hard news story? Or are they in the dark?

Thursday, July 12, 2007

Commoditization of Social Networks is Just the Beginning

On Monday, Om wrote about the commoditization of social networks. A couple of days earlier, dojo added a nice section to its docs comparing AJAX frameworks ("Why Dojo?").

What do these things have in common? Only that they reminded my of a couple of other technologies...

Remember "portals"? A portal was how to make your site sticky, customizable, get users to spend lots of time there, view lots of ads make you lots of money. Maybe they would even set it as their homepage! A few companies made big money as purpose-built portals. Then there were content-management sites where every group of accounts shared a portal that they could customize themselves -- using the site itself! How amazingly meta! And then came open source portal and CMS products and finally the sign that portal magic had surely jumped the shark, a JSR for portal components. Ok, portlets, I said it.

That first part was fun though ... sounds a lot like social networking sites. Groups of users. Widgets. Social. Sticky. Ad views. Customizable. And as Om points out discussing Ning, you can roll your own right online. The next step is code I can download and run locally, or that godaddy.com sells me with my domain name registration. Like CMSs, storefronts, and shopping carts, the basic software form of a social networking site is stabilizing (stabilized?). Freshmeat lists nearly a dozen social networking apps/projects in varying states of maturity.

I'm not criticizing these sites; quite the opposite -- I'm suggesting that their success will be so complete as to make them just another page in another site. Eventually one ASP.net template or Rails script will import all the social networking features you could want.

AJAX frameworks and libraries remind me of application servers:

  • When the CGI was the baseline, app servers let the innovators stand out with more sophisticated interactivity and customization.
  • When full-page GET/POST was the baseline, AJAX toolkits let the innovators stand out with more sophisticated interactivity and customization.

I'm not trivializing app servers. Standardization was a boon, and the decision of which to use had long-term consequences. Painful ones, if the decision was taken incorrectly.

Eventually, though, in part thanks for Moore's Law, commodity hardware, open source software, and the nuclear winter, it became no big deal. They all work. More or less fine. Some are better than others for certain things, but no one's gonna waste time arguing that PHP or IIS/ASP.net is "just no good," and (non-technical) business concerns or the right talent often makes the case for one or the other today.

Aside from their being interesting in themselves, these comparisons are meant to put some perspective on where we are in the technology cycle. We're getting past the "hey wow" part of AJAX, widgets, and social networking features. Commoditization comes, standards emerge, infrastructure value-add declines.

These bits become the new top layer of the stack, and we should be thinking about the apps that we will build to ride atop them.

Saturday, July 07, 2007

My Femtocell is Watching You (and Your Movies)

Om Malik wrote a post this week wrapping up some news on "femtocells" (smaller than a picocell, get it?)

Those of us with bad cell coverage at home can't wait for this privilege of paying twice for a fix (lending our wired broadband backhaul to the wireless company from whom we're buying service). Meantime, there are some other interesting opportunities that ubiquitous femtocells could provide.

Since the femtocell can identify your phone, and you usually have your phone with you, the femtocell owner can tell when you're nearby. In a big facility, like an airport or conference center, the owner has a pretty good idea of where you are.

When I worked on RFID-based airline check-in at eTag Technology, we built our initial system using passive RFID chips embedded in loyalty cards. But we always planned on leveraging femtocells or similar technology to detect passenger arrival (and location) in the terminal. Just give the airline your phone number, and you can have your check-in, upgrades -- even rebooking if you're not gonna make it -- handled automatically. Eliminating the custom hardware and RFID tag issues makes the concept even more of a no-brainer.

At Voice Media Lab, another startup, we were leveraging the cell phone for voice recognition, media browsing, and control functions. But we wanted to use femtocells to handle the issue of visiting a friend (or a hotel, or a conference room) and wanting to play your movies on the local home theater / media system.

One idea is to wait for even big high-def media collections to become portable enough that you can put everything on an iPod. But our approach was to use your cell phone as your presence token, so that anywhere you go with your phone, all your stuff is accessible. When you go home, everything you haven't explicitly left behind (shared) disappears with you.

Of course there is a downside to all this: if your phone "just works" (without being paired Bluetooth-style to a base station network) then you're giving away a lot of location data to third parties all the time. This concern is not a trivial one, especially since a central company could collect this data, paying femtocell providers a small amount for every "sighting" of your ESN/IMEI.

(Interestingly, the same issue applies to WiFi cards and base stations, but has not been a big concern, presumably because the WiFi device is less "intimate" than a phone and because MAC addresses can be spoofed more easily than ESN/IMEI data.)

Thursday, July 05, 2007

ActionScript 3 Code Generator Update

After I announced my quick Violet UML ActionScript3 code-gen integration last week, David Holroyd, author of the metaas ActionScript DOM library I used, updated his library to fix a couple of tiny bugs.

I've updated my code to use his latest, with the result that

  • internal and protected members have full support now
  • default visibility is now avoided in favor of internal and
  • package declarations in interfaces are written out to disk properly.

Check out the project page for details and downloads.

Monday, July 02, 2007

3D Accelerometer, Yes! ... $600 Java Dealie, No!

Sun has been licensing and promoting Java in embedded applications forever, which is not totally surprising since Java (nee Oak) was invented for "connected devices" -- set-top boxes and the like. And of course there's J2ME, which you'll think is either a brilliant success or an industry-plaguing disaster, depending on whether you've ever needed broadly to deploy an app on the platform.

At the MakerFaire, they were showing off "Project Sun Spot," a sophisticated experimental gadget with a 180MHz processor and radio networking. The most interesting attribute of the Sun Spot, though, is the integrated accelerometer. With a little room and a sensitive enough accelerometer (actually you'll need to slave a couple of them) you can build all manner of fun and dangerous things. Like inertial guidance systems.

Never mind that a 180MHz device ought to be able to run full-on Java (Sun seems to have realized this, acquiring defunct SavaJe and leveraging their J2SE tech toward JavaFX mobile). Something getting shot on rockets for experimentation oughtn't to cost $550 + shipping!

Happily, you can buy these 3D accelerometers for $35 and bring your own ... everything else: