Coding Horror

programming and human factors

On Unnecessary Namespacing

Is it really necessary to qualify everything in Windows Vista with the "Windows" namespace?

vista-start-menu-2.png

Hey, guess what operating system this is!

At least the Vista start menu lets me do a containing search, so if I start typing 'fax', the menu dynamically filters itself to show only items containing what I typed. The revamped Start menu is one of my favorite Vista features; it directly addresses XP's abysmal start menu user experience.

But still-- what's with all the Windows noise? Wouldn't that list be so much easier to navigate if we deleted the words "Microsoft" and "Windows" from each entry?

vista-start-menu-3.png

I'm sure the very suggestion of dropping those key branding words will drive the marketing weasels apoplectic. But who's more important? The users, or your marketing weasels?* Repeated words, if they're repeated often enough, are just babbling noise.

I have a similar problem with the add reference dialog in Visual Studio.

visual-studio-add-reference-dialog.png

Unfortunately this dialog does not support containing search-- only "starts with" search-- so it's a royal pain to find what I need. This is a concrete example of how unnecessary namespacing hurts usability. Thank goodness the System namespace is actually named System and not "Microsoft.Windows.dotNet.System".

* a rhetorical question.

Written by Jeff Atwood

Indoor enthusiast. Co-founder of Stack Exchange and Discourse. Disclaimer: I have no idea what I'm talking about. Find me here: http://twitter.com/codinghorror