In 2019 an extraordinary team of web development and design celebrities gathered in the offices of CERN in Geneva, Switzerland, to build an emulator of the original web browser created by Tim Berners-Lee, known as WorldWideWeb. This emulator is available online and, fittingly enough, runs on a modern web browser.
The original WorldWideWeb browser, however, was written in Objective-C and ran on a NeXT Computer. The source code of version 0.15 is nowadays available on GitHub, but building and running it is not a straightforward task, even if a NeXT emulator such as Previous could be used for that matter.
The WorldWideWeb emulator gives a good overview of the NeXT UI. But what about the rest of the system? What was it like to use a NeXT Computer 30 years ago? How can we get an idea of how revolutionary those machines were? For that, it is much simpler to go back to 1992 and watch a demo of NeXTSTEP Release 3 by Steve Jobs himself.
This month’s video is roughly divided into three sections: the first is about the NeXT productivity environment, the second one is about networking and collaboration, and finally, the third one showcases a demo of how to build a NeXT application from scratch.
The first two sections are anecdotal; apart from seeing a picture of his son Reed Paul Jobs, or learning about the multi-protocol capabilities of the NeXT networking stack (including fax support!) there is not much to learn. If anything, the live document update feature brings back memories of Windows’ own DDE and OLE capabilities, which later begat COM component technology, the ancestor of .NET. But I digress.
Current macOS (or as it was previously known, Mac OS X) users will recognize lots of UI elements popping all over the place: the font and color inspector, the services menu, and so on. Let us try to forget Steve’s choice of the “Stencil” font; fashion trends have certainly changed since the early nineties.
Modern users of computer systems might not realize how revolutionary it was to see window contents redrawn while moving them around, or how much WYSIWYG was pervasive throughout the interface. We take those things for granted these days, but by all means, they were not common at all.
From a software development standpoint, the exciting stuff begins at the presentation of Interface Builder, where we learn that
And I’m going to run an application called Interface Builder. Now, think of NeXTSTEP, which is NeXT’s object-oriented environment, as an object-oriented cake. I’m about to show you just the frosting on the cake. Many people have tried to copy this frosting, but what they found out is without the object-oriented cake underneath, it just doesn’t work.
Using Interface Builder, Steve drags and drops elements on the UI and wires them automatically to the tables and fields of a Sybase database. This is done thanks to a framework he calls “DatabaseKit,” a name later shared by at least two abandoned projects for macOS and iOS. As expected (in 2022), DatabaseKit abstracts developers from the intricacies of the underlying database engine and provides a path to migrate applications to other RDBMS systems, such as Oracle or DB/2.
Again, nothing to phone home about in 2022, but revolutionary 30 years ago.
Steve finally uses SoftPC by Insignia to run DOS apps, and one should not miss his face while opening Lotus 123 at minute 31:25 of the video. Of course, being compatible with DOS was very important in 1992; after all, even an operating system such as IBM’s OS/2 included DOS compatibility.
The Object is the Advantage.
Couple this video with Steve Jobs talking about the app store in 1983, and let’s reflect on the fact that somebody, somewhere, somehow, is building the next big thing as you read these words.
Cover snapshot by the author.