Articles Archive
Articles Search
Director Wiki

Giving it away

June 9, 1998
by Zac Belado

One part of the reason that Apple has never had as large an installed base of developers is that it lacks a certain "geek factor". I can still remember my first experience with a Mac in 1984. Within five minutes I had walked away from the machine because I couldn't find a Basic compiler and saw no way to get at the lower level memory of the machine.

I can also remember what brought me back to the Mac: Pagemaker.

And that, in a nutshell, is the problem that has plagued Apple since the Macintosh was released. It appealed to a certain portion of the development community that shared the same vision that Apple (or more to the point, Steve Jobs) did. They used the Mac to develop applications that were more about paradigmatic shifts in the way we used computers and less about the mundane repetitious chores that they still tend to resolve around.

But the people that thrived on the development of that same series of mundane chores never saw the benefit. And so they never developed for the Mac. And the entire platform ultimately suffered because of it.

Not, mind you, that this is really anyone's fault.

There is a remedy to this situation though. And it can be succinctly stated by paraphrasing a line from W.P Kinsella: "If you give it away they will build it".

There is such a thing as a free lunch

You may already be familiar with the proposal made by Don Yacktman. What Don is proposing is that Apple release the source code for the Mach OS and Driver Kit portions of Mac OS X. Don's thesis uses the Linux operating system as both a carrot and a stick. The success and rapid growth of Linux is used to illustrate what Open Source software can achieve. And that same rapid market expansion is used to caution Apple that it must do something in order to speed its own growth or be overtaken by Linux. The lesson it tries to serve is that in order to become more competitive with Microsoft, Linux must first overtake Apple, eating away at Apple's market share and developer-base to do so.

There are several compelling reasons why Apple should follow the Open Source model, but fear of Linux encroaching on Apple's territory is certainly not one of them. Linux is very many things, but, user-friendly is certainly not one of them. The GUI in a Linux system is primarily a means of segmenting information into discreet units. Linux (and almost any Unix system with the exception of Irix and NeXTStep) awards the user that doesn't need a GUI. This means, for the near future, geeks. Your average Mac OS user (or even Win 95/98 user) will not find Linux a very usable system.

Apple might have some fears about Linux's growing userbase if they actually produced a server product. Certainly when OS X Server (or Rhapsody) ships there will be competition between the two platforms and this is the area that Apple's potential Open source efforts might help to forestall.

Or will it?

A rose by any other name

Are Linux and Rhapsody competitive products? I don't think so. Linux is for people that want to use a UNIX system on their PC. Rhapsody will be for people that want to harness the power of a UNIX system without having to approach a command line interface (CLI). Rhapsody is, effectively, NeXTStep with an Apple UI. Linux is UNIX with the same UI and some people will not use it primarily because of the lack of a fully featured GUI.

I'm already saving my pennies to buy a new system specifically to run Mac OS X Server when it is released. This despite the fact that I have a Linux server purring away quite happily under my desk. I think Linux is great, I use it, I will continue to use it. But its use requires a much greater investment in learning its intricacies. The Linux learning curve is far steeper than any OS X Server curve.

But even if it has a compelling reason for people to use any new operating system Apple needs applications and they need a broader range of development in order to fuel a continuing cycle of growth. Things that geeks like to make and use... like database systems and Perl libraries and drivers for obscure hardware.

Which brings us back to the Open Source question?

As talented as the programmers at Apple are there are only so many of them. Open Source projects have already proven that they can generate results far out of proportion to the actual effort used to initiate the project. Take a look at Mozilla. Netscape releases the source code for their browser and within days programmers are already adding features to it. Companies can't pay for the kind of programming that people are willing to produce for the sheer thrill of it.

This leads to the one area in which I think Don Yacktman's proposal fails. It is a compelling and heartfelt, but I don't think it takes the argument to its proper conclusion. What I'd like to propose is that Apple doesn't stop at releasing the source code for the Mach OS and Driver Kit portions of Mac OS. I believe that it is in Apple's best interest to release all the source code for OS X and OS X Server.

Why not?

Apple isn't in the software business. At least not directly. Apple ships software. Apple writes enormous amounts of code. But Apple is in the business of using software to generate hardware sales. If you use a Mac, think back to the number of times you have actually had to buy an Apple operating system. I've done it once and that was when Apple was shipping a "professional" version of System 7.

The fact is that Apple doesn't rely on software to generate its sales numbers. Unlike Microsoft, they can quite easily afford to give their entire operating system away a'la Mozilla. The number of actual sales they would lose would be miniscule compared to the number of hardware sales they would generate. And it would generate sales because the Open Source community could port libraries and apps over to OS X that Apple itself wouldn't be able to do.

The vast delay Mac developers have had in receiving a PPC port of the OpenGL libraries illustrates the problems Apple has even getting "basic" technologies onto their platform. VRML, another promising technology, didn't receive a portion of the exposure on the Mac platform due in no small part to the UNIX/PC centric nature of the developers driving the tool development.

That has to change if Apple has any dream of expanding past its niche of designers and artists.

Giving away the source code could do it.

Zac Belado is a programmer, web developer and rehabilitated ex-designer based in Vancouver, British Columbia. He currently works as an Application Developer for a Vancouver software company. His primary focus is web applications built using ColdFusion. He has been involved in multimedia and web-based development, producing work for clients such as Levi Straus, Motorola and Adobe Systems. As well, he has written for the Macromedia Users Journal and been a featured speaker at the Macromedia Users Convention.

Copyright 1997-2019, Director Online. Article content copyright by respective authors.