In the Round: Haiku Alpha Released

It’s tough to walk without strings

While 1990 was the year when the United Kingdom and France were connected to one another for the first time since the last Ice Age, it was also the year when Jean Louis Gassée, head of Apple’s advanced product development and worldwide marketing, and Apple CEO John Sculley had a major falling out, resulting in Gassée leaving the Cupertino company. Apple employees picketed outside of the company’s main building, petitioning management to retain Gassée.

Those employees did not get their way, and with the magical powers of hindsight, I’m happy they didn’t. It did not take Gassée long to form a new company, called Be, Inc., together with Steve Sakoman, developer of Apple’s Newton. The goal of Be was to create not only a new hardware platform, but also a brand new operating system, not tied down by backwards compatibility, and designed for the future of multiprocessing.

A story which is most likely nothing more than a legend tells the tale of Gassée and Sakoman going to Fry’s the day after leaving Apple to buy the parts to build the first BeBox prototype. The BeBox would be based on AT&T’s Hobbit processor, and over the course of the coming year, the prototypes would gain additional components, including additional Hobbit processors. At the end of 1990 and the beginning of 1991, several other ex-Apple employees joined Be, Inc. Benoit Schillings, one of the key BeOS developers, was probably the only one who didn’t come from Apple during that time.

With the hardware slowly starting to take shape, it was also time to start working on the software side of the equation. The original plan was to buy an operating system, but the company had a hard time trying to find a suitable candidate. ChorusOS was deemed suitable, but the price was considered too high, and talks between Be and Chorus Systèmes eventually broke down. From that point onwards, the operating system would be designed in-house.

Around 1992, the operating system consisted of a multiprocessing and multitasking kernel, and a command line shell capable of launching applications – it didn’t yet sport graphics support or a windowing system. The NeWS windowing system was considered, but in the end, the company decided it was too complex, and Benoit Schillings’ own windowing system was selected as the obvious choice; Schillings optimized it for the Be kernel and the Hobbit BeBox, leading to excellent performance.

Development on all aspects of the soft and hardware continued steady through 1993, but in 1994 Be hit a setback: AT&T discontinued its Hobbit processor line due to lack of demand. This meant that the BeBox, which was now using two Hobbit processors and 3 AT&T DSPs, as well as the operating system, had to be altered to accommodate a new processor architecture. The PowerPC was chosen over the Pentium, a decision shrouded in mystery, but certainly not unanimous.

One name stands out when it comes to Be’s transition from the Hobbit to the PowerPC: Joseph Palmer. More or less single-handedly, he designed the PowerPC BeBox, using the standard ISA and PCI buses. It was based on the PowerPC Reference Platform and a PC I/O system – something which wasn’t welcomed by everyone, as the PC I/O system in the BeBox was considered aged. Joseph Palmer defended his decision by telling a story of how one day, while working at Apple, he realized that what made the Mac the Mac was the user experience of the software – not the hardware.

When I designed the BeBox I used the PREP design and a PC I/O system. We didn’t have the resources to invent a better DMA controller, so we didn’t. Guess what? The PC one worked well enough. Would the BeBox have been “better” with a new DMA architecture? Yes. Would the end user have been able to tell? Probably not, but the delivery schedule would have slipped. End users notice that.

The history of the BeBox name is a bit clouded, but it appears to have stuck more or less by accident. “The Hobbit/DSP machine had been called the Be-1, and for a time we were calling the PPC machine the Be-2, and sometimes the BeBox, and over time ‘BeBox’ just stuck,” Palmer recalls.

Of course, the software had to be ported over the new architecture as well. The core of the system was ported by Bob Herold and Cyril Meurillon, while the pieces higher up the stack continued to be developed on the Hobbit machines. It wasn’t until Palmer showed up with new PowerPC machines when thanks to a new compiler, the higher level components could be simply recompiled. This was also the time when Brad Taylor implemented the TCP/IP stack and the FTP tool.

In 1995, the time finally arrived to reveal the BeBox and its operating system to the world. The first public demonstration was held at Agenda ’95, and it was nothing short of a smashing success. The BeBox received a standing ovation from the crowd, and developers started pouring in, eager to order development BeBoxen. The fast and nimble BeOS displayed a multitasking prowess Windows and the Mac could only dream of; this was a time when Windows 95 had hit the shelves only a few weeks earlier, and when the Mac didn’t even have preemptive multitasking or protected memory.

In fact, I’d argue that even today, Windows, Linux, and Mac OS X do not even come close to the smoothness and responsiveness of the BeOS, despite all the processing cores, graphic cards, and gigabytes of memory we throw at them. But I digress.

Back on topic, the unveiling at Agenda ’95 proved to be a turning point for Be, which had seen financial hard times. Thanks to the overwhelmingly positive response, investors were standing in line to help the company, and by the end of 1995, Be had shipped more than 100 BeBoxen to developers.

In 1996, the BeBox received its first (and only) hardware upgrade. The dual 66Mhz model was replaced with the dual 133MHz model, which sported better 603e PowerPC processors. A quad processor BeBox was also designed by Joseph Palmer, but never made it beyond the prototype stage. This was also the year in which the BeOS received its name; a contest was held, but in the end, the company decided to keep it simple, resulting in the Be Operating System.

From here on out, things started going downhill for Be. In January 1997, they announced the end of the BeBox production, and transitioned from a hard and software company to a strictly software-based operation, and the BeOS would run on Apple’s Macintosh machines and its clones. Power Computing went as far as bundling the BeOS as an optional install on their machines alongside the Mac OS.

In the meantime, Gassée was negotiating with Apple, since Apple needed a new operating system to replace the aging Mac OS. Apple first tried to update the Mac OS to include a number of advanced features such as protected memory and preemptive multitasking, a project called Copland, but this failed. They then decided to simply buy a new operating system, and the BeOS seemed like a logical choice, but reportedly, Gassée wanted 400 million USD for Be, whereas Apple didn’t want to offer more than 125 million USD. The deal fell through, Apple bought NEXT for 429 million USD, and got Steve Jobs as a package deal.

More troubles appeared on the horizon as Steve Jobs ended the clone program in 1997, and also refused to give out what Be deemed critical information to run the BeOS on Apple’s new G3 machines. Be was forced to port the BeOS to the Intel architecture, resulting in BeOS R3 in March 1998, the first release running on both PowerPC and x86.

However, BeOS wasn’t welcome in the land of x86 either. These were the days when Microsoft was at the very zenith of its power, with OEMs jumping whenever the company told them to. Be claimed that Microsoft actively prevented OEMs from selling machines with the BeOS pre-installed, and as we all know by now, they were probably right. In 2002, Be filed suit against Microsoft about this, but this case never went to trial as it was settled in September 2003. Microsoft paid more than 23 million USD to Be, but admitted to no wrongdoing. And I have a unicorn.

BeOS would ultimately die a sad and lonely death; not even a free, stripped-down version could turn the tide. What was once (and still is, in my book) the best operating system ever made ended up in the hands of Palm, of all companies, and later made its way to Access (who?), where it still lingers around in a janitorial closet somewhere in the basement.

The BeOS deserved better. Had it been given a proper chance to compete with Windows and the Mac, it would’ve torn them to shreds. I sincerely believe that both Apple and Microsoft were truly afraid of the BeOS, hence the attempts at nipping it in the bud. Be, Inc. was probably the last company which attempted to compete head-on with Apple and Microsoft in the operating system business, and with its demise, something died in this industry. A process which had started with the deaths of the various non-Apple/Windows platforms from the ’80s, ended in the early 2000s with the closing down of Be.

The operating system industry has not been the same since. Instead of new operating systems being greeted with enthusiasm and joy by us geeks, they are met with skepticism and apathy; you can’t compete with Windows anyway, so what’s the point?

It’s a sad state of affairs.

136 Comments

  1. 2009-09-14 6:39 am
    • 2009-09-14 8:24 am
      • 2009-09-15 1:15 am
  2. 2009-09-14 6:45 am
  3. 2009-09-14 6:52 am
  4. 2009-09-14 6:58 am
  5. 2009-09-14 7:08 am
  6. 2009-09-14 7:30 am
    • 2009-09-14 8:28 am
    • 2009-09-14 10:08 am
    • 2009-09-14 6:19 pm
  7. 2009-09-14 7:34 am
    • 2009-09-14 8:17 am
    • 2009-09-14 8:57 am
  8. 2009-09-14 7:39 am
  9. 2009-09-14 7:40 am
    • 2009-09-14 6:52 pm
  10. 2009-09-14 7:52 am
    • 2009-09-14 8:05 am
    • 2009-09-14 8:14 am
      • 2009-09-14 8:28 am
        • 2009-09-14 11:15 am
        • 2009-09-14 2:15 pm
  11. 2009-09-14 8:47 am
    • 2009-09-14 11:05 am
  12. 2009-09-14 8:54 am
  13. 2009-09-14 9:19 am
    • 2009-09-14 9:55 am
      • 2009-09-14 10:22 am
        • 2009-09-14 10:39 am
          • 2009-09-14 2:48 pm
        • 2009-09-14 12:48 pm
          • 2009-09-14 2:00 pm
    • 2009-09-14 11:09 am
      • 2009-09-14 12:52 pm
        • 2009-09-14 7:19 pm
          • 2009-09-15 2:46 am
          • 2009-09-15 5:29 am
          • 2009-09-16 3:18 pm
          • 2009-09-15 2:28 pm
  14. 2009-09-14 10:16 am
    • 2009-09-14 3:04 pm
      • 2009-09-14 5:21 pm
      • 2009-09-14 8:02 pm
  15. 2009-09-14 10:32 am
    • 2009-09-14 11:10 am
    • 2009-09-14 3:11 pm
      • 2009-09-14 6:19 pm
        • 2009-09-14 10:33 pm
    • 2009-09-14 7:07 pm
      • 2009-09-14 10:40 pm
        • 2009-09-15 11:20 pm
    • 2009-09-14 8:13 pm
      • 2009-09-14 8:25 pm
      • 2009-09-14 8:51 pm
      • 2009-09-14 9:04 pm
  16. 2009-09-14 11:25 am
    • 2009-09-14 1:42 pm
      • 2009-09-14 2:02 pm
    • 2009-09-14 1:47 pm
    • 2009-09-14 1:57 pm
  17. 2009-09-14 11:40 am
  18. 2009-09-14 12:01 pm
    • 2009-09-14 12:28 pm
  19. 2009-09-14 12:40 pm
  20. 2009-09-14 12:48 pm
    • 2009-09-14 1:23 pm
  21. 2009-09-14 12:54 pm
  22. 2009-09-14 1:20 pm
  23. 2009-09-14 2:37 pm
    • 2009-09-14 9:44 pm
      • 2009-09-15 12:41 am
      • 2009-09-15 11:31 am
        • 2009-09-15 1:00 pm
        • 2009-09-15 2:04 pm
          • 2009-09-15 5:28 pm
      • 2009-09-16 12:28 am
    • 2009-09-15 6:41 am
  24. 2009-09-14 2:52 pm
  25. 2009-09-14 2:57 pm
    • 2009-09-14 8:58 pm
      • 2009-09-15 2:31 am
        • 2009-09-15 2:46 am
          • 2009-09-15 3:09 am
    • 2009-09-15 6:02 pm
  26. 2009-09-14 3:37 pm
  27. 2009-09-14 4:35 pm
    • 2009-09-14 8:59 pm
  28. 2009-09-14 4:38 pm
    • 2009-09-14 8:46 pm
  29. 2009-09-14 4:44 pm
    • 2009-09-14 6:09 pm
  30. 2009-09-14 5:40 pm
    • 2009-09-14 5:56 pm
  31. 2009-09-14 6:11 pm
  32. 2009-09-14 6:39 pm
    • 2009-09-15 12:55 am
  33. 2009-09-14 6:49 pm
  34. 2009-09-14 7:31 pm
  35. 2009-09-14 7:51 pm
  36. 2009-09-14 8:32 pm
    • 2009-09-15 12:59 am
      • 2009-09-15 1:38 am
        • 2009-09-15 1:49 am
          • 2009-09-15 2:27 am
  37. 2009-09-14 8:57 pm
  38. 2009-09-14 10:44 pm
  39. 2009-09-15 12:39 am
  40. 2009-09-15 1:44 am
    • 2009-09-15 1:48 am
  41. 2009-09-15 2:58 am
  42. 2009-09-15 3:06 am
  43. 2009-09-15 6:40 am
    • 2009-09-16 2:18 pm
    • 2009-09-17 3:00 am
  44. 2009-09-15 8:01 am
    • 2009-09-15 9:31 am
  45. 2009-09-15 12:50 pm
    • 2009-09-15 5:30 pm
  46. 2009-09-15 1:12 pm
  47. 2009-09-15 2:01 pm
    • 2009-09-15 3:06 pm
    • 2009-09-15 5:01 pm
      • 2009-09-15 6:38 pm
  48. 2009-09-15 2:41 pm
  49. 2009-09-15 9:42 pm
  50. 2009-09-15 11:49 pm
  51. 2009-09-16 3:20 am
    • 2009-09-16 2:43 pm
  52. 2009-09-16 10:33 am
  53. 2009-09-16 2:34 pm
  54. 2009-09-16 3:21 pm
    • 2009-09-16 5:49 pm
      • 2009-09-16 8:29 pm
  55. 2009-09-17 4:48 pm