Ask HN: How do you not take criticism of your work personally?
231–240 of 653 posts
Re: Ask HN: How do you not take criticism of your work personally?
#2322. Try self-derision. "Oh man, I must have had too much to drink that night!!!!" or "yeah I got pretty lazy there...". Always very appreciated. Especially if the comment from the co-worker is intentionally snarky.
3. Try and be pre-emptive about it. If someone says: "hey wtf is going on in prod?", you should answer: "shit, it's probably me, I'm looking into it", or if you think it's not you, you can do something like: "I fiddled with this code yesterday, but I am fairly confident that it's unrelated, let me know if I screwed up".
4. Own up your colleagues' mistakes too: "Sorry guys we screwed up on that one". Clients love people who tell them they're sorry rather than people who come up with shitty excuses.
5. If it's far in the past, insult your past self at will. "Well when I wrote this, I was pretty lame I didn't know better".
6. Always remember that what's in the past can't be changed. Only the present and the future matter.
7. Be kind to other co-workers who own up their mistakes.
8. Thank people who fix your bugs.
There are a lot of hidden benefits hidden in distanciating yourself emotionally from the code you wrote:
- You won't want to continue working on "your baby" when your boss offers you a promotion
- It makes the team work a lot more human. We aren't geniuses, and even geniuses screw up. It's all fine.
- If you own up your small mistakes, no one is going to throw you under the bus if you make a much bigger mistake.
Good luck.
Re: Ask HN: How do you not take criticism of your work personally?
#233What you have encountered is actually one of the necessary steps to really become "a senior developer". And congratulations, you have already passed the biggest part of that hurdle: becoming aware of the issue. There are things that are fragile, things that break when they encounter a shock. Such as porcelain, when transported. There are things that are non-fragile, things that do not break when they encounter a simi…
Thank you, it sound to me like meditation could be a way of developing an anti-fragile attitude?
Re: Ask HN: How do you not take criticism of your work personally?
#234- If someone reports that my code crashes with some seemingly valid input, I won't take that as criticism, but rather somebody trying to help improve my code. It's for their own benefit, but still it's still a contribution.
- If someone points out some stupid flaw in my code and has a suggestion on how to improve that, I'll also welcome it as a contribution. It's also an opportunity to learn from the mistake.
- If somebody points out that some code is imperfect (but works in the intended use cases) with no suggestion or obvious path on how to improve it, then they're just being annoying. I have other stuff to do, so try not to pay attention to this (I'll admit this is harder than it sounds).
- If somebody points out that my code kinda sucks and points at something else that's better written, I'll appreciate them sharing some knowledge and go look at the other code and see what I can learn from it.
Generally, I when somebody points out a problem with my code, I'll assume they're having the same stance that I do when I report issues. When I report issues, I generally want to help them get fixed to improve the program since I want it to work for my specific scenario (and for anyone else trying to do the same).
Being someone who always complains about things that are broken (or can be improved) help understand that when other complain they're just trying to indicate that things can improve. They're (most likely) no trying to attack me.
Re: Ask HN: How do you not take criticism of your work personally?
#235Earlier quoted context omitted.
Usually review feedback is not that harsh though. It's not like "This is complete shit, please start over!" It's usally things like "If you used this pattern in this area, it would become easier to read" or even more trivial "This variable has a generic name, please make it more expressive" or whatever...
I think I'm in the extreme minority on this, but in my view those responses go from least harsh to harshest. This is complete shit, start over. Even though there's vulgarity, it's explicitly directed at "this" and not "you." If the vulgarity is indicative of any frustration, then it means my work was below their expectations - which necessarily implies that they have come to expect more from my work. This is confirme…
"This is complete shit because of X Y Z" is actionable "this is complete shit" is not. At what or who it is directed is irrelevant, it's useless.
> The boss who says this respects you, respects your work, and knows you can do better than this uncharacteristic example without them holding your hand.
Nope, because again, no indication why it his shit.
>> If you used this pattern in this area, it would become easier to read
> "You." This comment is directed at me and the choices I made. The comment uses the conditional - it isn't frustrated, it's wistful. The language is stilted and formal; they're keeping me at an arm's length.
Yes, "you" prima-ballerina, you wrote it, take responsibility for it.
> And easier to read? Humiliating that my thought process is that incoherent.
You should be. Code is for reading. You should know that by now.
It would be different if it was directed at junior dev but you should know better.
Fix it and move on, everyone writes bad or unclear code sometimes.
>> This variable has a generic name, please make it more expressive.
> Very simple present tense statement, followed by very simple imperative. I'm clearly being handled. And please? They are literally begging me not to suck so bad. This isn't just arms-length language, this is you're-going-on-a-PIP-and-we're-being-careful-not-to-give-you-any-employment-law-leverage language. If someone ever gives me feedback like this, that's a sign I'm going to get fired.
That's insanely weird assumptions you're making. Everyone makes bad code. Being polite is hedging your bet against how the other side answers to your feedback. If you know someone and you know their style "hey dude, this reads like shit, fix it" can be entirely enough and just fine, but if you don't know the person all that well being nice won't hurt.
Not "you named variable weird, you're fired" like you're trying to interpret it
Re: Ask HN: How do you not take criticism of your work personally?
#236It's kind of dumb, but I think about a line from Casino Royale - M says to James Bond "I want you to take your ego out of the equation and judge the situation dispassionately." It's unlikely that the person making the comment is out to harm or anger you. Ideally you are both on the same team, trying to perform some task for the benefit of your employer. In that case, recognize that your ego or pride has been engaged;…
I had co-workers that avoided me as a reviewer because I would highlight important tech and architectural concerns. Those were hand waved away with the usual "we don't have time" arguments.
They've since left the company and I've spent literal years pulling out those deeply embedded ticks.
I've come to realize that I should have asserted myself a lot more back then. You're right that many of the small things don't matter (or can be improved fairly easily). The big things: some of those matter a lot.
It can be hard for others (especially more junior devs) to see the good intention of trying to avoid future quagmires. That's been a bit of a challenge on my end.
Re: Ask HN: How do you not take criticism of your work personally?
#237For dealing with snarky or nasty criticism of you or your character, I would highly recommend listening to recordings of Marshall Rosenberg's books and/or seminars on "non-violent communication" (available on Spotify, Audible, etc.) The NVC philosophy is absolutely game-changing: it's to change your focus away from the "jackal comments" and empathise with the human needs underlying them. It's God's work -- connecting and healing for you and your critic.
Re: Ask HN: How do you not take criticism of your work personally?
#238Kudos on the realisation and desire to improve. There are a couple of tricks you can use, especially when it’s asynchronous textual communication: Assume positive intentions from the other person. Imagine them as having written with a genuine smile on their faces. Don’t think of it as them versus you, but you and them together against the problem. That defaults ambiguity to the more pleasant side and allows you to re…
> Assume positive intentions from the other person. This works well in professional settings, but falls apart in certain online communities. How do you deal with people that don't have positive intentions, but actually have the precise opposite intentions, i.e. they want to attribute any perceived problem with your work as it meaning you are a bad programmer. Not taking that personally is far tougher.
(The downside of internet fame to anyone is that you will attract far, far more of these people, regardless of what you do.)