Fiddling with NeXTSTEP
I bought my first Mac just 3 or 4 years ago. Before that I used to alternate between Windows and Linux, mostly sticking to Linux. The flexibility and complexity was something I liked most about Linux. Compiling a new kernel each time I inserted a new piece of hardware into my computer and fixing errors until a game or application would compile and install successfully used to keep me entertained for days and nights on end. The absence of these exact things is what made me buy an Apple later; it just works.
This week I realised that while I’m quite familiar with the history of DOS, Windows, Linux, Amiga, C64, BeOS and so on, Mac OSX’s predecessors are a mystery to me. A few brief experiences with NeXT workstations and iMacs in public places aside, I’ve never used the system before OSX. Obviously exploring this makes for a perfect spare time project. I managed to install NeXTSTEP in Parallels and tried to get past greyscale graphics, which proved to be difficult. After reading some experiences by others I swithed to VirtualBox, which allows you to customize hardware properties, like ethernet cards and sound devices. VirtualBox with OPENSTEP (NeXTSTEP with OpenStep) and the latest update almost provides a plug and play experience due to much improved driver support. I took some screenshots running OPENSTEP 4.2 at 1024x768 pixels with 32bit colors (a setup that cost about $ 15,000 when it was released).
A screenshot of DangerCove.com. OmniWeb (like all browsers at the time) lacked support for stylesheets, or almost any of the features we’re used to today. Enabling javascript caused every site I tried to crash.
This screenshot shows Facebook, looking rather broken, and DOOM in the front. id Software used NeXT systems to create the famous first person shooter. Relying on the Objective-C based development environment to create most of the tools, like the level editor. Speaking of which..
While Xcode 4.2 and InterfaceBuilder 4.2 were released almost two decades apart, they feel strikingly similar; dragging and dropping components and attaching their outlets to ‘First Responders’, it’s all there.
EDIT: Over at Hacker News, Zev provided a link to a video of Gene Backlin giving a talk at SecondConf last year, titled ‘NeXT to X’. About 21 minutes into the video Gene walks through a screenshot supported comparison of creating the exact same app using development environments that were created 20 years apart.
YouTube has some pretty cool videos that show Steve Jobs demoing NeXTSTEP. Like this one, where Steve talks about what he calls ‘interpersonal computing’:
Or this ‘secret’ video, supposedly only for the eyes of fresh NeXT employees:
Fiddling around with NeXTSTEP has been fun. It reminded me that I tried, but never really liked, the Linux window manager called WindowMaker, which I did knew was based on NeXTSTEP. WindowMaker to me felt out of place on Linux and inferior to Gnome, KDE, Enlightenment and other window mangers at the time. Like OSX today, the NeXTSTEP interface feels a lot more comfortable on the system that it’s been designed for.
Some sites to help install OPENSTEP yourself:
I make apps, take a look 👇
Skips terrible music
Denied saves your ears from Nickelback or any other band, song or album. It sees what you're playing and automatically skips songs that you dislike.