That’s not how work works.
First, there’s writing code, which is the part we usually call “real work”. If a developer goes through a whole work day and doesn’t write any code, the instinct is to call that day a waste.
We have to figure what we should be coding. This typically involves a combination of email, meetings, Slack discussions, writing/reading planning documents and specs, talking through desired outcomes with other teams.
But the default is to feel guilty taking company time for meta-work.
See, if we have 10 things to do, but only 4 of them are “real work”, we feel pressure (imagined or otherwise) to only work on those 4 tasks during business hours.
So we “prep for the week” on our weekends. “Catch up” in the evenings.
Put another way: we feel pressure to handle 60% of the tasks we should be getting paid to do *as volunteers, in our free time*.
Keep the meta-work in your work day. If it causes delays, that points to a business problem: why do you have more work assigned than you can handle in 40 hours a week?
Saying that you work outside of business hours “for the team” is just lying to yourself and others.
We should all be more like Joel. 40 hours is plenty of time for work & it’s all our salaries pay for.