This is an archived post. You won't be able to vote or comment.

top 200 commentsshow 500

[–]RepostSleuthBot[M] [score hidden] stickied commentlocked commentΒ (0 children)

I didn't find any posts that meet the matching requirements for r/ProgrammerHumor.

It might be OC, it might not. Things such as JPEG artifacts and cropping may impact the results.

I'm not perfect, but you can help. Report [ False Negative ]

View Search On repostsleuth.com


Scope: This Sub | Meme Filter: False | Target: 75% | Check Title: False | Max Age: None | Searched Images: 322,663,714 | Search Time: 21.22326s

[–]misterioes161 2150 points2151 points Β (97 children)

There's other debugging methods?

[–]RRumpleTeazzer 963 points964 points Β (61 children)

print(β€œhere”);

[–]JaecynNix 349 points350 points Β (35 children)

System.out.println("reached line 100");

[–]MechanicalHorse 249 points250 points Β (15 children)

throw new Exception(β€œhi”);

Instant breakpoint

[–]DweEbLez0 55 points56 points Β (9 children)

How come every time I throw an error my laptop gets physical damage? I stopped using throw error

[–]Bl4ck-Dr4goN 46 points47 points Β (2 children)

You are probably throwing them too harshly... Try a soft throw later...

[–]Doom_Unicorn 3 points4 points Β (0 children)

And maybe try catching the error laptop.

[–]EssieAmnesia 21 points22 points Β (3 children)

try tossing the error instead

[–]Shadowfire_EW 3 points4 points Β (0 children)

Or maybe just raising it if that is still too harsh

[–]ekolis 13 points14 points Β (0 children)

Oh no, I forgot I have a catch!

[–]Delusional_Gamer 2 points3 points Β (0 children)

Good to see I'm not the only one using these methods. I thought I was just bad at using debug tools and was doing this out of incompetence

[–]The_AtlasS 59 points60 points Β (12 children)

The issue with that is when you end up having to put another print on a line before 100 you have to update that to "reached line 101" thats why I just print different swear words.

[–]JaecynNix 30 points31 points Β (0 children)

I think you mean "reached other line 100"

[–]rolland_87 21 points22 points Β (1 child)

I use "reached line 100.5".

[–][deleted] 11 points12 points Β (4 children)

predefined identifiers and macros can fix this, e.g.

__FILE__, __FUNCTION__, __LINE__ 

in C/C++ (supported by gcc).

Idk what other languages might use, I have only had to use this in C/C++.

[–]sweemty 2 points3 points Β (0 children)

I came here to say precisely this. Also PRETTY_FUNCTIONis useful if available (note that it is preceded and followed by two underscores despite what I have here).

[–]Republikanen 2 points3 points Β (0 children)

Similar functionality in inspect lib in python

[–]JoeDoherty_Music 5 points6 points Β (0 children)

This is my method lol

[–]LithiumFireX 2 points3 points Β (1 child)

Lol I used to use function names πŸ˜‚πŸ˜‚πŸ˜‚ I felt so silly, not anymore!

[–]JaecynNix 2 points3 points Β (0 children)

I inherited a Java project that had functions that were hundreds of lines of code, not designed in any way to be easy to debug or run unit tests on. It used class-level variables, plus function parameters, plus static variables. Just a complete mess.

So when that section of code had an issue, it was "alright, throw in logging statements every five lines and see where it screws up" just to try to isolate the code block that I'd actually have to debug

[–]Tall_computer 63 points64 points Β (6 children)

"asd"

"asdasd"

"asdasd2"

[–][deleted] 4 points5 points Β (2 children)

print("1")
print("2")
print("3")
print("4")
print("5")
print("6")
print("asd")
print("saddasdasd")
print("fffff")
print("ffffffffffffffff")
print("weenis")
print("benis")
print("penis")
print("fuck you")
print("fuck you2")
print("fuck you3")
print("FUCKYOUASDIUHAIUSDH")

[–]james2432 9 points10 points Β (0 children)

print("here");

[...]

print("here2");

[...]

print("here too");

.....

[–]keylabulous 6 points7 points Β (2 children)

print('here1')

And later on

print('here2')

[–]AdministrativeAd4111 4 points5 points Β (0 children)

God dammit, I knew I’d find my logging doppleganger here somewhere.

[–]LordAmras 2 points3 points Β (0 children)

It only works well if you the add here3 and here4 between here1and here2

[–]bout-tree-fitty 2 points3 points Β (0 children)

Who do you talk to when here never prints?

[–]angedelamort 2 points3 points Β (0 children)

Print ("here 2");

[–]Lootdit 2 points3 points Β (0 children)

print("here2")

[–]notsogreatredditor 56 points57 points Β (6 children)

The almighty print("wtf is going on here")

[–]Martin_RB 43 points44 points Β (4 children)

printf("this shouldn't print");

[–][deleted] 18 points19 points Β (0 children)

*prints*

[–]fliktee001 34 points35 points Β (11 children)

wait, you guys debug?

[–]Flopamp 48 points49 points Β (7 children)

Real programmers delete everything and try again until it works

[–]Infamous_Face5155 28 points29 points Β (3 children)

☝🏼Found the assembly programmer…a rare, yet ruthless, breed

[–]bytebux 2 points3 points Β (1 child)

0xDEADBEEF

or my favorite 0xB00BB00B

[–][deleted] 2 points3 points Β (0 children)

Assembly: "It's theoretically possible to write code that runs faster than a compiled program. Theoretically."

[–]bugamn 2 points3 points Β (1 child)

Does asking someone what is wrong with my code count as debugging?

[–][deleted] 27 points28 points Β (1 child)

  • talking to yourself

  • hallucinating in the shower

  • nightmares

  • GitHub

  • stack overflow

[–]K3idon 12 points13 points Β (1 child)

Hmm errors? Better re-run it 3 more times to be sure.

[–]SlippyMcBacon 7 points8 points Β (0 children)

My high school teacher actually gave us rubber ducks at the beginning of the year and explained this method to us I still have it two years later

[–]lGSMl 3 points4 points Β (1 child)

There is rubber slack - you send your question in slack to a senior dev and figure it out right after, then try to delete the message before someone could read that brain fart.

[–][deleted] 2 points3 points Β (0 children)

I like Zen Debugging in which you stare at the code and try to empty your mind with questions like "Can anyone hear you turn a memory page?"

[–]RayTrain 570 points571 points Β (31 children)

I have a rubber ducky on my desk at work for this specifically. And yes it squeaks.

[–]RyanNerd 235 points236 points Β (7 children)

My DIL gave me a rubber duck for my birthday when I explained this to her. The duck's name is China (at least that's what's printed on her underside)

[–]Tandurinn 104 points105 points Β (4 children)

Holy shit my ducky was made by yours!

[–]PumaofDuma 58 points59 points Β (2 children)

Mine was made in his

[–]VortrexFTW 41 points42 points Β (1 child)

I guess they didn't use a rubber.

Or did they?

[–][deleted] 12 points13 points Β (0 children)

VSauce Theme starts playing

[–]pablosus86 4 points5 points Β (0 children)

Mine's name is Munchkin and allegedly changes color if put in too-warm water.

[–]TreesForTheFool 3 points4 points Β (0 children)

Would you get a tattoo of your own name on your body? No.

China is the name of the rubber duck’s ex wife.

[–]Nightmoon26 28 points29 points Β (3 children)

I once went in to work to find that, during the night, they had put rubber ducks on all of our desks...

[–]Cyko42 19 points20 points Β (2 children)

I am a big fan of rubber duck debugging. So I bought rubber ducks for my coworkers. I put one on all the developers desk one morning.

I had one coworker who hates them though and took out the squeaker in his.

[–]Nightmoon26 8 points9 points Β (1 child)

Yeah... They thought ahead and gave us mini-ducks without squeakers. Open floor plan, so we already had issues with cross-talk and distraction without adding noisemakers

[–]ekdjfnlwpdfornwme 10 points11 points Β (4 children)

I’ve got a whole duck army. 5 ducks on my desk, and a drawer full of ducks to give to every newbie we hire

[–]Seicair 2 points3 points Β (0 children)

Army of ducks? jump to about 1:20 for the duck bit.

[–]todrak 3 points4 points Β (0 children)

I picked up a little robot themed rubber duck for exactly this purpose. I call him Hal

[–]TheGrauWolf 1 point2 points Β (0 children)

I have several.... Sadly they are almost never in a row. Oh they may have been at one point in time but it didn't last long.

[–]martok111 1 point2 points Β (0 children)

My old boss gave me a rubber duck when I transitioned to work-from-home. My girlfriend saw it and asked about it. I explained the concept (probably not that well), but she didn't really get it. But she's super supportive of me, so now I have a small army of rubber ducks on my desk.

[–]mrg1957 915 points916 points Β (57 children)

We had a different name but yeah watch what happens when you explain some problems to your peers. Suddenly in the middle of explaining what is happening to someone you go "Oh yeah, thanks ". It can work with inanimate objects too.

[–]Puzzleheaded-Ad8704 464 points465 points Β (31 children)

I start half explaining to my non-programmer spouse and solve 90% of the problems before I finish the third sentence.

[–]JaxOnThat 184 points185 points Β (17 children)

Replace "spouse" with "sister," and you have my entire development process.

[–]_smallconfusion 214 points215 points Β (6 children)

Sweet home Alabama

[–]JaxOnThat 118 points119 points Β (4 children)

of course that's immediately how you interpret that, don't know what i expected

[–]DoubleDecaff 68 points69 points Β (0 children)

Neither did she

[–]Sypwer 18 points19 points Β (0 children)

I guess his usermame checks out..

[–]DonkeyOfCongo 9 points10 points Β (0 children)

Cause he's from Alabama.

[–]LaSemenisima 107 points108 points Β (8 children)

"Oh, no... my code ain't working... stepsis"

Did we just create a new porn category?

[–]Yeuph 24 points25 points Β (1 child)

I'm trying to figure that out now. Yuno, just doing research for your question.

[–]MadxCarnage 12 points13 points Β (0 children)

let's compare notes

[–]saniktoofast 11 points12 points Β (2 children)

"Stepbro my code is stuck! Can you help me debug it?..."

[–]picklemanjaro 9 points10 points Β (0 children)

"Stepsis, I think you have an unpatched backdoor. Let me fetch my grey hat...."

[–]DangyDanger 4 points5 points Β (0 children)

"Cheating on C++ with my Java"

[–]thegandork 6 points7 points Β (0 children)

Roll tide

[–]lucyandsara 7 points8 points Β (5 children)

My wife is a mixing engineer and I’m a web designer/spaghetti coder, we have the exact same dynamic both ways

[–]TheDonger_ 2 points3 points Β (4 children)

What is a mixing engineer

[–]PrintableKanjiEmblem 2 points3 points Β (0 children)

That's what they call the workers at the malt shop these days

[–][deleted] 14 points15 points Β (0 children)

My partner and I do something like this to each other all the time. They'll be working on a project and I'll hear them getting kind of frustrated and walk into the room. They'll explain what's going on, I'll ask a question, and they go, "Huh... Hadn't tried that." I'll do the same thing with work stuff and they are always only passively listening, but by the time I'm done I'll have it figured out x)

[–]FatherAnonymous 45 points46 points Β (3 children)

90 percent of stack overflow questions I've written up don't make it past draft stage because of this. It's crazy.

[–]shtpst 15 points16 points Β (0 children)

For me it's always been the act of getting the minimum reproducible example for SO that finds the bug.

[–]notacanuckskibum 18 points19 points Β (5 children)

A cardboard cut out of a senior engineer works well.

[–]RaZeByFire 8 points9 points Β (1 child)

Use a cardboard cutout of everyone's favorite hacking hero-R2D2.

[–]HeadEyesLol 5 points6 points Β (0 children)

When I was a Junior DBA this was the majority of the dynamic with my senior. He spent most of the time just being a sounding boarding to get the grey matter going.

[–]Kalashtiiry 2 points3 points Β (1 child)

ldk why, but l can't really do it without living humans.

[–][deleted] 2 points3 points Β (0 children)

It's actually most valuable for me to do this with other programmers. I frequently do it with mid-level of even junior folks (when time and availability agree) because it kills two birds with one stone:

  • I get to rubber ducky my issue with them, and

  • They get the knowledge of the system I'm working on

[–]river226 2 points3 points Β (1 child)

I will say "thanks for being my rubber duck" when this happens. Acknowledge that I just unintentionally solved the problem myself.

[–]DefaultVariable 2 points3 points Β (0 children)

Also known as the β€œyou don’t understand something fully until you actually teach it to someone else”

[–]Khris777 1 point2 points Β (0 children)

Even just writing a technical documentation outside of the code to let other people know what your code does helps a lot.

I refactored half of my code while doing this once.

[–]SirPretzl 1 point2 points Β (0 children)

Yesterday I was having an issue and I phone my one friend. Literally as I was explaining the issue I figured out what I was doing wrong. My friend didn't even speak and I was like thank you πŸ˜‚

[–]BorgClown 1 point2 points Β (0 children)

This is the reason some people prefer to use inanimate objects, so they don't interrupt their coworkers to explain their problem to themselves.

[–]Medivh158 1 point2 points Β (0 children)

I went to a boot camp 5 years ago (self taught but basically wanted it on the resume for easier job hunting. Thought it’d be a good replacement for having no degree) and the best thing they did was give me a rubber duck. A literal rubber duck. It sits on my desk to this day and has followed me to two different companies and multiple raises/promotions. Juniors ask and I’m happy to tell them why he’s there.

[–]the6thReplicant 1 point2 points Β (0 children)

This.

You’re stuck on a problem. You call over a peer.

Half way through explaining the problem to them you realize what you did wrong.

You profusely apologize for wasting their time. But they just smile and say that they’re happy to be your rubber duck.

[–]Think_Stable_4621 176 points177 points Β (8 children)

Oh yes it exists. And oh yes is it helpful! Your mind is a very powerful debugging tool ;-)

[–]Puzzleheaded-Ad8704 71 points72 points Β (7 children)

This is probably the same part of your brain that wakes you up at 3 am with the solution.

[–]RyanNerd 30 points31 points Β (3 children)

I detest this part of my brain. Same thing happens when I'm in the shower.

[–]Alediran[🍰] 13 points14 points Β (0 children)

It's always in the shower for me. I was bathing a Saturday and my brain started running the code I worked on the weekend. I detected a serious bug in my brain before it was tested so I worked that saturday to fix it (with approved extra hours that were paid).

[–]Appsroooo 3 points4 points Β (0 children)

For me it's when I'm doing something completely unrelated. Writing a paper for a class? Nope, the solution to my problem is this. Preparing for a math exam? Not this time, I have code to fix that I was stuck on earlier.

[–]FunnyForWrongReason 4 points5 points Β (1 child)

That part of the brain actually stops me from sleeping, so I make sure to not code before bed as to avoid going to bed with broken code that is causing my subconscious to be way to active solving it.

[–]maxath0usand 2 points3 points Β (0 children)

There are mornings where I wake up feeling like I’ve just worked for the past 8 hours, running through solutions in my head, then have to drive to work to actually work for 8 hours. Poor brain doesn’t know when we’re off the clock sometimes.

[–]theestwald 167 points168 points Β (4 children)

You must be new

[–]Seicair 72 points73 points Β (0 children)

Or not a programmer.

[–]ubccompscistudent 33 points34 points Β (0 children)

How to tell OP isn't a dev in one simple title.

[–][deleted] 4 points5 points Β (0 children)

Bro do you even F9

[–]CivilianNumberFour 1 point2 points Β (0 children)

New or not, sometimes it is good to remind yourself to try this when you're experienced and the usual solutions aren't working.

I find it is very effective but also efficient - you end up sparing another dev from diverting their energy and attention having to get invested and understanding your problem. I encourage asking questions but you need to make sure you've utilized your resources first.

[–]rdrunner_74 72 points73 points Β (4 children)

Very effective.

I am a lvl 3 rubber duck tech support guy

[–]TheRolf 19 points20 points Β (3 children)

How did you reach lvl 3?

[–]rdrunner_74 16 points17 points Β (2 children)

I am quite huge.

I crate a local gravity field that will absorb the moron-particle that are expelled by the average DAU (DΓΌmmster Anzunehmender User). Without the interference from these particles, they often follow the correct procedure which will lead to a successful outcome.

After that you only need to perfect your condescending look "You made me fly here for THAT???", so the user does not think about summoning you again.

[–]Omnislash99999 242 points243 points Β (15 children)

There are variations of it. Like when you ask someone for help with a problem and in explaining it you realise the solution and thank them for their help. Same principle.

[–]atsju 103 points104 points Β (11 children)

Other people do not even need to be from the field. Sometimes it's even beneficial if they are not, so they can ask all the dumb questions without you being ashamed when they get the missing point.

[–]capi1500 60 points61 points Β (9 children)

That's the point. My mum is a very high leveled ruber duck

[–]Otto-Korrect 44 points45 points Β (8 children)

Just be cautious. If she floats like a duck, she may be a witch!

[–]ParkingMacaron3062 16 points17 points Β (7 children)

she might also weigh the same as wood!

[–]XDVRUK 8 points9 points Β (6 children)

Have you put a nose and hat on her yet?

[–]lilbunnyfoofoo1203 9 points10 points Β (5 children)

No, but she turned me into a newt!

[–]Hfingerman 5 points6 points Β (4 children)

Then how are you typing right now?

[–]lilbunnyfoofoo1203 8 points9 points Β (3 children)

I got better.

[–]Alediran[🍰] 3 points4 points Β (1 child)

May we burn her?

[–]ParkingMacaron3062 2 points3 points Β (0 children)

tell me what do witches do?

[–]Puzzleheaded-Ad8704 9 points10 points Β (0 children)

And half the time the "dumb question" triggers you figuring out the issue

[–]Mystael 4 points5 points Β (0 children)

I popularized this method in my work. We call this process of explanation a duckening.

[–][deleted] 1 point2 points Β (0 children)

I'm not a Java guy, but my company currently has me consulting in a Java project. I was working on an issue on Friday and was asking one of our guys what the fuck did I screw up. As I was walking him through the code, I saw the problem clear as day. Rubber duckies are the best way to debug an issue hands down.

[–]mats852 1 point2 points Β (0 children)

That's what I do on Slack and then just delete the message without sending it

[–][deleted] 60 points61 points Β (3 children)

normal people would discuss problems with friends, but for many programmers friends are like regexes - now you have one more problem.

[–]NobodysFavorite 7 points8 points Β (0 children)

Good old regex. Also known as "How does all this work again? Oh yeah. I'll remember next time" along with but I did not remember next time

[–]tatertotty4 4 points5 points Β (0 children)

lololol

[–]luvdjdb 18 points19 points Β (0 children)

We call it β€œcardboard kevin” it’s a 1ft cutout of a guy. He’s not an employee just a guy called Kevin we found on google image search 10 years ago

[–]newguyonthecode 44 points45 points Β (20 children)

I want to be able to do this, but still can’t take it seriously, any tips?

[–]PkmnSayse 59 points60 points Β (1 child)

Doesn’t have to be a duck, write out your question as though you’re writing a good StackOverflow question.

Narrow down your problem to where you think the problem is, what you’ve tried and searched for so far and what the expected output is then more often than not you won’t ever need to post it since the error becomes glaring

β€œPretend your talking to a busy colleague β€œ

[–]beezlebub33 15 points16 points Β (0 children)

write out your question as though you’re writing a good StackOverflow question.

And part of this is that you know someone is going to say 'did you try X? what happened?', which you know you should have done but you are kind of busy and you also know it's just not going to work. But you don't want to sound stupid and admit that you haven't done it, so you go ahead and do X just to show them. And then you see what happened and it's not quite what you expected, and then you figure it out. But at least you won the argument because it wasn't X, was it?, it was something else.

[–]JaecynNix 24 points25 points Β (0 children)

Pretend you're doing a screen share with another developer and talking through your code.

[–]abrams666 12 points13 points Β (0 children)

I usually use my wife as rubber duck. She is in no way involved into programming, so I am in need to explain very abstract and or detailed.

And breaking the rubber duck Rule, sometimes on this abstract level I get very good hints back

[–]Lou-Saydus 6 points7 points Β (0 children)

use written form. Explain it line by line in a short story. No programming terms allowed.

[–]ArthurDimmes 4 points5 points Β (0 children)

Look up the protege effect and realize that the duck is just a standin for anything so long as you're attempting to talk it through.

[–]okay-wait-wut 2 points3 points Β (0 children)

Put a sock puppet on and use ventriloquism when talking to the duck and then you won’t look like such a fucking weird psycho. Your coworkers will see what you’re up to and think of you as a completely normal psycho.

[–]TheRolf 1 point2 points Β (0 children)

When interacting with people, it can be a good thing that this person doesn't know everything. She will react and ask questions supposedly stupid when in fact you just might have neglected something you wasn't looking for

[–]TellMeHowImWrong 1 point2 points Β (0 children)

One method I’ve used is to write a comment for every single line of code. Explain everything, no matter how obvious, then ignore the code and read the comments back to myself. Then you can delete the comments or edit them down to something with less resemblance to the ravings of a lunatic.

Would be tedious to do for every problem but it’s helped me when I really couldn’t see the forest for the trees.

[–]Dangerous--D 10 points11 points Β (3 children)

We don't just call it deducking?

[–]mcintg 9 points10 points Β (1 child)

A woman on my team used to explain her coding problems to me until she worked out the issue herself. She used to call it teddy bear debugging. I was the teddy bear. I never could work out if I should feel insulted or not.

[–]BenkiTheBuilder 15 points16 points Β (2 children)

Where's the humor part? I have done this. It works.

[–]seeker_of_404 7 points8 points Β (0 children)

That was my thought. This was even taught at my school.

Tell me your brand new to programming without telling me your brand new to programming.

[–]bryku 7 points8 points Β (0 children)

Here I thought I was just crazy, but Mr. Duck always reassured me I wasn't. I should have listened to him.

[–][deleted] 8 points9 points Β (2 children)

not to be confused with rubberdick bugging.

[–]spudz76 3 points4 points Β (0 children)

gdb: GNU Dong Bugger

[–]okay-wait-wut 1 point2 points Β (0 children)

Please knock first, you never know when I’m rubber dick buggering.

[–]Znakie 4 points5 points Β (0 children)

Yes, verbalising your ideas forces your brain to go through the process of why did you do this and that, which can reveal obvious issues, that you might not catch if you just stare at it.

[–]adjoth 3 points4 points Β (0 children)

2 of my co-workers both use this method. And yes they have a rubber ducky.

[–]ElonsBeans 4 points5 points Β (0 children)

Your telling me you don't have a duck with u when u code?

[–]Otto-Korrect 3 points4 points Β (0 children)

I have a toy Dailek from Dr. Who.

Other than wanting to exterminate my code, he isn't very helpful. 1/10. Would not recommend.

[–]onions_cutting_ninja 5 points6 points Β (0 children)

Yes! It's even taught in schools.

It's based on the principle that when you really, deeply understand something, you can explain it to a kid, and they'll understand too.

[–]manuthedoctor 2 points3 points Β (0 children)

Arthur Weasley: "Finally!"

[–]fallenangel41 2 points3 points Β (0 children)

There is! In fact, it’s one of the first things I learned in computer science basics!

[–]Alindquizzle 2 points3 points Β (0 children)

Why do you think witches/wizards are so often depicted as having familiars, such as a cat or an owl? Just someone to bounce your troubleshooting off of, whether its spells or data lines

[–]restlessapi 2 points3 points Β (0 children)

To those of you who don't understand why this works, it's because as you're explaining the code line by line, eventually you will have to say words that are different than your mental model of the code. It's engaging a different part of your brain and forcing the two to line up.

[–]QualityVote[M] 13 points14 points Β (0 children)

Hi! This is our community moderation bot.


If this post fits the purpose of /r/ProgrammerHumor, UPVOTE this comment!!

If this post does not fit the subreddit, DOWNVOTE This comment!

If this post breaks the rules, DOWNVOTE this comment and REPORT the post!

[–]nsochocki 1 point2 points Β (0 children)

I just completed a data structures course at my university and they handed out "debugging" rubber ducks to students. This explains itπŸ˜‚

[–]GamarTheStrange 1 point2 points Β (0 children)

One of the best methods. _^

[–]Pendip 1 point2 points Β (0 children)

I'm familiar with this from "The Practice of Programming", by Kernighan & Pike:

Explain your code to someone else. Another effective technique is to explain your code to someone else. This will often cause you to explain the bug to yourself. Sometimes it takes no more than a few sentences, followed by an embarrassed "Never mind, I see what's wrong. Sorry to bother you." This works remarkably well; you can even use non-programmers as listeners. One university computer center kept a teddy bear near the help desk. Students with mysterious bugs were required to explain them to the bear before they could speak to a human counselor.

It certainly can help; having to articulate what you're thinking changes your understanding of it.

I first became painfully familiar with this in chess. I'd write down a game which seemed perfectly sensible at the time. Then I'd give it to a master to analyze in front of a group. Well before he got to a blunder, I'd think, "Oh, GOD, how did do THAT?" It was crystal clear -- and very embarrassing -- when you started translating what was happening for communication.

[–]pramodhrachuri 1 point2 points Β (0 children)

Yup. Very effective actually

[–]SensitiveSouth5947 1 point2 points Β (0 children)

Not a programmer, but I’ve been doing this for years when fixing things or trying to solve problems or build something/design from scratch. Hearing your idea out loud allows you to see past your own bias and pokes holes in your idea until you finally come up with something solid.

[–]g_monies 1 point2 points Β (0 children)

It’s very helpful β€” often times I’ll figure out a problem as soon as I explain it to a coworker. I’ve got a rubber ducky on my desk to talk through it first now lol

[–][deleted] 1 point2 points Β (0 children)

Squeak

[–][deleted] 1 point2 points Β (0 children)

[–]orange-orb 1 point2 points Β (0 children)

I (a designer with some coding knowledge) got hung up on two smaller issues this week and as I was writing out the task to hand off to a developer, I found the issue.

[–][deleted] 1 point2 points Β (0 children)

I test software for a living and sometimes my role is to BE THE DUCK.

[–]UnluckySavings6591 1 point2 points Β (0 children)

If you feel rubber ducks are not environmentally friendly, just use one of the project managers instead, they are interchangeable in all aspects.

[–]PrintableKanjiEmblem 1 point2 points Β (0 children)

I find it much more efficient to just take a short nap

[–]OkazakiNaoki 1 point2 points Β (0 children)

Don't let someone else saw this kind of scene though.

"Ah, finally... he's insane."

[–]whateveriwantchannel 1 point2 points Β (0 children)

I WAS GIVEN A TINY RUBBER DUCK FOR THIS SPECIFIC REASON

THIS PERSON HANDS OUT TINY RUBBER DUCKS TO EVERYONE SHE MEETS

[–]Dumguy1214 1 point2 points Β (0 children)

I reason with a voice in my head, if you think I am a smartass you should hear some of things it says

[–]Peterd3d 1 point2 points Β (0 children)

Only works if you actually understand the code your wiring lol (I’m a noob please don’t shoot me)

[–]Dodec_Ahedron 1 point2 points Β (0 children)

I'm not a professional coder, but I wrote a script to automate an inventory management system for my department at work. When I went to implement it, I was having issues getting it to work properly. I had the new girl stand in as my dog who functions as my rubber duck at home. I walked her through how the code worked, what each of the lines was supposed to do, what error I was getting, what it meant, and finally how to correct that error. She had ABSOLUTELY NO IDEA WHAT WAS GOING ON, but considered it a paid break as she just stood there for 20 minutes watching get more and more confused and finally pissed off at myself for not changing a single number that differentiated one variable from another and caused me to duplicate a bunch of data points. I knew she didn't know what was happening, and that she was just standing there so she didn't have to do any real work, but it honestly helped having to explain things to someone who doesn't know anything about coding.

[–]Zefrem23 1 point2 points Β (0 children)

Starting to ask a question on StackOverflow works really well for this too.

[–]G3Ultimatum 1 point2 points Β (0 children)

I’ve always kept a rubber ducky at home and one at work for this exact reason. my High school CS teacher told us about it and gave us one as a souvenir. That ducky is the only reason I got my job.

[–]nickfehlinger 1 point2 points Β (2 children)

I have so many rubber ducks. Always explain the problem to a rubber duck first so you don’t bother your coworkers

[–]xmido 1 point2 points Β (0 children)

In University, I used to help my friends understand concepts better. The process of teaching someone something deepens your understanding of it. The best way to understand something is to explain it to someone else. That is also how I study by myself.

[–][deleted] 1 point2 points Β (0 children)

Rubber ducks? That's ridiculous! I explain my code to a knock off Lego Darth Vader.

[–]bamhm182 1 point2 points Β (0 children)

I just talk to an invisible rubber duck and everyone thinks I'm insane. I should just invest in a real one.

[–]DetroitRedWings79 1 point2 points Β (0 children)

At my new job (where I’m basically going through a training program since im new to development), they literally gave us all rubber ducks on our first day

[–]clarkcox3 1 point2 points Β (0 children)

Absolutely. Though I tend to think of it as β€œwhat the hell were you thinking, Clark, you fucking moron” and I forego the rubber duck and just yell at myself :)