I always liked the BeOS interface—at least, in the context of the early 90s, when its popularity peaked—but I find it pointless to clone a 20+ year-old UI. With Kinect, Leap Motion, and other forms of input, it seems like there's a huge opportunity to get away from the traditional windowed UI that has dominated desktop OSes.
Not to knock Haiku OS—I just feel that if someone is going to create a desktop OS from scratch, it's a chance to do something really different. I see this as a missed opportunity.
It's not the UI that excited technologists enough to recreate it from scratch. It was the design of the operating system and its API.
BeOS was state-of-the-art when it was written, in the sense that it took the accumulated wisdom and academic research up to that point as its starting point. And in many ways it is still state-of-the-art.
I do not know BeOS that well, but I disagree with that "accumulated wisdom and academic research up to that point" claim. The prime reason is this: http://2f.ru/holy-wars/fbc.html. Although that probably helped performance-wise, I see that as a gross hack, not as a thing to follow. If BeOS had lived on, I think that decision would eventually have haunted them.
I also remember that, in its time, BeOS was innovating quite a bit in its pervasive multi-threading ('a thread for each window').
Or were both based on research papers or older systems? If so, I would like to know which these were.
When OS X came out (both the Mac OS X Server 1.0 and Mac OS X 10.0 varieties), the UI might have looked different, but you were basically running OPENSTEP 5 with a new coat of paint. Haiku could do a new theme fairly easily at this point, and there are already quite a few touch-ups of the new-slab-of-paint variety (e.g., subpixel antialiasing, support for tiled windows, various improvements to OpenTracker).
The other thing that OS X brought to the table were new APIs, but most of these APIs weren't really user-visible per se. (E.g., QuickTime was a genuinely new addition to OPENSTEP, but the end-user would just see it as more videos played now, and they played with lower CPU usage.) Here, too, Haiku has delivered: it has new APIs for component layout, new APIs for end-user notifications, and more.
So your comparison to what Apple did with OS X is actually quite apropos. Be just hasn't felt a need to overhaul the UI as radically as Apple did in going from OPENSTEP to OS X--in large part because, while some of those changes were functional, many of them were more about making a statement than being genuinely easier-to-use. (Note how much OS X 10.6 and 10.7 have largely reverted to a kind of brushed-up version of the old Platinum interface: no more pinstripes, flat grey buttons in most cases, flat grey title bars, etc.) So I think they're doing exactly what they ought to be doing.
It's entirely time and money. They only have so many devs, most of whom have day jobs, and pretty limited funding to support them, so the UI (and many other polish-and-details things) had to take a back seat to more important core functionality.
Because it is extremely much work, both in the research/prototyping/design and in the implementation. And when you are done, there are no apps that supports it.
I assume they don't exacly have a huge community of active devs. combine that with the fact that user interface design is hard and needs experienced people working on it and you got the reason for cloning a perfectly functional UI instead of completely messing up while innovating a revolutionary new one.
They didn't set out to create something new and wonderful, they wanted the operating system that they loved to have a life after Be. Recreating that OS was a design goal, because if they had decided to create something new and different then they would have had to sit down and figure out what exactly that means and nothing would have ever gotten done.
Haiku has always been about recreating R5, just a bit more modern, because it's a goal everyone can agree on and no major design work was necessary.
(An even older one, as it happens! But even that is arguable; change the shell, the terms under which it operates, or even just the available commands, and that's a UI change.)
True, but the UI elements traditionally associated with BeOS came out in ~1996—so I stand corrected, it was a few years later than I stated in my original comment.
Can anyone comment on the code quality in Haiku? From the FAQ it appears most of the code is new and little was carried over from BeOS. Also, will it include the GNU toolchain and standard libraries such as SDL? How difficult will it be to maintain cross-platform applications?
No code was kept from BeOS except for a few high-level components that were open-sourced while Be was still around (e.g., the Tracker). I've general found the new code to be high quality whenever I've delved into it, but I have only ever run Haiku in a VM, and then, only in short bursts. In other words, my experiences were all good, but there are few of them.
As far as development: the GNU tool chain exists, and is indeed the foundational tool chain. There's also a high level of de facto POSIX compliance (though neither BeOS nor (current version of) Haiku are multiuser), and many libraries you'd expect are available just fine. Even some large ones, like Qt. This makes porting fairly easy—and much like on OS X, it's easy to wrap a native Haiku GUI around existing tools.
The one bad part of development on Haiku is that the old-world C++ API has resulted in some compiler weirdness. Haiku aims for full binary compatibility...with C++ apps written on GCC 2.95. But developers, of course, want GCC 4. So what happens is that, much like OS X has fat PowerPC/x86 binaries, Haiku has fat GCC 2.95/GCC 4 libraries. This doesn't actually make development a pain, but it requires a bit of heads-up to navigate the linking situation
We don't have fat libraries. We do have a hybrid system, either a gcc2 based system with additional gcc4 libraries so a gcc4 application uses gcc4 libraries. Or the other way around a gcc4 system but with gcc2 libraries for old apps.
gcc2 is still the default system, and changing it has been discussed.
Well, I see Haiku becomes more and more popular. I wonder on one thing - why would I be interested in next operating system if I have Windows 7 and Linux? What does it have that those systems haven't? I think authors of Haiku should find that and make sure that people that visit their site will read about that.
IMO BeOS was to operating systems what Opera is to browsers. Innovative, good ideas, efficient, ... but few people use it.
I remember demo-ing BeOS to a friend by opening a ton of videos at the same time. He replied that Windows did that as well, until he tried it and the system was trashing after the 3rd video. The "pauze" button in the copy/paste progress bar ... a revelation.
There are literally millions of smart hackers out there and only 1 entity has ever managed to put a state-of-the-art UI on top of a Unix core: Apple.
[I will get flamed for speaking that way about Gnome and KDE, but they fall a little short, IMHO. This being said, I don't blame the Gnome or KDE teams for it. I blame the gazillions of distributions that add nothing beside a theme or a background picture to the base packages they get from Ubuntu or Red Hat. At least these Haiku guys seem to be adopting a more ambitious approach.]
Why is that?
I think an awful lot of people take on projects solely to make a name for themselves...or because they truly believe they know better than Linus or some other pundit they happen to despise.
A prophecy: The first entity to put a state-of-the-art UI on top of Linux will have an opportunity to compete with Apple directly.
You are not getting down-voted for speaking ill of Gnome/KDE but rather for making a completely subjective statement as though it were established, objective fact.
I have used OS X as my primary OS for long periods of time (totaling about 15 months) on two separate occasions and I currently use XFCE. For me, OS X is unusable garbage.
Am I somehow fundamentally defective as a human being? Or do I just have different preferences than you? The latter seems far more likely to me.
I've used OSX for the last nine years, and I'm also starting to think the OSX GUI is kind of crappy. I prefer tiling window managers nowadays, their as-fast-as-possible user interface and their no bullshit look and feel.
Actually, in the end, I came out even and my original post is worth +1.
Obviously, everyone has an opinion. You are entitled to yours.
Mine is mine and that of most UX people I have spoken to. I have used XFCE, I have used CDE, NextSTEP, the Irix UI, Gnome, KDE, Comice OS, Mint Linux, all versions of Windows, all version of Mac OS...and I happen to believe Mac OS X is the culmination of decades of gradual, tedious, laborious, unoriginal improvement. I just happen to believe it's better than any alternative.
I may be wrong. I am not a man of great certainties.
My original point stands: People should spend less time repackaging existing distributions with a different logo and background image, and more time coming up with a UI that can compete with something a proprietary, profit-oriented entity came up with.
> A prophecy: The first entity to put a state-of-the-art UI on top of Linux....
Already been done by Google with Android. It's state-of-the-art in the sense that it's a touch-based mobile UI, and it does compete with Apple directly...
Although, if you mean Linux in the sense of a full-fledged traditional GNU/Linux Unix userspace..the closest we've got is probably something like Ubuntu.
> There are literally millions of smart hackers out there
> and only 1 entity has ever managed to put a state-of-the-art
> UI on top of a Unix core: Apple.
I wouldn't say ever. At some point in time, IRIX and Solaris (at least!) both had state-of-the-art GUIs on top of Unix. Apple's state-of-the-art GUI-on-Unix was inherited from NeXTSTEP.
I'm not quite sure what you mean by "state-of-the-art", but I think you're over-representing Apple's relative quality. I've used various versions of OS X for significant amounts of time, but I've never seen what makes them so much better than everybody else. Gnome and KDE aren't perfect, but Apple isn't any better. (Seriously, I can't have a full-screen program on one monitor and normal programs on another, and that's the state of the art? I hope not.)
On top of that, I've found that most of the problems with KDE (I haven't actually used Gnome much) have been consistently eliminated in newer versions. When I started using KDE around 4.4, I was annoyed by several little details. Somehow, even without any input from me (I'm really lazy), almost all of these little issues were fixed in subsequent versions.
For example, the GTk build of Emacs can only be resized to the nearest character--you cannot have a window that overlaps has half a character off screen in either direction. This actually makes sense for Emacs; certain normal commands and interface elements would not work properly if you could resize that way. Normally, this is not a problem; however, if you used KDE's fullscreen shortcut, it would properly hide the borders and maximize Emacs, but it would leave a strip of desktop visible because Emacs can only be sized to the nearest character. This was a little annoying, but certainly not a horrible problem, and yet it was actually fixed shortly after I found it. Now fullscreen mode fills in any stripes like that with the correct background color, even taking things like transparency into account.
Over all, KDE is still the best desktop environment I've used anywhere. Given the relatively smaller amount of resources behind the project, I'm very impressed.
Citing Wikipedia BeOS page: "It has partial POSIX compatibility and access to a command-line interface through Bash, although internally it is not a Unix-derived operating system."
To compete with Apple directly on the desktop you need more than a good UI. You need Microsoft Office, Adobe Create Suite, and other staples of the computing world.
This is why many argue that Microsoft agreeing to produce Office for Apple back when Apple was nearly bankrupt was far more important to them surviving than the money investment.
The final polish tha you are looking for gets the implementation into patent hell from what I understand.
I have been using OSX for as long as it was available, and I am starting to get tired of its look, but I am increasingly switching to just running as much as possible in iTerm 2 to be me as operating system agnostic as possible. Adobe software is holding that process back.
> A prophecy: The first entity to put a state-of-the-art UI on top of Linux will have an opportunity to compete with Apple directly.
I think this is Canonical's current strategy: they're not relying on KDE/Gnome to get their act together, rather they're trying to roll their own with Unity.
They had a shocking start (very unfinished when launched) but they're moving really quickly. I personally find it nice to use now. Still not at Apple levels of state-of-the-art or polish, but if they keep the pace up they'll overtake Win7 before long and within a few years might offer serious competition to Apple.
Everyone wants to (re)build their own pyramids (often from scratch) instead of just uniting to finish the top of the most promising one. But I don't judge too harsh the developers: my contribution to free & open source is quite small until now and free & open source it's a lot about free will and passion and not necessarily for the benefit of the world.
That's the thing -- what does Linux need at this point? Not much, and the things that are needed are not at the kernel level. The things on the kernel level that are needed are mostly from device manufacturers -- there is no shortage of people to do the work of writing a video driver, for example, if the specs were there.
Nearly every incompatibility we see right now is a result of a hardware company not releasing complete specs. It isn't for lack of coders that suspend/hibernate isn't working universally.
There are enough people working on the big pyramid.
That's the thing though, everyone has a different perspective of where they are working on the pyramid. One person's peak is so far below another's abstraction level as to be considered part of the foundation, and vice versa.
In oss, I think you can make contributions in two ways: refine or invent. To do either of these you have to learn the past.
Even if all the only result is an exact clone of BeOS an entire group of developers will have learned a whole lot about something state-of-the-art at the time it was created. That's knowledge that was previously available only to a tiny group of people.
So many challenged people over here. I only said (my opinion) that humankind will be much better of if you use and improve something, but you insist on seeing something else. Do yourselves a favour and have some deep introspection folks, cause lots of people get in trouble for hearing and seeing things that are simply not there.
Not to knock Haiku OS—I just feel that if someone is going to create a desktop OS from scratch, it's a chance to do something really different. I see this as a missed opportunity.