Friday, September 16, 2005

Been There, Hosted That

I'm late to the party on this topic, but I can pretend to be the cautious voice of reason that carefully crafted my response over the last two weeks, instead of the guy who did not see the original post and ensuing feedback until yesterday.

Robert Scoble thinks that "the thick client is coming back" and he responds to various critism with some reasons why he thinks so. For anyone not familiar with the term fat client, it means that the system you are working on has a relatively high amount of processor and memory capacity. This is contrasted with thin client where the power is mostly on a server somewhere, and the system you are using simply handles the display. OK, now we're all ready for the juicy part.

Scoble presents two arguments, but he should have quite while he was ahead, because the second is far less valid than the first. His invitation, "when you get Photoshop in your browser let me know", implying that Photoshop will not work on a browser, is simply myopic. XWindows was capable of hosting incredible complex applications in the early 1990's (and probably before, but I wasn't around to see it) because it decoupled the system preparing the screen from the system displaying the screen (and tracking input from keyboard or mouse). Technically this is not an example of running Photoshop in my browser, but consider it a proof of concept. Servers can process complex programs, receive and process the user interactions, and send the display to the client.

However, this brings me to my discussion of Scoble's first, and vastly more interesting, argument. You do not want a thin client on a two hour airplane ride. Let's set aside the discussion of 'who does major photo editing on an airplane', because one thing I've learned in the software industry is that there is always someone who wants to do the thing you cannot imagine them doing. "Won't" is not a useful design strategy, it's an excuse. Let's talk about how we got from the client/server architecture of XWindows to where we are today and where the signs are all pointing for tomorrow.

What happened to XWindows and how we got in this fat client world of today? I would posit, and I think I'd get a lot of agreement on this point, that the combination of the Internet explosion and the shrinking of devices killed the XWindows model. The place that I saw XWindows running beautifully was at Harvey Mudd, which is the ideal environment for the kind of thin client architecture that existed in the 90s. Departments bought large servers to host "enterprise" software that students would utilize for assignments or clinic projects. The students were all playing in a closed, trusted environment. There was a massive amount of setup to get a new user configured with logins for software and systems, much of it scripted but still initiated by a human administrator; however, the benefits to the students and faculty justified the expenditures and the cost/benefit analysis looked fine. However, when you move out of the closed environment, the world gets too scary and the administration gets too big to allow people to access your application server. There's too much risk involved and the administration costs are too high when you have to define what rights the users have and protect the data from the "bad guys". Furthermore, people were doing the type of computing that Scoble suggests, taking their notebooks on airplanes, places away from the landlines that were quickly connecting our digital experience. The cost reductions in manufacturing drove prices down, rates of computers in the home up, and the percentage of computer users affiliated with a closed system went way down.

These forces created the fat client world of today where "fast" computers were "cheap" and the problem of putting complex software on every workstation became a software engineering problem rather than an administration problem. That's because a software engineering problem, once solved, works for all users (when you hold certain things like operating system constant), but administration solutions only fix the particular system because it is dependent on infrastructure. So, for thousands of software products on millions of desktops, engineers solved the problem. Companies like InstallShield got big doing just that. We reduced user complexity without reducing capability, and all of this happened in a world of intermittant connections.

But things are still moving. The connectivity that moved us from closed networks to a big open "sometimes on" network is moving us to a truely global "always on" network. I've already seen wireless networking on airplanes, and I travel around town with an "always on" device in my pocket. Is the connection really "always on", no. But you have to look past tomorrow to what's coming. I love Steve Gillmor's statment that 'if it's going to be true, then it is true'. Granted, Scoble did hedge by saying "technologies like WinFS will keep thick clients relevant for more than a decade". He may see that eventually the thick client is going to give way but believes it will take a decade to get from here to total connectivity.

A DECADE! Think about how much can happen in a decade. Intel is talking about handtop PCs with built-in WiMAX in less than a year. Add in all the Sidekicks, Treos, and Blackberrys in the world, and there are a lot of people with truely mobile internet access, but on various hardware platforms. And the common ground, web access, will become the platform. The train has left the station!

The worst part of what Scoble is saying is the cause/effect relationship he's presented. He did not say 'lack of connectivity will keep the client thick, and WinFS will make that experience better'. Instead he said WinFS is going to "keep thick clients relevant". Even if this was not the intention, he's giving the impression that Microsoft is out in front of the train, trying to slow it down. That's the type of thing that people worry about from Microsoft and the type of thing that Scoble tends to have his radar out for. In this case, I think he got his signals crossed, but I bet we'll see more on this topic in the near future.

No comments: