Thought of something interesting (see disclaimer) yesterday, namely observing the evolution of how design solves problems with software.
Take a common requirement for the interwebs and its viewer, the browser, like wanting to view more than a single web page at a time.
In the first few iterations of browsers, this was possible only by launching multiple instances of the browser. I’m not even sure that was possible with some of them like early versions of Netscape Navigator and IE 3.
At some point, the HTML spec updated to allow new windows to be opened by clicking a link or just viewing a page, and the dreaded pop-up was born. Spammers and advertisers everywhere rejoiced.
Yeah, I’m glossing over the technical details.
Unbridled window propagation, the hallmark of IE 6, was always something I have always intensely disliked. So, the primary feature that attracted me back to Netscape and then to Firefox, was tabs, which IE would not have for several years.
Tabs elegantly solved the root problem of having multiple web pages open at once.
However, tabs created new problems, like massive memory consumption, which limited the utility of the feature.
Lately, stream-focused apps like FriendFeed, Facebook, Brizzly and Google Buzz (and Connect) have evolved the design even further with inline viewing.
By providing a viewer for content like photos, videos, audio, and other known file types and adding web page previews, stream apps have removed the extra click required to view another web page.
So, to recap, we’ve gone from single web page only, to multiple windows, to multiple tabs, to inline viewing.
And I doubt this will be the final design iteration.
Anyway, this type of design evolution fascinates me because I guess I’m that guy.
Do you have favorite examples of design evolution?
Share them in comments.