Web Apps, Dumb Terminals, Terminal Server: An App By Any Other Name...


Over the past two decades, the faithful PC application has been challenged by lower costing, lighter weight variations that threatened to replace the traditional deployment model. This long-fought debate has been re-fueled by the new mobile technologies.. can we now, finally, lay it to rest?


Even those who have had only a passing involvement in technology have probably, at one time or another, heard about such things as “dumb” terminals, Terminal Server, Citrix, web-based applications, and so on. These are all alternatives to the traditional PC application model of deploying and installing applications on individual PCs to make them available for all the various users within a company or organization. Subtle nuances aside, all of them are based on a single concept: installing an application on a machine other than the one on the users’ desktops and sharing that installation with everyone else.

Although this may sound a little strange, there certainly are advantages; the most obvious ones being cost and ease of deployment. In a shared application model, only the main application server needs to be one of any significant power, and I.T. administrators need only install applications on it. Everyone else can make do with a very basic machine - with a minimal version of the operating system – just enough to connect to the server and share the applications running on it.

Along with the advantages however, come just as many (if not more) disadvantages: First and foremost is “fault tolerance”; put simply, that is a barometer of how easy it is to bring a system down and leave the company (and all its users) with an unexpected holiday. When everyone is sharing a single server, and it goes down... everyone goes down. The more serious concerns arise when that shared server is located “off-site” or is controlled by an outside party. In situations such as those, a multitude of concerns for data security and privacy begin to emerge. For most companies, their data is their life blood – giving someone else – any someone else – control over it is unthinkable!

It’s not the intent of this article to re-hash this long-running debate; many experts have devoted entire books to one position or another, but the one factor that things always seem to come back to, is the all-important “user experience”. As its name implies, it means simply, how comfortable – or how effective – the app is to use.

In the years ranging from the late 1990s through to about the mid-2000s, the most popular topic in the world of computers was of course, the internet. Amongst developers and people in the tech industry, the hot trend was “web applications” – apps that were installed on web-based servers and shared by users over the internet.

Web apps were held out to be the solution to every problem in the PC universe – and there were a lot of them! So what happened? Despite the promise, no one went on to use web-based version of Microsoft Office or Adobe Photoshop. Accounting and ERP systems (despite a few exceptions) have never found a home on the internet. A little over a year ago, Microsoft launched their Office 365 product. Office 365 is a “cloud-based” version of their popular Microsoft Office product (Word, Excel, Powerpoint, Access, Outlook, etc.) Instead of selling copies of the software outright, they are now offering them to customers on a subscription plan.

Based on the product “mix” required, customers pay a monthly fee to access them. You might ask, “How did Microsoft - the people that invented Terminal Server and happen to run the largest web host on the planet (Microsoft Azure) – implement their new “cloud-based” service?” Web apps? Nope. Office 365 is distributed just like AVAware distributes AVAproject... native apps are downloaded and installed on each and every client machine. This deployment model simply works much, much better.

In many cases, it’s the only way to offer advanced software technologies. The emergence of mobile technologies such as tablets and smartphones provided the web-app with a new potential lease on life. With so many choices in the mobile arena (Apple’s iOS, Android, Windows Phone, BlackBerry, etc), developers were faced with their ultimate nightmare – having to create multiple versions of all their apps! There is nothing more costly (and risky) for a developer than having to subsidize the development of two or three versions of their apps before they ever find out which (if any) will be successful.

The web-app was the perfect solution; the most important promise it brought (for developers anyway) was that it no longer mattered what operating system was being used – so long as the user had a web browser, they were good to go! Write one web app and run it on every platform... so what happened? If web apps were so great, why did every service provider and vendor of consequence go through the time, trouble and expense to create “native” apps for each separate platform? In other words, why did companies like Amazon create traditionally-deployed shopping apps for iOS, Android, Windows Phone, etc. when they had a perfectly good website that all of them could use for shopping? Same question for Twitter, Facebook, Best Buy, Future Shop, Staples, Federal Express, UPS... get the point?

Even Google – the guys who basically re-invented web apps and maintain more servers than every government on Earth combined – created native apps for each and every operating system – even several for desktop users as well!

One could go on and keep listing companies, but the picture appears to coming into focus. Much to the dismay of the development community... no one wanted to work with web-based apps! They simply provide a terrible user experience – sluggish, limited in their scope and ability to really make use of the features of the machine its running on.

The reason for the last one is actually pretty obvious when you stop and think about it... Web apps are designed to run on any device that has a web browser, therefore they are designed, by definition, to accommodate the lowest common denominator in terms of technology. For example, apps can’t use graphics that exceed the capabilities of the worst device the developer intends to support!

In 2007, just following the release of Apple’s iPhone, Steve Jobs informed an anxious developer community that they would have to create web apps in order to have their applications run on the new iPhone. The developers weren’t having any of it! Rather than embrace the new HTML 5 standard for web-based apps, they chose to await the initial release of iPhone’s first native-code development kit in the months following the historical iPhone announcement.

At this point, it should also be pointed out that systems like Citrix and Terminal Server are, conceptually, very similar to web apps - except that they run on a private “web”. Ironically, the only people that still prefer these kinds of implementations (and the only ones that really benefit from them) are I.T. people who see them as a way to avoid the work of having to deploy and maintain individual users.

As a final example – just to quell any remaining doubts, there is the one-and-only Adobe – the company that makes world famous products like Photoshop, Illustrator, InDesign, and many more. They also offer a subscription-based alternative to purchasing software licenses outright, called “Creative Cloud”. (There’s that “cloud” word again). Just like Microsoft – and so many others – they did not choose to implement web apps, but distribute native code applications – just like Microsoft – just like AVAware.


We welcome any questions, comments or suggestions about any topic mentioned in this edition of AVAwire. Please visit our website for more information, or contact us directly at (416) 239-9099.