John Carmack

Image of John Carmack
To the game code, the world is still just a tile map, but for rendering, each map was exported as a general-purpose 3D model, and the artists could then go through it and spend the polygons any way they liked, without the limits of line-of-constant-z software rasterization that we lived with on the mobile phones.
- John Carmack
Image of John Carmack
When people heard id Software's being acquired, everybody just assumed it would be Activision or EA. Why would we even consider going with a publisher that wasn't of that same size?
- John Carmack
Image of John Carmack
We had staffed up to do 'Doom 4' internally in parallel with 'Rage'. We also had our mobile and 'Quake Live' departments. We were taking a lot of steps to kind of provide a little bit more scope and protection for ourselves. And we certainly were listening to offers from all the majors about acquisition.
- John Carmack
Image of John Carmack
It's been great that every title that we've done internally has been a huge success, but when you've got 50 or 100 people on there, all their families and everyone counting on you there, the idea of 'What if you screw up once?' or 'What if the market changes?'
- John Carmack
Image of John Carmack
It's nice to be able to, you know, for me to be able to personally do whatever the heck I feel like, whether I think that I can justify it exactly in business concerns or not.
- John Carmack
Image of John Carmack
There is absolutely zero doubt that you can technically do an excellent full-featured FPS game, because these devices are more powerful now than, like, a previous generation Xbox.
- John Carmack
Image of John Carmack
Being able to work on a more constrained project now and then is rewarding in a lot of ways, and of the available small platforms, I think that the iOS platform is clearly the best.
- John Carmack
Image of John Carmack
In the information age, the barriers [to entry into programming] just aren't there. The barriers are self imposed. If you want to set off and go develop some grand new thing, you don't need millions of dollars of capitalization. You need enough pizza and Diet Coke to stick in your refrigerator, a cheap PC to work on, and the dedication to go through with it. We slept on floors. We waded across rivers.
- John Carmack
Collection: Dedication
Image of John Carmack
Sometimes, the elegant implementation is just a function. Not a method. Not a class. Not a framework. Just a function.
- John Carmack
Collection: Class
Image of John Carmack
If you aren't sure which way to do something, do it both ways and see which works better.
- John Carmack
Collection: Next Steps
Image of John Carmack
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.
- John Carmack
Collection: Inspirational
Image of John Carmack
Focused, hard work is the real key to success.
- John Carmack
Collection: Real
Image of John Carmack
You can prematurely optimize maintainability, flexibility, security, and robustness just like you can performance.
- John Carmack
Collection: Like You
Image of John Carmack
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.
- John Carmack
Collection: Fighting
Image of John Carmack
If you're willing to restrict the flexibility of your approach, you can almost always do something better
- John Carmack
Collection: Programming
Image of John Carmack
Sharing the code just seems like The Right Thing to Do. It costs us rather little, but it benefits a lot of people in sometimes very significant ways. There are many university research projects, proof of concept publisher demos, and new platform test beds that have leveraged the code. Free software that people value adds wealth to the world.
- John Carmack
Collection: People
Image of John Carmack
An interesting question: is it easier to motivate a learned individual that never does anything, or educate an ignorant individual that actually produces things?
- John Carmack
Collection: Interesting
Image of John Carmack
One of the big lessons of a big project is you don't want people that aren't really programmers programming, you'll suffer for it!
- John Carmack
Collection: People
Image of John Carmack
The Escalation programmers come from a completely different background, and the codebase is all STL this, boost that, fill-up-the-property list, dispatch the event, and delegate that. I had been harboring some suspicions that our big codebases might benefit from the application of some more of the various “modern” C++ design patterns, despite seeing other large game codebases suffer under them. I have since recanted that suspicion.
- John Carmack
Collection: Games
Image of John Carmack
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.
- John Carmack
Collection: Smart
Image of John Carmack
It is not that uncommon for the cost of an abstraction to outweigh the benefit it delivers. Kill one today!
- John Carmack
Collection: Cost
Image of John Carmack
I like to think I'm pretty good at what I do.
- John Carmack
Collection: Thinking
Image of John Carmack
Note to self: Pasty-skinned programmers ought not stand in the Mojave desert for multiple hours.
- John Carmack
Collection: Self
Image of John Carmack
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.
- John Carmack
Collection: Learning
Image of John Carmack
Some cynical people think that every activity must revolve around the mighty dollar, and that anyone saying otherwise is just attempting to delude the public. I will probably never be able to convice them that that isn't always the case, but I do have the satisfaction of knowing that I live in a less dingy world than they do.
- John Carmack
Collection: Thinking
Image of John Carmack
Honestly, I spend very little time thinking about past events, and I certainly don't have them ranked in any way. I look back and think that I have done a lot of good work over the years, but I am much more excited about what the future holds.
- John Carmack
Collection: Inspirational
Image of John Carmack
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.
- John Carmack
Collection: Writing
Image of John Carmack
The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.
- John Carmack
Collection: Hands
Image of John Carmack
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.
- John Carmack
Collection: Cds
Image of John Carmack
We do not see the PC as the leading platform for games. That statement will enrage some people, but it is hard to characterize it otherwise; both console versions will have larger audiences than the PC version.
- John Carmack
Collection: Games
Image of John Carmack
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.
- John Carmack
Collection: College
Image of John Carmack
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
- John Carmack
Collection: Games
Image of John Carmack
I wanted to remain a technical adviser for Id, but it just didn't work out. Probably for the best, as the divided focus was challenging.
- John Carmack
Collection: Work Out
Image of John Carmack
It's a good thing Doom 3 is selling very well.
- John Carmack
Collection: Selling
Image of John Carmack
Low-level programming is good for the programmer’s soul.
- John Carmack
Collection: Programming
Image of John Carmack
Because of the nature of Moore’s law, anything that an extremely clever graphics programmer can do at one point can be replicated by a merely competent programmer some number of years later.
- John Carmack
Collection: Programming
Image of John Carmack
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.
- John Carmack
Collection: Programming
Image of John Carmack
One of the big lessons of a big project is you don’t want people that aren’t really programmers programming, you’ll suffer for it!
- John Carmack
Collection: Programming