This is part two in a series about mistakes I’ve made at work over the years. Reading part one about unhappiness at work isn’t required, but recommended prior to reading this.
I used to be unhappy at work and I didn’t think it was my fault. Turns out, it was my fault and once I realized that I made some goals to help me stay at happy at work.
One of those goals was to not complain.
No complaining about management. No complaining about deadlines. No complaining about the quality of the code I’m working on. No complaining when I don’t get my way. No complaining about the lack of free donuts in the kitchen. No complaining about anything.
So obviously I’ve been magically complaint-free since making that goal back in 2011. I basically just dance from place to place now, super happy and cheerful. I constantly sing the praises of everyone and everything around me and make everyone happy simply by existing.
That’s obviously not the case, but my life is so much better than before.
Here’s what I used to be like:
I once pushed pretty hard to use my framework of choice in a new project at work only to have the team make another choice. Instead of happily going along with it I fired up things-i-am-right-about.txt and wrote something like, “Today the team decided to use framework Y instead of X. I think they’re wrong and that this will come back to bite us later. I’m writing out the details here so I can remember exactly how right I am later when it all blows up. I will rub it in their faces.”
This really happened. It also wasn’t my first or last entry in things-i-am-right-about.txt.
I complained bitterly with coworkers and friends who agreed with me, especially when we’d hit a snag that I could possibly attribute to the offending framework. I always made sure I sounded like I was a victim. Obviously, if we’d done things my way we’d have shipped on time with fewer bugs. I’d periodically drop snide remarks about the framework just to remind the others that THIS WAS ALL THEIR FAULT.
Here’s the thing. It doesn’t matter if I was right about the framework we used for our project.
It didn’t matter.
It still doesn’t matter.
I was a bad team member. I made myself miserable with my constant complaining. I made others miserable by making them feel badly about their choice. I undermined management’s authority by making others question their leadership. I was a toxic employee.
At another job I disagreed with the direction the company was going. We had many discussions about it. I never got my way. I should have left the company, but I didn’t. Instead, I refused to put in my best effort. I complained about every project, every task, every bug, and every deadline. For years.
It doesn’t matter if I was right about the direction the company was going in. Maybe I was right. Maybe I was wrong.
What I know for certain is that never letting it go and constantly complaining about everything was wrong. It hurt me and it hurt others. It definitely hurt the company.
Complaining can feel cathartic, but it never truly makes me feel good. Not for long. Not unless I’m honestly seeking solutions or unless the person I complain to helps me see that I’m being a whiny jerk.
In fact, “whining” is probably a better word for what I was doing.
Like holding a grudge, or like panicking, whining rarely helps. If anything, any of the three make it far less likely that you’ll make progress solving the problem that has presented itself.
– Seth Godin
Over the years I’ve been fortunate enough to have good jobs with lots of interesting problems to solve. For far too many years I whined about the problems I faced instead of enjoying the process of finding solutions. I made myself miserable by focusing on what I perceived was bad about my situtation instead of realizing how good things were and having fun.
The goal to stop complaining has made the single biggest difference for my happiness than pretty much any other goal I’ve ever made.
My favorite developers can improve and ship "bad" code iteratively, without complaining or judging. I've just recently started learning how.
– Ryan Florence
I know sometimes you just need to get something off your chest, but in my personal experience I’ve found that more often than not I use it as a way to not be responsible for what’s going wrong. If I complain about the quality of the code I’m working on I don’t have to take responsiblility for any bad code that I’m writing. So what if the improvements I made to the code weren’t great, look at what I had to work with!
I obviously still complain sometimes. Old habits die hard. But I complain so much less and I’m so much happier. I know now when I start complaining that I have some corrections to make. If I’m feeling like I need a new job I probably need to find the behavior within myself that’s causing the problem and fix that instead. More often than not that solves everything.
Someday if/when I take a new job it’ll be because I feel it’s the right choice, not because I convinced myself I’d be better off elsewhere because of a pile of petty complaints.
- Sometimes you really do need an outlet. Talk to a trusted friend, preferably no one connected to the company. Own up to any part you have in the problem and honestly look for solutions.
- If airing grievances with someone makes you feel worse, stop airing grievances with that person.
- This isn’t about ignoring legitimate problems or ignoring an unsafe environment. If there are real problems you should solve them (hopefully with the human resources department) or get out.
- For me this is all about petty complaints like “Bob’s code is gross,” “Mary won’t let me do X,” or any imagined insults or slights made by co-workers or management.