Implicit Evaluation with PHP

24 September 2007

Tabs

You application probably does not need tabs. It may be treasonous to claim that, but tabs have become an epidemic. They’re a poor metaphor in computing. They’re a stopgap for other problems.

Preference windows were the first big consumer of tabs. And they were largely appropriate. Tabs should group together related functions. Options are typically related. So it’s appropriate.

Excel was also an early user of tabs. Granted, Excel calls them sheets, not tabs, but that’s what they are. It’s already a poor metaphor, as a sheet is a document. It shouldn’t be hidden. However, in Excel, a formula on one sheet can refer to data on another, and so some mechanism for visually integrating the two sheets is necessary. So Excel’s is poorly implemented but necessary.

Tabs lay largely undeveloped for several years after Windows 95’s release. They were used, often even, but their purpose didn’t expand much. Mozilla/Firefox may not have been the first app to add tabs in an unorthodox way, but it was the first to do it with any success. And like Excel and options before it, it was successful not because it let you condense more data into a single window, but because it let you group related data.

However, Firefox changed something. Suddenly everything needs tabs. Instant messaging requires tabs. Toolbars in Office are replaced with tabs. Terminal applications require tabs. FTP clients and file browser need them. Text editors need them

Only, they don’t. Firefox had a legitimate claim, because each page offers so many more links that grouping and organizing the manifold of links makes sense. Instant messaging doesn’t have that kind of exponential information delivery to content with. FTP certainly doesn’t. The code you would read in a text editor could, but again, they’re a poor metaphor.

All these applications have adopted tabs with the goal of saving screen space. The trouble is, managing a user’s screen real estate is not the job of the application. It’s up to the window manager. Expose on OSX exists to manage dozens and dozens of windows at the same time. It’s much less practical with one window per app and 24 tabs per window. The window manager doesn’t know how to arrange an application’s interface. It can only handle the ideas it defines — namely, windows.

Based on this, you would expect Windows applications to be the only ones who fall victim to this trend of tabbification. OSX has Expose. The open source NIXs all have a gluttony of applications, including the Expose-inspired CompizFusion. Windows has tools to do it, but coming naked as it does, it’s not reasonable to expect users to have selected one. Yet, open source applications used predominately on these alternative operating systems feature tabs perhaps more prominently than any commercial Windows application.

So please, stop. Stop taking the easy interface decision way out. Put thought into your application. And know where your application stops and the operating system starts.

No Comments currently posted.

Post a comment on this entry: