This post sparked our curiosity to find some more unusual software engineering terms. We are not sure how many of these you would want to pull out of the bag during a job interview, but they are worth knowing in case you hear them amongst colleagues.
How many of these unusual software engineering terms are you familiar with?
418 I’m a teapot
The Hyper Text Coffee Pot Control Protocol was released in 1998 as an April Fools joke but remains a known response term amongst software engineers.
Some sites use this term for requests they do not want to undertake. Originally the code was meant to indicate that the server was a teapot but that the client was attempting to brew coffee with it.
Or basically, “I’m a teapot” describes a situation where someone is trying to perform an action that is not possible.
Ostrich algorithm
The term ‘Ostrich algorithm’ refers to errors or other problems in code. It derives from the idea of sticking one’s head in the stand to ignore a problem. Concerning coding, it relates to ignoring a problem that might be more cost-effective to leave alone instead of spending time trying to solve the issue.
Yoda conditions
“Yoda conditions” is a programming style where two statements are written in reverse mimicking how Yoda would speak.
Traditional
So, you want to become a software engineer, do you?
Yoda
So, a software engineer do you want to become?
Yoda conditions are used by programmers to avoid accidental errors.
Pokemon exception handling
This term comes from the Pokemon phrase “gotta catch ’em all”. It involves code wrapped with a “try/catch block” to catch exceptions.
Yak shaving
“Yak shaking” is a term used by frustrated software engineers performing useless, small tasks to complete or solve a bigger problem. The unrelated tasks distract the engineer from the original goal.
The term was coined by Carlin Vieri after he viewed the end of an episode of The Ren and Stimpy Show from 1991. The episode mentioned a “Yak Shaving Day” where people hung nappies instead of Christmas stockings and watched for shaven yaks to float by in an enchanted canoe.
Monkey patching
“Monkey patching” is used to make changes to a program without changing the source code. Its name is believed to stem from either the earlier term “guerrilla patch”, which referred to using sneaky methods to change code, or from the phrase “monkeying about” meaning to mess with something.
The Gangnam-style bug
“Gangnam Style” is one of the most-viewed videos in YouTube history, but Psy didn’t know at the time of release that the video was going to cause such a headache for the engineers working at YouTube in 2012. YouTube stores its numbers in binary and at the time YouTube could record up to 2,147,483,647 video views. As views began to reach this figure, an emergency software update was required to ensure the counter didn’t start to show the song receiving negative 2.1 billion views. Engineers managed to fix the bug just before Gangnam Style broke YouTube.
Jenga code
Taking its name from the game where players try to remove wooden blocks from a tower without causing it to collapse, “Jenga code” is a style of programming that results in a whole collapse when the programmer touches just one single block of code.
Spaghetti code
This term is used to describe code that is messy and difficult to read. “Spaghetti code” refers to code that has been rushed in the development process, causing problems for future developers who need to untangle the messy code to proceed.
Heisenbug
Heisenbug refers to a software bug that seems to disappear or alter its behaviour after someone has attempted to study or debug it. The name comes from Werner Heisenberg, a physicist who stated that the act of observing a system alters its state.
Hindenbug
“Hindenbug” refers to a bug that causes a catastrophic event that destroys data, shuts down systems, or causes other significant problems. Think along the lines of deleting your entire database and you’ve got yourself a Hindenbug.