Once you’ve solved a problem, take a break. You got something working — recognise that. Programming is absolutely nothing but solving a never-ending series of problems. That might sound unpleasant: sometimes it is. But there’s nothing like solving a problem: it feels great.
…nto the weeds is going to determine your product’s success, you’ve got other things to worry about. So what if someone spends an afternoon refactoring or working down some debt? Is that the end of the world? What you’ll eventually learn is that the more you micro-manage their work, the more the team will optimize around retaining their sanity while being micro-managed. They will create their slack whether you like it or not. Stop playing Tetris with your team.
“Every morning in Africa, a Gazelle wakes up. It knows it must run faster than the fastest lion or it will be killed. Every morning a Lion wakes up. It knows it must outrun the slowest Gazelle or it will starve to death. It doesn’t matter whether you are a Lion or a Gazelle… when the sun comes up, you’d better be running.”