Using a free operating system like GNU/Linux or *BSD does has its own advantages. One thing that the user is free to choose which desktop environment to use instead of being locked up in a single windows manager like Microsoft Windows or Mac OS X.
There are many windows managers to choose from, but the most elaborate one is GNOME and KDE. Each have their own presentation style, look and feel , layout, menu and icons. Each have their own fans and are built by a different underlying set of libraries and development paradigm.
The problem with GNOME and KDE
This freedom to choose however came with a price to software developers as users prefer to use one window manager over another, and GNU/Linux distro seems to follow that pattern too. The main problem with this is, softwares written with GNOME library will have the look and feel (and sometimes behavior) of a GNOME window manager, and it would look weird on users on KDE, and vice versa.
Another problem that may arise is the library overhead. For example, a GNOME user may get annoyed if she has to install half a dozen of QT/KDE libraries just to run one of her favorite application that has not been ported to GNOME yet.
Enter Portland Project
The Open Source Developer Labs (OSDL) is previewing work that attempts to make life easier for software developers by bridging GNOME and KDE, the two competing graphical interfaces most widely used with GNU/Linux. They name it the Portland Project.
Portland intends to generate a common set of Linux Desktop Interfaces and Tools to allow all applications to easily integrate with the free desktop configuration an end user has chosen to work with. Developers now can rest easy when Portland stable ready, because they can be sure that their applications can run without modification regardless of the Window Manager.
At this time of writing, Portland technology previes is already available on the download section of Portland Wiki