Can Software Bugs Be Beneficial Like Gene Mutations?

  • Thread starter Thread starter DaveC426913
  • Start date Start date
  • Tags Tags
    Gene Software
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
5 replies · 2K views
DaveC426913
Gold Member
2025 Award
Messages
24,601
Reaction score
8,938
Couldn't figure out which category to put this in so I put it here.

Today, the Product Owner stumbled across a feature that was working correctly, but should not have been.

A Yes/No button was defaulting to 'Yes'. It was eventually supposed to be implemented that way, but no one was assigned to work on it and we could find no record of a developer having added the feature. Tech Lead confirmed that it was inadvertently operating correctly, despite not being configured to do so.I mused that, like the one-in-a-million genetic mutation that's beneficial, this was a one-in-a million bug that actually made the software more functional.
 
  • Like
Likes   Reactions: DennisN, jim mcnamara and YoungPhysicist
Physics news on Phys.org
DaveC426913 said:
I mused that, like the one-in-a-million genetic mutation that's beneficial, this was a one-in-a million bug that actually made the software more functional.
I think that useful bugs are much more common than useful mutations though.
 
Last edited:
YoungPhysicist said:
I think that ethical bugs are much more common than ethical mutations though.
What is an ethical bug?
What is an ethical mutation?
 
DaveC426913 said:
What is an ethical bug?
What is an ethical mutation?
Sorry, I mean useful. My poor English.:biggrin: I thought ethical means useful.
 
  • Like
Likes   Reactions: DaveC426913
In many modern libraries and frameworks, especially GUI frameworks and rapid application development frameworks, it has become a deliberate design force to offer sensible defaults, also called convention over configuration [1]. This means the framework will in many cases deliberately work as intended without the programmer having to explicitly configure for that behavior.

But if we extend the discussion to whether or not actual defects in software have a chance of being beneficial I would say yes, but perhaps not by itself. I have several times over the years encountered a defect in software systems that somehow hid or reduced the effect of another much worse defect. Fixing the fix defect then have the effect of making the system worse until the second defect is also fixed. The scenario is actually fairly common when two sub-systems have to interact over a vaguely defined interface where one component is constructed with a bad defect that can be triggered by normal interface usage so the other sub-component have to deliberately introduce a "good" defect in its interface usage in order not to trigger the bad defect in the other component. The "good" defect is sometimes known as a work-around. For instance, historically the Windows OS had a number of such work-arounds that Microsoft had to keep carry forward over many years in order to stay compatible with older software.

[1] https://en.wikipedia.org/wiki/Convention_over_configuration
 
Filip Larsen said:
In many modern libraries and frameworks, especially GUI frameworks and rapid application development frameworks, it has become a deliberate design force to offer sensible defaults, also called convention over configuration [1]. This means the framework will in many cases deliberately work as intended without the programmer having to explicitly configure for that behavior.
Yeah, I glossed over the cause and effect of the behavior. This wasn't simple control-based default behavior. The defaulting is based on interplay of various states defined elsewhere in the app.