Live data from Hacker News

I’ve made a conscious effort to stop apologizing for bugs in my code

blog.danslimmon.com

11–20 of 194 posts

Re: I’ve made a conscious effort to stop apologizing for bugs in my code

#11

He says that this is a fallacy: > It reinforces the idea that any one person or piece of code can be blamed for a given failure. Why is that a fallacy?

Probably because there is always a bigger picture: culture, process (e.g. testing, code review, time pressure, feature centric performance metrics).

Surely, the person making the mistake is the proximal cause for a given bug, and surely all other things being equal personal attitude matters (i.e. a more careless person is going to make more mistakes), but if you zoom out to the big picture you see other responsibilities and more importantly you see opportunities for improvement that vastly exceed the playoffs of "just putting more care" into each commit.

Re: I’ve made a conscious effort to stop apologizing for bugs in my code

#12
This sentiment reminds me of Gerald Weinberg's observation of four plus decades ago - "If builders built buildings the way programmers wrote programs, then the first woodpecker that came along would destroy civilization." I was trained as a computer engineer, and the difference between those who were taught to approach software development as a craft and those who think bugs are ok and it's really about feeling good about myself at the end of the day is clear and obvious in most organizations and in the product that comes out of them.

Re: I’ve made a conscious effort to stop apologizing for bugs in my code

#14

He says that this is a fallacy: > It reinforces the idea that any one person or piece of code can be blamed for a given failure. Why is that a fallacy?

Conceptually, there's supposed to be a process that reduces errors, rather than relying on each individual to be infallible.

Re: I’ve made a conscious effort to stop apologizing for bugs in my code

#15
Well there are multiple kinds of bugs.

You did not test it? Apologize.

You were sloppy? Apologize.

In most other cases I can agree with the author.

All I can add is that, as a freelancer, I always explain (like they are 5) what went wrong. My customers don't care about the details but they like it when they know I made an effort of creating good software (bugs included).

Re: I’ve made a conscious effort to stop apologizing for bugs in my code

#16
I think it's worth acknowledging over your customers that the bug has caused them lost time or other kinds of issues. Whether you do that with an apology, it doesn't really matter, but I know I'd personally feel better when a vendor emphasizes with me.

Something you definitely don't want is to sound like it's an inconvenience for you that they're reporting bugs. Bug reports are extremely helpful and you should be grateful that they're taking the time to report them to you.

Re: I’ve made a conscious effort to stop apologizing for bugs in my code

#17
Bugs categories are also important. My project and my leadership was destroyed when a non-technical wanna-be "operation" manager without experience in software development, started to see only bugs and reduce all development to bug fixing. Some "bugs" are in reality wrong or misunderstood requirements. Some are missing features. Sometimes the joke "it's not a bug it's a feature" is real. Sometimes "bugs" are edge case we didn't want to solve immediately, until the edge case it's not edge anymore. I think what is dangerous it's seeing ONLY bugs, focus dev ONLY on bugs. Shift a little the point of view from bug fixing to software evolution.

Re: I’ve made a conscious effort to stop apologizing for bugs in my code

#18
Why do software engineers constantly try to project that they are a special snowflake of a profession?

Would you accept such nonsense from your plumber, or your dentist, or your electrician?

Software engineering is one of the most fundamental building blocks of modern civilization, and yet it continues to be so fragile because of this kind of cavalier attitude.

Also, apologizing doesn't mean you have a moral failing. It means accepting at least partial responsibility, and being humble about it. Any good org knows that you don't just design your system with the hope that people won't screw up, you need to design it to work despite some amount of screwing up. But in either case, it is still both an individual and collective responsibility.

Re: I’ve made a conscious effort to stop apologizing for bugs in my code

#19
I earn a living from my SaaS. I am a solo founder, responsible for everything. I wrote all the code. My customers pay subscription fees because the software makes their work easier (it's a B2B SaaS, https://partsbox.com/).

Bugs are solely my responsibility: there is no one else to blame. And bugs mean that my customers paid money for a product which did not work as intended (certainly not as I intended it to work). I feel it is definitely right to apologize for bugs!

I disagree with the author: if I worked at a workshop and dropped a hammer onto my customer's foot, I should apologize. No matter what the reason: I could be clumsy, or you could say that no one could be expected to never drop a tool — still, an apology is in order, because I did drop that hammer, and it made my customer's day worse.

Therefore, I always apologize for bugs.

What I did, however, learn to do, and it is quite important, is not to apologize when you are not sorry. An example is when a customer is unhappy with the pricing, or complains about a missing feature. Many people will begin a reply with "I'm sorry, but…", and it's the wrong thing to do. I only say I'm sorry when I really am.

Re: I’ve made a conscious effort to stop apologizing for bugs in my code

#20

So sure, bugs happen, regardless of how good you are. But there really are some people who constantly make mistakes, and those that rarely do. There are people on my team where, when there is a bug, I just start looking at diffs of what they have committed because more likely than not, they caused the problem. I think it's important to reinforce an attitude of trying to become better and people who give a shit when t…

[deleted]
Post reply on HN