Can I talk to my rubber duck at work?

339

85

I have noticed I have had great success using another co-worker as a metaphorical rubber duck (sometimes intentionally, sometimes unintentionally). It improves my productivity vastly. However, I know that it probably distracts others when I am using them in that way.

That's why I want to buy a literal rubber duck and talk to it. I could do it very quietly and most of my close co-workers use noise-cancelling headphones 80% of time while sitting at their desks. My only concern is other people passing by my desk would think that I am weird. My desk is in an open space and several people pass by it every hour. I work in a big IT company in Sweden (however on my floor besides developers we have HR, marketing and people from high up who might be unfamiliar with the rubber duck method).

Is it unprofessional to talk to a rubber duck at the office?

kukis

Posted 2017-01-22T12:28:48.890

Reputation: 2 300

4

Comments are not for extended discussion; this conversation has been moved to chat.

Jane S 2017-01-23T06:45:24.310

3Are you planning to talk out loud? Or just in your head?WorkerDrone 2017-01-24T20:35:33.920

2Lots of crucial missing information: are your coworkers also at opendesks? Would the conversations last more like 30 seconds or 30 minutes? Given that coworkers wear headphones, does the company culture generally allow conversations and phone-calls, at your desk? Do you have a loud voice? etc.smci 2017-01-25T08:13:01.047

27Why do you need a duck, when you already have a mouse?Dennis Jaheruddin 2017-01-27T07:42:59.957

32Personally, I open up Stack Overflow and start typing a question. Their rules demand for a pretty comprehensive question; so in the process the answer strikes me anyway most of the time before I'm finished with the question. :)cst1992 2017-01-27T12:02:14.707

There are a lot of good answers here, so I'll just leave my short thought in a comment: just don't look straight at the duck. I often talk my way through code while looking and pointing at the screen. I don't think anyone would think any less of you if you happen to also have a rubber duck sitting next to you while you do this.skrrgwasme 2017-01-27T21:16:41.583

3It's only unprofessional if the duck talks back.ajb 2017-01-30T01:49:12.717

@DennisJaheruddin Because ducks are cuter than mice!Lorenzo Donati 2017-01-30T07:50:03.187

Why not just talk to yourself? You know you're sane, whereas a duck cannot always be trusted.mbomb007 2017-01-30T15:53:06.997

1Maybe you can get a little cartoon/pixelart duck you can put in the corner of your screen to talk to. (It could even animate and nod every now and again!)Jack Casey 2017-01-31T07:20:03.260

You only need ask yourself whether you can shrug off any resulting scrutiny or whether your insecurity prevents this and you'll have answered your own (inspiring) question. +1 I'm off to get a rubber duck, a 'Wilson' ball, a drinking bird and some googly eyes for my office supplies!Brent Hackers 2017-10-04T12:55:33.177

Answers

289

In the IT world, this is pretty much accepted so long as you aren't interrupting someone else (which is the point of using the duck or teddy bear or whatever in the first place).

I've set it up in some work places I've been at which didn't already have it, and it became accepted and normal almost overnight.

If you are still worried about looking like an idiot talking to a rubber duck, print out an explanatory note ("why am I talking to a rubber duck?!? Read this to find out...") or give people links to http://www.rubberduckdebugging.com/

Moo

Posted 2017-01-22T12:28:48.890

Reputation: 5 720

Comments are not for extended discussion; this conversation has been moved to chat.

Monica Cellio 2017-01-25T01:50:51.593

369

If you want to be quiet, start describing your problem as a question on stackoverflow. There were numerous times where I started writing a question and found the solution while explaining the problem.

You could also start to write the documentation of our code even before it is finished. I had various moments where I wrote the documentation of some code I wrote, and in the middle of it noticed "wait a minute, that's not what I programmed".

Philipp

Posted 2017-01-22T12:28:48.890

Reputation: 18 220

132Yes, this is the way to go. The act of formulating a question whether it be verbal or written is what helps you. "Rubber ducking" has nothing to do with a rubber duck. The only problem with stackoverflow is that you will sometimes get back an instant withering dismissal of your question if you actually post it.teego1967 2017-01-22T17:31:42.023

55100% agreed with this. I have written maybe 20x more SO questions than I've actually ended up posting thanks to how well this works.Matthew Read 2017-01-23T23:25:57.923

19Also, if the question could be useful for others and fits the site, consider polishing it and posting an answer yourself.Kapep 2017-01-24T08:39:23.153

43And one more advantage, SO will do a great job suggesting existing Q's that match what you're right in the middle of writing.sq33G 2017-01-24T09:00:28.883

I second the anecdote, happened to me quite a few times too.Matthieu M. 2017-01-24T09:26:30.107

30I often find my solution while writing down my SO questions. Then I just answer myself for posterity. Ocasionally, I find my own questions on google months later.ecc 2017-01-24T13:38:38.770

@teego1967 That isn't entirely true - sometimes I talk things differently than I type them. =)corsiKa 2017-01-24T19:00:41.903

2@sq33G I've also noticed that the suggestions it gives when you enter the title of the question on the "Ask Question" are much more accurate/relevant than the normal search function. Sometimes, when I'm feeling naughty, I perform my queries from the "Ask Question" page instead. Not sure why the discrepancy in search results, but I have noticed this.user58446 2017-01-24T23:23:39.947

7My favorite is when I'm typing a question like this on SO and an exact duplicate of it comes up in the auto search, and the author of that duplicate was me, from like 3 years ago. Glad you got my back, me-from-the-past.Jason C 2017-01-25T00:59:36.740

1Writing down the question and giving sufficient explanation to let someone help you has had very high success rate for figuring it out coding problems for me personally.Crisfole 2017-01-25T12:15:40.487

I started to write this answer but never posted it. ;-)Stéphane Gourichon 2017-01-25T18:37:16.533

Nitpick: it's Stack Overflow, not stackoverflow.ArtOfCode 2017-01-25T23:59:07.937

@sq33G indeed, it is better than the search function. I often use it instead, bang away my question in a roughly grammatical way, until the suggestions answer it.Davidmh 2017-01-26T16:20:44.803

1You don't need to post the question on Stack Overflow, because you already know that the answer will be "Use jQuery".Ed Daniel 2017-01-26T19:42:45.467

1The major reason I have so many more answers than questions on Stack Overflow is this; every time I try to explain my problem in sufficient detail that someone else could consider it, I inadvertently answer my own question.Ben 2017-01-26T22:22:36.177

1In the specific case that the problem you're having is getting a third party library to do what it says on the tin, deciding it's the third party's fault and writing up a bug report often has the same effect! (of causing you to re-examine the false assumption you've been working under that's just outside the circle you've been thinking in for the last hour)Ben 2017-01-26T22:25:59.560

224

Leave the duck at home, put on a phone headset and talk to the duck's voicemail.

Fellow software engineers will understand what you're doing, sales or HR people will think you're on the phone (which you will truly be) and won't be weirded out.

A E

Posted 2017-01-22T12:28:48.890

Reputation: 4 828

76Good idea, but for a bonus, keep the rubber duck too. So you can actually talk to the duck but it will seem like you are talking to someone on the headset.Evan Carslake 2017-01-22T19:26:01.940

18I always thought the webbed feet of the rubber duck were an essential part of the debugging process.DepressedDaniel 2017-01-22T21:40:33.903

94@DepressedDaniel If your duck has webbed feet, just email it -- as long as it uses a web-based client, the effect is the same.Nic Hartley 2017-01-22T22:10:57.327

1

@DepressedDaniel No, a teddy bear works just as well.

ChrisW 2017-01-22T22:56:31.563

4

Carboard cutout programmers also work: http://wiki.c2.com/?CardboardProgrammer

armb 2017-01-24T14:42:07.723

1This is what I do while trying to figure out while on the bike and in the train. Saves a lot of weird looks from passers-by.Mast 2017-01-25T12:50:41.607

9"Leave the duck at home, put on a phone headset and talk to the duck's voicemail." I've been on Stack Exchange for 3 1/2 years and the whole time I was just waiting to read this sentence. Thank-you A Epaj28 2017-01-26T21:20:41.237

3For extra fun, turn off your coworkers' phones when they aren't looking, then call their voicemail.Jason C 2017-01-27T03:14:37.497

2Save your money and just IM the ducky via Skype.EJP 2017-01-29T06:04:19.730

1@QPaysTaxes that comment made me laugh out loud at work. Unfortunately I have no duck to blame it on, so I had to share the link to this question!MDMoore313 2017-03-30T18:42:10.190

45

This what FaceTime or Web ex or any number of video conferencing technologies are for. Give the Duck his own computer (all competent developers should have one), and start a video conference with it. The duck will provide the answer you need without having to physically be there.

Alternatively, a blue tooth headset would work. Society has quickly been conditioned to ignore people on blue tooth headsets without thinking they are just crazies talking to themselves or worse, to a rubber duck.

cde

Posted 2017-01-22T12:28:48.890

Reputation: 701

13How will the duck accept the incoming FaceTime call?Zach Lipton 2017-01-23T00:50:56.127

Haha!! What on earth has this person understood from the question!! Duck.. WTF..aMazing 2017-01-23T01:23:28.197

6@ZachLipton Auto Answer.cde 2017-01-23T01:32:20.413

5@aMazing allows OP to use the duck without people thinking he's being weird.cde 2017-01-23T01:33:09.903

1@cde But he'd be visibly facetiming with a rubber duck, which is also weird. (and requires a whole computer on the other end, which is over the top.)doppelgreener 2017-01-23T02:24:15.103

@doppelgreener Cell phones are cheap. Doesn't have to be a computer.cde 2017-01-23T02:41:51.037

18I seriously don't understand what video conferencing adds to the situation. You still have to talk out loud, and if anyone sees what's on your screen, you'll seem way crazier for having set your duck up with its own device. I'm not sure the rubber duck technique should go on if you're giving your duck its own IP address.Chris Hayes 2017-01-24T07:47:12.707

7No need for a whole separate computer. Just fire up a VM. Once set up, it can even run headless, as long as you aren't into rubber chicken debugging.Michael Kjörling 2017-01-24T12:20:02.590

4Make sure the duck is wearing a headset. Somebody's going to see through it and think you're weird if they see you FaceTiming with a duck that doesn't even have audio equipment hooked up.Josh1billion 2017-01-26T22:34:42.810

1If you have a headset you might as well call one of the many rubber ducks sitting in various call centre overseas.Florian F 2017-01-29T17:02:39.353

1

This is so cool, I just had to program a website that looks a little bit like a rubber duck video talk. Try it out at https://talktorubberduck.github.io/#.

palsch 2017-01-30T18:30:23.297

1@palsch now record audio and profit from corporate espionagecde 2017-01-30T21:18:43.573

@cde Unfortunately current browsers are asking for permission to record audio. :-( && ;-)palsch 2017-01-30T21:20:31.630

21

A more quiet but as effective solution in my experience can be to simply write down your current situation, doubts and questions in an email or draft thereof.

The idea is similar to Philipp's suggestion of writing it down as a stackoverflow question but might be less distractive if you are, like I am, often curious about random questions and their possible answers.

Tan

Posted 2017-01-22T12:28:48.890

Reputation: 319

1This is an excellent suggestion, and has the additional bonus of having a record of your conversation. You can use email or just notepad, and if you feel you may have typed up something of importance for later, go ahead and sent it/save it. Use notepad as a text messenger or IM client for that instant-reply feature, too!ArmanX 2017-01-23T19:35:16.117

18Ah yes, the curse of the hot networks questions list...Pyritie 2017-01-24T12:22:37.367

2"Ooo - that's an interesting question" :)GreenAsJade 2017-01-25T01:44:07.083

10@Pyritie Indeed, the "the hot networks questions list" is how I arrived here in the first place. Back to work now. :-)George Bailey 2017-01-25T17:12:31.743

By far the best suggestion. Rubber ducking sounds and looks quirky, but the more mundane alternative is just wirting down your ideas, methods and plans on paper. I think 95% of the issue i have are solved by drawing it on paper while explaining it to someone else.Ucinorn 2017-02-02T01:53:15.583

14

Short Answer:

In most cases, no. It is not uncommon for people to use techniques such as rubber duck debugging in software-centric businesses or departments. If a company is more business-centric in its culture, then there may be concerns from management who are not familiar with the method.

Long Answer:

The culture of many modern software-centered offices would allow for a variety of common (if odd, to the outside world) developer practices, such as talking to a rubber duck. However, if you work in an environment where verbalizing your process to a rubber duck would be considered distracting or frowned upon, there are other, more silent alternatives you could consider:

Compose a Letter

Whether via text, hand-written, or diagramed, composing a note as if you were explaining the software to someone else can be used in a similar method to verbal rubber duck debugging.

Chat With a (Secure) Bot

If you find yourself more effectively debugging when you bounce ideas off of another person instead of an inanimate object, you could download and build the numerous open-source chat bots available.

One example is the original chatbot: Eliza, designed to use Rogerian psychotherapy methods for conversing. Eliza comes standard in copies of Emacs, for those who use prefer it as a text editor. The one thing to remember is to use a secure chatbot, if you have concerns about leaking corporate or trade secrets.

Utilize Unconventional Tools

If your issue is that you are having difficulty approaching your problem from a new perspective to gain clarity on the issue and find a solution, then a variety of similar techniques exist for reframing your perspective.

One example is to use an external prompt of some kind, such as a deck of cards, a set of story dice, or a tarot deck where each card has a predefined meaning. Comparing your software to these prompts forces you to draw unconventional parallels and think of your software issues in new ways.

Another example is to attempt to draw your software as a physical machine, to describe the relationships between the components. In doing so you may realize how you intended the software to operate is missing a key step somewhere.

The benefit of using unconventional debugging techniques is that it forces you to think creatively, and can help to unblock your process when you find yourself in a mental rut. The downside is that how easy it becomes to get off track from your goal, and find yourself spending more time finding parallels than you are actually accomplishing development goals.

Naomi Carroll

Posted 2017-01-22T12:28:48.890

Reputation: 141

11

Since other answers tell that it is acceptable, I can only assume they never worked in an open office. Or noise do not disturb them.

I worked and I know how bad it can be. And no headphone is going to help you. That being said, I would throw you and your duck out of the window as soon as you start talking to it in open space. It is absolutely unacceptable to add additional disruption and noise to an environment that is already bad enough.

If you have to talk to your duck, go close yourself in a meeting room (or whatever you got there), and discuss without disturbing your colleagues further.

BЈовић

Posted 2017-01-22T12:28:48.890

Reputation: 1 315

1You're missing the point entirely. The whole thing is to avoid distracting your colleagues - the alternative is to talk to one of them instead, which introduces a discussion, which quickly tends to involve every single guy in the open office. Rubber ducking doesn't require talking out loud, and if you want to (some people think much better when they actually physically talk), you can easily take your duck with you to a meeting room, bathroom, coffee, whatever.Luaan 2017-01-24T13:34:43.013

5@Luaan I am not. The OP wants to talk to his rubber duck in the open office in front of his colleagues. If that is not clear enough, go read the question again. Both (talking to colleagues and to a duck) are very distracting. From the question it is not clear if he is actually going to hide in a meeting room.BЈовић 2017-01-24T13:38:34.177

You can always whisper to the duck...ecc 2017-01-24T13:39:37.140

6@ecc I was unfortunate enough to have a guy next to me, who talked to himself all the time. So, even without a duck, this mumbling annoyed hell out of people.BЈовић 2017-01-24T13:46:48.787

@BЈовић Then learn sign language. Solved.ecc 2017-01-24T13:58:40.040

3

It is scientifically harder to tune out half a conversation than a whole one. I would find this extremely distracting and obnoxious. If you truly want to avoid disturbing your coworkers, you need to either be silent or move to a meeting space http://sciencenetlinks.com/science-news/science-updates/one-sided-conversations/

thumbtackthief 2017-01-24T16:33:30.320

3you shouldn't try to talk in open space, even if you have been thrown out of an airlock.Malachi 2017-01-24T16:44:06.160

1@ecc That doesn't work for some people. If you tape their mouth, they start talking on their ass.BЈовић 2017-01-24T16:56:26.650

1well said. Some open plan office environments are so noisy people get physically sick working in them (and then lose their jobs for being "unreliable"). THAT's the consequence of a bunch of people constantly chattering away all around their colleagues all day long.jwenting 2017-01-27T13:37:23.930

10

Set the duck under or beside your monitor and either very quietly or silently talk out the issue. Having a loud conversation with a duck will be understood by some, but not by most. It is also distracting.

The alternative is to use your colleagues more since your duck has one main flaw: it can't ask questions back or offer alternatives to your methods/thinking. Working on your interpersonal interactions with a colleagues, doing code reviews, seeing alternative methods and solutions to an issue, these will all be immensely helpful in your career. It will raise your profile among your peers and your management will most likely notice your increase in productivity as you pointed out.

When it comes time to promote someone or pick someone to lead a high profile project, your colleagues and manager will be able to give you a good recommendation based on how well you work with others and how your work is above standard. Your duck, on the other hand, won't have much to offer at all.

dfundako

Posted 2017-01-22T12:28:48.890

Reputation: 3 403

But I am doing all of that you mentioned. Should there be any harder problems I would encounter, then I would definitely ask my colleague. I am talking about day to day use.kukis 2017-01-22T13:32:24.033

3@kukis It is only unprofessional if it becomes a distraction to yourself or others. If you talk loud enough to bother someone, it is unprofessional. If you hold it in your hand like Hamlet and speak to it, unprofessional. If you blow off a code review because your duck is preferred, unprofessional. If you need to talk out loud, book a private room in the office somewhere and hash it out with your duck.dfundako 2017-01-22T13:38:28.937

12The entire point of using a duck or other stand in is so you do not disturb colleagues - the role the duck plays is NOT to answer the question, but for you to have to verbalise the question, and that often leads you to pose the problem in a way that merely thinking about it does not do, which often leads you to a conclusion before the person you are asking can offer an opinion. So the advice to "use your colleagues more" is entirely against the point here...Moo 2017-01-22T15:00:04.187

Also, having conversations with the duck should not interfere with colleagues any more than having conversations on the phone does - in neither case the colleague can hear the "other side" of the conversation.Moo 2017-01-22T15:00:47.943

5@Moo the duck doesn't answer your questions? I've been doing it so wrong....Patrice 2017-01-22T22:11:55.560

@Patrice You need to ease up on the coffee... :PLuaan 2017-01-24T13:31:52.810

7

I work with about 8 other colleagues in the same room. Some of them put headsets on all the time and some not. I also have the feeling that explaining my code to myself or to a colleague improves my productivity too. I don't have a rubber duck but I talk to myself in "whisper modus" like quietly in order not to disturb the others. And by the time, I noticed that a lot of other colleagues also do the same. Talking to yourself makes you avoid writing stupid code and makes you also solve some difficult problems you might not be able to solve alone but with your ego maybe.

As a developer, you are allowed to do whatever you're pleased too. This is at least what I gained from my different experiences with different companies. Do not be afraid of looking weird. All the developers are weird and we do not care about what others think of that. It's our own concern. If your boss or a any higher management people tells you it's not professional, try to explain the rubber duck method to them in a "professional" way. I'm pretty sure you'll find a rubber duck on their desk too after some days !

riroo

Posted 2017-01-22T12:28:48.890

Reputation: 71

the reason those colleagues have noise canceling headsets on is because others in the office are talking all the time, disturbing them. If that goes on enough, a loud/noisy office environment is very bad for productivity and can cause serious health problems.jwenting 2017-01-27T13:34:24.093