What’s a bug and where is it?I have traced bugs in tens of years before retiring. In own code and code made by others. Also code, where ten, twenty or more code elements, units, programs, servers were part of a solution.
Let me try to illustrate a “typical” conundrum to the best of my abilities. Well knowing, that typical bugs are pure hearsay. Typical coding or process errors are legion, but bugs have some - ahem - “qualities”, that may initially defy reason, until ALL parts involved have been inspected.
Question always being “WHERE’s the bug” in an often “messy” conglomeration of parts, routines and methods, where all parties involved are certain, who’s not responsible. Truth can be extremely hard to swallow for some.
The following example is deliberately made very simple in nature; to prove a point!
Imagine a series of transport belts in a storage area of a factory. Many storage rooms. One after another. Rooms added, when needed.
Belts moving packages from manufacturing area to final storage area. Passing through portals in walls en route. All portals must allow pass-thru of packages up to 1.80 meters in height to live up to minimum specs. The portals must have absolutely level “tops” and truly vertical sides too. Clear specs!
Leave out anything else in this example.
Each portal is created with least possible costs. Last year, there were 13 portals. One allowed up to 3m. Some 2 meters or more. One 1.85 meters and so on.
ALL clearly within specs. Never been a problem to move packages along the line.
The newest package area added to the end of the transport line has a portal allowing packages up to 1.81 meter. Perfectly within specs, but suddenly a package gets stuck.
Seemingly there’s a bug, a design error in the last portal. Or…?
Maybe not the best example, but illustrates the basic problem.
Until someone measures the height of the “offending” package, it’s easy to blame the designers of the last portal added. That portal may still contain an error of some “hidden nature”, but the height allowance is certainly within specs. Until every part of the process is minutely tested, we don’t know, if the portal is the culprit.
In our case, nobody seems to be willing or able to measure the “package height”. Every bad excuse in the book has been used including “don’t know”!
Was a bug discovered or a signal of an error produced at an earlier stage?
Regards
P.S. I’m absolutely no fan of Sonoma, but personal views or animosities do not solve problems involving complicated systems. Bugs are pesky critters.
In our case, we have ONLY discovered a correlation involving one specific detail in very limited circumstances involving one example of unknown origin with content within unknown limits.
The discovered correlation may involve a bug present in the delivery system (Sonoma 1.4.1) on specific hardware (Apple Silicon) and NOWHERE else and not in earlier versions.
Is this truly a bug in Sonoma 1.4.1 or just a “signal” indicating another, hitherto not discovered bug elsewhere in the “production line”?
If you truly want to find the bug, you have to analyze all involved parties, parts and methods.
Blame is far easier to meter out. It’s always the other guy
As stated earlier, I’m certainly no fan of Sonoma, but…