John Carmack

John Carmack
John D. Carmackis an American game programmer, aerospace and virtual reality engineer. He co-founded id Software. Carmack was the lead programmer of the id video games Commander Keen, Wolfenstein 3D, Doom, Quake, Rage and their sequels. Carmack is best known for his innovations in 3D graphics, such as his famous Carmack's Reverse algorithm for shadow volumes, and is also a rocketry enthusiast and the founder and lead engineer of Armadillo Aerospace. In August 2013, Carmack took the position of CTO...
NationalityAmerican
ProfessionScientist
Date of Birth20 August 1970
CountryUnited States of America
Programming is not a zero-sum game. Teaching something to a fellow programmer doesn't take it away from you. I'm happy to share what I can, because I'm in it for the love of programming.
Note to self: Pasty-skinned programmers ought not stand in the Mojave desert for multiple hours.
The speed of light sucks.
It's nice to have a game that sells a million copies.
The important point is that the cost of adding a feature isn't just the time it takes to code it. The cost also includes the addition of an obstacle to future expansion. Sure, any given feature list can be implemented, given enough coding time. But in addition to coming out late, you will usually wind up with a codebase that is so fragile that new ideas that should be dead-simple wind up taking longer and longer to work into the tangled existing web. The trick is to pick the features that don't fight each other.
I recognize that I possess a very special intellect, but at the same time, I recognize that I'm lacking in a lot of areas. But being well-rounded is greatly overrated.
It is difficult to make good scalable use of a CPU like you can of a graphics card. You certainly don't want 'better or worse' physics or AI in your game
Programming in the abstract sense is what I really enjoy. I enjoy lots of different areas of it... I'm taking a great deal of enjoyment writing device drivers for Linux. I could also be having a good time writing a database manager or something because there are always interesting problems.
Making one brilliant decision and a whole bunch of mediocre ones isn't as good as making a whole bunch of generally smart decisions throughout the whole process.
The cost of adding a feature isn't just the time it takes to code it. The cost also includes the addition of an obstacle to future expansion. ... The trick is to pick the features that don't fight each other.
I really think, if anything, there is more evidence to show that the violent games reduce aggression and violence. There have actually been some studies about that, that it's cathartic. If you go to QuakeCon and you walk by and you see the people there [and compare that to] a random cross section of a college campus, you're probably going to find a more peaceful crowd of people at the gaming convention. I think it’s at worst neutral and potentially positive.
It's a good thing Doom 3 is selling very well...
The situation is so much better for programmers today - a cheap used PC, a linux CD, and an internet account, and you have all the tools necessary to work your way to any level of programming skill you want to shoot for.
It is not that uncommon for the cost of an abstraction to outweigh the benefit it delivers. Kill one today!