Dojo (HowTo)







  Easter Eggs




  Martial Arts

What are they?

By:David K. Every
©Copyright 1999

Apple has given developers their directions on Rhapsody and OpenStep. The press is still making constant errors on what it is, and what it means. Complex issues like OS's are hard to encapsulate in sound-bites, and most magazines have yet to successfully explain what is going on. Apple's explanation of Rhapsody

What is YellowBox (OpenStep)?

YellowBox and OpenStep are basically the same thing. OpenStep was NeXT's libraries, but since Apple has acquired them, they have added functionality, bundled more of those libraries into one package, and renamed the super set YellowBox. So YellowBox is just Apple's name for an updated (newer) version of OpenStep. YellowBox is the fourth generation of these libraries so it is a very mature and powerful system. These Object Libraries are not something pulled together out of the ether, they are proven development systems and the most advanced libraries available. Because YellowBox is super set of of NeXT's OpenStep, things written for OpenStep will run on YellowBox -- but there will be more features in YellowBox (so the reverse may not be true).

YellowBox is an Object Oriented set of API (Application Programming Interfaces). It is basically a set of object-based libraries, that can sit on any Operating System. Because the Libraries sit on top of an OS, some call them Middle-Ware. These Object Libs. are higher-level and easier to use (for programmers) than an OS, and they offer many services that make Application-writers lives easier. But YellowBox itself is not an Application, so these libraries are in the middle - between Applications and Operating Systems. If you write an application to this library, then your application can run on any Operating System that runs this library. Very good for developers and users.

Many of these Object Libraries work with other libraries. Each of these Libraries, or sometimes parts of these libraries has their own name. Including -

  • AppKit - high level graphics and User Interface functions
  • Other Kits - other parts of basic OpenStep.
  • EnterpriseObjectsFramework (EOF) - Allows programmers to create database application very quickly, and allows programmers to change either the UI or the database at will (very Powerful).
  • WebObjects - this is an alternate UI Framework that allows programmers to dynamically create web content (via HTML or Java) for browser based interface display.


YellowBox allows developers to create programs in a fraction of the time that it normally requires. Because YellowBox is Object Oriented it is more versatile than non-Object OS's, it allows Apple to change things easier, it is easier to isolate bugs, and is easier for programmers to understand. This OOD (Object Oriented Design) is the wave of the future of software development -- and Apple is leading the way (with the help of NeXT). Microsoft also realizes the superiority of OOD and has been promising their Object-Based Operating System (called Cairo) for 5+ years now. It was supposed to ship in '94, but looks like it will not ship before the turn of the millennium... and Microsoft may mean this millennium, or they they may mean the next one, sometimes its hard to tell. But Microsoft will try to follow Apple and NeXT's lead -- but YellowBox (and Rhapsody) is a huge head start, and probably a 5+ year technology lead.

OpenStep also has a set of high-level development tools called InterfaceBuilder, ProjectBuilder, and CodeBuilder; EOF and WebObjects have some additional tools as well. With these tools programmers can reduce their work load by having rapid prototyping tools that interact with each other and are real easy to use. Programmers basically just draw their interfaces, make the connections to the code and then ship those programs.

Now what does that mean to users?

YellowBox will sit on top of many Operating Systems, is easier to program, and allows applications written on one platform to run on many platforms. Because YellowBox is available on many platforms, and is easier to program, it will mean that more Applications will be available for it. Applications that are written for it will automatically get the feel of the OS it is running on. This means more consistency for users.

The fewer the lines of code the developer has to write (and the more robust the system) the fewer bugs there will be, and the more time the developers will have to make better programs. YellowBox does just that. It helps developers write less code, with fewer bugs, and offers lots of "free" features to developers. This means better applications for user, with more stability. Because developers have to write less code, it also means that it costs less to write Applications. That can mean lower costs to users as well.

So YellowBox means more Applications, better Applications, more cross-platform applications, fewer bugs, more consistency, lower costs, and more reliability. These are all very good things.

What is Rhapsody?

Rhapsody is the code name for Apples next Operating system. This is not only the YellowBox API's (libraries) but it is also the Operating System underneath, and the User Interface (user-experience) on-top -- the whole enchilada.

Apple's Advanced User-Interface

Yellow Box
OpenStep, EnterpriseObjects, WebObjects

System Services

Mach Kernel

It is an Operating System that will give users an advanced look and feel that is more than the Mac. It feels a lot like a Mac, but has many more powerful features. The User Interface is not finished, but it looks like it will include tear-off menu's, proportional thumbs, a services menu to do things like faxing and spell checking, it will behave like the finder but will have an Optional file-browser and a Unix CLI if you like those sorts of things. It will evolve over time, but is meant to give users a very "Mac-Like" experience, with many extra power-features for those who want them.

This Operating System (Rhapsody) will run not only on Macs, but on Intel Hardware as well.

Rhapsody on PowerPC will be superior to Rhapsody on Intel Platform because PowerPC's are so much better than the Pentiums (and PPC's are increasing that lead, year by year). Apple has control of the Mac Platform and because of that control, Apple is able to integrate the System with Hardware much better than can ever be achieved by Microsoft, Intel or Apple on the Intel hardware boxes. So the PowerMacs will not only remain faster, but they will also remain far easier to upgrade and maintain.

Since the foundation of the Rhapsody is Unix (Mach), and Unix is still more powerful than WinNT (by a lot), then Rhapsody too is more powerful and scalable than Windows NT. Rhapsody (Unix) is also more mature, and reliable than WindowsNT as well. Yet the user is presented with an experience that is better than the Mac. So Rhapsody is not only as easy to use as a Mac, but it has more features, and is more robust than NT. So this is the best of both worlds.

Mac Users will get more stability and power. Windows users will get more ease of use and power, and be able to run it on their systems. IS depts. will be able to configure PC's to use Rhapsody on either hardware. This is much better than the current situation.

The press will give Apple a hard time because Rhapsody on Intel will not be a big seller. They will try to play it off as "Apple is not making inroads against Windows". They will probably try to compare Rhapsody on Intel to sales of Win98 and WinNT combined -- but this is stupid.

The idea of Rhapsody is that many people can try Apple's User Experience, and that will increase Rhapsody sales (a good thing). Each additional sale is good, sales that Apple does not get do not matter, because sales they are getting are BETTER than things are now. Apple needs to offer this service to companies who want to have it, but it will take years before Windows users will throw away their old OS's. Either way, developers will have more platforms to deliver on, which means more sales and more reasons to develop for YellowBox -- which is a good thing. Applications written to Rhapsody (YellowBox) will automatically run on WinNT, Win95 (98), MacOS, Rhapsody on PPC, Rhapsody on Intel and some Unix flavors. This is good for developers and users, no matter how the press spins it.


YellowBox is a set of development and delivery Frameworks. It is a set of Object-Based Libraries that ride on top of an Operating System (Windows95 is also a set of libraries that rides on top of DOS). YellowBox offers the native look-and-feel of the OS it is riding on, and allows Application written to YellowBox to run on many Operating Systems.

Rhapsody is an Operating System that is designed to run YellowBox Applications really well. On PowerPC machines, Rhapsody also runs BlueBox (MacOS) Applications better than those application run on straight MacOS. Rhapsody on Intel machines will not run BlueBox (MacOS) Applications at all, but will still offer the most advanced look-and-feel, and the best performance of any OS available on Intel platforms.

For even more information on Rhapsody see "More on Rhapsody".

Created: 05/20/97
Updated: 11/09/02

Top of page

Top of Section