To understand the future, we must first look to the past. Clearly stating the historical perspective will help us to better understand how the common ground has now shifted so dramatically.
Over the latter part of the eighties Apple has held an approximate ten percent market share of personal computers, up to fifteen percent in the home (US domestic) market, and less elsewhere. Recently this has been dropping, due to the success of Microsoft Windows, and the delayed release of newer operating system technology from Apple.
Finally, a year ago Apple appointed new professional managers to correct the losses and declining market share of recent years. Gil Amelio, formerly of National Semiconductor was brought in as CEO, and he brought in Ellen Hancock, late also of National Semiconductor and IBM, as Chief Technical Officer.
From that point onwards Apple was searching for a replacement future operating system for Macintosh. According to reports, they were asking only three questions of a candidate OS, which perhaps shows the straits Apple were reduced to: "does it have multitasking, multiprocessing, and protected memory?". IBM were consulted, and it was widely reported in the press that Apple were considering BeOS, and Solaris.
By the end of 1996 Apple's share price was at a ten year low. Due to quality control problems they were late shipping one of the PowerBook models, with substantial backorders, and despite a cash account of $1.8 billion, posted a $120 million fourth quarter loss.
NeXT was founded by Steve Jobs in 1985, after being pushed out of Apple. The first product, the NeXT cube, was released in 1988. The hardware design was loosely based on the SUN (Stanford University Network) public domain design for Motorola 680x0 processors, and the operating system used the other remaining idea from Xerox PARC: object oriented programming.
Following several years of mixed fortunes selling hardware based on the Motorola 680x0 series of processors, NeXT were forced to discontinue hardware production in February 1993 by one of their biggest shareholders, Canon. Just prior to this act, and in fact running for several years previously, NeXT had a project to develop a new hardware range, referred to as the NRW (NeXT RISC Workstation). The final flowering of this project was a symmetric dual processor PowerPC design, which was successfully running a NeXTSTEP game (Xox) in the labs.
Over the coming couple of years, NeXT consolidated their OS on Intel hardware, and produced new ports running on Hewlett-Packard's PA-RISC workstations, and Sun's SPARC 4, 5 and 10 systems. The port from m68k to Intel gave them an OS that could cope with both big and little endian architectures; something that NT, which also claims to be a portable OS, cannot do.
NeXT licensed a version of this development environment, including OpenStep, to Sun, which would finally be released in 1996 as Neo Desktop/Workshop. By that time, NeXT had lost interest in it (OpenStep), and Sun themselves were far more interested in their new baby, Java.
Initially NeXT had pitched their hardware exclusively at the academic market, but they revised the target market frequently, only ever seeming capable of addressing one market segment at a time. So their shifted from education to publishing, only to switch away from publishing just as the first publishing applications were due for release. Finally they settled on Mission Critical Custom Apps (MCCA) as their market of choice. This meant selling systems for development to customers who would accept any operating system to deploy applications as rapidly as possible. This is only feasible if the income from the developed applications, and the saving from releasing them a few weeks earlier than with other methods, was very vast indeed. For derivatives trading houses, and a few others, this was true.
This culture could be said to be descended from the top. Steve Jobs had a reputation for years as being hard to work with. He set very high standards of quality, and intervened at all levels. Frequently he would meet with a customer at a high level, immediately followed by a cancellation of all business.
By the middle of 1995, the pressure of competing for sales against Microsoft had told on NeXT. Without officially announcing it, they stopped new development of the NeXTSTEP operating system and sought new markets. By this time they had products for server applications (Portable Distributed Objects, or PDO), and a object oriented system for accessing relational databases (Enterprise Objects, or EOF), which relied on the NeXTSTEP operating system.
It also seemed as if growing interest in Java would supersede any interest in a purely backend technology such as Web Objects.
The focus on selling an expensive product meant that NeXT were increasingly reliant on selling their own consultants to customers, and shifted towards a more introverted pattern of a few relatively big sales.
Steve Jobs by this time was disenchanted with NeXT, leading to a series of increasingly disillusioned interviews in Wired and Red Herring over 1995 and 1996. His time was mostly spent with his other main investment, Pixar, then doing well as a result of a collaboration with Disney, the movie Toy Story. His interviews seemed to concentrate on the likeness of web technology to older mainframe systems, with the web browser cast in the role of the 3270 dumb terminal; the only things he could be enthusiastic about were his family life, Pixar, and Miele washing machines.
By late 1996, NeXT were turning over about $50 million per year, and had only reported a profit in one quarter. Shifting to a consultancy emphasis was reducing total revenue without necessarily increasing profitability as had been hoped. Signs were that the new web market was not satisfactory for NeXT, and their hopes of an IPO would never be fulfilled.
NeXT users bought NeXTSTEP for a number of reasons; most these reasons would be important for every user, so there was a very consistent background for all users.
These reasons are:
Note that with Interface Builder there are other visual programming environments, from Visual Basic onwards; but only interface builder uses the "freeze-dried" objects approach, rather than code generation.
This environment has limitations: only a professional programmer will have the skills to make proper use of it; and it requires that development is done using an object oriented language with dynamic linking (which in practice means Objective C, although Java is a new potential candidate). It also only gives these benefits in full where the user uses the NeXTSTEP operating rather than an OpenStep environment on Solaris or Windows NT.
Depending upon the methodology adopted by the developers, projects can be delivered in a very short time using prototyping techniques, although the code produced would require extensive reworking to build up a proper object library; or projects can deliver in a more normal timescale, but with substantial reusability of the libraries produced. In practice, most development projects use the prototyping approach, and move towards object reusability over several released versions of the project.
The RAD approach that object orientation encourages works by allowing individual developers to fully comprehend the nature of larger problems than they could resolve using traditional development techniques, because object orientation mimics more closely the natural understanding process of the human mind. It has no overall impact on project management, except by reducing the size of a team required to work on any project.
A side effect of being able to deliver individual projects faster, is that larger, more complex projects can be taken on. An organisation using NeXTSTEP can deliver solutions to problems that their competitors are unable to consider. An application can also be revised on far shorter time cycles than in other environments, and therefore track shifting requirements much more closely, which also leads to applications being feasible under NeXTSTEP that would not be in other environments.
The graphical user interface used by NeXTSTEP is unique to this operating system; the development tools available mean that products have to be developed for NeXTSTEP alone, so the applications available are also unique to NeXTSTEP. This gives rise to all of the advantages and disadvantages from the users perspective.
The user interface works well because it is extremely "orthogonal". This means that it is very consistent, and all commands work across all applications, as far as they can be expected to. This is possible for a number of reasons:
Again, these benefits are unique to NeXTSTEP, and don't apply to the OpenStep Solaris or NT environments. They also mean that applications developed for NeXTSTEP can gain a high degree of functionality from the common application environment, and application should be designed to meet specific functions, rather than taking the "kitchen sink" approach common in the Windows and Mac environments.
One problem is that, although the cost of training is low because of this, as NeXTSTEP is an uncommon operating system, all users will require retraining for NeXTSTEP and all applications. Unless there is a long term commitment to NeXTSTEP, this cost will far outweigh any productivity benefits from improved ease of use.
NeXTSTEP systems interoperate well with other NeXTSTEP systems because of the netinfo database used for shared administrative data. This can be administered from a central location, and common defaults easily set. This is a better system than the NIS+ used by Sun, because it is implemented for more functions in the operating system and is always used by the system, rather than being a configurable option; and is better than the Windows registry system used in NT and Windows 95, as more data is shared, and user and application specific data is not held in the database unless it is important to do so. However, netinfo is limited in the size of networks that it can practically support, up to about 10,000 hosts.
Attaching a new NeXTSTEP machine to a NeXT network is (or can be) an automatic process. Any user can use the system within seconds of connecting it to the network; this is not an option with Windows or Macintosh networks.
NeXTSTEP supports TCP/IP and NFS natively; all NeXTSTEP machines can act as clients and servers for file sharing. IPX and AppleTalk have varying degrees of support from NeXT: AppleTalk was included then passed out to a third party (IPT), and IPX support has not been carried across to the latest versions of Netware or NeXTSTEP 4.x releases.
Interoperation with Windows networks is provided by NeXT including a copy of samba, a public domain utility, with current released of NeXTSTEP. This acts as a server, not a client, unlike for their IPX support, so interoperation is not ideal.
Some protocols are used on Windows networks that are not supported by NeXTSTEP, such as DHCP for propagation of IP addresses, etc. Again, this support should be included for full interoperability.
NeXTSTEP supports SMTP email with MIME, so interoperability is very good within the limitations of the MIME format. POP mail can be supported by the addition of some public domain tools. The one problem is that the version of sendmail supplied is both old, and hard to configure. Configuration should only be required for mail servers, however, and this is necessarily a skilled task.
Finally, better configuration tools should be made available. NeXTSTEP front ends should be available to configure PPP, DNS and sendmail.
The reason for the reduced cost is manifold:
A NeXTSTEP network is likely to need two people for administration and help desk duties per 100 machines. Comparable figures for Windows networks are one person per 10 to 20 machines.
Typical deployments, for all of the above reasons, are departmental rather than individual or global. They require a specific application that will be developed under NeXTSTEP, in a department that is relatively independent of the rest of the organisation. Hence the popularity of NeXTSTEP in profit centres of financial organisations, where increasing profitability can be balanced directly against the cost of deployment.
Industry standardisation on Microsoft Office, where users now expect to exchange data using Office file formats, has greatly increased in recent years, and has stifled the growth of NeXTSTEP. This is largely due to the use of compound documents within Microsoft Office; this format is not documented and is very hard for a developer to use unless they are running on a Microsoft operating system. The motivation for Microsoft to develop this format, ironically, was the poor interoperability of Windows applications.
All of the points discussed for NeXTSTEP users also apply to NeXTSTEP ISVs, or development houses. However, the existence of these companies is essential to the viability of the NeXTSTEP market. Without an alternative source for products and services, prices will be too high to allow easy growth. These functions inherently cannot be provided by the operating system vendor.
Because of the ease of development for NeXTSTEP, many developers flocked to the operating system in the early days when a large market was expected. These included single person development shops as well as large application developers who were attracted by the prototyping prospects of the market.
The large developers (Adobe, Lotus, Informix, etc) found quite soon that the dynamics of a small market with rapid development timescale, and their own internally imposed requirements to maintain compatibility with product lines running on other operating systems, meant that they couldn't compete with one-man developers, or keep up adequate profit levels.
Product developers found that the market didn't grow as rapidly as they had hoped. Unless the developer was very much in touch with the financial picture, and as talented at selling as they were at developing, then they had to quit the NeXTSTEP business. Survivors were very talented at business management.
NeXTSTEP applications are small, and quick to develop. The larger commercial applications are around 100,000 lines of code, although some are less than 20,000 lines. Development investment to the initial release was usually less than one man year. This is partly because an application can be "complete", and fully functional for NeXTSTEP while excluding some functions that are considered to be essential on other OSes, due to interoperation between cooperating applications. This means that cost of entry to the market is very low. However, the returns for even such a low investment are unlikely to cover costs unless a large volume buyer for the product has already been identified.
The typical profile of a NeXTSTEP ISV is a company that provides mainly consulting services to users in their immediate geographic area, with one, or a small suite of, high profile NeXTSTEP applications. The core company, excluding consultants, is likely to be no more than five people. Only very rare ISVs have more than ten core employees.
Pages designed by:
Paul LynchLast updated April 25, 1997.