After Wolfenstein 3D, Doom, Quake, and Rage, you might think Carmack has programming figured out. He doesn't think so.
During his keynote presentation during QuakeCon2012 in Dallas earlier this month, John Carmack spent three and a half hours discussing a range of subjects (YouTube). Andrew J. Ko on the University of Washington blog transcribed the parts he called, “John Carmack discusses the art and science of software engineering.”
Ko's surprise? That “software engineering is actually a social service.” Carmack admits “programers are making mistakes all the time and constantly.” He runs all code through static analysis to get it “squeaky clean” but would like to “restrict programmers even more because we make mistakes constantly.”
Good for Carmack
That’s the voice of an older programmer, someone who’s been through a lot of work and whose classic younger-programmer self assurance has gone. It’s comforting to know that it happens even to Carmack.Byrd on blogs.uw.edu
Part of it is that he really does spend 8+ hours per day coding, every weekday, and has done so for 20 years. You'd think his experience level there is about as high as you can get, so it's always cool to hear him talk about the new things he's still learning at his work.adastra on news.ycombinator.com
I have a lot of respect for Carmack. He is down to earth and knows what he is talking about because he actually does the work. Also he is legitimitely excited about things and can admit making errorspastyfaced on youtube.com
I really do believe software is a scientific (and mathematical) exercise. The problem is most of industry does not treat it as such, and hence we end up in the mess we are in.nightski on news.ycombinator.com
Imagine an IDE where you literally can’t write a bug — perhaps all of NASA’s strict bug checking is automatically implemented as you write codeTechnohazard on blogs.uw.edu
NASA's software isn't the most complicated stuff in computing. But they are designed to be bug free. It's not as hard to? produce very complicated software, as it is to make something correct and reliable.HornetBlack on youtube.com
As an industry, we really need to bear in mind that different business domains need radically different approaches to software engineering.HeyLaughingBoy on news.ycombinator.com
as a researcher who’s well aware of the past 40 years of research on this topic, I’m not optimistic. Most of these approaches only work well in a small number of situations and are completely useless in other situations.ajko on blogs.uw.edu
As much as I respect John Carmack, I have to say that I'm a little disappointed that he is rehashing this meme of software development not being a science.benthumb on news.ycombinator.com
Is programming art of science? If both, what's the ratio of art to science?
Now read this: