I was in a meeting the other day and a coworker said (I'm paraphrasing): "While at work, you have to WORK!". This wasn't directed at anyone but it really hit home.
Software Programming (like many other things) is creative. Programming isn't just about coding the fastest or make this prettiest widget, it's also about communication, teamwork, and discipline. Programming involves grooming story tickets, pair programming with other programmers, thinking about short and long term consequences of code, etc. It's incredibly fun, rewarding, and exhausting.
Or in a bad mood? Or whatever! The unfortunate thing about Programming is that you can get away with a lot! I can say "No" to the person asking to pair with me today, I can half-ass the story ticket I'm grooming or punt on the refactor step of "red-green-refactor". I can do all that and nobody would really notice. We're all human and we all have bad days but can my Dad, who's worked in construction for most of his life, get away with so much, NO!
We all have a sense for how to best do our jobs. As a Programmer I know that pairing shares context, test-driving improves the quality of my code, and well-groomed story tickets sets the entire team up for success. I know how to be a good software programmer. When I'm not at work I can do whatever I want! I can even write tests that don't pass 😮! When I'm at work, getting paid to be the best version of myself, I have to show up. It's not always easy but my coworkers words were a great reminder.