Morning Coffee 67

  • Beta 1 of VS “Orcas” and .NET Framework 3.5 has shipped. Get it here. Besides LINQ, I’m most looking forward to experimenting with some of the new WF/WCF integration work. However, I don’t think this beta includes DBPro functionality. Not surprising, given that DBPro only shipped a few months ago, but disappointing since I’ve moved all my database dev work over to that model.
  • Korby Parnell introduces Claimspace, part of the Microsoft.Community family. While the other family members are retreads – blogs, forums and tagging – but this seems like something fundamentally new – or at least new to me – and therefore interesting. (via Larkware)
  • Scott Hanselman updates the new version of Notepad2 to re-enable Ruby support originally built by Wesner Moise. Ruby is nice, but where’s the PowerShell love?
  • After his performance in front the Judiciary Committee, Attorney General Gonzales is grossly incompetent, lying or both. What does it say about President Bush that he was “pleased with the Attorney General’s testimony“? It says Bush values loyalty over competence, is hiding something or both. Given that his approval ratings can’t get much worse, I guess standing by Gonzales even in the midst of bi-partisan calls for his resignation isn’t going to affect Bush much politically. On the other hand, confirming a new AG with a Democratic congress and low 30% approval rating might be devastating, depending on the bodies buried over there.

The Virtuous Cycle of Virtual Platforms

Dare is thinking about what comes after AJAX, building on Ted Leung’s post “Adobe wants to be Microsoft of the Web“. He mentions three things that any Rich Internet Application (aka RIA) platform needs to have: ubiquity, a consistent debugging experience and a continuum of dev tools. I agree 100% with the need for a good debugging experience and dev tools. But RIA platforms like Flash and WPF/E aren’t traditional platforms, they’re virtual platforms. (or should I say Platforms 2.0?) It turns out ubiquity and market penetration of virtual platforms is a lot less important than you might think.

At first glance, Flash Player’s 98% market penetration appears to be demonstrating the typical virtuous circle of platforms. The more people that have the platform, the more software written for it; the more software written for a platform, the more people get it. But the traditional view of virtuous circles assumes that switching platforms requires significant investment of time and money. The vast majority of non-geek users commit to a platform at the time of purchase.

However, Virtual platforms such as CLR, JVM, Flash not to mention the browser itself (aka AJAX) don’t conform to the traditional virtuous circle of platforms. Installing a virtual platform isn’t a “buy a new machine” proposition or even a “pave and rebuild”. At worst, in the case of CLR, it’s fifteen minutes to download and install followed by a reboot. At best, in the case of Flash, it’s two minutes to download and install with no reboot. That means the end user has made little to no commitment to virtual platform itself, either in terms of time or money. Furthermore, the user isn’t forced to choose between different virtual platforms. You can install CLR, JVM, Flash as well as multiple browsers on your machine side by side without conflict.

Think about the install process for a new version of Flash, especially from the perspective of a non-geek. They visit a site, it pops up a dialog saying “you need the latest version of Flash, go here to get it”. Even if the average user doesn’t understand what Flash is or does, they can click on the link. They are redirected to the Adobe site, Flash installs very quickly, and the user goes back to what they were doing and most likely forgets the entire install experience. Because no money changes hands and it takes almost no time, installing the Flash virtual platform requires zero commitment from the user.

Existing user install base is much less important when adding new users requires zero commitment. You can see this is happening with Flash by looking at its version specific market penetration. Flash Player 9 has reached around 55% market penetration in just over six months since it was released. Flash is not seeing the “compete with the previous version” effect that is prevalent with traditional platforms like Windows. I believe this is because users don’t need to make any real commitment to Flash. When a new version of Flash is released, the user is presented with the same install process which they just go thru again without even realizing they’ve done it before.

If the end user isn’t committed to a virtual platform like Flash, then who is? The developers who build software for that virtual platform. This is Virtuous Cycle of Virtual Platforms between the platform and developers instead of the platform and users. In the old model, developers go where the users are. In the new model, users go to where developers are. And developers go where they can be most effective.

The Always-On Internet

(Harry is on a secret mission in uncharted space this week, so instead of the daily Morning Coffee post, you get a series of autoposted essays. As this post is about Web 2.0, it’s obviously from fairly old from his previous role @ Microsoft.)

In my previous post, I wrote that I thought of Web 2.0 as the latest evolution of our post-industrial society. This latest evolutionary step was enabled by ubiquitous access to the Internet. We’ve come a long way on that front in just the past five years. Take for example, home networking. In 2000, less than 10% of active Internet users in the US had a broadband connection. Today, that number is just under 70%. At the same time, the consumer wireless router market has exploded. In 2000, there was no such thing as a wireless router for the consumer market. Today, you can buy a wireless router for under $100. In just under five years, consumer Internet access has evolved from being slow, intermittent and isolated to being fast, persistent and available anywhere in the home.

In addition to home networking, we’ve seen dramatic rise in mobile computer usage. Today, laptops are ahead desktops in terms of dollar sales and are expected to move ahead of desktops in terms of unit sales by 2008. Wireless access isn’t available just in the home, but in offices and at tens of thousands of wireless hotspots worldwide. Beyond WiFi and laptops, there is the availability of third generation wireless phone networks and smart phones with built in Internet and media functionality.

These technologies combine to provide a mobile and always-on connection to the rest of the world via the Internet that society is just beginning to leverage.

One of the earliest examples of the effect that the always-on Internet can have society was the original Napster. While Napster’s history and impact on the music industry is well documented, their peer-to-peer approach was only possible because of the availability of fast and persistent Internet access. Music files are fairly large, so Napster ran better with a fast connection. Furthermore, the availability of an always-on Internet connection enabled Napster’s peer-to-peer connections to be available even when the user was away from their computer or using it for other things. This allowed individuals to contribute to the overall Napster experience, even when they weren’t using their machine.

The dubious legality of Napster’s business eventually led to its shutdown. But the idea of connecting users directly to other users is alive in well in legal online services such as Skype and FolderShare.

This persistent connection was the final puzzle piece that has caused a fundamental shift in computing. There’s been more processing power and storage on the edge of the network for quite a while, but it was inaccessible. We needed fast, persistent and ubiquitous network connections to make that power available. As that network bandwidth has become available, the balance of computing power has shifted from the center to the edge. Today,

And in the Information Age, where the computing power goes, society will follow.

The Information Revolution Is Just Getting Started

(Harry is on a secret mission in uncharted space this week, so instead of the daily Morning Coffee post, you get a series of autoposted essays. As this post is about Web 2.0, it’s obviously from fairly old from his previous role @ Microsoft.)

A friend of mine is doing some research into Internet topics, including Web 2.0. After reading dozens of articles each with a different definition, she asked me to sum up Web 2.0 in thirty seconds or less.

Web 2.0 is the latest evolution of our post-industrial society, driven primarily by the ubiquitous access of Internet connected computing devices.

Got it down to just one sentence and it only takes about fifteen seconds to say. The critical thing to notice about that statement is what it doesn’t include:

  • No mention of specific technology outside of “Internet” and “computing devices”. That means no acronym laden techno-babble such as AJAX, REST, SOAP or XML.
  • No mention of a specific platform or vendor. That means no references to Microsoft, Google, IBM, Yahoo, Sun or Apple. Likewise, there’s no mention of open source software projects like Linux, Apache or Ruby on Rails.
  • No mention of Tim O’Reilly’s principles of Web 2.0. That means no web as platform, harnessing collective intelligence or the end of the software release cycle

This isn’t to say these technologies, platform vendors and principles aren’t important. They are. However, they aren’t what are happening; they are only pieces of the bigger picture. Exploring these individually without understanding the larger context is like the Blindmen and the Elephant.

I’ve recently been reading Alvin Toffler’s The Third Wave. It’s fascinating to read a book about the future that was written twenty five years ago. His opinion is that the industrial age peaked in the mid 1950’s and that the post-industrial age has been building steam ever since. Not coincidently in my opinion, the late fifties saw the first transistor based computers as well as the earliest work on computer networking. It is because of this intertwined history that this post-industrial age is often called the Information Age.

While it’s been building for half a century, the Information Age is only just getting started when it comes to remaking society. Over the course of three centuries, the Industrial Age saw rise to societal concepts such as the nuclear family, the school system and the corporation. It created the role of the bureaucrat. It separated the producers and consumers, giving rise to the idea of the market. It changed our view of the universe by precisely defining units of time and space. It got its energy from non-renewable sources, such as fossil fuels. In short, the Industrial Age completely remade the world. The Information Age will have equally far reaching effects before it’s done. I believe Web 2.0 is the next step in this evolution.

Toffler identified six principles of the Industrial Age: Standardization, Specialization, Synchronization, Centralization, Maximization and Concentration. The relevance of each of these principles is dropping rapidly as we shift out the Industrial Age. For example, weblogs represent a massive de-centralization of the news media. Online retailers like Amazon.com replaced the standardized shopping experience with a personalized one. Digital video recorders and online video sharing sites eliminate the synchronization of broadcast TV.

For each principle of the Industrial Age, there are examples of Web 2.0 companies working against it.

Morning Coffee 27

  • Is there a good solution to colorize source code that looks good in RSS feeds? I’ve tried Insert Code and Paste from VS for WL Writer and both look fine in HTML but awful in RSS.
  • My friend David Geller launched his latest venture Eyejot recently. Eyejot is a Flash-based video messaging system, so you can send and receive video clips without having to install anything but a webcam. According to the Eyejot blog, they’re getting some good press. See an interview with David about Eyejot up on YouTube.
  • Here’s an interesting article on using WF with Amazon’s Mechanical Turk service. Invoking MTurk isn’t that interesting – it’s just a web service and WF has a built-in InvokeWebService activity. But since MTurk has no way to asynchronously call out to the WF, you have no choice but to regularly poll MTurk to see if the task is complete. Yuck. (via Larkware)
  • Yahoo! Pipes looks interesting. At least the screen shots of it on various websites and blogs look cool. Too bad the site is absolutely hammered this morning. (via Dare Obasanjo)
  • Like GAT? Like DSL? Then use them together!
  • If I can more than raise my Gamerscore by 1,500 points by April 12th (i.e. more than double it), I can get a free $5 game. But why wait to start the contest until next Monday? Doesn’t that discourage people from playing until then?