There is no person in the world who uses a computer or other device, and at the same time has never encountered any error. And how do we like to call such errors now? Exactly, bugs. Slang word that is firmly entrenched in the vocabulary of any modern person. But this is not the only pearl of folk art in the context of errors. After all, mistakes, I mean bugs, there are several types, the names of which are also full of meaning and creativity. About them today and will be discussed. I hope this material will amuse you, as it amused me. Go.
What is the word "bug" and why is it?
The word "bug" (bug in English) is the most common scutes. No, not the one that is installed in spy movies on the phone for wiretapping. A common insect. More precisely, any insect from the order Hemiptera, also referred to as "real / true beetles". But as a biological term began to be used in computer technology.
The most common theory is the case of Grace Hopper. She worked at Harvard University with a Harvard Mark II computer. The device did not work as it should. As a result, Grace discovered a burnt moth between the closed contacts (judging by the external characteristics). After that, Ms. Hopper pasted the little saboteur into her technical report and wrote: “First actual case of bug being found”. It all happened in 1946 on September 9th.
The case is really funny, but not the first. Before him, during the Second World War, errors in the electronics of radar devices were also called "bugs."
And earlier, in 1878, Thomas Edison wrote the following lines:
So it was with all my inventions. The first step is intuition, which comes as a flash, then difficulties arise — the device refuses to work, and it is then that the “bugs” appear - as these minor mistakes and difficulties are called - and months of close observation, research and effort are needed before it comes to commercial success or failure.
But it is not surprising to call a bug that annoys you after an insect, which can often reach us as well, whirling around, biting, stinging and buzzing in the ear.
Non-standard bug classification
Bugs come in different types, it all depends on the place of their discovery, on the victim of their activity, on the consequences, etc. Based on these data, bugs are classified, so to speak, in a scientific way. These are both semantic, and syntactic, and race conditions, etc. etc. We will consider the terms are not so serious, but no less accurate in the description of a bug.
Alpha particle bug
This type of bug is also sometimes called simply “Poltergeist”. You can detect such a bug only once. As a rule, it appears due to incorrect operation of the hardware (hardware). Because of its mystery and inexplicable algorithm of occurrence, its appearance is attributed to a variety of phenomena: from the passage of dark matter particles through the device to solar flares.
As an example, remember the movie "The Matrix: Reboot." There were such characters as "twin albinos". At their core, they are ghosts, but are part of the Matrix program code.
Bozebag
Imagine a swarm of bees. Submitted? This is what BoseBag has the same view - the accumulation of errors in a certain part of the program code, which lead to critical violations of its work.
In other words, imagine one Terran worker who is being attacked by a hundred Zerglings. Consequences in the explanation are not required.
Borbag (Bohrbug)
In other words - “classic bug”. He is and he does not disappear anywhere. His work always ends with the same result. For most programmers such a bug is obvious and easy to fix. Apparently because of his obviousness, he received a name in honor of Niels Bohr (Niels Bohr), a Danish physicist who offered his vision of an atomic structure, named after him - the Bohr Model.
Heisenbug
Apparently one of the most unusual types of bugs. The fact is that it is impermanent. Such a bug changes its properties, disappears, appears in the process of its detection and attempts to eliminate it. It is for such properties that he received a name that refers to the principle of uncertainty of Heisenberg (and no, this is not the Heisenberg that cooked meth in the series). This theory says that an object will change its properties while observing it in view of this very observation. Coolly speaking, the state of the object is not under observation and under observation will be different. Oh, this quantum mechanics, where black can be white and cold cold (I exaggerate this, of course).
Zenbug
A very philosophical bug, even a bit theological. It exists, but does not affect the operation of the program.
Apparently this error reached the highest level of enlightenment and realized that everything in this code is unimportant.
Mandelbug
Benoit Mandelbrot
A bug that all programmers fear. It is difficult to detect, even harder to eliminate. And all because of its chaotic nature of behavior. Such bugs got their name in honor of the mathematician Benoit Mandelbrot, who once worked at IBM. Why is not so clear. Perhaps this is due to the Mandelbrot set (the outstanding work of a scientist related to fractals).
Metabag
This bug is an extremely complex description of a complex part of the code in the commentary to it, as a result of which the understanding of the true purpose of the code and its essence is distorted. Also, marabags are sometimes called purely grammatical or spelling errors in the same code comments.
Perhaps the name metabag comes from the notion of meta-language - a language for describing a language.
Ufobag (UFO bug)
This type of error appeared thanks to customers, customers and users of programs. Sometimes some of them find something and immediately call it a bug, just not understanding the overall picture of the program. Simply put, a person believes that it is not a mistake. Such “discoveries” lead to lengthy explanations on the part of programmers, who, as a result, are no longer pleased to have added this function.
Fermabag
The program is ready and transferred to the customer. You can relax. It was not there. The customer claims that the program on his machine is working with an error. It is almost impossible for the coder to believe in it, since it tested its performance and everything worked with a bang. This is how farmabags appear - bugs on the user's side, the existence of which the user needs to prove to the programmer with the same diligence as Galileo had put his theory before the inquisition.
Fermibag
Enrico Fermi
A very rare case, but the probability of its occurrence is inversely proportional to the experience of the programmer. Simply put, the less experience he has, the more often Fermibags can occur - when there are 1-2 errors per 1 line of code.
To interpret the name of this type of bugs is extremely difficult. It can be assumed that Enrico Fermi served as inspiration for him. Or rather, such a thing as Fermi-Dirac statistics.
This quantum statistics in collaboration with Bose-Einstein is used when it is necessary to take into account quantum effects with indistinguishable particles. These effects occur when the particle concentration is: N / V> = nq. And here is the most interesting, nq is a quantum concentration, when the background functions of the particles are in contact, but do not overlap.
A rather complicated theory, like all quantum physics, but quite clearly describes the aforementioned Fermibags.
Phase of the Moon bug
You can still say "bug phase of the moon." This bug manifests itself only at a certain time, with a certain periodicity. For example, every Tuesday or every 15th of a month or every 43 minutes.
Schroedinbug
A very unusual bug that appears suddenly and just as suddenly causes the program to crash. When we do not observe it, it is still there, but it is inactive. When we discover it, it becomes active. And it must, of course, be eliminated.
The properties of the bug, as well as its name, suggest us to think about a cat. Not a simple, fighting wallpaper, but about Schrodinger's cat - an experiment of Austrian physicist Erwin Schrödinger.
This theoretical experiment was described by Schrödinger himself in some detail and difficult, to some extent. The simplified version is:
There is a steel box. In the box is a cat and a mechanism. The mechanism is a Geiger counter with a very small amount of radioactive substance. This substance is so small that in 1 hour 1 atom can decay (and maybe not disintegrate). If this happens, the meter reading tube is discharged and a relay is triggered, releasing a hammer that hangs over the poison flask. The flask shatters and the poison kills the cat.
Now an explanation. We do not see what is happening in the box, we cannot influence the process, even with our observations. Until we open the box, we do not know whether the cat is alive or dead. Thus, exaggerating, we can say that for us the cat in the box is in two states at the same time: he is alive and dead.
Very interesting experiment, pushing the boundaries of quantum physics.
Even more unusual is Wigner's paradox. To all of the above experiment variables, some laboratory technician friends are added that are conducting this experiment. When he opens the box and finds out the exact state of the cat, his friend, being in another place, does not know this state. The first must inform the second that the cat is alive or dead. Thus, until everyone in the Universe knows the exact state of a poor animal, it will be considered both dead and alive at the same time.
(Sorry for the excursion into quantum physics from a person who has nothing to do with it. I just always liked this experiment very much.)
Chain bug (Counterbug)
This bug can still be compared with the children's game of kwacha, when we caught someone and shouted "Pass on!". So here. The essence and activities of this bug can not be explained either in writing or verbally. A person should see it with his own eyes. So that someone else could get acquainted with the above error, he must bring this person and show him the bug personally.
Loch Ness bug / Bigfoot-bug
About these bugs could shoot a separate episode of the series "The X-Files". He was seen only by one person, he claims that there is a bug, but he may not have evidence. Even the creator of the code can not find any signs of this mystical bug. And he only needs to say to himself: "The truth is out there."
Hydrobag (Hydra Bug)
Ancient Greek sparring partner Hercules. According to legend, this creature with a lot of heads had an incredible regeneration - it sued one head, it grew 2. It’s the same with hydrobags. The elimination of one bug leads to the emergence of a new, and sometimes not one.
Bugson Higgs (Higgs-Bugson)
Purely theoretical bug. Its existence is proved by improbable user reports and log files. It is extremely difficult for a programmer to detect this bug on his machine, since he does not know for sure if this bug is at all or not.
The name is a reference to the Higgs boson - an elementary particle, which searches are engaged in CERN (European Organization for Nuclear Research).
Hindenbug
A bug that leads to horrendous consequences, as a rule, to complete data loss. The name is taken from the name of the Hindenburg airship, which burnt down in 1937 on 6 May. This tragedy took the lives of 35 people and led to serious discussions about the existence of airships as a mode of transport.
Paper bag bug (Brown-paper-bag bug)
This bug goes to the public with the public release of the program. It is so obvious that the author of the code has to put a paper bag on his head in shame and hide from society for several days. (figuratively speaking, of course)
Sorcerer's apprentice mode bug
This is a bug in the protocol when receiving a message leads to sending several messages, which, in turn, cause the same bug to occur.
The title is taken from an episode of the animated film "Fantasia" (Walt Disney, 1940). In it, Mickey Mouse acts as a pupil of the wizard, who instructed the mouse to remove the house. Mickey decides to use magic, which in his inept hands leads to disastrous consequences for him and the hilarious scene for the audience. (I recommend to watch those who are not familiar with this cartoon)
Bug "Offended Girl" (Mad girlfriend bug)
This is a bug, the impact of which on the program remains unclear, while the program itself works correctly, seemingly. As often happens with girls who are offended, but to the question "Are you offended?" I answer "Everything is fine." (Usually accompanied by a stern look, making holes in the guy's head)
Excalibur bug
If there is a bug in the code that all members of the team tried unsuccessfully to eliminate, it is called Excalibur, well, or Mjölnir, to whom some mythology is more to your taste.
Epilogue
I am more than confident that this article did not list all unusual and creative types of bugs. There is no limit to human imagination, as they say. Perhaps you know other types of bugs or encountered such that can not be attributed to any of the above categories. If so, then let's figure out a name for this unique bug. Who knows, maybe it will go to the masses. And that's it for today. Have a nice day and remember there is always a line between a bug and a feature, the only question is its thickness.
As advertising. These are not just virtual servers! This is a VPS (KVM) with dedicated drives, which can be no worse than dedicated servers, and in most cases - better!
We made VPS (KVM) with dedicated drives in the Netherlands and the USA (configurations from VPS (KVM) - E5-2650v4 (6 Cores) / 10GB DDR4 / 240GB SSD or 4TB HDD / 1Gbps 10TB available at a uniquely low price - from $ 29 / month , options are available with RAID1 and RAID10) , do not miss the chance to place an order for a new type of virtual server, where all resources belong to you, as on a dedicated one, and the price is much lower, with a much more productive hardware!
How to build the infrastructure of the building. class c using servers Dell R730xd E5-2650 v4 worth 9000 euros for a penny? Dell R730xd 2 times cheaper? Only we have
2 x Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100 TV from $ 249 in the Netherlands and the USA!