Preface
My background is in client application development. I started on the Commodore 64 in seventh grade in the 1980s, later moved to DOS with dBase, QuickBasic, and C++, and eventually Windows programming using C++, Borland Delphi 1.0, PowerBuilder, Visual Basic 3-6, and .NET.
Though I’ve written plenty of pure HTML/JavaScript web applications, I’ve always preferred client programming over strict web programming because I felt HTML/ JavaScript programming treated the immensely powerful PC as a dumb terminal, squandering its CPU cycles for applications that were almost entirely network bound in performance. Only recently is this changing.
Back when web applications started to become more popular, customers loved the flexibility of the blank canvas of HTML versus the old battleship gray look, as well as the ease of deployment of web applications. On the client development side, we had some things that came close (WPF for appearance, for one) but nothing that combined the ease of deployment with the modern look.
For a while, it looked like the world was going to move to relatively dumb web applications, treating the local PC as just a keyboard and display—a disappointing move to say the least.