I vividly remember being in an airport when this announcement hit the news, waiting to catch a plane to go home for the holidays. And thinking "huh, bad move, they should have bought Be instead."
I’d love to get a peek at the alternate universe where they bought Be instead and see how it worked out. Obviously NeXT worked out really well for them and Be would have a tough time matching that success, but who can say for sure?
It would have been interesting. One of the driving factors for me with Apple's acquisition of NeXT has been the underlying Unix support. I've been using Mac OS since System 5, primarily in desktop publishing. Having that Unix subsystem opened up a whole new range of opportunities for the Mac in ways that I think would have been hard for BeOS to compete with. I agree a peek would be interesting, particularly the multi-tasking, but I think more for curiosity's sake than anything else.
Thing is, if they'd bought Be they wouldn't have got Steve and, whatever you may think of him, I suspect that's the real X factor [1] that ensured their success.
Jean-Louis Gassée is on the record saying Apple made the right choice.
Gil Amelio thought the 20th Anniversary Macintosh was really awesome and clones were a good idea.
With (seriously cash strapped) Apple doubling down on Multimedia on rebranded BeOS as a licensed OS for Clones, they would have gone head-to-head with the entirety of the PC market that already had a taste of BeOS.
BeOS was quick and fun, but barely had a TCP/IP stack. See BONE.
Apple probably would have switched to Intel earlier.
My BeBox running BeOS5 has been happily participating in TCP/IP (v4) communications on my home Ethernet network for twenty years. (Admittedly it’s off most of the time these days because I’m concerned about the health of the hard-drive, but still.) It even ran a web-server for a decade with uptimes measured in years.
(I had an amateur radiotelescope wired up to the GeekPort and exposed the controls over HTTP. I’ve long since retired that setup in favour of a modern SDR linked to a Raspberry Pi 3.)
I get the feeling Jean-Louis Gassée would have probably pushed out the existing management the same way Steve Jobs did, but I just don't think he would have been successful at reviving the company.
I had both BeOS and NeXTSTEP and pretty much left BeOS to sit while NeXTSTEP was my daily driver (along with a Windows NT machine because IBM was problematic with OS/2).
I am more interested in the post-NeXT acquisition Apple with Gil Amelio and later Ellen Hancock as CEO. Thinking about it, the path without Steve Jobs of "CHRP" and maybe eventually open-sourcing OS X completely would probably work better in a world where PC manufacturing was not outsourced to China.
Why they chose Next over Be is an interesting lesson itself.
I still can't remember the technical merits of the Be operating system. Someone tried to get me to use it back in 1999, but there were no applications worth using.
Because the Unix nerds told them that if they wanted a rock solid workstation OS to replace legacy-MacOS (which was getting very long in the tooth at that time), it would be a good idea to have something BSD/NextSTEP based rather than whatever BeOS was.
If you look at OSX v10.0 it's pretty obvious that it's NeXTSTEP with a MacOS-looking GUI slapped on top of it. They've been incrementally upgrading and developing it since then.
BeOS was very interesting, but one thing it was not was anything close to a BSD/Unix platform.
At the time I was (coincidentally) using NeXTStep at work and a BeBox at home, and I have a bit of extra perspective to add.
You are quite correct that NeXT was undoubtedly, upon close inspection, the ‘superior’ OS (UNIX lineage, stable, multi-user, etc.) but as a user (and sometime programmer) it wasn't that evident: my relatively cheap dual-604e BeBox outperformed my dual PentiumPro NeXT machine by a significant margin, or rather, felt like it did because the “pervasive multitasking” made the system extraordinarily responsive, and the lack of legacy code and backwards compatibility definitely kept the system snappy and lithe. Multi-user support didn't really change much from the user perspective either, as security was something of a remote concern and running any kind of ‘server’ on one's desktop was pretty exotic. BeOS was POSIX compliant to a degree such that many people still (erroneously) believe that it is a Unix or Unix-like, and you could run all the open-source command line tools you could possibly want. The BeFS filesystem's metadata capabilities were extraordinarily, and I liked both UIs equally (the etched vs. graffiti aesthetic legacy has etched itself into my neural circuitry), but probably NeXT was more innovative in terms of user interaction and rendering model whereas BeOS basically aped Windows and Classic MacOS quite closely. NeXT's development tools and environment were clearly superior. It was comparatively a resource hog.
So yes, there was a technical edge, and probably knowledgeable influencers at the upper echelons of power probably recommended as such. But at the time I had the feeling that Jean-Louis Gassée (the founder and CEO of Be Inc.) significantly overplayed his hand, and made ridiculous demands because he thought he had Apple cornered by virtue of their failed OS development attempts, growing obsolescence, and perceived lack of serious alternatives. There's the diffuse feeling that Gil Amelio (Apple's then-CEO) eventually grew weary of batting back the demands and started looking for apparent alternatives just as a means of introducing some competition to the negotiations, and eventually the plonked for NeXT much to everybody's surprise. He even made a droll remark about “choosing Plan A rather than Plan Be” or something to that effect. All things considered, it was a very counterintuitive decision, mainly because NeXT had such hefty resource requirements and we hand't quite yet absorbed the implications of Moore's Law (or rather, were used to Microsoft squandering any and all increase in hardware performance with increasingly inefficient code, leading to no perceivable improvement year over year). Amelio deserves more credit for having seen through all of that and made a brave, surprising, and obvious-only-in-hindsight decision that favoured a mature, stable, and extensible platform.
At the time I felt it was an utter mistake, but I was fourteen, and pretty ignorant of the ways of the world. I think history speaks for itself. Amelio deserves more respect for the decision he made, because it was ultimately his decision that led to adopting the superior, extensible technology, and of course brought Steve Jobs back on board (who promptly stabbed him in the back and ousted him in a boardroom coup).
I had a brief flirtation with Windows NT4/2000/XP in 1999-2003, but then I switched to OSX 10.2 on a dual PowerMac G4 and have never looked back since. Only of late have I started to feel that as Apple's focus has switched to iOS on mobile devices they've started to let their development effort and quality control really slip to borderline-unacceptable levels. I can understand that OS X is no longer the enabler for high-margin computer sales it once was, and that that role has passed on to iOS, but OS X (macOS of late) is the platform where the apps that form the bulwark of the iOS ecosystem get developed. Apple really shouldn't let the desktop OS languish or endure ...
Totally wild guess, but possibly faculty kid of somebody who worked at a university with a major EE/CS department, many of which had NeXT workstations at the time. NeXT workstations were really expensive and showed up in all sorts of places like astronomy departments. Same general environment and reason why Berners-Lee's workstation at CERN was NeXT.
Very close: my mother was an academic statistician and had a faculty NeXTCube at home that at one point she developed some business models for my father in Mathematica on. After she passed away the machine went back to the faculty but my father wanted to be abler to continue using the models he had come to understand and rely on, so he bought a NeXTStep-capable machine, licensed Mathematica and S on it, and roped me in since I was the most mathematically inclined in the family and was able to get a grip on how they worked, keep them up-to-date, adapt them when circumstances changed, and even improve them sometimes.
Family business owned by my father (at the time). My mother had built a lot of business-related models for him on Mathematica running on her work workstation (a NeXTCube) . She passed away. I was the only person that understood anything about them so I was roped in to cope with them. A few years down the line the Cube (a 68030) became too slow and a succession of more powerful machines were purchased, up to a dual PentiumPro.
It’s kind of an odd story, my use of ’work’ needed some explaining but I thought it would slow down the discussion to go off on a tangent lot narrate this story.
Clarification: the last machine wasn’t a NeXT machine with PentiumPro processors (no such machine ever existed, they never even graduated beyond 68040 processors), but a machine that ran NeXTStep/OpenStep. It was a NEC Express 5800/130Pro with two 200MHz PentiumPro machines and 256MB of RAM.
Be was designed to be lightweight and parallel. It was optimized for many threads and the API pushed you to embrace threading. It also had pretty decent scheduling for media stuff. Not quite real-time OS, but closer. It was screaming fast and responsive.
The catch is that it was much less mature. It was single user and had very little real security. It had basic Posix support, but NeXT has much more rich BSD-ishness.
By 1999 it was too late. They'd already transitioned to x86 and that was their death knell. At the time most hardware would provide drivers only for Windows which meant that other OSs needed to create their own.
This sorta-kinda worked for things like Linux where the masses would crowdsource them, but for a commercial OS like BeOS they had to spend a ton of time working on this instead of the actual OS.
My recollection at the time was as soon as they entered into this phase the forward progress on BeOS itself ground to a halt, and within a few years the mainstream OSs had started to at least pay lip service to its key features. Any momentum they had was completely lost.
By late 1999 it was also too late because Microsoft had taken NT4.0 Workstation, put a much better GUI on it and made it even more stable and reliable, and released it as Windows 2000. It was pretty regular to see Windows 2000 workstation machines with uptimes of 25+ days, which was unheard of in the consumer Win95/Win98/Win98SE era. You could actually kill a misbehaving application and not risk crashing the whole OS.
I concur. In my opinion, Windows 2000 was the best version of Windows. It had a very clean interface, and it was a very stable operating system. It also lacked the annoyances of later versions of Windows, such as activation, mandatory updates, and telemetry. It was everything I ever wanted from an operating system, and honestly, even though I'm a Mac user, I'd use an updated version of Windows 2000 if Microsoft ever decides to make one. I've been keeping an eye on the ReactOS project for this reason.
Fantastic preemptive multithreading, especially for the time. The file system (BFS) was basically a database, with metadata capabilities that allowed applications to store their data in files and open up their data format (after a fashion) to any other application.
Want an MP3 player? Don't need to open the files and get their ID3 tag info, it's in the file system. You can query it with "filetype:mp3 artist:bach" or whatever and you'd get a list, updated when other songs files were added or changed, of all mp3s meeting your requirement. Same for any other document. Contacts can be stored the same way, rather than hidden away inside an arbitrary file format you can store them with each bit of info as metadata (query on the phone number and find everyone associated with it), email, anything. The real benefit of this filesystem-as-database approach was that it breaks the data silo situation you find in many (most?) other OSes.
Downsides were the dearth of applications, being single-user, and for a time being PPC only. Opening it to x86 opened it up to many more users, but then the OS became the product (instead of the BeBoxes they also sold) which was much lower price and profit. It was a POSIX-compatible OS (good), but not really a Unix in the way users of Unix would expect. This did make porting of applications a bit easier, though.
They were also crippled by Microsoft's actions with Compaq (HP?), where MS threatened to change the favorable licensing costs for MS Windows if they sold BeOS on their computers.
I was never too sure about the POSIX compatibility being a good thing. Sure, it meant that BeOS got more software more easily from other (Linux) sources. But it meant that people didn't write for the OO API, POSIX threading was worse, as were a lot of other things.
Since things were then just ported to Be rather than written directly for it, it kinda felt like POSIX compat was Be in its death-throes.
I bought in at R3/3.1, and I regretted it since as it was just a sad slow slide after that :(
BeOS had multithreading back when that was fairly new for consumer hardware. It was great for media purposes but the OS itself wasn't particularly well-developed at that point and Be wouldn't drop its overblown asking price, so Apple went with NeXT, and the rest is history.
BeOS is a really neat little OS. I like it a lot, I often wonder how different things would be if they had taken that direction.
For what it's worth, I think AmigaOS was superior to BeOS in pretty much every way, even as soon as the early 90s.
Basically, AmigaOS 1992 was a more advanced operating system than BeOS 1997. Pity Commodore completely squandered their opportunity and Windows 95 killed them dead.
AmigaOS was cooperatively multitasked whereas BeOS was preemptively multitasked, and I don’t think AmigaOS has memory protection (BeOS certainly did). AmigaOS didn’t support multiprocessing either, if I’m not mistaken. The BeFS filesystem was a pretty impressive marvel in terms of metadata and Amiga certainly lacked anything even remotely similar.
BeOS did some tricks with the MMU to catch overruns but didn't have proper memory protection (in 1999 anyway, when I last used it). Any app could scribble on the kernel and hardware devices.
This was part of why the graphics felt so flippin fast: appkit just wrote to the GPU & framebuffer itself. No need for any context switches.
That’s not what I remembered, but upon reflection you’re probably right since lack of multiuser support is difficult to reconcile with a true protected memory model. I’ve still got The BeOS Bible on my bookshelf so I’ll go have a read through the relevant chapters and take a trip down memory lane (ahem) just for nostalgia’s sake.
Haiku, BeOS' open-source successor, has proper memory protection and we're still "flippin' fast" when our latency is compared to literally any other OS, so that wasn't the sole reason at any rate.
That's incorrect, AmigaOS had been fully preemptively multitasking since Kickstart 1.0, in 1985. It took Windows ten years to get preemptive multitasking and Mac even longer.
You are right that AmigaOS never got protected memory, though.
Actually, AmigaOS had preemptive multitasking in 1985. It did lack memory protection, however. I learned C on the Amiga. It made you pretty careful - dereference a bad pointer and you got a "Guru Meditation" error, followed by a reboot.
I never used AmigaOS and despite broadly fitting the demographic I never actually even saw one until a couple of years ago. I should’ve learnt long ago not to make statement about things I don’t know much about. Thanks for the correction.
It was a fun platform, especially in the early 90's! Over 20 years later, people are still trying to keep it going... Check out the "Vampire" and "Apollo Core" projects if you have a chance.
Be's use of C++ (at the kernel/library API/ABI level) would have doomed it in the long term IMHO. There have been several incompatible C++ ABI bumps since then, all of which would have broken compatibility. See the current Be clones which still have to use an ancient version of GCC to not break compatibility with existing software.
NeXT's ABI interfaces (C and ObjC) were and are much more stable.
(I'm not saying don't use C++, just don't use C++ and expect a stable binary API. You need to wrap it in a C API instead unfortunately. There's too much magic in C++ to have a stable ABI and still be able to evolve the language.)
This is a great point. I understand why a C++ ABI is so hard to keep nailed down, but the inability to do so has really hampered adoption of C++ as a true “system” language.
The first two are not really OSes and don't offer binary compatibility (they require recompile-the-world). And Symbian is dead, perhaps partly due to C++'s brittleness.
You're missing the point. The problem isn't using C++ internally in the OS -- it's exposing public C++ APIs. Because there's no stable ABI, that creates a dependency on the specific compiler.
That's exactly what happened to BeOS and Symbian. Both were stuck at GCC 2.95 for many years after mainline GCC was already at version 4.x.
There's a ton of C++ in macOS/iOS, but it's wrapped to plain C for the public userland APIs.
Symbian wasn't dead in 2007. It was the world's leading smartphone OS and shipped in tens of millions of devices yearly.
Symbian's inability to upgrade the platform to modern compilers definitely was one factor in its failure to gain developer mindshare, and the C++ ABI was the reason for that. They had painted themselves into a corner with a '90s C++ embedded dialect and had no easy way forward.
I'm curious -- which modern OS exposes a C++ API and is "doing pretty ok"? I can't think of any.
No, but no serious OS company migrates to a 4.0 compiler just when it gets released, rather a few years later when it has been proven in the field, by then it was too late.
Migrating to a new C++ ABI wasn't in any way related to Symbians downfall, internal politics were.
As for OSes ARM mbed, Windows all new APIs since Vista are based on COM specially anything UWP related, GenodeOS, Arduino bare-metal libs, IncludeOS.
"Unlike C++, COM provides a stable application binary interface (ABI) that does not change between compiler releases.[3] This makes COM interfaces attractive for object-oriented C++ libraries that are to be used by clients compiled using different compiler versions."
The others seem to be mostly embedded kernels or unikernels which will be tightly linked into your code anyway, so there's no issue of ABI incompatibility with those.
There is no such thing as Language X ABI, rather OS ABI or compiler ABIs.
COM is built on top of C++ VTBL implementation on Windows, UWP extends COM by supporting generics as well.
As for the other OSes, it is irrelevant where they are used, the fact is that they are exposing C++ APIs not C ones.
As matter of fact, had GNU/Linux not taken over the OS world and FOSS projects, and C would be pretty much history by now.
Mac OS, BeOS, Symbian, OS/2, Windows were all adopting C++ APIs when GNU/Linux started to gain adoption, with its manifesto to focus on C for GNU software.
Lots of good answers here. All I will add is that Mac OSX was dog slow for years, from Rhapsody through till 10.2 (which I still thought was slow but was at least usable). BeOS running on awful hardware felt lightning fast and responsive in comparison. Of course, Apple without His Steveness would be an entirely different proposition
I can’t find a source for NS meaning NeXT and Sun either in the article you linked or elsewhere (sorry if I missed it). I get there was a name change associated with OPENSTEP, where the prefix changed from NX- to NS- and makes some sense because otherwise wouldn’t the prefix change for OPENSTEP have been something like OS- or OP-? I’m just wondering about the source for this. It would be interesting to hear from someone privy to reasoning behind choice of prefix.
This Wikipedia article [0] mentions both, but doesn't conclude. Would be interesting to hear from someone who was actually there to settle it; I haven't been convinced of a consensus either way.
I learned to program NeXTSTEP on NeXTSTEP 3.x at NeXT’s weeklong developer training camp. The API had NS prefixes, both in the files and the developer books. The first OpenStep release was 4.0.
Yeah, I pretty sure that the NX -> NS transition was before OPENSTEP (NeXT & Sun) and corresponded with retain-release. I too started with 3.x and it was NS then.
I was leading the AppKit group at NeXT at the time, and "NS" definitely came before the Sun relationship, referring to NextStep (or NeXTSTEP, the spelling changed every release). I distinctly remember our team expecting we'd have to suck it up and change the prefix to something more neutral when the Sun deal was made, and then being surprised that they didn't seem to care when the spec was discussed. Maybe the alternate interpretation of "NeXT and Sun" satisfied them, but I don't remember that expression ever being commonly used, and it was not the original basis for NS.
Really?! I knew it had been used originally, but I assumed it had been rebuilt with something new back when Apple deprecated WebObjects in 2009... I'm amazed they're still using it.
You shouldn't be that amazed - WebObjects is still very much very awesome. And it's practically an open source framework these days, with new development happening in Project Wonder. But the barrier of entry is a bit high due to lack of documentation, although the community is very helpful on the mailinglists.
Well, I think that was a huge part of the point of the acquisition.
Apple knew for a long time it needed to replace classic Mac OS, which didn't have modern OS features. It started the Pink project internally to make a next-generation operating system, and eventually in the early to mid 90s, that got spun out into Taligent, the joint venture between Apple and IBM (and later others).
Then Taligent didn't pan out for a variety of reasons. Specifically why is another question, but here it's sufficient to say that Apple decided it certainly wasn't the direction they wanted to go. Taligent ended up being handed off to IBM and repurposed as a rapid app development tool that sat on top of other operating systems (AIX, I guess, mainly) instead of a standalone operating system.
As I recall, Apple may have tried to internally do its own second attempt at a next-generation operating system, essentially a competing project to Taligent, but that didn't work out either.
So that left Apple in the mid-90s but still stuck on an operating system that was rooted in the 1980s and really, really showing its age. And a lot of it was Motorola 68k only (it was never meant to be portable), but Apple had already started to make the shift to PowerPC CPUs. So there was another reason it was time to start fresh.
After at least one if not two failed attempts to come up with their own next-gen OS, here was this company founded by a former Apple luminary, with an operating system sitting there ready to go. NeXTSTEP was already portable enough to run on both 68k and x86 at that time, and once you've got two platforms, you can have pretty high confidence that a third (PowerPC) would be feasible. And I don't think NeXT had great long-term prospects with a standalone platform on its own.
I'm very curious what would have happen if Apple had bought Be instead.
On one hand it was a much modern OS because build from scratch in the 90's rather based one the good old Unix, on the other hand OSX being Unix is probably why so many software developers flocked to the mac.
Interestingly they had a modern OS kernel, Mach to be exact, with a BSD personality running on top of it (in kernel space). After the acquisition, use of Mach wasn't expanded (never got our user-level pagers, for example, or BSD running as a user-level service), but instead pushed back.
Supposedly largely for performance reasons, but of course the L4 kernel showed that didn't need to be the case.
> After the acquisition, use of Mach wasn't expanded
I believe modern XPC services integrated with launchd to allow on-demand job launching (similar to Linux dbus-activation?) are based on Mach 'ports' (IPC).
And tangentially, launchd "domains" (gui/user/system) are based on Mach "bootstrap domains", which is why a job launched in the background ("user") may have trouble communicating with a job launched in the GUI domain, if you're just assuming Unix permissions.
Apple had two problems at the time. One was technology and the other was leadership. Be would have helped with the technology part, but in an incomplete way. It wasn’t just the core OS NEXT provided, but also the application development stack. Be wouldn’t have helped on the leadership front at all though.
The Mac certainly benefited from attracting a lot of Unix devs, but I don’t think that was a significant contributor to its mainstream success.
The story about the $150 million from Microsoft is actually a lot more interesting than that - it wasn't widely reported but it was actually a settlement for a lawsuit in which Microsoft (possibly unwittingly - the job was performed by a contractor) ripped off code from QuickTime.
There was another lawsuit in addition to the GUI "Look and feel" one. Apple contracted a company to port QuickTime to Windows. Intel/Microsoft then contracted the same company to optimize Video for Windows, and they reused QuickTime code which then shipped with Windows. http://thisdayintechhistory.com/12/06/apple-sues-over-quickt...
Again, this is just Apple suing but we never know the outcome in court.
At the end of the day, both Microsoft and Apple reused ideas they found at Xerox. To quote Bill Gates himself about the situation:
"Well, Steve, I think there's more than one way of looking at it. I think it's more like we both had this rich neighbor named Xerox and I broke into his house to steal the TV set and found out that you had already stolen it."
Truth was more that the neighbor had a stereo, Jobs turned it into a TV wile copying it, and Gates made a poor copy of the TV.
The Alto relied on a command line for most operations, no Finder, no trash can, only had a handful of GUI applications, could only handle rectangular regions so no complex controls or menus, and was slower and far more expensive than the Macintosh.
> NeXTSTEP was already portable enough to run on both 68k and x86 at that time
> and once you've got two platforms,
Agreed with your sentiment, but, er: five. Four released publicly: m68k, x86, HP PA, SPARC. And then there was the Motorola 88000 for the NeXT brick. The SPARC OpenStep/Mach port was in addition to OpenStep Solaris and then there was the Windows stuff. Not sure what else they had running internally.
That was some seriously portable software. And for developers, adding architectures was a checkbox in ProjectBuilder (once you had taken care of being endian-neutral).
UPDATE: just checked the Wikipedia entry on the NeXT brick (aka NeXT RISC Workstation), and it says they were redesigning it based on PowerPC, so the number was probably six and they already had a PowerPC NextStep port when acquired. https://en.wikipedia.org/wiki/NeXT_RISC_Workstation )
I've been reading "Becoming Steve Jobs" recently and I think it mentioned that NeXT did already have PowerPC working, hence why they were top of the shortlist of potential acquisitions.
Yeah, same thing I said over twenty years ago. Yet here I am with an assload of money in the brokerage account, and a house that has tripled in value since we bought it. AAPL at $18 was still a crap shoot, you don’t hear anyone going on about how well their pets.com stock worked out. But AAPL at $30? At $100 pre-split? There was still plenty of money to be made on AAPL above $18, and after AAPL had established that they were not going anywhere. I had some AAPL @ $17, IIRC, but most of my money made on AAPL was long after that price point. And that’s just an example, buying opportunities are everywhere, the trick is separating the AAPLs from the PETS. (sorry, I tried to find a dot.boom company that sold oranges online so as to have an appropriate comparison, but failed.)
Housing? If you’re complaining about SV, I have no help for you, that place is nuts. Everywhere else, generally, isn’t any worse than when we bought our first house 25 years ago. But once you’re in and can make the payment, the numbers just get bigger as time goes on, as your house price is going to be relative to those around you.
Ah, WebVan, one of the many dot.bombs I missed when they went under. I’m sure Kozmo would have brought me an orange, too. But I was shooting for a company whose stock symbol would have logically been ORNG or summat. :-) “We bring you only the freshest, organically-grown...”
That doesn't sound so dramatic unless you're talking about pre-split prices :)
AAPL split in 2 in 2005 and had a big 7:1 split in 2014. Pre-2005 unadjusted prices are 14x!
I do remember the days of $10-20 AAPL in 2003/4 when I first started using Macs. Personally, I got out during the 2008 3Q crash and missed out on the huge recovery, somewhere in the 9x range on those shares from when I sold to what they're worth today :(
I went though the first split, so that $100 is actually equivalent to $200, and that is literally why I chose to sell: I thought to myself ”the market price is now ten times higher than when you purchased, don’t be greedy, take the nine-fold windfall and be content”. It was sound advice to have from one’s own counsel, but... in hindsight I’ve regretted it ever since, it just makes me cringe.
The move was more to acquire a rock solid Unix/BSD based operating system with serious multitasking functionality, for the purpose of building professional workstations... If you look at the G4 power macs and G4 powerbook laptops from the 2000 to 2006 era the result is evident. Legacy MacOS on PowerPC was a dead end.
At that time in 1996 they knew that Microsoft was going to take the NT kernel and build it into something very stable and more consumer friendly. NT 3.5 and NT4.0 never saw widespread consumer adoption, only in corporate environments. But the later release of Windows 2000 was significantly more stable and capable than legacy MacOS.
I forgot about that. Windows NT 3.5 and I think 4.0 were ported to the DEC Alpha CPU architecture and shipped on a number of (very expensive) DEC workstations at the time. So it is not totally nuts to possibly port it to the then-current Apple/Motorola PowerPC architecture as well.
I thought there once was a Windows NT version for PowerPC, but it was never released, or was pulled short after release.
Never seen it in action though.
I remember BeOS was being developed to replace tor MacOS and they had the BeBox, pre-emptive multitasking and even multiprocessor support. Jean-Louis Gassee never got the opportunity.
EDIT: Actually he HAD the opportunity and because he passed it up we have Mac OS X today!!
From Wikipedia:
In 1996, Apple Computer decided to abandon Copland, the project to rewrite and modernize the Macintosh operating system. BeOS had many of the features Apple sought, and around Christmas time they offered to buy Be for $120 million, later raising their bid to $200 million. However, despite estimates of Be's total worth at approximately $80 million,[citation needed] Gassée held out for $275 million, and Apple balked. In a surprise move, Apple went on to purchase NeXT, the company their former co-founder Steve Jobs had earlier left Apple to found, for $429 million, with the high price justified by Apple getting Jobs and his NeXT engineers in tow. NeXTSTEP was used as the basis for their new operating system, Mac OS X.
Very much so. There were two primary candidates in the running, NeXT and Be Inc., run by Jean-Louis Gassée, previously the president of Apple Europe.
Some very strong arguments have been made for why BeOS would have been a better choice for Apple at the time, but the truth is that Be was always a second choice for Apple if NeXT could not be acquired.
Apple got a great two for one deal by acquiring both a solid UNIX-based foundation for their future and Steve Jobs, but Jobs was really the crown jewel. Apple was in a terrible position at the time, and most industry watchers didn't expect them to survive.
WIRED ran their famous "101 Ways to Save Apple" cover story around that time, and Michael Dell made his infamous quote that Apple should "shut down and give the money back to the shareholders."
It really was a bleak time, and a technology solution was only part of what Apple needed. Steve Jobs' return was what the acquisition was ultimately about.
> It turned out that Michael Dell wasn't perfect at predicting the future. Based on today's stock market close, Apple is worth more than Dell. Stocks go up and down, and things may be different tomorrow, but I thought it was worth a moment of reflection today.
Don't forget that Dell still has twice the market share of Apple on laptops. Apple is successful today because of the iPhone, but Dell is still doing great.
Back in the day there was a clear distinction between personal computers and dedicated workstations. Personal computers were cheap, underpowered and used wimpy operating systems and workstations were expensive, powerful and used powerful operating systems. At some point personal computers became powerful enough to run workstation operating systems so Microsoft started working on Windows NT after hiring workstation guys like Dave Cutler. Dave Cutler had worked on VMS which was one of the few non Unix-based workstation operating systems of the day. Apple purchased NeXT to acquire its workstation team and tech and as a bonus they got Steve Jobs who founded that company after leaving Apple. Every Windows OS of today descends from NT and every version of Mac OS X descends from NeXTSTEP. Dedicated workstation companies like Sun and SGI couldn't compete with much cheaper workstation PCs and nowadays just about every modern personal computer on the planet uses a workstation OS.
I still miss the UI for NeXTSTEP. The joy of tear-off menus floating near my windows is missed. I still have the discs and the full set of books in storage along with the complete run of NeXTWorld magazine[1]. I also miss the librarian. A lot of NeXTSTEP didn't make the transition.
Watch Steve Jobs videos from 1996 and you get some interesting insights.
AFAIK I think tear-off menus was considered for System 7, but was removed before release. I think Rhapsody had it too. It is probably more useful for touch tablets now, but Windows never supported it as far as I know.
Still have my NeXTstation Turbo. God, they were nice. (The "Turbo" means it has a 33MHz m68k instead of the standard 25MHz, in case you were wondering why all of us olds are constantly complaining about crummy performance these days.)
I remember getting the "ACTUAL SIZE" brochure in '89 for the Cube.. Owned a number of slabs (black and white and color) over the years, used one as my primary work machine for about a year.. but never acquired a Cube until 2014. Even got the cable that let me use a modern flatpanel LCD with it instead of an ancient CRT - http://www.mrbill.net/next/
I was a NeXT employee during the acquisition. As I was a WebObjects consultant working in the field I found out via email. Probably the most mind-blowing email I have ever opened.
It's the single best business decision ever made in the history of business. It brought it back from death to the most successful company in the history of the world. I still remember at the Brass Ring job fairs how the Apple booth was completely empty and no one wanted to work for Apple in fall of 1996.
Sure, apple is incredibly successful. But the east india company was around for hundreds of years and could wage its own wars and had enormous. That wasn't their primary purpose, they just also waged war. Could you even begin to say the same about apple?
It is so mind blowing that so much innovation that not only saved a floundering company, but set the foundation for several computing revolutions, came from such a small company.
...in consideration of the foregoing and the mutual covenants and agreements herein contained, and intending to be legally bound hereby, Parent, Merger Sub and the Company hereby agree as follows...
158 comments
[ 3.2 ms ] story [ 212 ms ] threadWhat can I say, nobody's perfect :-D
[1] Pun very much intended, I'm afraid.
Gil Amelio thought the 20th Anniversary Macintosh was really awesome and clones were a good idea.
With (seriously cash strapped) Apple doubling down on Multimedia on rebranded BeOS as a licensed OS for Clones, they would have gone head-to-head with the entirety of the PC market that already had a taste of BeOS.
BeOS was quick and fun, but barely had a TCP/IP stack. See BONE.
Apple probably would have switched to Intel earlier.
(I had an amateur radiotelescope wired up to the GeekPort and exposed the controls over HTTP. I’ve long since retired that setup in favour of a modern SDR linked to a Raspberry Pi 3.)
I had both BeOS and NeXTSTEP and pretty much left BeOS to sit while NeXTSTEP was my daily driver (along with a Windows NT machine because IBM was problematic with OS/2).
I still can't remember the technical merits of the Be operating system. Someone tried to get me to use it back in 1999, but there were no applications worth using.
Because the Unix nerds told them that if they wanted a rock solid workstation OS to replace legacy-MacOS (which was getting very long in the tooth at that time), it would be a good idea to have something BSD/NextSTEP based rather than whatever BeOS was.
If you look at OSX v10.0 it's pretty obvious that it's NeXTSTEP with a MacOS-looking GUI slapped on top of it. They've been incrementally upgrading and developing it since then.
BeOS was very interesting, but one thing it was not was anything close to a BSD/Unix platform.
Rhapsody is pretty interesting stuff.
EDIT: Missed the link. http://rhapsodyos.org/
You are quite correct that NeXT was undoubtedly, upon close inspection, the ‘superior’ OS (UNIX lineage, stable, multi-user, etc.) but as a user (and sometime programmer) it wasn't that evident: my relatively cheap dual-604e BeBox outperformed my dual PentiumPro NeXT machine by a significant margin, or rather, felt like it did because the “pervasive multitasking” made the system extraordinarily responsive, and the lack of legacy code and backwards compatibility definitely kept the system snappy and lithe. Multi-user support didn't really change much from the user perspective either, as security was something of a remote concern and running any kind of ‘server’ on one's desktop was pretty exotic. BeOS was POSIX compliant to a degree such that many people still (erroneously) believe that it is a Unix or Unix-like, and you could run all the open-source command line tools you could possibly want. The BeFS filesystem's metadata capabilities were extraordinarily, and I liked both UIs equally (the etched vs. graffiti aesthetic legacy has etched itself into my neural circuitry), but probably NeXT was more innovative in terms of user interaction and rendering model whereas BeOS basically aped Windows and Classic MacOS quite closely. NeXT's development tools and environment were clearly superior. It was comparatively a resource hog.
So yes, there was a technical edge, and probably knowledgeable influencers at the upper echelons of power probably recommended as such. But at the time I had the feeling that Jean-Louis Gassée (the founder and CEO of Be Inc.) significantly overplayed his hand, and made ridiculous demands because he thought he had Apple cornered by virtue of their failed OS development attempts, growing obsolescence, and perceived lack of serious alternatives. There's the diffuse feeling that Gil Amelio (Apple's then-CEO) eventually grew weary of batting back the demands and started looking for apparent alternatives just as a means of introducing some competition to the negotiations, and eventually the plonked for NeXT much to everybody's surprise. He even made a droll remark about “choosing Plan A rather than Plan Be” or something to that effect. All things considered, it was a very counterintuitive decision, mainly because NeXT had such hefty resource requirements and we hand't quite yet absorbed the implications of Moore's Law (or rather, were used to Microsoft squandering any and all increase in hardware performance with increasingly inefficient code, leading to no perceivable improvement year over year). Amelio deserves more credit for having seen through all of that and made a brave, surprising, and obvious-only-in-hindsight decision that favoured a mature, stable, and extensible platform.
At the time I felt it was an utter mistake, but I was fourteen, and pretty ignorant of the ways of the world. I think history speaks for itself. Amelio deserves more respect for the decision he made, because it was ultimately his decision that led to adopting the superior, extensible technology, and of course brought Steve Jobs back on board (who promptly stabbed him in the back and ousted him in a boardroom coup).
I had a brief flirtation with Windows NT4/2000/XP in 1999-2003, but then I switched to OSX 10.2 on a dual PowerMac G4 and have never looked back since. Only of late have I started to feel that as Apple's focus has switched to iOS on mobile devices they've started to let their development effort and quality control really slip to borderline-unacceptable levels. I can understand that OS X is no longer the enabler for high-margin computer sales it once was, and that that role has passed on to iOS, but OS X (macOS of late) is the platform where the apps that form the bulwark of the iOS ecosystem get developed. Apple really shouldn't let the desktop OS languish or endure ...
> I was fourteen
Wow. What's the story behind that?
It’s kind of an odd story, my use of ’work’ needed some explaining but I thought it would slow down the discussion to go off on a tangent lot narrate this story.
The catch is that it was much less mature. It was single user and had very little real security. It had basic Posix support, but NeXT has much more rich BSD-ishness.
This sorta-kinda worked for things like Linux where the masses would crowdsource them, but for a commercial OS like BeOS they had to spend a ton of time working on this instead of the actual OS.
My recollection at the time was as soon as they entered into this phase the forward progress on BeOS itself ground to a halt, and within a few years the mainstream OSs had started to at least pay lip service to its key features. Any momentum they had was completely lost.
Or in the case of UNIX vendors, outsource their development costs.
Want an MP3 player? Don't need to open the files and get their ID3 tag info, it's in the file system. You can query it with "filetype:mp3 artist:bach" or whatever and you'd get a list, updated when other songs files were added or changed, of all mp3s meeting your requirement. Same for any other document. Contacts can be stored the same way, rather than hidden away inside an arbitrary file format you can store them with each bit of info as metadata (query on the phone number and find everyone associated with it), email, anything. The real benefit of this filesystem-as-database approach was that it breaks the data silo situation you find in many (most?) other OSes.
Downsides were the dearth of applications, being single-user, and for a time being PPC only. Opening it to x86 opened it up to many more users, but then the OS became the product (instead of the BeBoxes they also sold) which was much lower price and profit. It was a POSIX-compatible OS (good), but not really a Unix in the way users of Unix would expect. This did make porting of applications a bit easier, though.
They were also crippled by Microsoft's actions with Compaq (HP?), where MS threatened to change the favorable licensing costs for MS Windows if they sold BeOS on their computers.
Since things were then just ported to Be rather than written directly for it, it kinda felt like POSIX compat was Be in its death-throes.
I bought in at R3/3.1, and I regretted it since as it was just a sad slow slide after that :(
BeOS is a really neat little OS. I like it a lot, I often wonder how different things would be if they had taken that direction.
Basically, AmigaOS 1992 was a more advanced operating system than BeOS 1997. Pity Commodore completely squandered their opportunity and Windows 95 killed them dead.
This was part of why the graphics felt so flippin fast: appkit just wrote to the GPU & framebuffer itself. No need for any context switches.
That's incorrect, AmigaOS had been fully preemptively multitasking since Kickstart 1.0, in 1985. It took Windows ten years to get preemptive multitasking and Mac even longer.
You are right that AmigaOS never got protected memory, though.
NeXT's ABI interfaces (C and ObjC) were and are much more stable.
(I'm not saying don't use C++, just don't use C++ and expect a stable binary API. You need to wrap it in a C API instead unfortunately. There's too much magic in C++ to have a stable ABI and still be able to evolve the language.)
Symbian was written in C++.
Any others?
C ABI only happens to exist on OSes written in C, thus having a C ABI at all.
NeXT used Objective-C on its drivers framework, and that was replaced by a C++ subset in IO Kit.
Likewise their Metal shaders are based on C++14.
Microsoft has been slow and steady migrating their code into C++ since Vista.
https://www.reddit.com/r/cpp/comments/4oruo1/windows_10_code...
Symbian, GenodeOS, includeOS, mbed are all written in C++.
IBM mainframes were written in PL/I dialects, like PL/S and PL/8, and new code is written in C++.
ChromeOS is written mostly in C++, even if it exposes only Web APIs.
Most of Android native libraries are written in C++.
Of course on ChromeOS and Android, C is still there given the Linux kernel.
That's exactly what happened to BeOS and Symbian. Both were stuck at GCC 2.95 for many years after mainline GCC was already at version 4.x.
There's a ton of C++ in macOS/iOS, but it's wrapped to plain C for the public userland APIs.
Other C++ OSes are doing pretty ok.
Symbian's inability to upgrade the platform to modern compilers definitely was one factor in its failure to gain developer mindshare, and the C++ ABI was the reason for that. They had painted themselves into a corner with a '90s C++ embedded dialect and had no easy way forward.
I'm curious -- which modern OS exposes a C++ API and is "doing pretty ok"? I can't think of any.
Migrating to a new C++ ABI wasn't in any way related to Symbians downfall, internal politics were.
As for OSes ARM mbed, Windows all new APIs since Vista are based on COM specially anything UWP related, GenodeOS, Arduino bare-metal libs, IncludeOS.
"Unlike C++, COM provides a stable application binary interface (ABI) that does not change between compiler releases.[3] This makes COM interfaces attractive for object-oriented C++ libraries that are to be used by clients compiled using different compiler versions."
The others seem to be mostly embedded kernels or unikernels which will be tightly linked into your code anyway, so there's no issue of ABI incompatibility with those.
COM is built on top of C++ VTBL implementation on Windows, UWP extends COM by supporting generics as well.
As for the other OSes, it is irrelevant where they are used, the fact is that they are exposing C++ APIs not C ones.
As matter of fact, had GNU/Linux not taken over the OS world and FOSS projects, and C would be pretty much history by now.
Mac OS, BeOS, Symbian, OS/2, Windows were all adopting C++ APIs when GNU/Linux started to gain adoption, with its manifesto to focus on C for GNU software.
There is no major C++ compiler on a major OS that provides a stable ABI, so that's what people mean when they say there's no stable C++ ABI.
COM is independent of the Microsoft C++ compiler. It's defined on top of the platform's C ABI. (There's a COM implementation on Mac, for example.)
On Windows, COM uses the stdcall calling convention. There's no trace of C++ there.
For the unaware, this is why the macOS/iOS APIs are prefixed with NS (NSObject, NSString...), for NeXTSTEP.
I believe iTunes is still based on WebObjects.
The pre-OpenStep version of the APIs used a NX prefix. You can still see some lingering NX* classes/functions in macOS stack traces.
[0] https://en.wikipedia.org/wiki/Cocoa_(API)#History
So far as I know, NS stands for NextStep.
Project Wonder is community supported additions + fixes to WebObjects. https://github.com/wocommunity/wonder
Meanwhile, I found this hat on eBay yesterday: https://i.imgur.com/CuInqYo.png
Not the full blown EOF, WOF that iTunes uses however.
(Also, hi Matt!)
(Hey!)
Apple knew for a long time it needed to replace classic Mac OS, which didn't have modern OS features. It started the Pink project internally to make a next-generation operating system, and eventually in the early to mid 90s, that got spun out into Taligent, the joint venture between Apple and IBM (and later others).
Then Taligent didn't pan out for a variety of reasons. Specifically why is another question, but here it's sufficient to say that Apple decided it certainly wasn't the direction they wanted to go. Taligent ended up being handed off to IBM and repurposed as a rapid app development tool that sat on top of other operating systems (AIX, I guess, mainly) instead of a standalone operating system.
As I recall, Apple may have tried to internally do its own second attempt at a next-generation operating system, essentially a competing project to Taligent, but that didn't work out either.
So that left Apple in the mid-90s but still stuck on an operating system that was rooted in the 1980s and really, really showing its age. And a lot of it was Motorola 68k only (it was never meant to be portable), but Apple had already started to make the shift to PowerPC CPUs. So there was another reason it was time to start fresh.
After at least one if not two failed attempts to come up with their own next-gen OS, here was this company founded by a former Apple luminary, with an operating system sitting there ready to go. NeXTSTEP was already portable enough to run on both 68k and x86 at that time, and once you've got two platforms, you can have pretty high confidence that a third (PowerPC) would be feasible. And I don't think NeXT had great long-term prospects with a standalone platform on its own.
On one hand it was a much modern OS because build from scratch in the 90's rather based one the good old Unix, on the other hand OSX being Unix is probably why so many software developers flocked to the mac.
Supposedly largely for performance reasons, but of course the L4 kernel showed that didn't need to be the case.
I believe modern XPC services integrated with launchd to allow on-demand job launching (similar to Linux dbus-activation?) are based on Mach 'ports' (IPC).
And tangentially, launchd "domains" (gui/user/system) are based on Mach "bootstrap domains", which is why a job launched in the background ("user") may have trouble communicating with a job launched in the GUI domain, if you're just assuming Unix permissions.
The Mac certainly benefited from attracting a lot of Unix devs, but I don’t think that was a significant contributor to its mainstream success.
At the end of the day, both Microsoft and Apple reused ideas they found at Xerox. To quote Bill Gates himself about the situation:
"Well, Steve, I think there's more than one way of looking at it. I think it's more like we both had this rich neighbor named Xerox and I broke into his house to steal the TV set and found out that you had already stolen it."
The Alto relied on a command line for most operations, no Finder, no trash can, only had a handful of GUI applications, could only handle rectangular regions so no complex controls or menus, and was slower and far more expensive than the Macintosh.
> and once you've got two platforms,
Agreed with your sentiment, but, er: five. Four released publicly: m68k, x86, HP PA, SPARC. And then there was the Motorola 88000 for the NeXT brick. The SPARC OpenStep/Mach port was in addition to OpenStep Solaris and then there was the Windows stuff. Not sure what else they had running internally.
That was some seriously portable software. And for developers, adding architectures was a checkbox in ProjectBuilder (once you had taken care of being endian-neutral).
UPDATE: just checked the Wikipedia entry on the NeXT brick (aka NeXT RISC Workstation), and it says they were redesigning it based on PowerPC, so the number was probably six and they already had a PowerPC NextStep port when acquired. https://en.wikipedia.org/wiki/NeXT_RISC_Workstation )
Watching the evolution of NeXTSTEP/Openstep, Yellow Box, Rhapsody and Mac OS X has been just about as rewarding as I had hoped.
The benefit of UNIX overlaid with a friendly, usable UI is as promising now as it was then.
I just wish I had been able to invest more when AAPL was at @ $18.00.
Housing? If you’re complaining about SV, I have no help for you, that place is nuts. Everywhere else, generally, isn’t any worse than when we bought our first house 25 years ago. But once you’re in and can make the payment, the numbers just get bigger as time goes on, as your house price is going to be relative to those around you.
Webvan? They did the online groceries thing, crashed and burned then got bought by Amazon.
AAPL split in 2 in 2005 and had a big 7:1 split in 2014. Pre-2005 unadjusted prices are 14x!
I do remember the days of $10-20 AAPL in 2003/4 when I first started using Macs. Personally, I got out during the 2008 3Q crash and missed out on the huge recovery, somewhere in the 9x range on those shares from when I sold to what they're worth today :(
You could say the same thing about not buying BTC at $1 and selling at $20,000.
At that time in 1996 they knew that Microsoft was going to take the NT kernel and build it into something very stable and more consumer friendly. NT 3.5 and NT4.0 never saw widespread consumer adoption, only in corporate environments. But the later release of Windows 2000 was significantly more stable and capable than legacy MacOS.
https://www.google.com/search?q=dec+alpha+windows+nt&ie=utf-...
EDIT: Actually he HAD the opportunity and because he passed it up we have Mac OS X today!!
From Wikipedia:
In 1996, Apple Computer decided to abandon Copland, the project to rewrite and modernize the Macintosh operating system. BeOS had many of the features Apple sought, and around Christmas time they offered to buy Be for $120 million, later raising their bid to $200 million. However, despite estimates of Be's total worth at approximately $80 million,[citation needed] Gassée held out for $275 million, and Apple balked. In a surprise move, Apple went on to purchase NeXT, the company their former co-founder Steve Jobs had earlier left Apple to found, for $429 million, with the high price justified by Apple getting Jobs and his NeXT engineers in tow. NeXTSTEP was used as the basis for their new operating system, Mac OS X.
Some very strong arguments have been made for why BeOS would have been a better choice for Apple at the time, but the truth is that Be was always a second choice for Apple if NeXT could not be acquired.
Apple got a great two for one deal by acquiring both a solid UNIX-based foundation for their future and Steve Jobs, but Jobs was really the crown jewel. Apple was in a terrible position at the time, and most industry watchers didn't expect them to survive.
WIRED ran their famous "101 Ways to Save Apple" cover story around that time, and Michael Dell made his infamous quote that Apple should "shut down and give the money back to the shareholders."
It really was a bleak time, and a technology solution was only part of what Apple needed. Steve Jobs' return was what the acquisition was ultimately about.
2017: Who's Michael Dell?
Steve Jobs is better known dead than Michael Dell is alive.
> It turned out that Michael Dell wasn't perfect at predicting the future. Based on today's stock market close, Apple is worth more than Dell. Stocks go up and down, and things may be different tomorrow, but I thought it was worth a moment of reflection today.
He's a guy worth $23.5B (says Google today).
Dell may not be very exciting, but Michael Dell is doing fine.
In a bizarre turn of events, he took Dell (the company) off the stock market himself making it non-publicly owned.
Even Acer (remember them) is worth almost 3x what Dell is today.
Watch Steve Jobs videos from 1996 and you get some interesting insights.
1) now available online https://archive.org/search.php?query=nextworld
I am very far from an Apple fanboy but gosh, this guy totally gets it.
I left Apple 6 months later to join WebLogic.
1/2] https://www.youtube.com/watch?v=vwCdKU9uYnE (early days)
2/2] https://www.youtube.com/watch?v=NtpIFrOGTHk (around Apple acquisition and beyond)
Oddly coincidental is the recent ability to build on Haiku OS: https://sourceforge.net/p/previous/code/HEAD/tree/
...in consideration of the foregoing and the mutual covenants and agreements herein contained, and intending to be legally bound hereby, Parent, Merger Sub and the Company hereby agree as follows...