BeOS Demo Video (1998) [video]
youtube.com
youtube.com
BeOS was really amazing at the time, especially in comparison to 'next generation OSes' like Windows NT, the vaporware that was Copland, Linux (which was unusable for mortals) or Solaris. It was clear to me that the future was going to look like BeOS or NeXT, but I could actually easily download and run BeOS on my mac. It was incredibly useable... I installed it and was able to use it for months. It just needed apps.
When Apple went with Jobs (and thus NeXT) I thought that made sense. But when I saw the early releases of Rhapsody I really thought they had made a huge mistake. BeOS was just so much better.
It's really fun to fantasize about what the world would have been like if BeOS made it big. There's still a lot of tech there that has not yet made it into desktop OSes.
Examples 1) CPM was so much better than DOS
2) Amiga was 7 years ahead of its time (Though the OS had a ton of bugs the first 18 months)
3) BeOS
4) We still deal with a corporate IT that is 90% Window shops for corporate desktops. (Though Windows has gotten MUCH better)
5) Gnome and GTK+ gained more mind share than KDE :) Okay that one is personal opinion but :)
I used to use Gnome in the Gnome 2.0 / KDE 3.x days. Even though I thought KDE was better, it simply wouldn't play nice with GTK and Gnome apps. Conflicting sound servers would crash, themes and widgets a mess between the two ecosystems, never-ending font issues.
'better' is a fuzzy term, what catches on 'is' the best, in some way, if that's the metric we observe. Everything that was 'better' failed in some regards, either came too early, wasn't aligned with mass market of users (lisp, smalltalk, sml), neglected some detail that wasn't a detail for the mainstream (why PHP instead of Perl), etc etc.
I spent the last 10 years wondering why so much beautiful things died in the past while we suffer subpar systems. And everytime there's a stupid indirect but perfectly valid reason. Less is more, or something of this kind. Nature.
Survival of the fittest doesn't really apply to human artifacts and especially to art and cutting edge engineering.
One technology that always gets forgotten in this saga was WebObjects. Had Apple actually released it for free it could've been the standard for all web applications built during that time. Absolutely nothing came remotely close to it. Instead it went on to inspire technologies like Hibernate and JSP/JSF which dominated early web applications.
In retrospect, it was good thing Apple bought NeXT, but they sure lost a lot of cool things in the transition to OS X. BeOS seemed like the OS that could have still competed if they had skipped "Internet Appliances" and gone for the sub $500 market. They could be performant on low-end hardware.
NeXTSTEP is the predecessor of OS X, the rest is history.
BeOS filesystem "BeFS" had extended attributes (metadata) with indexing and querying features similar to a relational database and Bill Gates' vision of "information at your fingertips". Though Microsoft failed to complete Cairo-OS as well as WinFS. The BeFS main developer wrote a book about it, as it is out of print now he released it as PDF for free: http://www.nobius.org/~dbg/practical-file-system-design.pdf , http://en.wikipedia.org/wiki/Be_File_System
Check out HaikuOS, an open source BeOS reimplementation: http://en.wikipedia.org/wiki/Haiku_(operating_system) . And there were two BeOS inspired OS: ZETA-OS and SkyOS with some shady history: http://en.wikipedia.org/wiki/Magnussoft_ZETA , http://en.wikipedia.org/wiki/SkyOS
Some of the BeOS vs. NeXTSTEP history is documented in Apple Copland OS article: http://en.wikipedia.org/wiki/Copland_(operating_system)#Canc...
Another interesting video is: https://www.youtube.com/watch?v=UGhfB-NICzg (In 1991 Steve Jobs' company commissioned an head-to-head programming competition to show how much faster and easier it was to program a NeXT computer vs a Sun workstation. The NeXT operating system went on to be the foundation for Apple's Macintosh OS-X about a decade later.)
Had he been more reasonable, Apple would have acquired Be Inc and based their next generation OS on BeOS.
I had a similar feeling when I tried Rhapsody DR1. Yeah, it was kind of cool and had potential but Be had a real working OS that was just waiting for that Apple polish.
In the end, Jobs and his vision were probably better for the long term health of Apple but at the time, I too thought that Apple was making a mistake.
I still like to muse about what could have been.
But the Wintel cartel was stronger than ever. Microsoft even settled with Be years afterwards for colluding to keep their OS off of any vendor computers. But that can't ever commit backwards into history what computing would be like if the best OS at the time had been given a fair shake.
Their aim was to be acquired by Apple and get the throne that OS X now occupies, and after missing that chance they were left a niche hobbyist OS for Amiga refugees looking for a new technically superior underdog to root for.
If I had to guess, I would say the real growth markets would be audio and video. Your claim that it was only ever a bid to be sold by Apple is a bit ridiculous, IMO. They needed to look for a buyer because they could not get a single preinstall.
The 'OS X throne' you are talking about was by no means a guaranteed outcome. It took almost a decade from the NeXT purchase to having real traction amongst Mac professionals.
My only point is that NO ONE can say for sure what would have happened if there were not a monopoly standing in the way, using illegal tactics to shoulder out potential competition.
Of course nobody can say for sure, but their chances didn't look good.
Also, Sheepshaver (sp?) was available on the PPC version, allowing Mac OS apps to run.
Ignoring POSIX compatibility. You have to remember that this was still Mac OS classic time, and a lot of Mac developers were interested in and porting to BeOS. I used R4.5 and R5, and there was already quite some interesting software for it from former Mac developers, such as Gobe Productive, the Pe editor, and if I remember correctly some AAA games around the same time Loki existed.
Thanks for the reminder (that I had forgotten about) of just one of the many actions they took that makes me wish corporate capitol punishment had been an option.
If I were BillG I'd be trying to philanthropize my heart out too.
In fact, it would have been interesting for someone like Adobe to buy Be, and become the de facto standard platform for most kinds of creative work. I can't imagine in that universe that there'd be a MacBook on basically every creative's desk, as there is now.
Or even the EU.
If you look closer at any industry you'll see cartels, monopolies, government support and skeweing what and who gets the money. Who gets payed and who doesnt. The best products do not win, the best companies do not win.
It seems the different vs USSR is the scale of the economy.
Because the presense of "cartels, monopolies, government support and skeweing what and who gets the money" doesn't preclude it being "capitalist" or "free market".
There's the abstract "capitalism"/"free market" and there's the concrete reality, which is that it goes hand in hand with these things and always had.
It's like Christianity -- in theory it's this perfect thing touting peace and love --, but in reality it's involved in everything from the crusades and the enslaving on native indians in the Americas to present day right wing bigotry.
Planned economy. The distinction private-public doesnt even make sense, with state subsidized private losses.
Its just a few groups of people controlling systems.
I was absolutely amazed at the ease of install, running the software and the powerful GUI. I even ran it for some months as my only OS, since it had a web browser and e-mail client and the dialup config was very straightforward.
After that time, I started missing a lot of software, especially browser updates, so I tried linux again and found that it had improved a bit, so I stuck with it.
But I'll never forget how probably the best OS at that time failed into misery for the lack of software and a bit of promotion.
Yes, pre-installed Windows (and the lack of drivers) used to suck back in the day, but BeOS was in an awkward middle point between being Microsoft and being Linux. I guess it was a bad time for that, it would have done better nowadays with an equivalent product.
"If you get this wrong, your monitor may become inoperable or explode"
BeOS was a consumer OS, and was denied any access to consumers. Ignore vertical dynamics if you want, but the writing is clear as day to me.
You were right about it being a consumer OS (other than the fiddly titlebars - too small!)
I remember running XConfigurator under RedHat 5 and taking days to get my rubbish VESA card working. Such was life without the Internet (or with £££ dialup). I thought GNOME1 looked squishy and nice but when you look back on it and the KDE2 screenshots, you realise how dated it was back in the days when mice with scrollwheels didn't exist.
When I looked into GNU/Linux for the first time, my options were twm, fvwm and OpenLook.
I ended up getting the job and worked there through the end of 2000. Even though it ended up imploding, it was a great experience. I learned an incredible amount and I'm still friends with a bunch of people I met there. Many of the people from Be ended up at Android.
This is a good story. I'd be curious to hear about things you learned that are related to unusual aspects of what Be was doing.
I became very comfortable with multithreaded synchronization, since BeOS was "pervasively" multithreaded to try to scale to multiprocessor machines. Multithreaded programming is more common now. All synchronization in BeOS was based on counting semaphores (which could acquire with a count > 1), which I think are still not super common.
There was a philosophy of simplicity that still resonates with me. For example, the scheduler algorithm used a simple exponential priority scheme that was easy to reason about intuitively. It was straightforward to get glitch free media playback. Many years later, I was trying to debug a glitch with audio playback on Linux. Each time it would glitch and someone would say "oh yeah, this other heuristic is kicking in, make these changes to the config." We'd do that, another glitch would happen, and they'd say "oh, these other two heuristics are interacting badly," this went on for like a month. I don't mean to bash Linux, because it is far more sophisticated now than BeOS was and handles far more use cases, but I miss the elegance and simplicity of BeOS.
The thing that I found most interesting was the chance to interact closely with experts from so many different domains. When I started there, all of engineering fit on one floor (I think there were around 50 engineers). For better or worse, almost everything was built in-house. There were people who worked on graphics, the windowing system, 3D, kernel internals, device drivers, filesystems, application frameworks, etc. Everything was in one source tree, so you could check it out, type make, and have a full OS image in a few hours.
I worked at Apple later, but there are thousands of engineers who work on MacOS, and you only get a chance to meet a small subset of them. There are hundreds of individual projects in their own source trees that are built individually and get pulled together by a complex mastering system. It seems almost impossible for one person to wrap their head around it.
The fact that so much was built from scratch might be part of the reason that BeOS felt so snappy: it hadn't accumulated much cruft.
When Be did the focus shift, we were in the midst of the next major revision of the desktop OS (which consequently was never released). Part of that was an overhaul of the user interface, which looked more sleek and modern, and was themable. The squarish tabs were replaced with a slightly inset title bar area with rounded edges. I don't know if any screenshots of that have survived.
There were many other things that we were exploring and talking about at the time, like putting transparency and animations in the interface, but the hardware at the time wasn't up to the task yet (there weren't real GPUs with shaders like we have today; the best acceleration we could get were opaque bit-blits, which weren't supported on all cards). Had Be been able to stick around longer, the interface would have been much different.
So, personally, I don't really get cloning the original interface. A lot has happened in UI world the 20+ years since BeOS was originally written. I guess I'm not that sentimental.
That said the work the Haiku team has done is impressive. It's a cool project and I don't want to sound critical of it.
The second part is really unfortunate IMHO, but hackers gonna hack..
[0] https://en.wikipedia.org/wiki/BeOS_R5.1d0
[1] http://qube.ru/files/images/beos_r51d0_on_amd_athlon_xp_1600...
I never really had hardware that could really use something like BeOS back then.
If you liked this then you should consider supporting the Haiku project. They are keeping BeOS alive.
I'm wondering though if anyone here can speak to how much C++ was used in writing the kernel? I've heard multiple stories...some say that all of it was very OO, some say it was C with classes kind of stuff.
Speedy too!
The BeOS driver for my 3c905 Ethernet card was buggy and about every other morning I'd wake up to find a dialog to the effect of "Your network driver has crashed. Click OK to restart the driver." It stunk to have a poor driver, but it was really cool that a bad driver didn't take down the system. A couple years later, I had a CD-R with some of my old financial records on it that got corrupted and would kernel panic Linux, Win2k, and OS X. These days, DVD and CD drivers should really be in user space.
Though, I was playing around with semaphores and found a way to reliably kernel panic BeOS, though the exact same source ran perfectly on Linux. Enough kernel panics and I slowly got filesystem corruption. One morning I woke up to my disk light being on. It spun all night and wore a visible track into the coating of that floppy. Both the floppy drive and the floppy were ruined. I used the vendor's version of tar to back up my data before reinstalling the OS. That's when I learned that all of the NetPositive browser bookmarks were stored as zero-sized files with the links in metadata that wasn't preserved by tar. When resizing the partition once, I learned that non-tar-preserved metadata was also what kept the userspace drivers from showing up in the BeOS task bar.
As much as it would have been cool to have OS X based on BeOS, QNX was much lighter weight and robust. Plus, the QNX Photon GUI subsystem was like X11 and Synergy on steroids. OS X is a lot of things, but the Xnu kernel is quite heavy, and it's not clear that it's possible to implement Mach ports in a lightweight manner. Both BeOS and QNX show it's possible to have a light weight high performance kernel that's isolated from most driver bugs.
People forget this, but Sun created a Java runtime for BeOS before Linux.
I agree about QNX though, it wasn't as stylish as BeOS, but it was far more robust and polished.
On the other hand, Mac OS X being NeXTStep is what brought many back to Apple world in those hard years.
I was at CERN when Apple used to visit us showing how Mac OS X was a good fit for UNIX developers, given its BSD heritage.
So the BeOS route might have meant failure to recover from their situation.
However as a fan of OS architectures, the alternative reality of a successful Apple with BeOS is quite interesting.
Sadly the "The Be Book" is not clear on what was supported, and I don't remember it any longer.
So I don't think Apple's business would have exploded like it if they bought Be Inc. However Be's core business was multimedia (like Apple's was per-OS X) and that industry has since felt a little neglected by Apple as they seem to be concentrating more on gadgets than power users. So if I had to speculate, I'd say Be Inc / Apple's business would have grown with the media industry and stayed more faithful to their core users.
I also think Apple would have consumed more of Linux's market share than it has done now because an Apple owned BeOS would still have retained, at least, partial POSIX compatibility meaning the leap from UNIX / Linux would be equivalent as it is now, but there would have been less fanboyism which was largely drummed up by Jobs to increase sales. I think, perversely, that has put many new users off from migrating to Apple from the FOSS community who want to use an open API without the corporate BS.
Lastly, I think Macs might have become the de facto standard web developers machine. Partly because of being more true to it's core multimedia business (and the web now being as much a multimedia platform as any other these days), partly because of it's POSIX compatibility meaning it would be trivial to run the same Linux / OS X develop tools, partly because of it taking business from Linux (see above), partly because I think Apple would have continued to allow 3rd party manufacturers to build Apple-compatible machine (IIRC that was one of the first things Jobs terminated when he rejoined Apple), and partly because Windows users would feel less threatened making the switch (BeOS always felt a less significant paradigm shift from Windows than OS 9 / OS X did).
So in short, I think OS X would have had a greater market share if Apple bought Be Inc, but I think Apple would have been less successful as a company since their biggest market at the moment is consumer gadgets (specifically the iPhone).
This is all just guesswork, obviously. But sometimes it's fun to speculate.
Steve Jobs at that time did not have the reputation he does now, or even had a few years later. Many people view Next as a business failure at the time. They were still in business, but relative to the huge investment they had gotten they were doing pretty poorly. There is a book written at the time, "Steve Jobs and the Next Big Thing." That sums up conventional wisdom circa that time.
The fact that they were considering Be and Next at the same time tells you that they were looking for an OS.
I wasn't suggesting that Apple shouldn't have bought nor released any new OS. I was speculating about a future where Apple bought Be instead of NeXT (hence my frequent references to Be Inc)
However on the (unrelated) points you raised, I do completely agree with you.
Two key android devs, romain guy and Dianne hackborn, were on beos.
BeOS was a great OS for experimenting SMP. The CPU monitor in the video would show you the loads for each CPU and you could click the left side to toggle a CPU on and off. You could immediately see frame rates drop and the remaining cpu's usage spike.
I ran multiple OSs: BeOS and Redhat Linux to do my CompSci work for school and then Win98 (which only supported one processor, of course) to play games, mainly Quake 2 and Tribes.
Parts of haiku remain impressive. Example, there's two performant message-bus mechanisms available via standard system calls:
* The flagship IPC mechanism is the BMessage. You can exchange messages unicast, or broadcast using BRosterm, or pub/sub with StartWatching/SendNotices.
* You can also treat the filesystem as an async messaging system using BPathMonitor. Yes, you can create RAM disks. They have FUSE as well.
It runs pretty well under VirtualPC. There's a trick to configuring the mouse to touchscreen once you've installed the seamless-mouse tools.
I'm happy Apple bought NeXT.
I remember talking to some Apple exec sitting next to me in the presentation room as some Be people finished their speech. I asked about their prospects and he said something like 'yeah its been tough for us but Gil Amelio is going to turn things around'. Gil had just joined as CEO back in February. I remember thinking that the guy didn't sound like he really believed what he was saying though - there was a a certain resignation, or just a moment where he didn't feel he had to keep the 'everythings great' performance up for a high school kid. After the NeXT acquisition I remember thinking about this guy and that he probably didn't have a job anymore. Who knows, maybe that was actually Jonny Ive.
At the conference there was a whole group of Apple people checking things out and talking to everyone. I don't remember if it was public knowledge that they were negotiating with Be at the time, but it was no secret why they were there. There was a lot of excitement among the developers there, but also a lot of trepidation - there was just loose talk of being useful for really specialized AV fields but no path or believable / clear idea of how this could go to mass market. Even a 15 year old knew that. Plus, Microsoft was unstoppable back then. A fair amount of talk among the devs was about how this could be the next Apple OS, and I think that's what excited people. But everything hinged on acquisition.
Afterwards I think I exchanged a few emails with Dominic, because I was interested in BeFS. I didn't really know how to talk to him so I think I just offered him access to my mp3 server. Meanwhile when I got back to the mac user group, I installed the developer preview CD on some PowerComputing macs we had and they just transformed into beasts. BeOS was otherworldly, using it felt like you were 5 years in the future but in an alternative universe (full of tiny yellow title bars). Because all of the apps were just apps to show off Be's capabilities, it was also vaguely reminiscent of the 90s demoscene, with Be one-upping Future Crew by dropping an entire OS.
History shows NeXT was the right move. But Be... they were something special.
I remember pitching it to my co-workers and praising its ability to still play multiple movies smoothly in a dragging window even with other tasks running in the background, which at the time was really cool considering same hardware Windows/Linux could not. And to this day, it had my favorite all-time newsreader (can't remember the name but it was threaded news that used multiple windows)
In the end, it just didn't the apps and the world was Microsoft centric and this thing called "Linux" was the buzz, along with Apple gaining ground.
Buying a BeBox was one of the best things I ever did. I took out a loan for about $2,000 from my bank to get one and start writing apps. Not a lot materialized out of it financially but the experience was invaluable. I met a lot of people from the community that I still chat with to this day.
Be, Inc had some really good ideas.
It still blows my mind how good the OS was. Could deadlock the entire system, but I'll be damned if your CD was going to stop playing perfectly. Not even a skip.
If BeOS had simply released its source early on it might still be very much alive and healthy today. Given that it achieved on the desktop what Linux still has not, it might have bested Linux in at least the desktop arena. It's main mistake was trying to make it in the proprietary OS market, up against both Microsoft and Apple. Certainly after Apple had failed to buy BeOS, their next best bet was transform BeOS into a GPL or BSD-licensed project.
Now, we have Haiku OS, but it is a bit late, and can only ever be an approximation of the original experience / API.
BeOS is the only OS which implemented the same UX of unix pipes in a way that actually made sense in a graphical environment.
I feel like even today, we are not seeing the true possible performance of our hardware due to all the "sediment layers" (as Jean-Louis Gassée put it) of our popular OS'es. We're also not seeing the possible reliability and security, either.
I kid, but only a little.
Twenty years later and why doesn't my computer come with a 3D mixer already?
That and OS/2.