Thin Client Applications: End of the Road for Microsoft? Not Likely!
|Archived content. No warranty is made as to technical accuracy. Content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.|
Published in TechRepublic's Windows Enterprise Strategies
The latest "Microsoft bites the dust" propaganda coming from the NOISE Coalition (Novell, Oracle, IBM, Sun, and Netscape) goes something like this: The industry moves away from expensive, difficult-to-maintain-and-support 32-bit desktops to thin clients and UNIX-based application and database servers. Ah, ha! Now Microsoft can't possibly compete with the lower costs of deploying and supporting these thin client applications. Will Microsoft be swept away by the Java/UNIX tide?
Not likely! Of course, this doesn't mean that the thin client philosophy won't have some real merit for your enterprise, or that Microsoft isn't working on an answer of its own. Let's look at how Redmond will respond to this latest threat.
On This Page
Thin client applications
The second TCA type is the remoting of all user interface functions with products like PC Anywhere, Citrix WinFrame, or Microsoft Terminal Server. These remoted applications require a very powerful server but allow full 32-bit applications to run on less than state-of-the-art equipment. In fact, even JavaStations can run 32-bit applications with reasonable performance. Clients in these applications simply paint the screen and process keyboard and mouse movements.
Why should you care about TCAs?
TCAs offer enterprises three significant advantages:
Because they require limited client-side processing power, you can get off the client upgrade treadmill and still support your important business applications.
Well-written TCAs don't have significant bandwidth requirements that impede remote access. They run acceptably on connections as slow as 28.8 bps.
Most important, the largest single cost for client-side applications—deployment costs—goes away if you use TCAs.
If all of your applications load dynamically via HTML or rely on the server for the rendering of all their presentations, then there's no client-side configuration required. More important, as applications are up-dated or new applications are installed, there's no client-side cost associated with their use. This will save corporations millions of dollars in support and deployment costs over the next several years.
Why aren't all applications TCAs?
With all these advantages, why hasn't the whole world converted to the thin client model? While reducing equipment, connectivity, and deployment costs, TCAs have yet to solve their three biggest obstacles:
Once users have experienced the responsiveness and flexibility of a 32-bit interface, they hate to give it up for a browser or Java-based experience.
Users must have a full-time connection to use TCAs, making their mobile or remote usability less capable.
The immaturity of the technology, tools, and developer skills has kept richer applications from being developed.
The complexity of application development also compounds the problem. Most corporate developers are ignorant of the strategies and tactics for building successful TCAs. I just spent a week with a major corporation's crack development staff showing them why the TCA they've been developing for six months will never meet their performance objectives without a major rewrite. Their lack of knowledge about n-tier design, prototyping, performance testing, and proper object management will cost that company thousands of dollars. This isn't simple stuff. Developing HTML applications requires an understanding of several tools and technologies, including HTML editors, development languages, transaction managers, object brokers, operating systems, and database management systems.
To make matters worse, most CIOs and development managers are unwilling to invest in training for developers. We call these CIOs "Marie Antoinettes" because of their "Let them read books" attitude. But books just aren't a good substitute for training from experienced instructors. If you look at the money your organization will save in equipment and deployment costs with well-written and well-managed TCAs, you'll see the economy of sending your best developers to a good n-tier design and development class.
What's Microsoft's strategy?
Microsoft plans on being the TCA provider-of-choice by allowing you to use your existing investment in its platforms and toolsets. Let's look at Microsoft's platforms and development tools that will support the new breed of TCAs for both Remoted and HTML applications.
The Microsoft Terminal Server (an add-on to Windows NT 4.0 but built into Windows 2000) allows you to run any Windows NT 4.0-compatible application on a compatible client. Compatible clients from Microsoft include Windows CE as well as PCs running the Terminal Server client on 32-bit Windows platforms. Citix Systems—the company that licensed the Terminal Server technology to Microsoft—also provides an add-on that allows Remoted applications to run on non-Windows platforms like UNIX and MAC OS.
Ultimately, I believe that Microsoft will allow developers to replace Win32 windows with IE5 windows, giving a seamless TCA and 32-bit application experience. By combining TCA technology with its existing 32-bit applications, a corporation can create powerful standard desktops. These desktops will run rich applications like Office locally, and will also run Remoted TCAs using Terminal Server to minimize deployment issues and execute legacy applications. As these legacy applications are rewritten, they can use HTML TCA technology as the foundation of the new class of applications. But to do this successfully, Microsoft has to provide a rich set of server platforms and tools.
Microsoft provides a robust, consistent, interoperable set of server platforms that allow for efficient development of TCAs. All these platforms are programmable via Microsoft's Component Object Model (COM) and accessible with every Microsoft development tool.
Microsoft has also combined its development tools into an integrated suite of products called Visual Studio Enterprise, which includes tools for:
Component development (Visual Basic, Visual C++, Visual J++)
HTML Editing and Scripting (Visual Interdev)
Development lifecycle management (SourceSafe, Visual Analyzer and the Microsoft Repository)
Most important, your developers can use the tools they're already familiar with to develop TCAs. Microsoft has also learned a valuable lesson for enterprise support–database agnosticism. The Visual Studio support for databases like Oracle makes the Microsoft n-tier development toolset a great choice for even die-hard UNIX/Oracle shops.
Commit, then do it!
Most of the failures I see in companies trying to implement this technology don't happen because of developers. They fail because of a lack of commitment and support from executive management. If you want to see the benefits of the thin client applications, then be willing to stick by your development teams while they learn how to develop and deploy them properly.
Tim Landgrave, Editorial Director of the Windows NT Technology Letter, is the principal of Kizan Corporation, a Microsoft Certified Solution Provider. You can reach Tim at 502-992-8078 or at firstname.lastname@example.org.
We at Microsoft Corporation hope that the information in this work is valuable to you. Your use of the information contained in this work, however, is at your sole risk. All information in this work is provided "as -is", without any warranty, whether express or implied, of its accuracy, completeness, fitness for a particular purpose, title or non-infringement, and none of the third-party products or information mentioned in the work are authored, recommended, supported or guaranteed by Microsoft Corporation. Microsoft Corporation shall not be liable for any damages you may sustain by using this information, whether direct, indirect, special, incidental or consequential, even if it has been advised of the possibility of such damages.