My mini-series on NeXT Computer:
Installment 1: On the Creation of NeXT
Installment 2: NeXT: The Hardware
Installment 3: NeXT: The Software
Installment 4: NeXT: The Apple Purchase
Installment 5: Why Did NeXT Fail?
An Introduction to NeXTSTEP
- The Mach microkernel
- Display PostScript and a windowing engine
- The Objective-C language and runtime
- An object-oriented application layer, complete with robust development tools
Compared to Mac OS, NeXTStep looked like the future. It had full-color icons[^2] and modern typography and included technologies like protected memory and multitasking.
NeXT shipped several versions of the operating system, finishing with 3.3 in February 1995, two years after the company stopped producing hardware.
The User Interface
It’s not hard to see that Apple used several concepts from NeXT when building OS X:
NeXTStep’s Dock functioned pretty much the way it does now — it stored shortcuts to often-used applications.
The interface allowed applications to be hidden (but kept running), included smooth scrolling (even with images) and drag and drop functionality. NeXTStep also offered full audio support, including recording audio and saving it as a file, which could then be added to emails, or sent to a network share easily.
NeXTStep offered applications that had shared core components, like a font manager and a Services menu. This functioned much like Services does now, offering system-wide tools like a Dictionary, text tools and more.
What was magical about this was that every app got these extras, built-in.
This was thanks to the object-orientated nature of NeXT’s tools. Instead of each developer having to build custom controls and resources, they could rely on the tools that came with the OS itself.
Thanks to this, apps running on a NeXT system could do all sorts of new tricks.
Object-linking allowed users to paste one file (such as a graph) in to another (such as a report) in a way that the pasted version would auto-update any time the source file was updated. The user didn’t even have to save the original — it could be live-updated, even across a network.
NeXTStep users each had a “Home Directory,” thanks to OS’ Unix underpinnings. If on a network, a user could easily navigate to another user’s folder to copy files. Users could even create custom buttons in the file manager to quickly get back to a remote location. Users could connect to file servers running on a PC or Mac just as easily. NeXT worked with Novell to get Netware systems integrated, but, as Steve says in the video below, the company “wrote their own” support for AppleShare.
(I guess Apple wasn’t over Jobs swiping their top guys when he left.)
While it seems dated now, NeXTSep included built-in fax support. Users could send and receive faxes over a networked modem, which would send digital copies of the fax to the correct user, saving paper and time.
With NeXTStep, NeXT gave developers an all-new way to build applications. Interface Builder included tons of pre-built, standard software controls, all usable with drag-n-drop actions. Apps built with Interface Builder didn’t have to be compiled, as there was no code in play.
(Interface Builder and its counterpart Project Builder lasted until OS X Jaguar, when Xcode was released. Interface Builder has since been absorbed in to Xcode completely.)
The Database Kit gave developers the tools needed to manipulate data in databases from within their apps, easily and quickly.
DOS programs could be run on NeXTStep, thanks to SoftPC. NeXT was quite happy to have the app available, as it meant that the DOS-based enterprise could migrate to NeXT with a minimal amount of pain.
On the graphics end of things, NeXTStep was simply phenomenal. Thanks to Pixar, the NeXT OS shipped with Renderman, giving powerful tools to every user. With NeXT’s powerful hardware, 3D graphics ran smoothly.
So What the Heck is OpenStep?
OpenStep was born out of a partnership between NeXT and Sun Microsystems.[^4] In short, it was a project to build a full API that would bring NeXT’s object model to a system without NeXTStep running as its base OS. In short, it was an extension of the development tools NeXT created for NeXTStep, just on other vendors’ operating systems.
By 1993, OpenStep was successfully running on top of Sun’s Solaris operating system, as long as it was on SPARC-based hardware. The system included NeXT’s PostScript and Objective-C tools, but no NeXT interface.
In 1994, the company announced OPENSTEP,[^5] a newer version that brought updated tools to not only NeXT and Sun systems, but to others as well, including Windows NT. First started here, the prefix NS is still present in Cocoa object and classes.
OPENSTEP (for lack of a better word) absorbed NeXTStep, as the company focused on it (after ceasing to produce hardware) until 1996, when it was bought by Apple. That said, some original support documents can still be found on Apple’s site.
For extra credit, be sure to check out this video, in which OPENSTEP is demoed.
GNUStep is “a free, object-oriented, cross-platform development environment that strives for simplicity and elegance.” The project strives to compatible with the Cocoa frameworks, but be available cross-platform.
The project’s website is very clear that GNUStep is not a clone of NeXTStep. It ships with a few pre-built apps, but no window manager or set theme.
These projects, however, do aim to re-create the NeXT experience on the desktop, using the work of the GNUStep team members:
In Closing, a Video
p id=”yui_3_10_1_1_1391817482338_13153″>Here’s Steve Jobs showing off NeXTStep Release 3:
Don’t miss the jabs at Apple.
For more extra credit, there are still some NeXTStep and OPENSTEP files floating around on Apple’s servers you can download. I haven’t played with them much, but they’re now archived safe and sound on my external RAID.
- I’ll be using the less common “NeXTStep” in this article, since the mostly-caps version makes my eyes bleed.
[^2]: If your hardware supported it.
[^3]: I know very little about programming, so I apologize for the brevity of this section. I know it’s probably the single most important thing about NeXTStep, in hindsight. If you know what you’re talking about, and what to write something up, I’d love to share it here.
[^4]: Ironically, Sun sold to Oracle in January 2010. Oracle was co-founded in 1977 by Larry Ellison, who was one of Steve Jobs’ closest friends.
[^5]: Yes, it was done in all caps. Why couldn’t have someone just come up with a different name? ↩