Food Words that Double Up as Technology Terms

5 Sep

Food Words as Technology Terms - Java, Orange, Salt et al

The world of technology looks firmly food-wards when it wants to add color and flavor to its vocabulary.

Presenting for you a sampling of food words that describe products or concepts in fields ranging from cryptography to programming style to automation testing.

1. Salt and Hash

Salt and hash aren’t just words you’d hear on an Irish breakfast table: they are also staples of modern cryptography. 

Salt Cryptography

To make passwords more secure, a dash of "salt" (a random input string) is added to them – after salting a password, the result you get is called a "hash". Salting makes it harder for an attacker to break into a system by using password-matching strategies.

Why the cryptographic salt was named "salt" is open to speculation: whatever the reason may be, new terms have happily extrapolated from the food analogy – there’s pepper nowadays for hashing functions in addition to salt.

2. Java (coffee)

Probably the most popular of the lot – the name of the widely used programming language. Java’s logo testifies to its coffee inspiration.

Java Coffee

How the name "Java" came about is a bit of a mystery, even to those who were directly involved in its naming. According to Wikipedia:

The language was initially called Oak after an oak tree that stood outside Gosling’s office. Later the project went by the name Green and was finally renamed Java, from Java coffee.

A more elaborate article (So why did they decide to call it Java?: Javaworld) quotes many who participated in the naming decision, and the contradictions in their narration can form a CAT logical reasoning question. Sample Eric Schmidt:

I don’t remember who first yelled out the name Java — Chris always had a cup of coffee handy so it makes sense that he’d be the one. Of one thing I am certain: Kim did not name the language Java.

The source may be indeterminate, but Java’s coffee association is firmly anchored – and underlying Java components have carried the concept forward in their nomenclature. Case in point, next up: bean.

3. Bean

Object-oriented programming languages and frameworks (Java, Spring) have the concept of a "bean": a special class that follows specified coding conventions.

Beans in OOP

Just as coffee beans are essential to making coffee, beans in object-oriented programming form the backbone of the application.

4. Orange

Orange is an open-source software for data visualization, machine learning and data mining. Its logo is predominantly colored – you guessed it – orange, and its tagline drives home the citrus connection: "fruitful and fun".

Orange Software Data Mining

If you’re thinking that naming things after food is a new fad, think again: Orange was named over 20 years ago. Here’s another one even older…

5. Spaghetti code

"Spaghetti code" is code with the attributes of spaghetti: it is twisted and tangled and difficult to get a grip on.

Spaghetti Code

Applications tend to get saddled with spaghetti code for reasons such as changing project requirements, inadequate programming standards and/or developer inexperience.

This term has been around since a couple of decades: references to "spaghetti code" have been traced as far back as a 1977 article on API and programming languages: Macaroni is Better Than Spaghetti.

Code should ideally be well-structured and easy to manage – that is, NOT like spaghetti. [It must be some solace to the code author to be reminded of a delicious dish while soaking in criticism.]

Taking the spaghetti reference further are a few other pasta-inspired qualifiers:

  • lasagna code – code having too many layers
  • ravioli code – code with small, loosely coupled components
  • macaroni code – code that uses a mix of computer languages in a single document

6. Cucumber

The cucumber has lent its name to a cool software tool – one that enables the creation of easy automated tests.

Cucumber

What’ the story behind the naming of Cucumber? In the words of the tool’s creator, no long-drawn decision-making process – a quick impulsive  suggestion from his fiancĂ©e instead. He asked for a "catchy, non-geeky sounding name" for his new tool, she responded with "Cucumber" within seconds – and the name stuck.

Guess the name of the language that Cucumber uses to define its test cases?

Gherkin!

Notes:

Suggestions welcome for expanding the list.

If you enjoyed this post, you might also like:

2 Responses to “Food Words that Double Up as Technology Terms”

  1. Dalene Ingham-Brown April 23, 2021 at 3:48 AM #

    You missed a few <3

    Cookies. Breadcrumb. Byte. Spam.

    He he he!

    • S April 23, 2021 at 1:05 PM #

      Oh yes. And you reminded me of another – vanilla!

Leave a Reply