The Meaning of Meaning

Here are the slides and the transcript of my Agile Testing Days 2019 talk on the meaning of meaning:

Imaging the following:

An old office building in the vicinity of a big German car manufacturer. There is a meeting room, you know, one that’s been furbished a few decades ago. A lot of oak on the walls. Chairs with leather, probably synthetic leather, and quite some chrome.I am scheduled for a meeting with our new project manager, who I only by mail thus far. He wants to talk about time tracking and I somehow ended up being the administrator for that tool.A minute into our meeting, he goes like “we need to log time on each epic or user story”Since those are not the same to me, I asked him what he meant by those terms. His answer “The requirements of course” which only triggered another question for me: “Do you mean the requirement or the requirement document?” All I got something along the lines of “goddamnit, that’s just semantics.”Who of you is on twitter? Most of you I suppose. If you are following the same people that I do, you will have come around this testing vs. checking debate at some points. If you haven’t, it pretty much goes like this: “an important part of testing is this and that”. Someone will respond with “Oh, no. That is checking.” “No, we call it testing.” “No, that’s checking to me”So what do these two stories have in common? They are both about meaning and since I was a linguist before my testing days I feel a certain itch to scratch a bit on the surface about what linguists have done for century and tell you a bit about meaning and semantics from that point of view.

Let me show you three pictures:

This is a picture of me, probably not the best one, but still it’s me.

This is stuff

And here we see people hugging. Pretty adoring, isn’t it?

Now what do these three have in common? They are represented by the same word: Kram

Does that mean that I run around and hug stuff? Definitely not. This shows rather a concept known in linguistics for more than a century. We are having a concept (people putting their arms around each other to make them feel good) and a representation of that concept. Those two are absolutely arbitrary.That’s why the concept of “something to sit on with 4 legs and a back” is called chair in English, “Stuhl” in German and “iskemle” in Turkish. You could also call it “grillblib”. So how come we understand each other? Well, it’s agreement. At some point someone said “I call it a chair” and someone else said “okay”. And the other factor is frequency. If you use a word more often, it becomes more known, because you can’t always ask “sorry, what does that mean?” when you hear it again.Well, actually as testers we can. And we should. In my experience those questions spark nice little discussions that help the team clarifying things.

Okay, great, so we know now that meaning is arbitrary and we can live with that. But there is more to it. Our brain likes to remember things is clusters. It saves words and meanings that are alike, because that’s more efficient. What we are having are categories. Now categories are fuzzy. A category could be planets “is somewhat round, orbits a star, and clears away the debris in its way”. Now if we take earth, it fits that category nicely. Now what about poor Pluto? Sorry, mate, you don’t clear away the debris in your way, you are not a planet. But you are still a kind of planet. And this “kind of” is where categories and meaning become fuzzy. This can actually help you as a tester when prioritizing. Go for core elements or prototype things first.Now sometimes we need new words. Except of making them up, we put two words we know together. In linguistic classes that is called compounding. Now take Pluto. We like him some much that we needed a new category and word: dwarf planet. The new word combines parts of two concepts to a new one. The small part of dwarfs and the being round and evolving around a star part of planets.Now, that’s great. Whenever we hear a new compound, now its parts we can make up the meaning of the new word.

Not so quick, what about these fellows here? The concept of redshirt is not a red piece of clothing, but nameless character on Star Trek that is going to die on a planetary mission. So, it’s a trap! This example already shows that we mustn’t just look at words but at words in contexts or in sentences.

All tests are purple!

You know the meaning of each word, I am pretty sure of that. But what the hell does that mean? To be honest, I don’t know either. All tests are in a certain state represented by the color purple. Since we haven’t agreed on anything, it is unknown. There are parts of semantics that push sentences even further. We could assign a truth value. Is it true that all tests are purple? We don’t know. Is it true that all tests are red? Now that is something we may be able to answer in our context. Now saying if something is true or not should be something we as testers should be somewhat familiar with.

Now let me take you back to the old-fashioned meeting room.Markus, that’s the project manager’s name and he is actually the only one I still have contact with from that team, let me explain for a minute what my understanding of the terms user story and requirement were and we figured out that for me those two were different concepts while he considered those to be different labels for the same concept. I don’t really remember what we decided for in terms of time tracking, but we cleared it out, which isn’t too bad for just semantics I guess.