You’re sitting at your local coffee shop in front of your computer trying to figure out how to solve a problem – one of your volunteer community moderators has become a bit over-zealous with their takedowns. They’re aggressively moderating posts on your community platform that don’t actually pose any kind of problem and they’re even actively blocking people who have done nothing objectively wrong. You need to get them to stop being so belligerent, but you also don’t want crush their spirit – the best outcome would be for them to dial their actions back a bit and continue volunteering productively.
But how can you make that happen? What words can you say to show them that they are valued, but their actions are just a tad too strong? Is there a framework for thinking about this in an effective and productive way? In short: how do you solve this problem?
You suddenly realise what you need to do – you remember a technique a previous manager told you about when you were just starting out, so you rummage in your bag until you find what you’re looking for – good thing you grabbed your old laptop bag today otherwise you wouldn’t have it with you. You excitedly take it out, place it next to your laptop and stare at it intently. After a few minutes of internal dialogue to decide if you’re too self-conscious to do this in public, you start talking to it and telling it all about your problematic community volunteer.
The couple at the table next to you stare at you then quickly pick up their coffees and move to a table on the other side of the room.
The guy on your other side glances up from his Wordle then shifts his back to face you and carries on.
A child openly stares at you from her highchair.
Of course, I don’t blame them for thinking you’re a little bit strange – you are talking to a rubber duck after all…
Rubber duck problem solving is not a new idea, but it has traditionally been very much confined to the software development niche. The basic principle is that if you can fully explain your problem to an inanimate object, you will almost always be able to find a solution on your own.
If you can fully explain your problem to an inanimate object, you will almost always be able to find a solution on your own.Tweet
Commonly referred to as “rubber duck debugging” since it was first mentioned in 1999’s The Pragmatic Programmer, I’ve found the idea applies across any industry and indeed any part of life. No matter what problem you’re trying to solve, following these steps is a way to almost guarantee that you’ll come up with an answer yourself:
- Obtain a rubber duck (or another inanimate object – I’ve used a Mace Windu action figure in the past since he come with an appropriate amount of gravitas).
- Explain your problem to the the duck in full – start at the beginning and give as much detail as you need, telling the duck exactly what you’re trying to do and what steps you’ve tried so far to get there. It is vital that you do this out loud – not inside your head or mumbling quietly, but out loud so the duck can hear you.
- While you’re talking, the solution will suddenly come to you in a flash of brilliance – the duck will have done its job and will then rest happily knowing that it has done what it was made to do.
That’s it – if you do this properly and it genuinely does not work for you, then it’s time to talk to an actual person and get their input.
I’m sure there’s a name for the psychological concept at play here, but the idea is that speaking the problem out loud enables you to see it from someone else’s perspective and therefore consider what their answer might be. This allows your brain to enter a problem-solving space rather than being stuck feeling like there’s no solution, and it really does work.
I frequently coach my team on this technique and have shared it with many colleagues over the years – since it is generally only known amongst programmers I’m always excited to see how much it helps people who have never tried it before. It sounds so simple, yet it’s surprisingly powerful and effective.
Have you heard of rubber duck problem solving before or tried it out recently? How has it worked for you?
Bonus: To solve the problem of the over-zealous community moderator, I’d strongly suggest taking “calling in” as your primary approach.