This rings true with me. Some of my best work has been done laying on my bed (working from home) staring at the ceiling.
On one project, we initially gave ourselves a ridiculous deadline and subsequently made a lot of ad-hoc "fuck it" decisions without properly thinking out the consequences. The system is sufficiently complex that we ended up with something that _barely_ did what it said on the box (if it worked at all). I dreaded even adding the simplest of features, because I could just feel how fragile the whole thing was.
We ultimately made the decision to scrap the project (and piss off or outright lose some customers waiting to pay us money) and restart from scratch, and I spent a few months part-time just building up a mental model of the system and stress-testing it against all of the different requirements and scenarios we had to handle. I went through a couple of notebooks in that time, but I didn't write a single line of code.
For me, it was a lesson in the importance of deliberation and knowing what you should be building before building. As my uncle liked to say when we built houses together, "measure twice, cut once."
On one project, we initially gave ourselves a ridiculous deadline and subsequently made a lot of ad-hoc "fuck it" decisions without properly thinking out the consequences. The system is sufficiently complex that we ended up with something that _barely_ did what it said on the box (if it worked at all). I dreaded even adding the simplest of features, because I could just feel how fragile the whole thing was.
We ultimately made the decision to scrap the project (and piss off or outright lose some customers waiting to pay us money) and restart from scratch, and I spent a few months part-time just building up a mental model of the system and stress-testing it against all of the different requirements and scenarios we had to handle. I went through a couple of notebooks in that time, but I didn't write a single line of code.
For me, it was a lesson in the importance of deliberation and knowing what you should be building before building. As my uncle liked to say when we built houses together, "measure twice, cut once."