paint-brush
Why The Rubber Duck is The Ultimate Hacker Gadgetby@jamesbore
1,220 reads
1,220 reads

Why The Rubber Duck is The Ultimate Hacker Gadget

by James BoreDecember 8th, 2022
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

The most useful tool in anyone’s arsenal, regardless of whether they’re hacker, developer, security professional, writer, or just about anything else, is multipurpose and massively underrated. Rubber duck Debugging, or rubberducking, is taught in occasional computer science and programming courses. It's not perfect and won’t always work, but as a first step to try and solve a tricky problem it is always worth a try. When you are struggling with a problem, you simply ask the duck to explain the problem to the duck in terms it will understand.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Why The Rubber Duck is The Ultimate Hacker Gadget
James Bore HackerNoon profile picture

You may be expecting an article about the well known pen testing tool, the rubber ducky (see here). If you are, sorry to say that you’ve ended up in the wrong place and this might be more up your street.


Instead we’re going to talk about the most useful tool in anyone’s arsenal, regardless of whether they’re hacker, developer, security professional, writer, or just about anything else. It’s multipurpose, incredibly cheap, and massively underrated.


While the origins (officially speaking) lie in programming (it was first written about in The Pragmatic Programmer by Dave Thomas and Andrew Hunt), I’ve tested the approach with all sorts of people on all sorts of walks of life and have found it works almost anywhere, for anyone, trying to do anything. It’s not perfect and won’t always work, but as a first step to try and solve a tricky problem it is always worth a try.


I am of course talking about rubber duck debugging, or rubberducking. It’s taught in occasional computer science and programming courses, and referenced in textbooks.


What is Rubber Duck Debugging?

Firstly, the rubber duck aspect is optional. Really anything can be used, including empty air, but having a recognisable object with a bit of personality to it can make the technique a lot easier. In a pinch, where it would be inappropriate to carry a rubber duck around, a pocket supply of a few stick-on googly eyes can make an emergency substitute rubber duck out of just about anything.


The idea of rubber duck debugging is straightforward. When you are struggling with a problem, you simply ask the duck. Sounds useless, but the trick comes in that you have to try and explain the problem to the duck in terms it will understand. Since ducks are not the brightest of creatures already, and rubber ones lack even more in the brains department, those terms have to be as simple as possible.


Conceptually, it’s little different from something like pair programming, with the benefit that you don’t need to take up the time of a second person to talk through the problem.

Seriously, Does it Work?

Anecdotal evidence suggests a strong yes. You won’t always get an answer. However, as a first step to avoid burning someone else’s time as well as your own, it’s quick, efficient, and surprisingly effective.


There’s a technique called Active Listening which, for many people, has to be taught to understand and takes an effort to implement. Overall though it’s not that complicated a technique, as the core to it is to stop doing what almost everyone does during a conversation - to stop thinking about what you’re going to say next when it’s your ‘turn’ to speak and instead listen.

Image source: https://www.publicdomainpictures.net/en/view-image.php?image=400367


That means that in most conversations, even ones about seemingly complex problems, we aren’t using whoever else is involved for their answers (and they likely aren’t really listening that hard), we’re instead using the other person as a duck. Using a rubber duck instead saves that step, and has added benefits of preparing you for the conversation and making sure you won’t get halfway through your explanation to someone else before having to stop as the solution clicks in your brain.


At the very least, it’s something you should try. You won’t be embarrassing yourself in front of anyone, because you don’t need another person around, and it’s easy to start using as a technique. If it doesn’t work, no harm, no foul.

Can You Have Too Many Ducks?

Yes, yes you can. Just ask James Veitch’s roommate.


https://www.youtube.com/watch?v=uYOmtEcZ1lk