Haiku

Haiku - Running on a VMWare virtual machine on my laptop.No I haven’t all of a sudden gotten interested in poetry. Haiku is a new Open Source Operating system designed from the ground for Desktop Computing, according to the website it’s “inspired by BeOS“.

Does the world need yet another OS?

My “Knee-Jerk” answer to that is no. We’ve got Linux, MacOSX, Windows, Solaris, all the BSD’s and then the specialized OS’s like QNX. I don’t think that there is a market for another OS and I can’t think of anyone who would need one that doesn’t have one yet.

But out of curiosity I still downloaded the VMWare image they have on there site and took the OS for a whirl. Within the first few minutes the demo had managed to change my mind.

Firstly it’s fast even though it was running on my rather slow notebook inside a VMWare virtual machine with only 256mb ram assigned to it, it started almost instantly. I mean less than 30s till it was booted and usable, and it’s still in the experimental/development stages. But it wasn’t just bootup times that were low, starting applications and generally navigating around the interface was quick. You could probably get the same kind of speeds out of Linux if you sat and tweaked it “just right” but this appeared to work like that out of the box.

One of the things that make Haiku different to things OS’s like Linux is that the graphical interface is tightly linked to the underlying OS more like windows or perhaps MacOSX works. Just like on OSX, on Haiku you can drop to a command line and use normal gnu/unix shell commands if you really want to, but the interface is nice and clean and fast so you’re unlikely to need to do that.

And that brings me to another thing about Haiku that I love, it’s interface. There is a disturbing trend in OS’s now days to add lots of rather useless Eye Candy to interfaces, look at something like Windows Vista, MacOSX or Linux with Beryl and you’ll see what I mean. Yes it makes the OS nice to look at and can lighten up what otherwise would be rather boring tasks and occasionally they come up with features that are actually useful like Expose. The Haiku interface is clean, simple and minimalistic. The windows don’t bounce when they open or fade in or out it’s just a simple clean, easy to use interface.

One of the advantages the guys who are writing Haiku have is because they’re starting from scratch they can fix some of the things that are wrong with other OS’s like Linux. I know how dare I say that there is anything wrong with Linux… let me explain. I love Linux and wish I could use it at work (have to use Windows XP with Visual Studio 2005) but I at home it’s all Linux and MacOSX. One of the problems that Linux has though is the massive stack of applications and libraries that makes up your normal distribution. The hardest part is making a distribution that you as the distribution builder can control to some degree, by control I mean you can set it up do things like change the IP address of the machine and not have to worry about breaking things. Because Linux is this collection of software that you can rip out any section and replace with one you prefer it’s incredible hard to make a Graphical interface that allows you to reliable add or remove printers for example. Lets say you’re building a new distribution called ‘XYZ Linux’ and you make a really cool interface for adding printers, now you ship your distribution and the user decides that he wants a new kernel built for his machine as it’ll be faster, so he compiles and new kernel and leaves out parallel port support by accident. When the guys girlfriend comes along to add a printer using the cool interface it won’t detect the printer because the kernel doesn’t have parallel port support compiled in.

Ubuntu and other distributions have over come this by encouraging there users to use binary repositories like apt. The Gentoo guys solved it by controlling exactly how things get built from source using there portage system and Lindows (Linspire, or whateva they’re now called) solved it by locking down the OS.

The Haiku guys will be able to fix like it more the way Apple did it in OSX by basically tightly integrating everything into “one” system. It also means that because they know what will be running the printing or how to configure the network cards they’ll be able to build a nice easy to use graphical interfaces to these things rather than having applications that need to read, write and understand config files like on Linux.

As you can tell I’m rather impressed by Haiku.. but it also has it’s problems. Although I don’t think the problems are technical ones but rather things like marketing etc. Because of the massive amounts of Open source OS’s around alot of the reverse engineering of hardware for things like drivers has already been done for them so they just have to implement the drivers on there system. What is going to be a problem is gaining market share, it’ll be impossible to compete feature wise with OS’s like OSX or Windows and I personally wouldn’t bother. It’s also going to be hard to compete against the established Open source OS’s like Linux, but I think Haiku will have to rather than compete directly find there own niche market. I think if they can get the basics of email, web browser, multimedia and some sort of productivity apps like a Word processor and Spreadsheet they may find a market as a OS’s for older or refurbished machines, or perhaps even as a sort of thinclient OS. Something that runs on low cost, low spec machines and provides the basics and when you need something fancy allows you to easily connect to it across the network.

So what about that “inspired by BeOS” well it actually feels very much like the BeOS I remember (was a long time ago, I tried the BeOS Personal Edition.) they aiming for binary and source compatibility and from what I’ve read they’ve got most of the old Be open source hackers working on it.. so it’s probably more than just “inspired by”. BeOS wasn’t actually a bad operating system and by being compatible with it it does mean that there will be plenty of software for it.
I’ll be keeping an eye on Haiku and I wish them all the best… I’m not sure that I have anytime to contribute any code to them or anything like that, but I’ll keep trying out there images and I’ll keep everyone posted on how things go.

Haiku – Official Website