14 ms·
Good chance it was John Carmack, probably one the top 10 programmers of all time. He basically built the Quake engine himself. There is a pretty decent analysis
by Eisenstein 3y ago
Good chance it was John Carmack, probably one the top 10 programmers of all time. He basically built the Quake engine himself. There is a pretty decent analysis of it here:
* https://fabiensanglard.net/quakeSource/index.php https://fabiensanglard.net/quakeSource/index.php
I recommend checking it out.
EDIT: i was thinking of the analysis done on Quake 2, which is more about the engine:
* https://fabiensanglard.net/quake2/index.php https://fabiensanglard.net/quake2/index.php
while the one about is regarding the multiplayer system, which is still an amazing bit of dev.
Github:
* https://github.com/id-Software/Quake https://github.com/id-Software/Quake
- ben7799 3y agoRanking programmers is as dumb as ranking musicians. Carmack is great but you can't really say he's better than say some guy you've never heard of who wrote a bunch of absolutely brilliant algorithms inside a missile defense system and it's all super secret. Or someone who did amazing work on a compiler Carmack used or brilliant work in an OS kernel that you're never going to know about, or some AI code, or something deep within a stock exchange's platform. Carmack's perceived greatness is elevated because almost 100% of what he has worked on is directly visible to the average consumer.
- deleted 3y ago[deleted]
- Eisenstein 3y ago> Ranking programmers is as dumb as ranking musicians. If a musician had a noticeable impact on culture and was prolific, I don't see why we can't put them in a bracket of [in top #]. The ranking is really just to illustrate my respect for his work, accomplishments, insightful communications, and continued relevance as well as impact on my life and those around me. You can call that 'dumb' if you like, but I am human just like you and am not above placing some people's accomplishments above those of others.
- deleted 3y ago[deleted]
- saltcured 3y agoTo me, Carmack equates more to an engineer who designed wild equipment used by sound engineers and musicians. Aside from Torvalds or Wozniak, I think most programmers are unsung, regardless of how much their products impact the world. Most programmers are quickly forgotten if they were ever known in the first place. In terms of cultural impact, think of the programmers behind our PC or mobile operating systems, major consumer app categories like spreadsheets, word processors, photo or video editing, etc. Of course some nerds of computing history can cite folks behind all these, but it is niche trivia to most of the population. It also seems like an era coming to a close where a solo programmer can deliver an impactful product. Who gets the credit instead? Usually an executive or entrepreneur gets the credit. Sometimes this person programmed early on, but often they either transitioned to management or started there and other programmers were responsible for delivering the product we eventually know.
- Eisenstein 3y ago> It also seems like an era coming to a close where a solo programmer can deliver an impactful product. This is true but you have to look at it differently. There are generally two ways of looking at history: the 'great man'[0] theory, or the 'of the times' theory. If you look at it one way Woz and Carmack and Torvalds and the others were instrumental in shaping their surroundings and without those specific people we would have lost out on basically the entire technological world as we know it. If you look at it another way, they were inevitable -- the times were such that it was bound to happen (or at least extremely likely) because of a great confluence of events that could never be arranged or predicted, and if Woz had electrocuted himself making the Apple I power supply module then someone else would have done something similar around the same time and we end up at the same spot (but Steve Jobs becomes a moderately successful Bay Area Benz dealer and we all use Blackberry phones with physical keyboards in 2023). The era of an individual engineer or programmer making a paradigm shifting breakthrough in his or her basement may be over, but that just means the times have shifted into another dynamic. What that is can not be predicted, but if we do survive the oncoming crises upon us and somehow also never end up turning the planet into smoldering radioactive ash over a shipping lane dispute or something, there will be a time when such a person can be expected to emerge and do it again. [0] excuse the masculine nature of this terminology, but unfortunately that is what it is called, though I haven't formally studied history in a while and it could have changed
- JadeNB 3y ago> Ranking programmers is as dumb as ranking musicians. But also as much fun for people with appropriately specialized interests, so it'll probably keep happening.
- jonhohle 3y agoCoincidentally (or not), Carmack started Armadillo Aerospace and was working rocket control and navigation systems. So…
- hyperman1 3y agoCarmack's main superpowers seem to be tons of hard work, not raw intelligence 1) Perseverance and focus: He kept rewriting the quake renderer, pushing it faster and better, where other people had long ago settled for a lesser variant or given up. 2) Try everything, even the stupid ideas. When he wrote quake, the wisdom was that the FPU was way to slow for a game. He managed to do z-divisions for blocks of 16 pixels on it, while the integer code spit out the pixels. 3) Attention to detail. The doom span renderer was sub pixel precise, which was pretty unique for its time. It looked better in a hard to define way. 4) Code quality. Doom and quake are very readable, very portable and heavily documented. The average 1-person codebase tends to be messy and undocumented, as nobody else ever takes a look. On the other hand, plenty of fixmes in there. It was unabashedly special cased where he could get away with it. 5) He consumed whatever idea he could get. BSPs were an obscure research trick before he took them and ran with it. He had huge holes in his 3D knowledge when writing doom, as he admits himself. He didn't care until quake forced him to level up. But he could look in the mirror, say he needed to do better, and learn the extra things when he had to. I don't know if Carmack is that much smarter than the average HNer, but he surely works a lot harder. And that's an even better compliment, in my book
- at-fates-hands 3y agoNot sure where I read it, but someone writing about the history of DOOM basically said John was a machine and the machine ran on Diet Coke and pizza. As long as he had both, he could remain in the zone indefinitely, which is pretty crazy when think about all the things he accomplished that you listed.
- baal80spam 3y ago> Not sure where I read it, but someone writing about the history of DOOM basically said John was a machine and the machine ran on Diet Coke and pizza. I'm pretty sure I've read it in "Masters of Doom".
- haburka 3y agoSince I’m actually a top 5 programmer of all time (self decided) I can say with confidence that Carmack is actually a top 50 programmer but no where near the top 10. He didn’t use ternaries nearly enough.
- deleted 3y ago[deleted]
- hardware2win 3y ago>probably one the top 10 programmers of all time By what metric? Popularity? PR? Net worth? Complex software? Competitive programming? Impact? For every "top" SE there are tens of similarly skilled engineers that you have never heard of
- otikik 3y agoI don't think a deep analysis is required here. It is quite obvious that he'll not be the top-10 programmer on every single metric that one can imagine. He's very good. Enough people agree. I recommend letting it at that.
- xen2xen1 3y agoImpact. He pretty much invented the FPS genre by reading a paper about Z buffers from some guy in the Navy, IIRC. All the Call Duty kiddies owe him a debt. Who knows how long it would have taken for that whole genre to get going without him?
- nailer 3y agoHe popularised BSP for FPS which meant doom ran faster than SystemShock, despite having more complex level geometry
- paulryanrogers 3y agoWas Doom's geometry more complex? No room over room, no slopes, vertical axis was awkward. Feels like apples and oranges, even before considering the gameplay was also very distinct between them.
- nailer 3y agoAll true. SystemShock also have 3-D models for some objects too. I guess a better way of putting it would’ve been the SystemShock would have run a lot faster if it had BSP.
- dadarecit 3y agoAmount of tickets closed on JIRA lmaoo
- hsjqllzlfkf 3y ago> Good chance it was John Carmack, probably one the top 10 programmers of all time. Where would you rank Linus Torvalds?
- Cthulhu_ 3y agoI honestly have no idea how good Linus is as a programmer; he's proven his worth as a project manager, he seems to know a thing or two (to make an understatement) about operating systems, but I don't know if he's a good programmer.
- otikik 3y agoEmpathy is a trait that I value highly on a programmer.
- fragmede 3y agoIt's tough to decide if the Linux kernel or git is his bigger contribution to society.
- yCombLinks 3y agoGit isn't even the best DVCS, it won on the back of github more than it's own strengths.
- ChoHag 3y ago
- Agentlien 3y agoI 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.
- Eisenstein 3y agoHonestly 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.
- acomjean 3y agoI 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.
- otikik 3y agoPerhaps the Living Videotex slogan can help you: -- "We Make Shitty Software... With Bugs!" http://scripting.com/davenet/1995/09/03/wemakeshittysoftware.html http://scripting.com/davenet/1995/09/03/wemakeshittysoftware... 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.
- ndepoel 3y agoI'm not sure if it would've been John Carmack in this particular case. He was more concerned with the engine and rendering side of things, less with the gameplay logic stuff. More likely it would've been either John Romero or John Cash who wrote this code, but it's hard to say for sure. Best thing we can hope for is that John Romero pitches in with his impeccable memory :D
- midasuni 3y agoSo the only requirement to work at iD back in the day was to be called John?
- brookst 3y agoThat’s what my buddy said, yeah. Good old John Manyjohns.
- klodolph 3y agoFor those who haven’t seen Buckaroo Banzai—all the people working at Yoyodyne Propulsion are named John. It’s a plot point.
- cfj 3y agoOr Carmack.
- TechBro8615 3y agoIt seems like Amazon has the same idea when promoting people named Andy or Jeff to executive roles.
- mysterydip 3y ago"Hi Sandy, hope you're doing well."
- i_c_b 3y agoYou can read Carmack's .plan archive from 1996 here, if you're so inclined: https://github.com/ESWAT/john-carmack-plan-archive/blob/master/by_year/johnc_plan_1996.txt https://github.com/ESWAT/john-carmack-plan-archive/blob/mast... It's a _fascinating_ snapshot into Quake's development. I have no idea if his .plan is a record of what he, specifically, was doing, or if he was just capturing what the programming team was doing, but at the very least, it makes clear that he was aware of huge amounts of very highly specific game code issues as they were being worked on and was almost certainly deeply involved.