[HN Gopher] Quake related work logs (1996)
       ___________________________________________________________________
        
       Quake related work logs (1996)
        
       Author : waihtis
       Score  : 52 points
       Date   : 2023-10-07 18:34 UTC (4 hours ago)
        
 (HTM) web link (www.gamers.org)
 (TXT) w3m dump (www.gamers.org)
        
       | TheAlchemist wrote:
       | Well, this guy didn't become a legend by accident, that's for
       | sure !
       | 
       | Reading this log, I can't stop thinking how clear things needed
       | to be in his head to advance at that pace. Like he already had
       | everything programmed in his mind, he was just transcribing it
       | for the computer.
        
         | beebeepka wrote:
         | Isn't that what programming is like? I guess the main challenge
         | is to avoid lying to yourself by downplaying stuff that is
         | problematic.
        
       | tomcam wrote:
       | Your life is not completely terrible when you work log contains
       | this line:                   - drop green slime percentage
        
       | bergheim wrote:
       | Looking at his format, I can't help but think what could have
       | been if he had only used org-mode instead!
       | 
       | iD software would never have become anything of note, of course.
       | Obsessing over his emacs config, but missing C, and so becoming
       | the master of the C core. We would probably never have heard of
       | anything like "long lines mode".
       | 
       | Growing up with the iD games, I am not so sure what I would
       | prefer anymore. Actually I think I would have preferred the
       | latter. Which is almost sad. A wild testament to emacs, to be
       | sure.
       | 
       | (yes I know these posts predate it)
        
         | v3gas wrote:
         | Is this satire
        
           | bergheim wrote:
           | It was.
        
       | Detrytus wrote:
       | Is it just me, or the work logged by Carmack for a single day
       | seems like a plan for a two week sprint in Scrum, or even a full
       | (3-month) Program Increment in Scaled Agile Framework (SAFe)?
        
         | neilv wrote:
         | There are some sweet spots to be found in software development
         | productivity.
         | 
         | Finding them is an art/craft, and very sensitive to the
         | project/company context, the people you have available, how the
         | work will be distributed, etc. It includes making process
         | lightweight by default, and having a good sense of when to use
         | something non-lightweight.
         | 
         | In the right circumstances, a few top "programmers" with great
         | team software engineering sense, and someone representing
         | product sense, unencumbered by BS, can usually wipe the floor
         | with most contemporary much-larger teams.
         | 
         | But starting off a startup by saying "We'll do Leetcode rituals
         | so we know we'll hire aspiring techbros who spent their spare
         | time at Stanford memorizing those, and we'll (pretend to) use
         | this fashionable branded lifecycle process designed for
         | companies that have no idea what they're doing but have a lot
         | of warm bodies to fumble blindly through it, and ignore
         | unfashionable process tools that we were confidently told don't
         | work by students with zero experience based on what a professor
         | with zero experience told them, and this huge list of popular
         | tech we heard of and will never understand will be our stack,
         | and then we can show promise to get to the next funding round
         | and hire even more warm bodies..." is one way to make the road
         | to finding effective expertise much longer. :)
        
         | baal80spam wrote:
         | Indeed, and of course for a full team of developers, not a
         | single person.
         | 
         | Carmack is a god.
        
         | jsanders9 wrote:
         | Is the code a mess? From the notes it looks like the code is a
         | mess, but don't want to assume.
        
           | bluedino wrote:
           | https://fabiensanglard.net/quakeSource/
        
         | noobface wrote:
         | Move fast, gib stuff.
        
         | faizshah wrote:
         | I think it's more so that when you are an expert in a
         | particular system and you have very little bureaucracy/overhead
         | in any particular task you're able to get a lot more done.
         | 
         | I was watching a video from one of the creators of Fallout and
         | he was talking about how things that used to take a day now
         | take 2 weeks for similar sort of reasons:
         | https://youtu.be/LMVQ30c7TcA?si=eJm_u-i1xwttfcRL
         | 
         | Our industry in general has added a lot of overhead and
         | bureaucracy and does everything overly cautiously in comparison
         | to back then. Things take exponentially longer to do in
         | software development today. You can also observe this in how
         | long it takes a startup to build a feature vs a FANG company.
        
         | hotnfresh wrote:
         | - No hour a day (conservatively...) lost to meetings and other
         | activities that exist to generate data for managers to make
         | pretty graphs out of.
         | 
         | - No hour a day lost on PR reviews (reviewing and being
         | reviewed).
         | 
         | - No hour a day pairing on someone else's task.
         | 
         | - No two hours lost because some part of your hellishly-complex
         | stack and set of alpha-quality vendor tools decided to shit
         | itself today for no reason.
         | 
         | - No hour babysitting yesterday's code through CI and testing
         | et c.
         | 
         | - No hour a day lost to context-switching from the above and a
         | dozen other distractions.
         | 
         | - Oh look there's only an hour left in which to actually
         | produce code in one eight-hour day.
        
         | gameoverhumans wrote:
         | Well, it _is_ Carmack we 're talking about here. He's well
         | known as a prolific programmer prodigy ;)
         | 
         | But also, some other things to note:
         | 
         | * A lot of "agile" development in corporate environments is
         | anything but agile because of overhead in horizontally scaling
         | human gray meat (until we get neural interfacing between one
         | another or something)
         | 
         | * It was a simpler time back then. Carmack was coding against a
         | much simpler architecture, with significantly fewer variants.
         | 
         | * It was a simpler time back then. Carmack could focus on
         | blitting pixels to the screen as fast as possible, rather than
         | spending 6 months trying to wrap his head around Vulkan.
         | 
         | * It was a simpler time back then. Carmack didn't have to worry
         | about building for Windows, macOS and Linux, and iOS. And
         | Android. And ...
         | 
         | * It was a simpler time back then. Carmack didn't need to worry
         | about accessibility requirements. Web service integrations.
         | Digital distribution complexitities. etc...
         | 
         | Even in the modern day there's still people who get prodigious
         | amounts of work done when they can focus on doing something
         | they like doing, and the stars align. A good recent example off
         | the top of my head in game development is The Witness. Jonathan
         | Blow + 2-3 other programmers IIRC.
        
           | livrem wrote:
           | I am not sure I would consider much of what he did very
           | simple (or easy) compared to what most of us are doing today.
           | The last few chapters of Michael Abrash's Black Book is about
           | his work with Quake (he was involved doing some of the
           | graphics code together with Carmack) and it is pretty
           | hardcore low-level advanced things they were doing. Remember
           | they were software rendering everything in the first version.
           | 
           | https://github.com/neonkingfr/AbrashBlackBook
           | 
           | And also they did pretty soon support MSDOS, Windows 95, and
           | Linux (and possibly some more platforms?). In addition to
           | supporting software rendering, 3Dfx, OpenGL, and possibly
           | some more 3D API.
        
             | hypercube33 wrote:
             | Didn't he code on Solaris or something weird in the
             | workstation family and port quake over to dos? I only
             | remember him having a giant CRT monitor where he'd sit and
             | code for photos back in the 90s
        
               | Narishma wrote:
               | It was NextSTEP and that was for Doom. I think they
               | switched to Windows NT for Quake (or was that Quake 2?),
               | which is what he was working on in that pic with the
               | giant CRT.
        
               | [deleted]
        
           | bluedino wrote:
           | He was building for at least Windows and Linux, and didn't
           | have OpenGL so he was doing all the 3D manually. Plus
           | assembly code, hardware specific versions like Verite, had to
           | handle all the raw networking code, wrote tools to work with
           | assets and process levels, also wrote Quake C, encryption to
           | unlock the full game on the shareware Cd...
           | 
           | Sure, Cash, Abrash and Romero were helping out
        
           | baz00 wrote:
           | To be fair we don't have 99% of those problems and still
           | manage to deliver fuck all.
        
             | tomcam wrote:
             | I like the cut of your jib
        
               | ant6n wrote:
               | Peter : Well, I generally come in at least fifteen
               | minutes late, ah, I use the side door - that way Lumbergh
               | can't see me, heh heh - and, uh, after that I just sorta
               | space out for about an hour. (...) I just stare at my
               | desk; but it looks like I'm working. I do that for
               | probably another hour after lunch, too. I'd say in a
               | given week I probably only do about fifteen minutes of
               | real, actual, work.
               | 
               | (...)
               | 
               | Bob : What if - and believe me this is a hypothetical -
               | but what if you were offered some kind of a stock option
               | equity sharing program. Would that do anything for you?
               | 
               | Peter : I don't know, I guess. Listen, I'm gonna go. It's
               | been really nice talking to both of you guys.
               | 
               | Bob : Absolutely, the pleasure's all on this side of the
               | table, trust me.
               | 
               | Peter : Good luck with your layoffs, all right? I hope
               | your firings go really well.
        
         | baz00 wrote:
         | The point of SAFe is so that remote workers can be as
         | productive as Carmack on their own side gigs during the
         | ceremonial duties and meetings. I rather like it!
        
         | livrem wrote:
         | I reacted to how his way of working sounded actually agile (vs
         | some method sold as agile but mostly consisting of a lot of
         | processes and automatic tools to keep everyone from having any
         | hope of being agile), like:
         | 
         | > When I accomplish something, I write a * line that day.
         | 
         | > Whenever a bug / missing feature is mentioned during the day
         | and I don't fix it, I make a note of it. Some things get noted
         | many times before they get fixed.
         | 
         | > Occasionally I go back through the old notes and mark with a
         | + the things I have since fixed.
        
       | boredemployee wrote:
       | >> QuakeWorld.
       | 
       | >> The code I am developing right now is EXCLUSIVELY for internet
       | play.
       | 
       | I hope he has at least a vague idea of how many lives he changed
       | because of this feature/philosophy/idea and game.
        
       | nickjj wrote:
       | I wonder how much of this was premeditated vs deciding what to
       | work on based on preference or mood for the day.
       | 
       | I've always enjoyed working on things without a dedicated
       | predefined list of tasks that I'll accomplish in X time (1 day,
       | week, etc.). Instead, I just pick things off the queue and
       | however far I get is the result. The queue in this case could
       | either be from memory or a list of ideas.
        
       | mattgreenrocks wrote:
       | Meta-comment: it's profoundly amusing to read the surprised
       | reactions to Carmack's productivity.
       | 
       | This is what a great programmer who is a domain expert looks like
       | when operating in an org structure that lets them focus on what
       | they're good at. You're lucky if you get one of those three
       | things, honestly.
       | 
       | I worry that most orgs are not set up to even allow this level of
       | productivity nowadays, because they're too insistent on ironing
       | out the peaks of productivity to try to fix the valleys. Also,
       | tech culture is still so bizarrely focused on the idol of tooling
       | fixing the programming problem that we see people like Carmack
       | and remember, if only vaguely, that programmer skill is still a
       | very real thing.
        
         | bboygravity wrote:
         | A game is art.
         | 
         | The most efficient tool I know to kill art and the artist's
         | soul is probably Jira.
        
           | holoduke wrote:
           | Non technical product managers coming up with ideas to make
           | more productive. Happy to work in a pure dev environment now.
           | No sprints, no deadlines. Just goals.
        
         | sho_hn wrote:
         | You don't have to be a great programmer to be that productive.
         | 
         | I am not, but I've also been fortunate to have periods in my
         | life where I just got to pour 70-90 hours a week into a
         | programming project, sometimes doing multiple 16-20 hour
         | sessions over night in cafes, then taking a few days off to
         | recover, with no distractions. Including commercial work, at a
         | place with 20 or so other good engineers that allowed for a
         | one-meeting-a-week culture because we just got each other and
         | the tech stack was narrow enough to keep us compatible.
         | 
         | The sheer amount of stuff you can get done and the level of
         | satisfaction are amazing. I will always love those times.
         | 
         | Everything you say about environment and org structure I fully
         | agree with. But you don't have to be exceptional or gifted to
         | benefit from an environment that trusts a creative worker to
         | solve problems.
        
         | [deleted]
        
       | murgurglll wrote:
       | Going to show this to anyone that thinks they need to build some
       | optimized productivity tool stack before they can do their work.
        
       ___________________________________________________________________
       (page generated 2023-10-07 23:00 UTC)