codeburst

Bursts of code to power through your day. Web Development articles, tutorials, and news.

Follow publication

Stop Calling them ‘Bugs’

Maximiliano Contieri
codeburst
Published in
3 min readMar 22, 2021

Photo by Polina Zimmerman from Pexels

According to Wikipedia:

A software bug is an error, flaw or fault in a computer program or system that causes it to produce an incorrect or unexpected result, or to behave in unintended ways. The process of finding and fixing bugs is termed “debugging” and often uses formal techniques or tools to pinpoint bugs, and since the 1950s, some computer systems have been designed to also deter, detect or auto-correct various computer bugs during operations.

The Past

There are many historical references to the word Bug. Thomas Edison used it even before the first electrical computer. During computing early days on Mark III, the large computing facilities were a source of heat, therefore attracting real bugs like moths. Computer pioneer Grace Hopper coined the term while looking for a system malfunction.

Grace Hopper

The present

70 years later, data centers are very clean facilities (leaving no space for either people or insects). Even our home computers are almost free from malfunction caused by real bugs. Yet we still name our software glitches “bugs instead of “faults and this is keeping us from confronting real problems, real defects, and our own responsibilities.

The software quality process is under our control. It is our responsibility to deliver quality products. The term Bug sounds like an excuse out of our scope infecting our systems. It is not.

The Future

Language is continually evolving. We recently got rid of the master word on our GIT repos. To embrace the future and our own responsibilities, we need to be very careful with names, not only with our classes, methods, and variables but also with our artifacts.

  • We don’t need to debug software anymore. Find the root fault (caused by ourselves or previous developers), embrace the problem, write an automated test, and fix it. Easy as that.
  • We need no bug trackers. We just need to care for incidents, and not all incidents are faults. Surprisingly, many of them are related to misunderstandings, lack of definition, ambiguities, etc.
  • We don’t want to fix all software faults. A good deal of mature software has known bugs (now called known defects).

Let’s start by calling things by their name.

The objective of this series of articles is to generate spaces for debate and discussion on software design.

Beware of bugs in the above code; I have only proved it correct, not tried it.

Donald Knuth

We look forward to comments and suggestions on this article.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Published in codeburst

Bursts of code to power through your day. Web Development articles, tutorials, and news.

Written by Maximiliano Contieri

I’m a senior software engineer specialized in declarative designs. S.O.L.I.D. and agile methodologies fan. Maximilianocontieri.com

Responses (9)

Write a response