I loved the video, I love this type of analysis of bugs and glitches. This comment, however, just makes me nervous. It's like my innermost worry.
I spend so much time trying to do a good job which I can be proud of and yet I always know there are bugs and I just hope not too many players notice and get annoyed by them.
And here we are, pointing out poorly written code in practically ancient software and attributing it to one particular programmer. Of course, Carmack has more than shown his worth throughout his career. But I dread the thought of a forum post pointing out mistakes I've made at work like this.
It's part of why it took me so long to dare publish articles about fun stuff I've done at work.
Honestly why care? Everyone writes bugs -- the thing is that Quake works fine -- if some quick runners want to exploit a bug 32 years later to impress each other with runs, after having dissected the code to bits to find glitches, is that really a bad mark on anyone? I don't remember anyone complaining about lightning gun glitches when Quake was being played.
I agree. Code that works well is a good thing even if not perfect and super optimized.
I’m not an elegant coder. My code isn’t perfect. It does run however and is pretty efficient mostly bug free. It does it’s useful thing and I can be proud of that.
Having gone through enough code reviews to know there is a huge amount of polish one can give code. It’s a trade off between perfect and Good enough.
I’m hopeful new languages and patterns leveraging libraries help make our code better or at least let us write more if it.
People speed run this game. Understanding every line of it is a part of the process and the reason people care who wrote what line is because it has a lot of culture and history associated with it. If you work on stuff that will make this kind of impact that makes people care like this you will feel proud having your bugs picked apart, not ashamed for having put them there in the first place. And if you don't rest easy knowing any bug you ever make probably won't see a thousandth of the effort being put into understanding and attributing it.
I think it is a good mindset to have. We must all assume that software is an imperfect thing done by imperfect beings. Even celebrate it.
On this particular case, I recommend concentrating not on the fact that there was a bug, but on the fact that the code written so many years ago is still relevant for someone today. Focus on that. Try to make something that someone will find a bug in 30 years from now.
I found this looking through Carmack's .plan files. Perhaps you will appreciate it.
Snippet:
I want bug free software. I also want software that runs at infinite speed, takes no bandwidth, is flexible enough to do anything, and was finished yesterday.
Every day I make decisions to let something stand and move on, rather than continuing until it is "perfect". Often, I really WANT to keep working on it, but other things have risen to the top of the priority que, and demand my attention.
I feel the same way, all the time. The more time I spend improving and tweaking a solution, the longer the list of remaining improvements I wish I could do.
That's why pieces I publish about my work usually contain a fairly long section about potential further improvements.
If anybody cares enough to pick over your code 30 years later, that probably means you were very successful at what you did; at the very least you had a hand in creating something people care about, which is more than most programmers can say.
I spend so much time trying to do a good job which I can be proud of and yet I always know there are bugs and I just hope not too many players notice and get annoyed by them.
And here we are, pointing out poorly written code in practically ancient software and attributing it to one particular programmer. Of course, Carmack has more than shown his worth throughout his career. But I dread the thought of a forum post pointing out mistakes I've made at work like this.
It's part of why it took me so long to dare publish articles about fun stuff I've done at work.