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:

Thursday, June 28, 2007

Wanted: A VIP (VPN?) Room for Web 2.0 Apps

I am working on a project with a team in New York, San Francisco, and Noosa, Australia. It's a bunch of really smart folks and we have a good time ... but collaboration and communication could always be better.

I would love to cook up a little social networking site for our project work using, say, Ning. In addition to the basic stuff like messaging and chat, we could embed this box filesharing widget, put up videos and photos (ok, our photos are mostly of whiteboards, but we count that as fun), audio recordings of meetings, maybe a gizmo or skype or grandcentral widget for click-to-call. Maybe plug in some WYSIWYG wiki editing.

But we can't do that because of security and nondisclosure concerns. IndustryNext doesn't harbor a lot of secrets, but our clients may -- especially when it concerns upcoming and unannounced products that we're building with them. And our confidentiality with clients means that we won't put their project data into a shared SaaS environment.

So what can we do? The other extreme (from fully shared Saas) is to acquire the apps to host in-house. But that's not an option with many of these services, for good reason.

I propose that a third party build a business hosting secured and partitioned areas where instances of these apps could live. Of course going down this road starts to break the business model that makes many web 2.0 services viable. Without shared hosting infrastructure, and with the added hassle of supporting a "customer" deployment (even if the hosting service is a very sophisticated customer), advertising won't pay all the bills anymore.

But that's ok: I'm willing to pay some money for secure, semi-private access to these apps. It's way cheaper than any alternative I'm aware of, and would have a positive impact on our productivity. Moreover, since the apps are already built and deployed, it's all gravy -- a new revenue line -- beyond the actual hosting and the maintenance (from the app provider to the host).

Does something like this exist? If not, any takers?

Tuesday, June 26, 2007

Free ActionScript3 Code Generation from Violet UML

At IndustryNext, we are in the interesting position of building cutting-edge projects, with cutting-edge tech for somewhat more established companies than your typical web 2.0 startup.

Part of keeping the speed and quality high is leveraging tools for code analysis and code generation to help keep a handle on dynamic language development. (E.g. I wouldn't ban the use of eval in Ruby, but I'd sure as heck want a tool that can tell me where in the codebase it's being used, and why.) In some cases, we're pioneering these methods.

Generating consistent code from models is a step in this direction. (In JavaScript, just guaranteeing consistent variable names can save no small amount of debugging.)

In order to make it easier to play with object models in ActionScript 3, I spent a little time integrating Cay Horstmann's lightweight Violet UML modeling tool with David Holroyd's metaas library for manipulating ActionScript.

The result is VASGen (Violet UML ActionScript 3 Generator) 0.1, an initial release of a free code generation tool that supports generating classes, interfaces, field, properties, methods, and various types of relationships from Violet's Class Diagram editor.

The project page includes details on what works and what doesn't in this release. If you build applications in AS3 and you like UML models, please give it a try and let me know what you think.

Friday, June 22, 2007

Jeans and a Minority Report Moment

I was putting on a pair of jeans and noticed a nylon tag stitched in them, marked "Remove Before Washing or Wearing." The fabric was conveniently marked with a line saying "cut here."

Wondering what that was all about (a desiccant? inventory control?) I grabbed a knife, cut out the tag, and held it up to the light:


Ok, it's an inventory control RFID tag (the rings are the antenna). Not a huge surprise...

But something about cutting the fabric out with a knife, holding it up to the light, and seeing this inside reminded me of the sequence in Minority Report when John goes to a back-alley surgeon to get his eyes cut out and replaced (tracking and identification is accomplished through retinal scanning in the film). After the operation, he's forced to hide, delirious and blindfolded, in a tub of icewater, as the police flood the building with robotic eye-scanning spiders. This description makes it sound a touch hokey, but it's a brilliant terrifying sequence in the film, and an allusion to role of eyes in Bladerunner.

Having worked hands-on with RFID quite a bit, I'm sure someone imagined how easy and "useful" it would be to not print "Remove Before Washing or Wearing" on the tag at all.

Wednesday, June 20, 2007

More Khakis: Build a Market for Near-Future Consumer Dealmaking

Here's an idea I've had for a while... if you're good with strategy (see Hey, Guys in Khakis) you might be able to fit the pieces together well enough to make a buck. I thought about building something like this at one point but I'm just not enough of a strategist or a consumer to have a real passion for it.

The premise is that most everyone always has some purchases they're planning, say two weeks to six months out in the future. The buyer has some characteristics in mind, a general idea of price, and is definitely going to buy in that time frame. But he or she doesn't have a specific item chosen nor a specific date when it's time to search out a deal and buy.

As just one example, if you like or need shiny gadgets, you might have thought
  • I'm going to get a X-megapixel camera sometime this summer, I'm just too lazy to read all the reviews and sort it out right now.

  • I'm want to buy my wife a bigger flat panel, but the prices are always bouncing around. I think I'll wait a while and see how much LCD real estate I can get for my money.

  • I'm sick of encoding all these DVDs. When I see a deal on TigerDirect or techbargains I'll grab one of those DivX-capable DVD players and be done with it.
There's a market here: a lot of people are not actively searching today (using one of the many comparison shopping sites), but they are definitely buyers. Whether $150 is a good pricepoint or $1500, it's something they are comfortable with and have essentially already decided to spend.

Today, this is an inefficient process on both sides.

The customer waits around until eventually he or she happens to hear the Fry's ad on the radio, drives by a store, or sees a chipmunk on the way to work and figures it's time to get a camera and start posting lolmunks.

The seller has limited visibility into who is interested in what products, when they plan to buy, and how much they'll spend. If a site has an extensive profile on you (say, amazon) then maybe they could develop an algorithm to predict when you'll upgrade your camera, what you're likely to spend, and how you comparison shop. They could then communicate directly with you to try and close a sale. But most vendors have a fleeting relationship with the customer, so they spend lots on ads, make sure their products are listed on sites like pricewatch, and hope the customer comes.

The opportunity is to create a market that lets vendors go look for buyers who want certain kinds of products, and make them an offer. For example, Fuji revs their cameras constantly, so maybe I have a bunch of a particular model, and I know the next line is coming out soon. If I want to move the inventory, I put it "on sale" and pay to advertise.

What if I could go and find a bunch of buyers who have said they're looking for this kind of camera at a price point I can stand and they're buying soon? My goal is to (1) offer them a price they'll buy at and (2) make enough on the sale that I'm still ahead of where I would have been in the "put in on sale and advertise" scenario.

This system would be a win-win. But several pitfalls must be overcome. Principally: How can you tell a "true buyer" from someone who just wants to window shop some really great deals? It makes a big difference to the seller, because publishing these kind of targeted deals out into the ether (offering them to arbitrary unverified people) is essentially the same thing as just publishing a lower price. It's asking the vendor to show his cards without the buyer committing anything.

So, to make this work, one needs at least a way of limiting the pool of "true buyers" to those who are plausibly legitimate. At the same time, it cannot be a closed system of fully committed participants since a "true buyer" may sign up, see some great deals, and legitimately decide to just forget it and buys something else that catches his eye. The buyer is not likely willing to be obligated to buy through this system.

The whole mechanism needs some sophistication, and probably a few small but key innovations that will keep people (mostly) playing fair on both sides. These might include unique valid credit cards, online reputation mechanisms, social networks, and some things that haven't been invented yet.

I believe such a market can and will be built. I expect to see someone clever or lucky make a bunch of cash building this and then selling it to eBay. And although I don't love shopping nearly enough to want to build this product, I'd gladly be its first customer.

Tuesday, June 19, 2007

Design and Implementation for Longevity: Two 20th-Century Machines

Here are two twentieth-century machines that are beautiful, functional, and still have it after several decades of radical technology evolution "should have" passed them by.

This C2 Corvette is as edgy, clean, and exciting as any vehicle built since. It probably always will be:

This original (1978) Cessna 152 performs at original spec after 30 years and looks great doing it:

So what does it take to come up with a design and an implementation that can hold up like these two?

Certainly sportscars and airplanes are not trivial problem domains with few constraints. And they're not domains lacking innovation and evolution. Yet neither of these machines take it on the chin for lacking digital gauges or GPS navigation.

There's some luck, some genius ... what else? It's more than a design question. If it were only about design, we might get bogged down in aesthetics and cultural theory, which is fun but sort of a sui generis sport. (Why does art deco seem futuristic? because "the futuristic" has irremediably incorporated art deco? what about directly undermining this? or does that form a stucturalist framework that reinforces the duality? ... )

One key piece is the absence of over-engineering. The 'vette and the 152 are fabulous implementations of their times, but never strove to be "ahead of their time" in terms of showy engineering.

Contrast a recent BMW or a Mercedes, which always comes off rather less slick a few years on, because at design time it had been packed with every blinking gewgaw money could buy, and those rarely age well. These cars do ok, though, because the first buyer gets a space shuttle experience during her 39-month lease. And since the drivetrain and suspension tend to be solid on these cars, the cars hold up for the next 25 years -- they just look increasingly tired doing it.

Friday, June 15, 2007

Scamalicious, Bubblicious, or the Next Transistor?

It's a multiple choice test for this venture investment in Stirling engines as solar power collectors. Stirling engines are of course very real. But so is fusion.

Is this brilliant risk-taking and the green investment that'll lead to breakthroughs? or another dangerous sign of too much money chasing too few ideas?

Wednesday, June 13, 2007

Pac-Man on your Smartphone? Ghosts are Chasing Your Game Download

Remember Bad Idea Jeans? That's what came to mind after TechCrunch told me Namco is releasing classic arcade games for AT&T smartphones, and I checked it out.

Pac-Man on my Blackjack is not a bad idea at all. But here's the ordering page:


Notice you can choose how many copies you want to but, but not whether you want "Download Protection" ... Interesting .. My downloads have never been injured before. I wonder why I need protection? If you click the protection link, you get this popup:



This is obnoxious on so many levels. And no, I'm not complaining about the money. The problems are these:

First, the market for off-deck software for mobile devices is in its infancy. While the general population is slowly realizing that the phone is a computer and can run programs (if the iPhone does nothing else, its TV spots will help communicate this fact), most folks have still never installed an off-deck app, let alone paid for one.

The smartphone users are at the vanguard, the evangelists that get their friends and companies onto mobile apps. So why even suggest that the software downloads are any different from a PC software download? Why suggest there's some special problem with mobile software, so you'd better pay $3 for "insurance" in case your stuff gets screwed up?

At this market's stage of maturity, users need to be told that if they're ready to start buying mobile apps, there is no risk, and the vendor will do 100% whatever it takes to make sure the software is available in case a device gets broken, hard reset, etc. Compare the early days of e-commerce: a number of companies promised extraordinary customer service to overcome anxieties about returns, using credit cards online, etc.

The second problem is that it undermines the whole idea of software sales as IP licenses. If I've bought a permanent license to Pac-Man for my device, why does it cost $3 to make sure I can download it again later? Is the $14.99 for a conditional license, that only gives me the right to use the app until such time as my device gets reset? Then $3 buys me a permanent license? Of course this is absurd.

Bottom line: if Namco want another $3, just call it a handling fee, or a one-time provisioning fee, or just toss it into the price. My downloads don't need protection.