I just love how Carmack has always upheld The Hacker Ethic and had no issue sending the source code for his games to others for the greater good. I do often picture business guys tearing their hair out when I read about this stuff and smile to myself.
He is truly a person to aspire to. It's a shame I'll probably never be as great as he is. The best you can is good enough!
Wil Shipley has always been my programming hero, growing up. I spent a lot of time reading his Pimp my Code series, and learned quite a few things about Cocoa from him. Not only is he a great coder, he's also an incredibly compelling writer and speaker.
Thank you so much! Unfortunately my [super init] thing is now wrong—Apple has modified the runtime and actually reserves the right to change the object returned by [super init] from the object you allocated.
Ha. Hi Wil! Here's an updated link to the source code described there. Unfortunately it'd need some updating to compile - ObjC cut off access to the raw class structs in the runtime.
- It's so funny to see "developer's advocate" being used...I would've sworn that that was a term that has only recently been coined but there it is, in a 20 year old email.
- the connectivity of today's Internet is cool in its ubiquity, but emails were so much more engaging back then, even through text terminals...today emails have become such a mental burden, what with its connotation with spam and the implied demand of instant reply...that I can't imagine ever again writing the kind of thorough email as in the OP.
- too bad Woz's biggest hacker years were a little bit before email. Given his willingness and generosity in responding to just about anyone today, you could imagine him sending the Apple BASIC source and his chip layouts all over the Net if it had existed back then
I learned to program by reading Woz's assembly code for the Apple //e. They used to give you books of "source" code when you bought the machine. Crazy times.
A few years ago my old business partner Mike Matas was at a party and he called me and was all, "Woz is here!" I asked if I could talk to him, and so I chatted with Woz for about 10 minutes. He was the nicest guy you could imagine. He was so incredibly happy to hear that I'd learned to code from his stuff.
When we first launched OmniWeb Woz bought ten or fifteen copies. He was always a huge supporter of the little guys. A real mensch.
I was thinking lately of porting the original DoomEd from id to Mac OS X. I reasoned that it shouldn't be too difficult since it was written on NeXTSTEP (minus all the api deprecation that happened over the years I guess). Sadly, id never released the source for that. Out of curiosity, do you remember whether the DoomEd source was ever part of any Doom Source package?
I used to do a lot of Doom Level editing on DOS back in '95, but most serious Map Editors seem to be for Windows. It would also be a great learning exercise, I guess, to try to port it so that it all the new technologies that we have nowadays...
Yeah, it is the original level editor for doom. It ran on NeXT. Many people built separate implementations, based on the reverse engineered wad format. Doombuilder, Slade, etc are examples. There's even one named 'DoomEd', it is, however, not related to the original, never-released one from id.
Even up to the original Mac they had volumes and volumes on the hardware—friend of mine (Sean O'Brien) just made a tiny circuit board that lets you hook up an original mouse and keyboard to modern Macs, based on Inside Mac specs.
Thanks! I really hated this entry—it feels like I'm sitting on a porch on my rocking chair with my shotgun and going, "In the old days, we didn't have these fancy MOTORcars! We used horses, and we liked it! And I wore an onion on my belt, as was the fashion at the time."
It's so funny to see "developer's advocate" being used...I would've sworn that that was a term that has only recently been coined but there it is, in a 20 year old email.
It's interesting - in those days it was a person who advocated for external developers within the company. Now days all too often that side is missed.
We had amazing developer advocates back then. Jim Black (he's now at Nvidia), for instance, used to actually pick us up at the airport when we'd fly into town.
Nowadays I don't actually have an official developer's advocate at Apple. The last two people I had quit and they weren't replaced. Luckily I still have people from the old days I can e-mail if needed, but I wish there were official channels.
On the other hand, the number of Cocoa developers has gone from about 80 to like 80,000, so I can see why Apple can't assign each one a person.
The games were developed on the NeXT but a lot of things were missing. Like, key bindings. And the mouse. And sound. Also, there was no dithering on grayscale machines, and most of them _were_ grayscale back then.
Also, he was just blatting bitmaps to the screen from a simulated VGA buffer he had, so it was quite slow (blatting bitmaps was NOT fast with Display Postscript). We ended up hooking into something called "Interceptor" which was a very early version of direct VMA (and which he'd done experiments with, and turned us on to).
But, make no mistake, Carmack did ALL the heavy lifting here. I in no way want to take credit for Doom or Quake. I just hooked the plumbing up so we NeXTers (and later OS Xers) could enjoy the amazing games he wrote.
Interesting. The only email that I had from Id was one that "We" (Me and other guy) was violating Id EULA & Copyright... We was making a Unreal Tournmanet DOOM Total Conversion mod (original DooM in UT !!!). Obviously we must to stop... It was a few moths after DooM 3 launch.
Thank you. Actually my programmer "Mila" suggested I fix the entry—for the first couple hours it ended with the bit about us doing other ports, which was pretty weak.
I just love how Carmack has always upheld The Hacker Ethic and had no issue sending the source code for his games to others for the greater good. I do often picture business guys tearing their hair out when I read about this stuff and smile to myself.
He is truly a person to aspire to. It's a shame I'll probably never be as great as he is. The best you can is good enough!