Quotessence
Home / Authors / John Carmack
John Carmack

John Carmack Quotes

Programmer

Filter quotes by topic

Famous John Carmack Quotes

“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.”

“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.”

“Focused, hard work is the real key to success. Keep your eyes on the goal, and just keep taking the next step towards completing it. If you aren't sure which way to do something, do it both ways and see which works better.”

“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.”

“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.”

“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.”