Too much partying last night. Getting up today is very difficult. But
there's a great session at 9:00 am that I don't want to miss so I drag
myself out of bed and get going.
Session: Mac OS X Kernel
This is an overview session on fundamental Mach concepts covering tasks
and threads, interprocess communications (IPC), virtual memory handling,
and the Mach interface generator (MIG). Emphasis was given on using
multithreaded programs to take advantage system resources.
The book for more info on this is the somewhat dated but still useful
"Programming Under Mach" by Joseph Boykin, et al. Available from
Amazon.com for $58.95. (I already
ordered my copy.)
Session: Multi-processing and Mult-threading on OS 9
Here, more details were given on the situations one might use the MP
library on both uni-processor and multi-processor systems. This was a
"nuts-and-bolts" session whose emphasis was to not wait for
multiprocessor system to begin using the MP library. Start now.
While getting expresso at one of the expresso carts, I tend to meet
people and strike up conversations. This morning I had a pleasant
discussion with John (_) Trow of HP, Printing Division.
With expresso in hand, I decided to wander over to the DTS lounge to see
who is in.
On the way, I coincidentally got pulled into a "Listen and Learn Session"
for developers in the scientific field. The intent of this session for
Apple was to get some focus from developers on what is needed to get Macs
back into the scientific research and medical communities. Lunch was
provided and a wide variety of developers happened to be there. Not only
that, Phil Schiller was there to, well, listen and learn.
Nothing was promised; but here's a big "Thank you, Apple" for at least
doing this. This session alone made my trip to WWDC worthwhile. This
simple event proves to me that Apple is indeed listening. With so many
great Macintosh technologies, both hardware and software, it seems like a
perfect time for Apple to focus again on the scientific markets and for
the scientific community to look again at Macintosh.
In this session, I personally thanked Phil Schiller for the decision to
spread the GameSprocket functionality throughout the system so it was
available to everyone (not just with a gaming focus). He mentioned a big
flap on the internet about GameSprockets "going away." Well, yes and no.
The GameSprocket functionality will be there. Either it will be in the
core OS, or with will be in Carbon. Its NO loss; and so, a non-issue in
my view.
I then went over to the DTS lounge and hung out with George Warner for
far too long (I missed the "App Packages & Doc. Typing Session," one
which I really wanted to see.)
But I think the time spent was well worth it as George has an incredible
amount of knowledge he is willing to share and a has a perverse sense of
humor I really like.
I also missed meeting the Quesa development team after the OpenGL
Feedback session but I hope I'll meet those guys another time. Quesa is
an open source replacement for Apple's now abandoned QuickDraw 3D. Quesa
is being built for Mac 8&9, Mac OS X, Windows, Linux, Solaris and others.
I did see Brian Greenstone, author Nanosaur and Budgom one more time
before he caught his flight. He is planning on updating all his 3D tools
(most of which are free) for Quesa. I can't wait.
Now, when I think back to all the fuss that was caused last year when it
became known that QuickDraw3D was being dropped from Carbon (being
dropped) in favor of OpenGL, I can't help but think how we overreacted.
Perhaps this motivated the development community even more to preserve
QD3D and they did -- with a fully functional, truly cross-platform
replacement, Quesa. Apple can now focus on making
its OpenGL even better, and the Quesa community can make take Quesa
forward with it resting nicely on top of OpenGL. A win/win. I now think
the same for GameSprockets. (In other words, everybody please calm down).
Session: Performance Tools on OS X
This session introduced the usage of some command-line tools and GUI
tools to examine how your app is using various system resources and to
trace down memory leaks or aberrant program practices. Command-line tools
shown were ps, top, fsusage, vmmap, and scusage. GUI tools shown were
MallocDebug and Sampler.
Some strategies for identifying memory leaks, stack over/under flow were
also demonstrated with these tools. Does the address 0xdeadbeef and
0xbeefdead mean anything to you_ It will.
As I was going across the street to the Civic Center for the next
session, I happened to cross without the light (jay-walking). There were
two policemen who were quick adamant that this was "a very dangerous
thing to do" (as if I was a 3-year old). Hey, I'm from Pittsburgh where
jaywalking is not only allowed, its mandatory. Anyway, be very aware of
how you step into the streets here in California because such an offense
will cost you a $300 fine (I just got a stern lecture).
Session: Carbon on OS 8 and 9
This session was intended to cover issues on running Carbon apps on OS
8.1 through OS 9. The watchword here is test for the OS version and even
a function (using Gestalt) before calling it; it may not be there.
This session ended really early because a lot of the issues that were
going to be covered apparently were eliminated in DP4. This gave me
time, finally, to finish yesterday's report. There is just too much going
on here.
Tonight is the beer bash on Apple campus. As I wait for the busses to
take us in the plaza of the convention I noticed the gardenias have
blossomed giving the air a very pleasant scent. It is also, finally a
clear sky with a full moon. I spend some time talking with my wife and
daughter while waiting. I also tag along with the Aussies of the other
night. (Yep, they're getting tired of me now). But we have some laughs.
I depart from them once we get to the Apple campus. As per last year the
Apple Company Store is jammed and the line is around the corner. No sense
going in there, it will be cleaned out before dark.
At this event I go into major pinball mode making sure to walk around the
entire grounds and see if I can recognize any Apple employees. This year,
each Apple group (OS technologies, Java, QuickTime, hardware) had colored
t-shirts for their group and they tended to stand around together in
various parts of the grounds. Cool. I met up with a bunch of people I had
met earlier in the week so this was a nice evening. One thing I didn't
miss this year was the FireWire Plug-Fest. The had a bunch of machines
and just plugged in as many FireWire devices as possible (this is more
fun than it sounds especially with a couple beers already down). Last
year they did a USB Plug-Fest and got more than 127 devices on a single
chain.
The party closes down around 10:30. And when I get back to the convention
center I find that the night is still young (read: I need more beer). So
I followed a group into the San Jose night life (and this is another
story). Nevertheless, I got back to my room at a
"reasonable" hour.