---

Thresh’s Firing Squad: John Carmack Interview – Part 1

“I’m spending more of my time in this lull or break, working on
some things in Linux. One of the things I’ve done is written two 3D
drivers for Linux or done a good chunk of the coding on them.
That’s useful for me as a developer, because I certainly do the
high level stuff, the API level programming, but it’s also good to
go ahead and take it underneath that. Doing some implementation
level stuff on the device driver down to programming the hardware
gives me more scope, looking at things through the entire process.
There are a lot of programmers who only know things from the top
and don’t realize why things are sometimes the way they are because
of the structure that’s “invisible” to them….”

“Well the thing is that it’s just easier to do under Linux
because you’ve got the ability to take anything you want out.
While Linux is clearly not ready for replacing Windows on
people’s desktops, there is something fundamentally cool
there.

“The whole way I got into this is that someone had written a
Linux driver for the Matrox cards. I had been reading about it for
a while. Apparently they had it working barely with Quake 3. So I
finally got around to downloading it and checking it out. I was
pretty impressed by how well it worked. It was slow but it was
pretty nearly feature complete, good quality implementation. But
there was this really obvious bug with the way textures were
swapping. They were swapping most recently used instead of least
recently so you’d see it thrash on the screen.”

“I knew exactly what it was doing so I said “OK, this has the
source code available.” So I figured out how to download it, get
access to the CVS repository and all that, worked my way through
the code, found the bug and fixed it! That’s just fundamentally
neat.”

Complete
Story

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends, & analysis