The team was very small: the manager and one other engineer.
Right before I started, Apple shipped the first PPC Macs.
The QD team had done a lot of work for that so they took long, deserved, multi week vacations.
My parent organization was quite large but all the other folks were working on QD3D, QDGX, Printing, Type.
All of which had either just shipped or we’re still under development.
Personally, I was terrified: I was a junior engineer, with no graphics experience, now responsible for drawing basically everything you saw in macOS.
A major reason the original PPC machines felt so fast, even though most of all the software was emulated, was that big chunks of QD were ported to C and compiled native.
But not all.
One of the largest bits still in assembly was the Palette Manager.
It was responsible for making sure that apps would get the colors they desired.
It was also written in some of the most gnarly ‘020 code I’d ever seen.
At this time, they were trying to ship QD3D, so they’d bring in dinners for engineers to stay late. Even though I wasn’t working on it, I was invited to eat.
During these meals, I’d listen to them talk.
All of them were very smart, but most didn’t have experience debugging on macOS and nearly no one knew PPC assembly.
So I started helping them. We’d take our pizza to their office and fix a crash or optimize some code.
I even got a couple of Develop Puzzle Pages out of it.
I tell this extremely detailed history as a preface to the next bit.
It was important for Apple to have some cool GX apps.
And these folks had one.
“Go down for the day and help them debug it.”
So I got on the plane the next day and sat next to Powers Boothe. To this day I have no idea why he was in SJC and I was afraid to ask.
We got to their office and I was finally told what they were working on.
You would design these beautiful cards with awesome typography (yay GX!) on a touch screen.
Once you were happy with your card, you’d print it then and there.
The kiosk was some PowerMac running their app.
And it was crashing. All the time.
And right away I could tell something was weird. Structurally, most Mac apps look very similar. But this app was like nothing I’d ever seen before: heap and code were off.
“Uh. What is this?”
“It’s our app”
“But…what IS it?”
“Oh, we’re writing it in SK8.”
SK8 was a weird Lisp-like multimedia authoring environment that Apple ATG was developing. Look it up.
While they talked, I started drawing a matrix of every possible failure.
- bugs in app (most likely)
- bugs in GX (less likely)
I also had to consider bugs in:
- the SK8 compiler
- the libraries
- the bindings for the Mac API
I installed SK8 on my laptop and began writing a HelloWorld app.
I didn’t catch my flight that night…
I was pretty angry, it felt like negligence to convince/allow these developers to go down this SK8 path. Their app would’ve been difficult enough in a traditional language.
The shake helped.
Eventually it seemed like there was some state being lost going from GX back to the SK8 runtime.
I took them aside and told them to dump it.
Their engineers had a “told you so” look on their faces and the management just looked sad.
I headed back to Cupertino.
They never shipped that kiosk. And I think they got out of Mac development.
I described my experience and they were shocked that anyone at Apple was pushing 3rd party developers to use it…