Note to self: Pasty-skinned programmers ought not stand in the Mojave desert for multiple hours. John Carmack More Quotes by John Carmack More Quotes From John Carmack Focus is a matter of deciding what things you're not going to do. John Carmack focus matter inspirational 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 dedication self rivers 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. John Carmack real success inspirational Sometimes, the elegant implementation is just a function. Not a method. Not a class. Not a framework. Just a function. John Carmack framework class sometimes Rocket science has been mythologized all out of proportion to its true difficulty. John Carmack rockets proportion difficulty 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 design suffering games 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 expansion simplicity fighting 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 learning fighting simple The speed of light sucks. John Carmack speed-of-light speed light 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. John Carmack zero teaching games 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 ignorant doe interesting 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 knowing people thinking 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 wind hands years If you aren't sure which way to do something, do it both ways and see which works better. John Carmack work-related next-steps way If you're willing to restrict the flexibility of your approach, you can almost always do something better John Carmack something-better programming approach I'd rather have a search engine or a compiler on a deserted island than a game. John Carmack search-engine games islands 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 intellect special inspirational Low-level programming is good for the programmer's soul. John Carmack computer levels soul 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 law clever years 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 lessons suffering people