Dan Gelder on xCards

Current Occupation: By day I keep the streetlamps lit; by night I'm a clown at children's birthday parties.

How did you get into this job?

Delicious luck.

How did you get into working on Serf?

How can I explain this...I played with my uncle's Powerbook 100 when I was about ten, and within eighteen minutes I had run every program on the hard disk and reprogrammed the clock. Serf was partly an attempt to allow myself to have that kind of spontaneity. I'm kind of a user interface fetishist and I loved seeing what other people did with buttons and fields.

Did you have a HyperCard-related job before you started Serf?

Yes, I worked for Royal Software. I was there for a year. Somehow.

Did you work with HyperCard before you started working on Serf?

I knew even more about it than there actually was about it.

How is/was working on Serf?

Tedious at first, but the pace became quicker once I cartwheeled over the line where I could write Serf in Serf...

What was your first job, ever?

Recording the names and artists of a record collection.

What is the most important thing in life for you?

Inner peace.

How, when and by whom did you get introduced to Serf?

Umm, why don't you write some logical questions?

What impressed you most about Serf?

That it really was possible in the end.

What do you consider your main contribution to Serf?

The cool name.

Please describe Serf in one sentence

Okay, it's from the original promotional web page: "Serf picks up and relights the torch, and then sets your hair on fire because it sees demons in it."

Is there any particularly clever solution you applied to Serf you'd like to describe in excruciating detail?

Well, at that time, it was pretty much a given that I'd have to expose some sort of object-orientation inside of Serf. HyperCard has its strict hierarchy of backgrounds and cards with buttons and fields, but that's by no means enough for me; i wanted you to be able to pick up pieces of things and put them in other places. You'll notice that MacOS X's built-in apps all function best when you drag stuff around between them; that's because Cocoa's object scheme is well designed. So once I'd accepted that, I needed to make it intuitive to refer to long stretches of redirection, such as the fourth last to last character of the ninth word in the tenth paragraph of background field "Charles Dickens" in the database file "Ebooks" of myFolder.

C++ and all the other curly-brace languages required you to go from container to contained, with a little dot, like this:

myFolder.file("EBooks").bgfld("Dickens").paragraph[10].word[9]....

You get the idea. I came up with the apostrophe-S insight:

the tenth paragraph's ninth word in myFolder's database file "Ebooks"

I defined the way you could combine apostrophe-s, “of”, and “in”, and it worked right; you could just type it the way you thought it. So I still feel good about that.

If you could add one more feature to Serf, what would it be?

A total rewrite!

How and by whom did you get introduced to HyperCard?

My seventh-grade computer lab teacher set me up.

What impressed you most about HyperCard?

The pluckiness of it; the way it wanted to be used. Make something with me, it'd say.

What do you consider your main contribution to HyperCard?

I invented a hack that, with a single twiddle, would have allowed me to do all of Serf right inside the HC environment, but something tells me Kevin Calhoun wasn't cool with it. That something telling you is me.

Please describe HyperCard in one sentence

Exactly!

If you could add one feature to HyperCard, what would it be?

(Apart from color - we all wanted that)

Uhh, just write a little MacIntel 68k emulator so it runs in OS X exactly as-is; that'd do it.

Do you think there's a new HyperCard today?

I think it's the web.

Do you think there is still a need for a new HyperCard?

Kinda, but don't get me started on what it should be like.

What do you think your competitors did better than you?

Stuck to it longer.

What single thing do you think your application did better than its competitors?

Made sense right away. It didn't give you that feeling of being smacked in the face by a nomad with a gray typewriter. Meta-cough.

Did you ever get to meet any of the competing developers?

I believe I met at various Apple events, or at least chatted online, with something like all of them.

Why did you start writing a HyperCard clone?

Some say that all creativity is a sublimation of our sex drive, Uli. What do you think? I just had it in me. It took a year and a half to do it. Then I was done. Ahhhh!

Do you think HyperCard clones are a good thing?

The more hard work and idealism in the world, the better.

Dan, thank you for this exhilarating interview. And for MegaWindows, the apostrophe-s and your AIM buddy icons and status lines.