Things that make me unproductive
- Long meetings
- Having < 1hr before I know I need to stop for a meeting
- Slow build times
- Slow artifact uploads
- Bad internet connections
- Blockers
- Not enough work to do
- Unclear goals on what I need to accomplish that day/unclear acceptance criteria
- Unclear project scope
- Unclear design
- When no one is testing the builds
- When the PM doesn’t test the builds - this sends the signal that the project is unimportant
- When the PM is out of the loop
- Low energy
- Having not enough caffine
- Not having a project to work on
- Only have tiny bug fix/pixel pushing work, and not a meaty feature to work on
- Working on uninportant features that no one will care to use
- Working on unimportant projects that no one will care to use
- Working late at night
- Waiting on feedback/code reviews
- Disheartening amounts of techdebt
- Slow unit tests
- No unit tests
- Reddit/Facebook/Quora/Hacker News distraction
- Too loud of an environment
Things that tend to help
- Quiet area
- Music
- Lots of caffine
- Early in the morning before other distractions
- Having quick, well defined task to get started for the day (bug fix, visual polish)
- Daily status updates and daily time tracking
- And above all, believing that the project will be useful to others