Pondering the Computing Client
Having streamed last week’s Apple announcements on iPhone and iOS 7 during my morning commute, I found myself wondering again about the true future of the “desktop”. It is a dangerous realm in which to speculate, in the sense that almost every pundit who has prophesied the downfall or revolution of a mainstream technology has done so too late or too early. That being said, the area bears some discussion.
The vast majority of our friends running MEDITECH today are running a “client-server” version. This compute model, envisioned by the industry in the 1980’s and realized technically in the 2000’s had the architectural goal of properly sharing the overall applications workload between computing devices which would communicate as peers on a network. The idea was that the local device, in most cases a Wintel PC, would do what it was good at – present data, provide a user interface (UI) for interacting with data, and provide an applications experience in context with the user role; while other resources in the network, mostly servers, were optimized for other tasks like database handling, print services, interfaces, data stores, and messaging. Few would argue with the positive characteristics of this vision from the perspective of efficiency and role-based design, and yet, for most the realization of this technology has been less than satisfying.
Lest anyone think I am picking on a specific execution of client-server technology (I am not) let me point out one that may not be as immediately apparent: IP Telephony. That phone on your desk is a client. That server in your closet is (duh) a server. Does it sound as rich, warm, and good as the old analog Rolm unit you had on your desk in the 80’s? Nope. Epic fail, IP telephony industry. You won on efficiency and cost reduction, not on quality. Shame on the engineers and executives too lazy to perfect this technology.
Why? Well, one fatal flaw was the network. The Client/Server compute model makes an underlying assumption that the network is transparent, fast, and approaches zero latency (no/low delay). 30 years later, networks are anything but. The government inexplicably underwrites the installation of fiber-optic cables to underserved rural areas, but neglects to ensure that there is an adequate density in teeming metro centers. The “last mile” still bedevils the clean distribution of cloud applications. Wireless 4G networks in some countries are so much more reliable than the wired networks that little investment is made in the wired networks. The thing we tend to forget is that these devices, no matter how fast, are essentially radios. They transmit and receive like advanced walkie talkies. You don’t hear the “squawk” or static like you did with your childhood toys – you just watch the screen freeze and experience that gut-wrenching moment of powerlessness over poorly executed technology. Like a walkie-talkie, you may even change your physical position, hoping to get more bars on your device.
Meanwhile, the competition for becoming the best user interface, or device operating system, has heated up. Competition from iOS and Android has helped stodgy old Microsoft to drink a few lattes, rethink their UI and give us Windows 8/Surface. The options are good for end users, who are having an easier time finding a device that serves up virtual reality “their way”. The options are hard on the development community who have to make difficult trade off decisions. HTML5 or Flash? Windows, Android, or iOS? The answer they don’t want is all of the above. The answer the consumer market, who increasingly controls the “desktop paradigm” is resoundingly all of the above.
While we watch the struggle for the local user interface (or more generically, the computing client) evolve, small empires are rising and falling to solve the “network problem”. CITRIX XEN Desktop, MS Terminal Server/RDS, VMware Horizon View all stand in the breach to ameliorate the weak link in the client-server compute paradigm. For those serving up industrial strength client-server apps over local, metro, or cloud networks, the “access layer” has become a major point of expense and management, the sting of the former being partially overcome by the opportunity to add security. But it sure isn’t the fast, transparent, delay-free world envisioned by the Client-Server dream teams in the 1980’s.
So what’s next? Some feel the overarching standard that transcends the competing Device OS’s is HTML 5. Some feel the only way to bring the user to new heights of efficiency is to write device-specific client apps. Whatever happens, the “access layer” that has expensively interposed itself to enable today’s “version” of client-server either has to transform itself into a “client services layer” or vanish in a greasy poof of smoke. What do you think? Is there a right answer, or is it sufficient to lean back and circle e) all of the above?
Jim Fitzgerald is EVP of Park Place International. He remembers when V.32bis was like driving a Ferrari.