Rants
Questions
Soapbox
Best Practices
Apply today for a FREE subscription to CIO Magazine!
Sat, Jun 2, 2007 15:03 EDT
|
Posted by: Michael Kavis in Questions Topic: InfrastructureBlog: Delivering the Goods
Current Rating: |
As the majority of the vendors selling commercial software are moving towards Ajax enabled user interfaces, the end users are relying more and more on the browser to perform their daily activities.
Vendors are also providing more support for Linux and the Mac giving the buyers more options then they ever had before. As this trend continues, I wonder how important the operating system will become in the future.
When I look at Vista and the amount of resources it consumes from a memory, CPU, and hard disk perspective, I start to question if this could be the defining moment when people start seriously considering alternatives. It is becoming harder to justify the upgrade to Vista if you have to upgrade or replace thousands of PCs when in the end, the users spend most of their time using email clients and browsers.
Google and others are showing the viability of software as a service (SaaS). Once again, all you need is a browser to run many feature rich applications. So I'll ask the question to you all. How much will the OS matter in the upcoming years and do you think that this could be the defining moment for Linux on the desktop?
When I first learnt programming, everything was OS specific. Then with the web, everything was supposed to be OS-neutral: but the reality was that most web applications were too sluggish and it was difficult to create attractive UI. In my current company: we decided to use a Macromedia Flex UI (delivered as Flash of course), a JSP mid-tier (Apache-Tomcat), and an Oracle database. One of my developers uses Linux, others use Windows. Some of my customers use Macs while others use Windows. Isn’t the operating system already irrelevant in many ways?
I think you're correct in recognizing that the client OS is becoming less important as more applications become web-based. Web based applications are attractive for a number of reasons: changes to the app don't require updates on the client; widely diverse clients (mac, windows, pdas, phones, etc) can all use the same web application code base; and clients can be located anywhere and still access the application. These benefits continue to be the driving force behind the move to web-based applications. However, the pendulum swings. The result of the push to thin clients means that the server OS is becoming more important. Not just for security and performance, but to simplify and support the programming paradigm that makes possible rapid application development for web delivery. Think .NET - this framework is dependent on all the server side APIs in order to build the wide array of classes that support ASP.NET applications. In fact, it could be argued that the .NET Framework is actually an (optional) OS module that provides a bunch of APIs for application development. Hence the pendulum reference: if you take your concept to its natural extension, we will once again be at a thin client for everything (a terminal), with nearly all the processing and application running on the server (ie. mainframe). Sound familiar? The good news, if you'd call it that, is that it is nearly inevitable for the pendulum to swing back the other way, once the next paradigm shifting concept arises. There will always be new ideas that require more processing power to perform than is economical to provide centrally based on current processor technology - these applications will need want to take advantage of powerful client side processors, which means powerful client side operating systems. So I don't think the pendulum can swing all the way to the dumb terminal/smart mainframe end of the spectrum. And I think Microsoft and Apple may be ahead of both of us here - they've merged the client and server OS codebases into one, so they are ready whichever way the pendulum swings.
Thomas M. MacKay
Assistant Director
Information Technology Services
Christopher Newport University
Thomas,
Good response. Yes the OS on the server will become more critical as more thin client applications get rolled out. Mashups are also changing the landscape. With Web 2.0, people are delivering stand alone services that can run on the client. The user can assemble a collection of these services and create their own user experience.
I wonder if the pendulum will ever swing back. In a few years we may have disk-less clients that can do massive processing in memory. These computers will rely on PXE booting or network booting to get its OS since there will no longer be any hard drives on the client. This will also make managing OS upgrades and patches must simpler since we will be back to a distributed model.
However, the future might look more like a dumb client with a bunch of powerful clustered back end servers serving up content to a real cheap and stripped down client. We will just have to wait and see.
As IT shops are forced to find ways to reduce costs and "do more with less" every year, I am predicting that we will soon see companies taking a hard look at the cost of the client and the operating systems that run on it.
Michael,
You're right. We're actively beginning to use thin clients here at the university in places where it makes sense, just because of the cost reduction demands. I think you'll see flash drives in your diskless workstations, though, because even today's thin client solutions need enough client side OS that loading all of it across the network may present an unacceptable network load. We're seeing solid state drives in commercial laptops now, and NVR is cheap these days. We use Linux thin clients here at the university, and while the OS can be skinned down, I still wouldn't want hundreds of them trying to get their OS across the network at once.
I think the pendulum may not be quite done swinging toward thin clients, but I think it will swing back some. Collaborative and cooperative BI usages are getting more sophisticated, and even AJAX past a certain point can require a fair bit of processing on the client - which means a reasonably sophisticated OS in order to simplify the development of the browser support layer (all those web technology standards have to be implemented somewhere). Otherwise the programmer is back to writing custom code for every action on the client side, which just isn't economically feasible.
Thomas M. MacKay
Assistant Director
Information Technology Services
Christopher Newport University