Revisiting the 1980's

By Rob 21 weeks ago

When I first started developing software in the mid 1980's, mainframe computers were still the dominant platform for much of corporate America. Just about every cubicle had a "dumb terminal" in it, which usually included a yellow or green colored screen. The user interface was pretty simple. There were function keys along the top (or bottom) of the screen, so everything you needed to do was available without fuss. They were called dumb terminals because all/most processing was done on the mainframe itself. 

When the PC took off, DOS applications became very popular. In college, I was building database applications for clients using dBase (and later FoxPro), and these systems provided a serious leap in functionality. The user interfaces were "alive", providing immediate feedback, popup windows, status bars, etc.  It was a huge improvement. These systems were also "keyboard optimized", meaning that once you mastered the various "hot keys", you could get a lot of work done very quickly. Our users loved these systems, and even to this day they are considered superior in this regard to current applications, by many. 

When the web took off, the user experience took a serious hit. Productivity was terrible, to put it mildly.  Web pages were static, and users had to refresh them constantly to get any feedback. Fortunately, people were so amazed by the new information they had at their fingertips that they didn't really notice how many steps backwards they had taken.

Gradually web pages became more interactive, especially with the arrival of technologies like AJAX, but user productivity was still a fraction of what it was a decade earlier. It has taken over 20 years, but we are finally starting to approach the productivity levels seen in the DOS days. Why is that?

Let's take a look at a great example of modern web design. Basecamp, a leading online project management solution, has a clean, no frills interface. In fact, in a lot of ways it looks similar to a DOS application I wrote over 20 years ago. Basically, it's an application that is built for work, and not to just look pretty. It works because everything about it is geared towards helping the user accomplish a specific task.

In reality, the entire web concept is so 1970's. Instead of mainframes and dumb terminals, we have web servers and browsers. Sure, current systems are far more powerful than those built 30 or 40 years ago, but in many ways we've come full circle in both network architecture and user interface design. The truth is, the approaches the industry took to address the user experience decades ago were the right ones, and we've spent a decade figuring this out with web applications.  Each day our industry comes up with some new approach, or paradigm, to improve the user experience.

Don't get me wrong. I love the new technologies. It's a great time to be in this industry, and I've been saying that same thing for over 20 years. But these "new" ideas that our industry is coming up with are really repackaged solutions to problems we solved 30 years ago.