Portland Project

KDE 3.4

It’s nice to ask “what ifs” on occasion, like: “What if all the religious leaders on the earth suddenly joined hands and just agreed to disagree?” or “What if all the different Linux desktops suddenly came up with a common set of APIs, so that developers could target one platform and have their application work seamlessly on all of them?”

Both these “what ifs” are likely to be works-in-progress for quite some time; but the second one is closer to reality than you might think. Courtesy of the OSDL, the Portland project is aiming 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.”

To put another way: if you write your app to work on KDE, it’ll magically just work on Gnome as well (and on any other Linux desktop that participates in the scheme).

Pretty groovy, right?

Portland should be the most exciting development to emerge from the desktop Linux world since, well, since graphical desktops first started appearing on Linux. But if you visit the KDE website, there’s no mention of Portland on the front page. A search of “Portland” or “Portland Project” on their site also turns up nothing (except for some stuff about Portland Maine).

Similarly, a little digging around gnome.org turns up nothing about this potentially huge project. Fair enough, it might be a little bit early to be making a song and dance about a set of technical APIs.

In fact, this really is a new initiative – it was only kicked off last December. But even so, even at this early stage, there should be something about it on the Gnome and KDE front pages, if only to raise awareness of what’s coming, and stir up a little excitement.

If it were Microsoft, I suspect that the front page would be emblazoned with announcements about how Portland is (eventually) going to change the world, when/if it should eventually appear. (Then again, perhaps the lack of “smokeware” hype is one of the nicer aspects of open source, and not something to be criticized!)

Portland is potentially huge because it’s a major reverse trend in the Linux/UNIX world: the gradual fragmentation of the OS into many different distributions, desktops, APIs etc. PC vendors (most prominently Dell) are put off releasing Linux PCs because there’s no clear and obvious choice of which distribution to bundle. Fragmentation hurts. So it is with desktop Linux. Application vendors may be put off targeting Linux because of the effort involved in covering a sizeable percentage of the installed user base.

So they stay in the safe and cushy Windows (or Mac) world, where for the most part, they know that if they target an up-to-date version of the OS, it’ll work for pretty much the entire installed-base (give or take).

Whether it’s intrinsically true or not, that’s the market perception; and it’s a perception that the Linux crowd must fight. “Do marketing”, if they can stomach it. Portland would be a great place to start, because it’s such a positive move in the right direction.

So, here’s hoping that both Gnome and KDE turn the spotlight on Portland real soon, and entice more application developers to the otherwise rather fragmented Linux world.

About the Author

Matt Stephens is a senior architect, programmer and project leader based in Central London. He co-wrote Agile Development with ICONIX Process, Extreme Programming Refactored, and Use Case Driven Object Modeling with UML - Theory and Practice.