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.
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.
It almost feels, and sometimes is cheating.
I was confronted with this when I felt really fantastic being super productive at one of the projects and then a team member pointed out that I am also tech lead, architect and a manager all in one and I simply don't work by the same rules as everybody else. Where everybody else has to get permissions, approvals, concensus, inputs, has to wait for other people to do things, I can just do it all in my head and act immediately. This taught me an important lesson and I am now much more conscious of this fact and spending way more time trying to remove any barriers from other team members.
This also explains why solo developers can sometimes achieve so much -- they simply don't have to work with anybody else. They don't have to understand code somebody else designed and wrote. They don't have to spend time arguing defending their approach or solutions. They know how everything works and can make all decisions solely on whether it helps them to achieve the result. Synchronising with other people is a huge overhead in any organisation.
> Vacation? I don't need a vacation!
I lived it, I remember "being bored" or having "nothing to do", but I truly can't access it in a meaningful way. I would love to go back to those days of playing games or engaging in my hobbies where I didn't feel that constant pressure of "but you better get stuff done, we don't have all day here".
It gets momentum and is self-reinforcing, the practice of jotting down unrelated threads you come up with makes them easy to pick up later, so you always have stack of problems to attack without having any of them cluttering your head as you execute. Often when I'm not doing stuff, it's because I don't have a clear picture of what I should do next, or how to do the next thing. This is not a problem I had working like this. It was all execution.
Then AAA game studios saw this and thought that game devs just love working 7 days/week for peanuts even if it's on other people's companies and other people's projects.
The business concerns were not a major factor for Carmack. He was against expanding the business and the company was making plenty of money with a lot of cash to spare. They had other projects other than Quake that were making them money. Had he really cared about the health of the business, he wouldn't have lashed out so much at other developers working on things other than Quake. He simply thought the company should basically work on one project at a time.