|Home » Industry Watch » The Technological (» Hall of Monkeys) (» Heroes Banquet)
The Object Oriented Cake
I finally got to watch the NeXTSTEP 3 Release Demo the other night. People have been pointing me to the link for ages. I couldn't get this equipment to work and so had to forego it. I told everyone 'been there done that' as NeXT Software about the same time had given me the complete kit with NS for 486, NeXTSTEP the Movie, the Garfinkel book, the works. We'd all seen what this blazing platform could do, so no one expected much new from the clip.
I was in for a surprise.
First off, I was amazed it was so windy in Redwood City that day. You can see the trees blowing out the window.
Second off, this is a demonstration right up there with Doug Engelbart's 'mother of all demos'. In fact it places right up there and takes over where the other one left off. And just like its forerunner, this demo gives you a glimpse of the distant future and actually goes a lot further than Doug's forerunner did.
And if you haven't seen the demo, then by all means click one of these images and scoot on over for the next thirty five minutes eight seconds. It's a real eye opener. But better still to stick around here a moment longer and get some perspective on what you're going to see - and also a comparison to 'another' Steve Jobs just five years later.
The NeXTSTEP Release 3 Demo is divided up into a number of parts. There's the introduction (with campy music) and there's a section on networking (which will blow your socks off) and finally there's a section on application development which Jobs handles all himself. It's all good but as things progress you'll start to feel as if you're in a time warp - not the infamous Steve Jobs reality distortion field but a real honest time warp.
The first thing you'll see is that the menus are 'spatial'. This must leave John Siracusa singing to the moon. The movable menus are bloody brilliant - you can move them around and each application remembers where its menu is.
The next thing you'll notice is that the system is blazingly fast. Remember this is fifteen years ago, and remember what kind of hardware was being used back then, and watch how fast Jobs can flip between applications. And it's never just one window either: it's a whole slew - and the menus pop back up too.
The dock's on the right and it's movable - not configurable but movable. Just drag your mouse and it moves. This of course is a forerunner to the OpenStep dock which in addition had tabs and started turning into a real powerhouse.
There's no fancy-schmancy bouncy-bouncy when Jobs brings up applications: he just clicks on a dock icon and the app is there. Instantaneously.
And so he starts talking about 'object linking'. Remember the year. This is the year Microsoft would blast the planet with Windows 3.1 and part of the upgrade from Windows 3.0 was 'object linking and embedding'. In the autumn of 1992 we were given a demonstration of how this worked on the coming NT. And it worked - but it was nothing like this. Jobs connects a diagram and then starts manipulating it - and you see the embedded link in the target document being updated at the same time.
Jobs says something later on in his demo which can be good to cite already now. He's talking about the structure of this fantastic platform and the efforts made by others - including Apple - to emulate it, to copy it. And he's also talking about the fact that when he first saw this years earlier at Alan Kay's PARC lab he didn't really 'get it'. Now he does. Oh does he ever.
'Think of NeXTSTEP which is NeXT's object oriented development 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.'
He goes on to demonstrate WordPerfect for NeXTSTEP - which is light years ahead of anything that company ever put out on another platform. It's 100% WYSIWYG - it has no code panel - and 'it just works'. Remember again the year: remember what Will Petersen was struggling to get WP out the door for Windows 3.1 and was getting screwed left and right by Microsoft and that months later when the product hit the market network admins would joke 'if there's something wrong with the LAN it must be WordPerfect trying a printout'.
And then he shows off Lotus Improv - a product Lotus themselves said would be impossible on any other platform. And to this day that seems to hold true. And both applications offer effortless seamless object linking. A mind blower. And remember: this is 1992. Steve Jobs is still sitting at a NeXT computer - a 'slab' - and it's still 'NeXT Computer' instead of 'NeXT Software' and that change is about to happen momentarily. Whatever.
Next on the agenda is a bit about networking. Jobs demonstrates how they couple up to Microsoft boxes over Novell, to Sun workstations, to their own kind, and to Macs on yet another network. He takes a Mail memo with links to four different documents found on each of these networks, navigates with ease with his FileViewer to each and picks up the documents, and then assembles it all. Effortlessly. Piece of cake.
And the mail program he's using is the same code used today in OS X mail - except it has more features, not fewer. You can directly record sound bites and embed them in mail messages. And play them back. And so forth.
Finally Jobs moves to application development - which is where he fells the above quote which should be echoing in your ears about now. He decides he's going to build a simple yet powerful application for interfacing with databases and he's going to use Interface Builder. And he doesn't have to write a single line of code.
This part is actually rather impressive, for it shows that Jobs has a lot more tech savvy than a lot of people assume. He might have been primarily interested in chimes and startup times for the original Mac but now he's had to get his hands dirty with real programming and he's succeeded at it.
Interface Builder is of course the revolutionary program from Jean-Marie Hullot (which no one to this day coincidentally has ever been able to copy). And Jobs' quote might be a clue why.
The application project will connect several fields in several databases to give quite the complete picture of query results - and this literally. Jobs digs into these 'data objects' fields and drags them to his interface where they will show up as records of data - and in two cases as photographs.
And he's not worried about what database he's actually accessing either as he will point out a bit later: the same code works seamlessly on all the databases they're capable of hooking up to, including Oracle and all the other big names. The same code works everywhere.
And so once he's got the template completed he just flips Interface Builder into test mode and away it goes. For the first access Jobs has to authenticate but after that he's in. He inputs a search key, hits his big 'SEARCH' button, and up come the results. And it's blazingly - unbelievably - fast. And you get two photographs in every query and with every selected record.
To round things off Jobs takes a few graphic images, superimposes them, gets automatic transparency, and then inserts an OpenGL three dimensional rotating image into the same photograph - halfway hidden behind the trees. Up front he's got a Ferrari - initially on a black background but instantaneously made transparent - and a picture of Donald Duck for which the same applies, and then he puts Donald behind the Ferrari and you can actually see him through the Ferrari windows.
They don't have those programs on OS X.
And if you look closely at the mail correspondence in the beginning of the demo, you'll see mention of the increase in the number of professional software titles for the previous year. NeXTSTEP was getting a lot of heavy duty software, and Jobs knew he needed those titles to survive. And he had them.
OK, now let's jump five years ahead in time. It's Boston and it's Macworld and Steve Jobs is going to make a comeback. And you'd wonder how many people in the audience know much about him, for in all the dozen years he was across town they didn't pay him any heed.
And now here comes Steve Jobs and there's an ovation. And people are really excited.
And Steve Jobs doesn't say or do a lot this time. He has no products to show off. Really all he's doing, aside from presenting the deal with Microsoft, is talking bullshit. And in the end he does come on heavy.
And you realise there's an enormous difference between the Steve Jobs then and the Steve Jobs five years later. The first Steve Jobs didn't have to bullshit. His audience wasn't interested in bullshit. All he had to do was present a product.
The second Steve Jobs had to bullshit because there was nothing else to do. There were no products to show off, nothing to sell.
And still the audience sat enraptured. A company on the brink of ruin and nothing good - nothing at all - to show off. And you start to wonder what they're thinking.
In the one case you saw a product that sold itself, that even today is way ahead of its time. In the other case you see nothing at all - only bullshit.
If Apple as a corporation have issues, here's one of them.
And please note: the NeXTSTEP you see in the first presentation was professional software for the world of business. Obviously so. It had database interfaces up the wazoo; it could hook up to anyone's network; it worked seamlessly with Sun, with IBM and Microsoft, and even with the world of the Mac.
And that's a lot different from the OS X of today.
As for the speed, that should give you pause. Those machines were crippled compared to what people use today, and yet NeXTSTEP 1992 is faster than OS X Tiger 2006. And if you think you don't understand why, click here.
That product demonstration you've seen is one of the best and most important you'll ever see. And all the more reason to lament what's happened since.