
Why did Apple's Copland fail when so many 90s OS succeed, dominate world today - stargrave
https://liam-on-linux.livejournal.com/60604.html
======
rayiner
Is the premise correct? Almost all 1990s OS projects ultimately failed. Cairo,
Taligent, Copland, BeOS. The projects that survived were 1970's/1980's
technology: NeXT Step (OS X), Linux, Windows NT.

~~~
danans
Linux was started in 1991, so it really belongs in the BeOS era. But Linux
isn't an apples-to-apples comparison. It's success followed the rise of the
internet, and the resulting huge demand for a free server OS. No commercial
vendors were providing that.

The other OS's you mentioned are all Desktop OS's, and that market was already
buttoned up by the 90s, as it largely still is today. They were up against
much steeper odds.

~~~
51lver
The OS part, the GNU userland, was written before the 90s. The kernel was just
the missing piece that made it all work on a 386 desktop that were rising in
popularity at the time.

~~~
kbutler
It's interesting how the gnu project narrative of "we did all the work, the
kernel was 'just the missing piece'" has propagated.

The gnu project worked on a kernel - Hurd. It has been "in active development"
since 1990. It's "just the missing piece."

~~~
philwelch
Hurd was a microkernel that was a genuine attempt at something new. Linux’s
monolithic design was very safe, very 70’s/80’s, and was criticized by
everyone for not being a serious 90’s microkernel design.

~~~
peapicker
NeXT mach was a microkernel as well based on CMU’s Mach 2.5 (in the first
release) and was in the market in 1988. It was actually fantastic, even when I
was running 0.7 of the OS in prerelease at LANL. Hurd started in 1990 so it
wasn’t NEW new imho (originally based on Mach 3.0 although NeXT went there
too). There are other ideological differences but the core mach microkernel
ideology started at CMU in 1985 making microkernels an 80s technology as well.

~~~
mikekchar
I'm really stretching to remember, but I recall that initially the Hurd was
planning to have a completely distributed user system (i.e., file handles were
essentially URLs, they had a system for dealing with users distributed in the
network, etc). They were going to use the Mach kernel message passing in
really innovative ways and I seem to recall that they had in mind some fairly
radical ideas for distributed processing. I don't think they ever really
realized any of that (I haven't actually checked what they ended up doing). My
impression was that the project was dogged with a lot of problems, some
technical and some not. Had they succeeded, it would have been a really
amazing system, I think. One of these days I keep thinking I should check out
what they actually did.

------
katuskoti
If anyone has watched the very tech-oriented anime "Serial Experiments Lain",
Copland OS is used by the protagonist, Lain. I happen to love the anime so I
set up my neofetch terminal image (an actual PNG, with w3m) to the logo of
Copland OS used in the show.

------
bluejekyll
> A/UX was very impressive for its time — 1988, before Windows 3.0. It could
> run both Unix apps and classic MacOS ones, and put a friendly face on Unix,
> which was pretty ugly in the late 1980s and early 1990s.

I realize I really don't know much about A/UX at all. I didn't even know it
could run classic MacOS apps. Does anyone have a link to more about the OS? I
always assumed it was just a clone of System V, but if it could run classic
MacOS apps, that meant it was more than just that.

~~~
Taniwha
I worked on the original port (did about half the kernel stuff) - it was our
standard SystemV with berkeley sockets, and wrote some of Apple specific stuff
(kernel event manager, appletalk etc) - one thing I was particularly proud of
was on the fly loadable unix device drivers, somewhat ahead of their time -
feel free to ask me questions

The Mac compatibility stuff (done at Apple) essentially ran in a single unix
thread - really a VM for the mac OS7 world - it ran in user mode (mac OS apps
usually ran in kernel mode) and emulated exceptions

~~~
jamesfmilne
Hi Taniwha

I’m working on a new Ethernet card for the Mac SE/30, and I’d love to be able
to get if working with A/UX 3.

[https://www.mactothefuture.org/](https://www.mactothefuture.org/)

If you had any pointers on how one could write an Ethernet driver for A/UX I’d
be very appreciative! :-)

~~~
Taniwha
oooh .... sadly I haven't had access to kernel source for maybe 30 years, it's
been a long time essentially you need to write a BSD style networking driver
(of the era, so likely 4.1) along with interrupts/etc I think without source
it's going to be really difficult - on the other hand you can use autoconfig
to load it into an old kernel, hook up the interrupts and set it running

~~~
jamesfmilne
Cheers. I'll see what I can dig out of the fossil record about autoconfig ;-)

~~~
Taniwha
autoconfig is essentially a front end like the linux module loading tools, it
makes some fake COFF files containing the kernel symbol table and some glue
code and links them against the driver(s) you want to load, then it loads the
code into kernel space, patches the block/char major tables and calls a
driver's init routine

Sadly it's not as functional as we would like, I actually wrote it for UniSoft
as a way we could sell drivers without building kernels every time, someone at
Apple saw it and not only demanded we include it in A/UX but also demanded
that they own it .... so I wrote another one for Apple, it worked differently
and was barely functional - Apple could have had the original better one for
free if they'd dropped the demand that they owned it

------
lproven
Hi. Author of the piece here.

It's a repurposed Quora answer; the original question might clarify what I was
answering: [https://www.quora.com/Why-was-Apple-unable-to-complete-
Copla...](https://www.quora.com/Why-was-Apple-unable-to-complete-Copland-OS-
by-mid-90s-but-Microsoft-with-NT-IBM-with-OS-2-NeXT-and-BeOS-were-able-to-
finish-OS-by-1990s/answer/Liam-Proven)

------
walrus01
Anyone who ever used MacOS X v10.0 (or the server preview of it) around the
year 2000/2001, and had previously used a NeXT from the command line, could
immediately tell that it was the NeXT OS with a MacOS-resembling veneer of GUI
on top of it.

~~~
dep_b
What's more impressive is that Mojave would be really familiar to those users
from the year 2000. If I compare it to the mind-blowing UX changes Windows
went through in the same time...and none of them were never really all
compassing or guaranteed to stick around for a time.

~~~
npunt
Yep, and meanwhile Mojave would be really familiar to an original Macintosh
user from 35 years ago. So much has changed yet so little.

~~~
duskwuff
I can't find the screenshots offhand, but someone recently pointed out that
the wording of one Finder alert dialog ("The document $1 can't be opened
because it is in the Trash", IIRC) hasn't changed since System 7.

------
malvosenior
> _It’s often said that Apple didn’t take over NeXT, nor did it merge with
> NeXT — in many important ways, NeXT took over Apple._

This is pretty much the answer. NeXT was Jobs' baby and he was happy to deploy
all the tech through Apple when he came back. It worked out really well for
them. Copland dev was also lagging and pre-Jobs (return) Apple had a decided
lack of ability to ship.

------
webwielder2
NeXT was an unintentional Apple skunkworks.

------
microtherion
_The NeXT management discarded Copland, most Apple technologies — OpenDoc,
OpenTransport, GameSprockets, basically everything except QuickTime. [...] It
took the existing MacOS classic APIs [...] and cut out everything that
wouldn’t work on a clean, modern, memory-managed, multitasking OS._

I've never seen the innards of the above technologies, but to the extent that
this passage gives the impression that the technologies that were cut (and one
could add QuickDraw 3D and QuickDraw GX to the list) were the _least_ modern
and future proof, I think that's exactly backward. It's largely the _most_
modern technologies that were cut, and it's the crufty ancient APIs that made
it into Carbon.

Something like OpenDoc would probably have been reasonably portable, given
that it was based on IBM technologies. OpenTransport was based on System V
streams, GameSprockets was based on a QuickTime stack which largely survived
for some time.

Presumably those decisions were made because the new APIs, gorgeous as they
were, didn't have major adoption yet, and Apple desperately needed to focus.

------
acqq
Some chronology:

An end of 1995 article:

[https://web.archive.org/web/20070610194914/http://www.busine...](https://web.archive.org/web/20070610194914/http://www.businessweek.com/1995/51/b345595.htm)

"APPLE'S COPLAND: NEW! IMPROVED! NOT HERE YET!"

"Says one recently departed Apple engineer: ``There's no way in hell Copland
ships next year. I just hope it ships in 1997.''"

One year later:

[https://www.cultofmac.com/459054/apple-buys-
next/](https://www.cultofmac.com/459054/apple-buys-next/)

"December 20, 1996: Apple Computer buys NeXT, the computer company Steve Jobs
founded after leaving Cupertino a decade earlier."

A little more than two years after that, already 1999:

[https://en.wikipedia.org/wiki/Mac_OS_X_Server_1.0](https://en.wikipedia.org/wiki/Mac_OS_X_Server_1.0)

"Mac OS X Server 1.0, released on March 16, 1999,[1] is the first operating
system released into the retail market by Apple Computer based on NeXT
technology."

------
stewbrew
Did it actually "fail" or was it discarded? As a Mac user from back then, I
remember copland only from some articles and from macos gadgets that made the
classic macos somehow look like copland, i.e. like a weird teeny disco box. It
could be that there were a few month were copland was actually released to the
wild, but at that time I already ran suse linux.

~~~
classichasclass
Copland was a bundle of fail. It would crash doing nothing at all and couldn't
run anything of substance. But, typical of Apple's death spiral at the time,
it took Ellen Hancock saying a strong, unequivocal "kill it" to get Amelio to
do so. I bet Apple would have continued to iterate on it to their doom if that
hadn't happened.

~~~
plushpuffin
Came here to post this, and upvoted you instead. Everything I've read about it
indicated that Copland never worked and was an unstable POS that was
impossible to develop for.

At one of the Apple developer conferences, people booed and criticized the new
OS's unimpressive capabilities during a demo/slideshow, prompting Amelio to
come back on stage and promise to "tack on" symmetric multiprocessing. For an
OS that was supposedly mere months away from release...

------
em-bee
i love this comment to the article about the attempt by atari:

 _Atari MiNT! It was an attempt to bolt UNIX semantics on top of TOS, which
itself was already a weird mashup of CP /M and DOS. It ran on 68k ST boxes,
and was about as bonkers as you'd expect, in ways that I can summarize with
the pathname "U:\DEV\NULL"._

------
st3fan
Copland did not fail, it never shipped. It was one option on the table but
they picked next step instead.

~~~
bunderbunder
I'd argue that never even getting to shippable state is generally a worse
failure than spending a few years on the market but never really taking off in
any serious way.

------
sologoub
Reading this made me think of how iOS and macOS are evolving - the UIKit and
iOS apps on Mac.

Strategy feels similar - make things compatible enough and force apps to adapt
somewhat. Of course this is a gross oversimplification, but who knows.

------
zackmorris
I witnessed all of this since I started using Macs around '84/'85 and
programming them around '89\. I'm still in mourning about:

* Since Classic MacOS (OS 9 and below) didn't have a command line, it had GUIs for tweaking system settings. Better yet, it had a budget for preventing user interface issues in the first place. The user experience on Classic MacOS was simply better than anything we have today, on any platform (including iOS - and yes I realize this is subjective). The flip side is that the platform evolved faster until the late 2000s because developers could tinker more freely. Since the vast majority of users are not programmers, I don't think this was a win. To me, something priceless was lost, that may never be regained even with the incubator of the web pushing the envelope.

* I often wish that Apple had made a Linux compatibility layer. That entire ecosystem of software is simply not in the Mac fanbase's radar. This isn't such a huge issue now with containerization, but set everything back perhaps 10-20 years. Apple did little to improve NeXT (to make it something more like BeOS, or the Amiga). We really needed an advanced, modern platform like Copland or A/UX like the article said. But in the end, Steve Jobs knew that didn't really matter to like 99% of users, and he was probably right. Still, I'm in that lucky 1% that sees the crushing burden of console tool incompatibilities and an utter lack of progress in UNIX since the mid 90s.

* Much of the macOS GUI runs in a custom Apple layer above FreeBSD (rather than using something like X11). I'm not really convinced that the windowing system is that optimized, because it used to use a representation similar to PDF. So for example, I saw weird artifacts and screen redraws back when I was doing Carbon/Cocoa game programming, especially around the time OpenGL was taking off. Quartz is powerful but I wouldn't say it's performant. A 350 MHz blue & white iMac running OS X had roughly the same Finder speed as an 8 MHz Mac Plus running System 7 or a 33 MHz 386DX running Windows 95. Does anyone know if the windowing system is open source?

I could go on, in deeper detail, but it's futile. I think that's what I truly
miss most about Classic MacOS. If you ever watch a show like Halt and Catch
Fire, there was a feeling back then that regular folks could write a desktop
publishing application or a system extension (heck whole games like Lunatic
Fringe ran in a screensaver) and you could get Apple's attention and they
might even buy you out. But today it's all locked down, we're all just users
and consumers.

I still love the Mac I guess, and always come back to it after using the
various runner ups. But I can't get over this feeling that it stopped evolving
sometime just after OS X came out, almost 20 years ago. There is this gaping
void where a far-reaching, visionary GUI running on top of a truly modern
architecture should be. All we have now is a sea of loose approximations of
what that could be. I wish I knew how to articulate this better. Sorry about
that.

~~~
doggydogs94
Classic MacOS did have a command line. You had to install it separate. The
command line was the Apple development tool MPW.

------
yarrel
Because it wasn't simply copying something from the 1970s like the Linux and
NT kernels.

------
simonsays2
NT was not based on OS/2\. The author is misinformed.

~~~
acdha
Not only was it based on OS/2 it even supported some of the OS/2 APIs for
awhile, along with things like the HPFS filesystem:

[https://web.archive.org/web/20090210125723/http://www.micros...](https://web.archive.org/web/20090210125723/http://www.microsoft.com/resources/documentation/windowsnt/4/workstation/reskit/en-
us/os2comp.mspx?mfr=true)

[https://support.microsoft.com/en-us/help/100108/overview-
of-...](https://support.microsoft.com/en-us/help/100108/overview-of-fat-hpfs-
and-ntfs-file-systems)

See
[https://en.wikipedia.org/wiki/OS/2#1990:_Breakup](https://en.wikipedia.org/wiki/OS/2#1990:_Breakup)
for more information about how they diverged over time.

~~~
Aloha
I think it still does support OS/2 console applications.

~~~
acdha
I thought that was removed in the XP/2003 era:

[https://web.archive.org/web/20041019061658/http://support.mi...](https://web.archive.org/web/20041019061658/http://support.microsoft.com/kb/308259)

