How BeOS won friends and influenced people
Aßmus was an Amiga user until the late ’90s when he started looking for a replacement system.
“I had heard of BeOS as the system that some Amiga developers switched to and that they liked very much,” he says.
“Compared to the Amiga, BeOS was very modern. For example it used 32-bit colour on the desktop while my Amiga was using 4-bit, 16 colour palette mode.”
Along with Ingo Weinhold, who is also a major Haiku contributor, he travelled to the CeBIT trade show to see BeOS in action. They both came away convinced of the platform. Weinhold bought a PowerPC-based Mac clone — BeOS was already running on PowerPC at that point — while Aßmus purchased an x86 PC after a BeOS rep said that the OS was being ported to the architecture. “I had to wait for another year, I believe, but when BeOS R3 was released, I immediately bought and installed it,” he says.
Aßmus and Weinhold both began developing applications for BeOS (Aßmus was largely responsible for WonderBrush, a graphics program for BeOS).
“When Be Inc went out of business in 2001, we already had quite some investment into the platform. And the alternatives at the time where not appealing to us.”
Hence the appeal of Haiku.
The current version of Haiku is R1/Alpha 3, which was released in June last year. The hardware requirements have remained minimal compared to most contemporary operating systems — at least 128MB of RAM (although 1GB is recommended as a minimum for compiling Haiku from within the OS) and 700MB of hard drive space. The Alpha 3 release notes state that the system “has been tested to work on CPUs as slow as a Pentium II 400 MHz”. Alpha 3 added improved file system and hardware support, MediaKit improvements, UI tweaks, and support for more than 4GB of RAM.
For a typical end user, there might not be a lot that Haiku can offer compared to other systems, at least in its current state, Aßmus says. However, under the hood, there are big differences between it and the more commonly encountered open source Linux-based OSes.
“Linux is not transparent and self-explaining at all. The system folders are a complete, redundant and cryptic mess,” Aßmus says. “When I launch a new Nautilus window, it takes anywhere from half a second to 3 seconds until I see it appear. When I open a new Tracker window in Haiku, it appears instantly. Why is that? I know Linux is insanely optimised.
“The components that make up most Linux distributions are developed as an evolutionary process. That means that for many system services, multiple alternative implementations exist and they compete with each other. It drives the whole open source ecosystem forward and works quite well, despite all the redundancy and wasted energy. It is accepted as a necessity and the best or only possible way.”
However, Haiku “is replicating what has already been accomplished”: Building an OS from scratch instead of in an evolutionary manner.
“But as a user, I don't care so much about all that,” Aßmus admits. “I can make a choice for a platform to install on my computer. I make a choice for particular applications, ideally only one for each task I need to perform.”
However, in Ubuntu, for example, “that may mean that under the hood, multiple redundant, alternative system components and application frameworks are installed in parallel,” Aßmus says.
“Qt and GTK are an obvious example, but it goes much farther and deeper. That the system actually feels so uniform on the surface, I consider a huge achievement.
“That sort of bloat and redundancy is what the Haiku project tries to avoid at all costs. For any given piece of system functionality, we try to provide only one implementation, one backend. Multiple APIs may map to this single implementation, but the system remains lean and clean.”
For users this should mean that Haiku will be transparent, easy to understand and easy to fix, as well as fast and responsive and it should offer a more uniform experience.