Should minor bugs be fixed so that they do not distract developers?

While Joel Spolsky believes that every mistake should be fixed before the new code is written, the reality in many places is that the developers are very busy, and some errors are considered worthy, while others are not. Unit testing is also often considered enjoyable.

I chased a cryptic error in a critical application and found a few minor ones in the process. I mentioned them to the original author, and he said something like "Oh yes ... I remember that QA lifted those 3 years ago, but they were closed."

I suggest that some developers work better on several tasks in others. With me personally - I like to work on one thing at a time, and even if there is a 0.1% chance that a minor error can interact with a serious one, I have a desire to just fix the minor error in the first place (better to understand this in the process) and not think about it later.

On the one hand, I will spend my time on what business analysts consider unworthy. On the other hand, I could quickly fix an important mistake if I could focus on only one task.

Before trying to make this argument, I wanted to ask what are your thoughts and feelings with this situation. This question is marked as a community wiki. Thanks.

+4
source share
5 answers

Just remember that whenever you change the code, you can introduce new errors, therefore, by correcting these small errors, which are considered insignificant for correction, you can accidentally introduce a new serious error. Sometimes this risk is worth taking, but in some critical systems you should never touch the code without a good excuse. So, which system you are working on can be an important factor in answering this question.

+1
source

It seems like this falls into the category of “everything that works best for you and your team.” If you are really so busy on schedule that you don’t have time to fix the mistakes, you should get a good excuse for that.

If mistakes annoy you and prevent you from focusing on big problems, this may be enough justification for this, although you may have to explain why you missed the date of the ship because you spent a week correcting trivial errors before fixing one big mistake.

+3
source

Although it’s nice to think that you can send the code without errors, in fact there is always another. Nevertheless, I believe that the most pragmatic approach is to rank the order that you know about in severity, and to fix them every time and resources allow, with priority in severity.

+3
source

A Joel post clarifies: "Do you fix errors before writing new code?" philosophy.

"zero defects" meant that at any given time, the highest priority was to eliminate errors before writing any new code. "

A little more clarification could be used in this explanation, but I can understand that it does not mean that there is an expectation of perfection, and programmers should strive for perfection. This means that the programmer should not consciously avoid implementing the method in order to bring the product out of the door. A complete definition of “zero defect thinking” helps clarify:

"The best practice or principle of a successful team, this means that the project team is obliged to do the work as best as possible while it is being implemented, and each team member is individually responsible for achieving the desired level. Thinking quality with zero defect does not mean that deployed the decision must be “perfect” with literally no defects; rather, it establishes excellence as a permanent goal that the team strives for. "

Since you are going to recommend your team, keep in mind that this philosophy is the philosophy of team . Trying to follow this on your own can lead to a high level of frustration when your argument is not accepted by the team, but you try to follow it on your own.

+2
source

Very interesting question. Like others, this applies to the team. Resources, timelines, personal beliefs and more interfere with this issue.

In your case, I think the best option is to discuss this issue with your bosses and workmates. Do not assume all responsibility only for yourself.

+1
source

Source: https://habr.com/ru/post/1313675/


All Articles