June 16, 2005

Tiny open source window manager catches a giant's eye

Author: Tina Gasperson

Freelance software developer Matthew Allum was simply "scratching an itch" when he created the Matchbox Window Manager, a lightweight program designed to more efficiently run X11 applications on handheld devices. But Allum's project worked so well, it caught the attention of a giant in the handheld space.Allum became enamored with the idea of running Linux on a Compaq Ipaq in 2000 when he saw screenshots published by Compaq that showed the Ipaq happily running Linux. He bought one and installed Debian, but found that a lot of the Linux-based window managers didn't work with the small 240x320 display. Frustrated, he "bought a book on xlib," sat down, and in 2001 wrote Matchbox, a 50KB highly flexible window manager that depends only on xlib, which makes it lightweight enough to run on small devices without using too many resources.

Matchbox "stacks" open windows one on top of another and allows access to each through the use of a drop-down menu on the title bar. Users can't move or resize windows, which sounds restrictive, but actually works well because of the extremely limited screen space on small devices.

Allum made a practice of publicizing the project on handhelds.org; he published the project on his page there and was well-known in the Linux on handhelds community. He garnered several speaking positions at big conferences like FOSDEM, Usenix, and Python, where he worked to dispel what he called the "myth of slow X."

"One day in November 2002, I got a mysterious email asking about Matchbox," Allum says. He almost hit the Delete key. "At first I didn't answer because it was so odd and out of the blue; when you write open source software you occasionally get strange emails."

Fortunately, he decided to reply and answer the questions. Promptly he received a response back from a Nokia.com address. "They said they were experimenting with Linux and they wanted to fund my work with Matchbox." He was astounded. All of a sudden, Matchbox the hobby project became Matchbox the full-time job -- no need to freelance any longer.

A condition of funding was that Allum create a limited company, so soon Allum found himself at the helm of a new business called OpenedHand, whose sole function was to help Nokia tailor a window manager for what the world now knows as the N770 Internet Tablet. Allum was glad for the push. "Running my own company, doing open source with great people, is what I've always wanted to do, and Nokia basically made me finally get round to doing that."

Allum didn't know exactly what Nokia's plans for Matchbox were until recently. "In the last year, it became apparent that they were going to make something rather than just pooling ideas," Allum says. The relationship between Nokia and Allum extends beyond his work on the window manager. "It got to the point where I could suggest new modules and they'd say, 'go for it.'" Nokia has provided enough work to OpenedHand that it now employs four full-time developers, and it is hiring more.

Allum is glad for the opportunity to talk about the project, which has been veiled in secrecy for the two and a half years he's been working on it with Nokia in Helsinki. "I'm under a whole lot of NDAs," he says.

These days, Allum is tweaking and optimizing Matchbox, though "it got to the point where it was what they needed." He is working on more upcoming projects with Nokia, but isn't at liberty to elaborate on what those are.

But Allum can talk about Nokia's devotion to keeping the code open. "Everything is open source and publicly available," he says. Custom changes to Matchbox weren't done in a way that made them usable only with Nokia products, but in a more "generic" fashion. "They are being incredibly open and giving back to the community, which is incredible when you consider the size of them. They really want to get involved and push stuff back in and help communities grow."

Click Here!