In the second half of the 90s, a company called Be boldly entered the personal computing market with an operating system that was unlike any other. BeOS was highly modular and responsive, booted in mere seconds, made extensive use of threading, gave developers rich C++ APIs, and had a database-like 64-bit filesystem with support for journaling, indexing, and metadata. BeOS offered all of this while Microsoft was selling Windows 95 and Apple was still struggling to deliver features like preemptive multitasking.

Although BeOS was arguably one of the most advanced platforms of its time, it never gained sufficient traction to stay afloat in a market that was almost entirely locked up by its rivals. After the final BeOS release in 2000, a community of enthusiasts began an effort to bring the platform back to life by building a clean-room open source implementation from scratch. This effort, which became known as the Haiku project, has just announced the availability of its first alpha release after eight years of development.

I tested Haiku alpha 1 in VirtualBox to see how it compares with modern operating systems and the original BeOS user experience. It's significantly more robust and mature than the prerelease build that I explored last year, but a lot of work still remains to be done before it will be ready for broader adoption.

The Haiku alpha is available for download in several formats. There is a VMware image, a raw disk image, and an installable Live CD ISO. I tested the latter by installing it in VirtualBox. The installation experience is not quite as polished as modern Linux Live CD installers, but I was able to get through it without much difficulty. Partitioning was a bit unintuitive and had to be done manually with an included disk management tool.

In the spirit of BeOS, Haiku's boot performance is very good. In my tests, I got from the startup splash screen to a fully usable desktop in roughly four seconds. This is one of Haiku's strengths relative to modern operating systems and it is the envy of prominent Linux distributions that are ambitiously aiming for similarly fast startup.

The Haiku user interface is modeled entirely after BeOS, inheriting its signature variable-width titlebars and legendary spatial file management. When I was testing Haiku, I was surprised by how modern the user interface feels despite the age of the underlying paradigms. It has really aged well. The deskbar, with its application expanders, is still one of the most elegant and space-efficient approaches to desktop task management that I've encountered.

Several noticeable aesthetic flourishes visually differentiate Haiku from BeOS R5, including the extensive use of light gradients on user interface elements and the adoption of vector drawing for icons. In general, the look and feel is smoother and more refined.

One of the principal goals of the Haiku developer community is to deliver binary compatibility with BeOS R5, the last official version of the operating system. Binary compatibility is important, because it will make it possible for users to run the corpus of existing legacy BeOS applications on Haiku systems. One of the most notable impediments to achieving this goal is the fact that the GCC compiler itself discarded backwards binary compatibility with the release of the GCC 4.x series. To address this challenge, Haiku offers a "GCC Hybrid" model.

I didn't have much luck getting old software from BeBits to run on Haiku, but there are several complex third-party applications that have successfully been ported and are included by default in the alpha release. These include the Vision IRC client, the WonderBrush graphic editing tool, and BeZillaBrowser, a rebranded port of Firefox 2. Haiku comes with its own versions of the basic suite of standard BeOS desktop applications. This includes a media player, archive expander, lightweight Web server, command terminal, the workspace switcher, and a number of other tools. The obligatory spinning teapot demo is also present.

The Haiku alpha is primarily intended to facilitate application and platform development, so it is unsurprising that it ships with a relatively diverse assortment of standard development tools, including GCC, git, and Vim. It also comes with Python 2.6 and Perl 5 to enable scripting.

Haiku has come a long way, but there are still a lot of caveats and limitations. Haiku provides source-level compatibility with BSD network drivers, which brings support for a lot of modern network hardware, but it still lacks WiFi compatibility. At the HaikuWare website, a $2,000 bounty has been offered to encourage the development of a WiFi stack. There is already a preliminary implementation under development that has been shown to work.

Although some of the unique advantages of BeOS have faded with time as other platforms evolved, there is still intrinsic value in the Haiku project and it could have a lot to offer as it matures. As I said in my previous review of Haiku, I think that it has the most potential to shine on netbooks and other hardware devices where boot performance and low overhead are important. I look forward to the day when I can rock Haiku on my portable computer.