[an error occurred while processing this directive]

WWDC Sessions: Day 1

by, Eric Carr <>

Following are my impressions/summaries and some thoughts on the sessions I attended. Overall, I got the feeling a lot of people were excited by all of the announcements and the state of the Mac as a development platform. Jobs made a very exciting speech. Looking back, there were not ground breaking announcements (how much is that motivated by the hyped expectations of the rumor web media). But I thought Apple did a great job nailing what they plan of delivering and showing how exciting it will be.

* MacOS X Update Session *

Didn't keep as fine notes on these sessions but there were some interesting things to come out of them.

Apple is stressing the advantages of building a very modular, layered OS. This allows them to have very defined interfaces across layers, enabling pieces to be plugged in and out for testing, upgrading and the like. Darwin, Quartz and APIs is the same order as in the Keynote by Steve. Key advantages of architecture for the future are Mach 3.0, IOKit and SMP capabilities. Mach 3.0 is a big step improvement over Mach 2.5 (current base of Darwin and MacOS X Server). IOKit is a revolutionary move for the IO model. It is object oriented and will allow quick development of a broad class of hardware drivers.

Display postscript, QuickDraw and the decision to settle on Quartz was explained. A lot of traditional display system reply on a server to interpret and display requests. Server manages the windows, the client does the drawing. Both Display PS and QuickDraw were raided for the best ideas and put together in Quartz. Apple believes the pdf imaging model is the wave of the future and is heavily betting on its flexibility and relevance going forward.

Blue Box -> Classic

Yellow Box -> Cocoa (higher level of Java integration)

Mozzila was carbonized in a weekend by some of the Mozilla team members.

Blue Box was shown in MacOS X running in the same window. No need to switch to a different screen as demonstrated in MacOS X Server. Very slick.

Demo of Carbon libraries and _binary_ compatibility across MacOS 8.1/8.5/8.6 and MacOS X. That is very slick. Just need the Carbon lib for MacOS 8.x to run the Carbonized apps.

Mathematica 4.0 (not currently released) was demoed. The porting was very easy given the Carbon and Mach/Unix roots of MacOS X. Mathematica is a partial app with a front end and a compute kernel. Traditionally, the front end has been very graphical (Mac, Windows based) where the compute kernel is faceless and very Unix like. This fit the development needs for MacOS X perfectly. Carbon provides a easy way to get the front end over to MacOS X. The Mach/BSD capabilities get the compute kernel compiled very easily (make files). Mathematica front end was using Open Transport to communicate with the Unix like mathematica kernel on the same machine. This made porting job much easier. Open Transport code is supposed to not require a different compile of the kernel. Haven't had the networking session which explains how the streams based OT is going to fit into the socket world of OpenStep. Overall, a very good example of the ease of porting apps over using Carbon and the mix of Unix functionality and flexibility.

* Web Objects *

Was the marketing speech. Nothing which cannot be deduced from checking out Apple web page. Compelling reasons to use WebObjects in a corporate environment given a lot of various data sources.

* Developing with Darwin *

This session brought out the importance of getting IOKIt as soon as possible for developers. The problem is there is no plan to synch the released Darwin code and the base of MacOS X before the DR 2 release in the fall. Without the end kernel and the IOKit, it will be very difficult to make progress along those lines. I think IOKit is the more serious hole since everyone misses out on the opportunities to develop more drivers for the MacOS X Server and Darwin platforms. This might delay a lot of work.

Binary release out today. Doesn't provide much more beyond the core OS. Not very install friendly yet.

Standardized on the FreeBSD distribution.

Debian install system is used for administrating of installed packages. It is an experiment to see how it works.

Very good session on Darwin. Apple is willing to devote some resources to the cause, but most of the code management should be moved out of Apple to capture the larger web of developers.

That concludes the updates. The sessions have been pretty high level, but some have mixed in more technical questions. It appears to be a very seamless software strategy Apple is selling going forward. There are some major changes that must be reconciled though.

And so ended Day 1 of WWDC.

Eric