Skip to main content

The test of silence

You have worked really hard on a new feature; an UI component, a library, an api, ... Then the moment is finally there. You will put this feature in the hands of your users for the first time. You enter the meeting room where Alice, your key user is waiting full of excitement. You put her in front of your laptop, open the browser and go to the page showing this new feature. And then...silence. Alice is just staring at the screen and does nothing…

Now there are 2 things you can do; you can do nothing and give Alice the time to figure it out herself or you can start to explain the feature, give Alice some clues on how to use it or even take over the laptop and start demonstrating it yourself.

We are typically tempted to do the second thing and start to guide our user when we see him/her struggle. But the moment you do that you lose an important opportunity to get insightfull information on how a user will perceive and experience your work.

Learn from your users their mistakes

So next time you have a meeting with Alice, try “The test of silence’'”. Let her interact with your work without explaining it. Keep your mouth shut and  resist the urge to help and correct when you see Bob making mistakes.

Before you show him your new feature, explain that you will stay quiet and just watch while she interacts with your feature. Ask him to talk out loud about what she is thinking and feeling when using it. 

Why is this important?

The reality is that when you create something, most of the time you will not be there when users see your work. If you create a presentation and send it around, you are not there when users check your slides. When you deploy a new feature in your system and your end users try it for the first time, you are not there either.

Therefore it is really important that you confront the users with your work without providing information. That is the only way you get some insights on how most users will perceive your work.

So next time you have to share some of your work, give it a try…

Popular posts from this blog

Azure DevOps/ GitHub emoji

I’m really bad at remembering emoji’s. So here is cheat sheet with all emoji’s that can be used in tools that support the github emoji markdown markup: All credits go to rcaviers who created this list.

Podman– Command execution failed with exit code 125

After updating WSL on one of the developer machines, Podman failed to work. When we took a look through Podman Desktop, we noticed that Podman had stopped running and returned the following error message: Error: Command execution failed with exit code 125 Here are the steps we tried to fix the issue: We started by running podman info to get some extra details on what could be wrong: >podman info OS: windows/amd64 provider: wsl version: 5.3.1 Cannot connect to Podman. Please verify your connection to the Linux system using `podman system connection list`, or try `podman machine init` and `podman machine start` to manage a new Linux VM Error: unable to connect to Podman socket: failed to connect: dial tcp 127.0.0.1:2655: connectex: No connection could be made because the target machine actively refused it. That makes sense as the podman VM was not running. Let’s check the VM: >podman machine list NAME         ...

Cleaner switch expressions with pattern matching in C#

Ever find yourself mapping multiple string values to the same result? Being a C# developer for a long time, I sometimes forget that the C# has evolved so I still dare to chain case labels or reach for a dictionary. Of course with pattern matching this is no longer necessary. With pattern matching, you can express things inline, declaratively, and with zero repetition. A small example I was working on a small script that should invoke different actions depending on the environment. As our developers were using different variations for the same environment e.g.  "tst" alongside "test" , "prd" alongside "prod" .  We asked to streamline this a long time ago, but as these things happen, we still see variations in the wild. This brought me to the following code that is a perfect example for pattern matching: The or keyword here is a logical pattern combinator , not a boolean operator. It matches if either of the specified pattern...