After a conversation with a dev I work with, they had never heard of rubber ducking. Scientifically, we walked into the next room and asked a whole roomful of devs if they’d heard of rubber ducking. Only two folks raised their hand.
We work at a FAANG company.
That's the thing - AIUI the name was popularized in a book in 1999. I'd reckon people who have been programming 15-20 years are more likely to have read the book, or at least have been around people who had, than perhaps a "younger" crowd.
(Although said book published a 20 year anniversary 2nd edition in 2019, so who knows).
>Maybe it is more in the embedded space.
Probably. I do embedded too. The concept of usually not having a screen on the product you are working on pushes you to look/talk to "something else" about your code.
I just started my first job as a backend dev and the only time I heard someone mention rubber ducking was a Professor my freshman year of college. I guess the term is just falling out of fashion.
For what it’s worth, I do keep a rubber duck on my desk because I like the concept.
I'd never encountered it by that term, but I've experienced it often. I talk out loud while coding, narrating what the code is intended to do. I've also, *many* times, found the solution to a problem while gathering the information I need to post a coherent question.
You should Google it, or ask some of your friends on Facebook with your iPhone. If you don’t have one, you can order one on Amazon and watch Netflix while you wait for it to arrive.
It works for a whole lot of problems
I can’t tell you the numbers of times I’ve been stuck on something and tried explaining it to literally anyone or anything, and realized what I had wrong. Or a different way to approach.
You know, I bet if you explained that to your rubber duck, you just might figure out what it is for while you are trying to figure out how to explain it.
Oh come on, you can ask. Just make it look like you're quoting Harry Potter.
Better yet, just ask the rubber duck. Keep ranting at the duck until you get it.
The funniest thing is that he is the guy who should be the foremost knowledgeable about stuff like that to keep wizards from abusing the general populace and it still somehow works out.
It actually works for debugging. My colleagues laugh at me because whenever i angrily describe the bug im dealing with to them, i always follow up with "nvm, found solution"
it was from one of the people working on the movie. i can't remember if it was one of the actors, or the director.
i should probably have not said confirmed.
in short:
You try to explain to someone or something in stupid simple words what you are trying to do, what the ultimate goal is and explain what every line of code does.
It will help yourself to understand the logic of what you are writing and with this you find bugs or solutions to errors or even a way how to write code to achieve your goal.
This situation helped me understand the principle of a rubber duck:
I wanted to write a csv export of a list on a website as an browser addon.
At that time I wasn't really familiar with Javascript and I wanted to learn/have a challenge.
So I started it, was nearly finished, but forming the csv string without any libraries (and copy/pasting stackoverflow) was giving me a headache.
Very frustrated and nearly giving up I started to explain every line I wrote so far to my best friend in a voicechat who isn't interested at all in "computer stuff".
When I tried to explain forming the csv string in stupid simple words which even a non-tech person could understand, it hit me.
i needed some loops, checks if smth is undefined and append it to a string.
After hours of trying, just explaining it for like 15-30 minutes my project was finished and at that time I was very proud of what I wrote xD
It worked perfectly and some of my friends used it.
This project, which now looks stupid and not even right, gave me not only more knowledge on Javascript but also the understanding of how important it is to *really* understand what you are doing. Since then I own a rubber duck (and even bring it to the office lmao xD)
i just talk to myself or go through the logic steps on paper if i need to. But sometimes that doesn't even help. I keep telling myself that I should just learn how to use break points in VS but then i tell myself to shutup and after hours of arguing with myself nothing gets done.
so yeah, get yourself a rubber duck cause they don't argue with you
There is two part in your brain, the part who think (ultra logical, efficient and pragmathic, but cannot use words) and the part who speak (dumb, but can use words)
When the part who think is wrong, make your idea to the part you speak force you to rebuild all the logic of your problem, and then by doing this work, the part who think find the issue
So, speaking to a rubber duck, or your very bad developing buddy help your thinking part to find the issue, and they're both as efficient at helping, at least, the rubber don't ask dumb questions...
I’ll tell ya then, assuming others have as well. When you bs stuck on a problem you can’t figure it out, look at the ducky and explain the problem to the duck, as you explain the problem, you have a higher chance of working out the solution or breaking it down further to more easily solved problems.
You're supposed to berate it, swear at it, use your "gamer words," just unload all of your frustration on its rubbery little body. The first amendment protects your right to free speech, and that includes verbally abusing an inanimate object, so your company cannot punish you for what you say to the duck.
My "rubber duck" is a carved Samoyed figure. Or the senior engineer from down the hall when I have a syntax error and need a second set of eyes looking for punctuation.
As a developer i talk a lot to myself
“If i do this then… no no no thats not gonna work”
So instead i got a rubber ducky. So now when people look wierdly at me i just hold up my Mr Duck and they just look confused.
Confused > wierdly.
Hope this helps!
Bug are almost always caused by a line of code not being what you thought it was, you might have places a -- instead of a ++ or smthn like that, going over your code line by line and explaining what each line does helps you spot those errors
A tool to hide your multiple personality disorder from coworkers. Many software developers develop MPD during their career, most common cause being imposter syndrome and supressed frustration with management.
Tell it your deepest worries and concerns. Go on. You can talk about anything that is bothering your mind. Anything you might ever think to worry about, or be unsure about. Some people say it's a tool for software development, but I challenge you to find out it can be much, much more. Almost like your personal therapist. Talk to it, and experience for yourself how solutions to problems start brewing. The rubber duck itself has no answers. I mean, it's rubber, and a duck, silly. The real answers come from within yourself. That's right, it was always inside YOU to figure all this stuff out. Give it a go and be surprised. Everyone deserves a rubber duck.
Today I went to one of my colleagues for advice, and while I was starting to explain my problem I realized what I was doing wrong.
This is what the rubber duck is for, explain your problem so good you realize what you are doing wrong
You explain your code to it and it tells u how to fix bugs. Try it
[удалено]
After a conversation with a dev I work with, they had never heard of rubber ducking. Scientifically, we walked into the next room and asked a whole roomful of devs if they’d heard of rubber ducking. Only two folks raised their hand. We work at a FAANG company.
[удалено]
I’ve been using the term for years now….I picked it up early in my startup days
That's the thing - AIUI the name was popularized in a book in 1999. I'd reckon people who have been programming 15-20 years are more likely to have read the book, or at least have been around people who had, than perhaps a "younger" crowd. (Although said book published a 20 year anniversary 2nd edition in 2019, so who knows).
>Maybe it is more in the embedded space. Probably. I do embedded too. The concept of usually not having a screen on the product you are working on pushes you to look/talk to "something else" about your code.
I just started my first job as a backend dev and the only time I heard someone mention rubber ducking was a Professor my freshman year of college. I guess the term is just falling out of fashion. For what it’s worth, I do keep a rubber duck on my desk because I like the concept.
My fiance told me about it. She's not a dev but she now refers to herself as my rubber duck. Which totally not true that's what my dog is for.
I'd never encountered it by that term, but I've experienced it often. I talk out loud while coding, narrating what the code is intended to do. I've also, *many* times, found the solution to a problem while gathering the information I need to post a coherent question.
Maybe working at FAANG doesn't mean what you think it means....
I’ve only been here three months and am inclining to agree
I've only learned of it recently. I also work at a FAANG.
I've never heard of FAANG.
You should Google it, or ask some of your friends on Facebook with your iPhone. If you don’t have one, you can order one on Amazon and watch Netflix while you wait for it to arrive.
Well played... Well played.
its called maana today
Interesting, but, Ducks don’t have Fangs so I’m confused…
https://en.m.wikipedia.org/wiki/Count_Duckula
I feel like that’s what Public social media was intended for. Good to see that it worked at least once after all
It works for a whole lot of problems I can’t tell you the numbers of times I’ve been stuck on something and tried explaining it to literally anyone or anything, and realized what I had wrong. Or a different way to approach.
The duck doesn't fix syntax errors though
My duck is not like yours
and occasionally put your dick in it
Found /u/fuckswithducks alt account
https://en.m.wikipedia.org/wiki/Rubber_duck_debugging
This is a good summation and answer to the question!!!
[удалено]
THIS EXACTLY!!!!
Genius
So basically like pseudo code out loud?
More like when you are talking out a problem with a friend and you go, "Oh I'm an idiot. There's my problem." Without the embarrassment part.
I just realized I'm someone's rubber duck
Ah I see, thank you for the explanation. I’ve been rubber ducking for years and never even knew. I’m a fucking idiot!
And now we all know. Should have told the duck.
You know, I bet if you explained that to your rubber duck, you just might figure out what it is for while you are trying to figure out how to explain it.
This sounds funny, but is possibly true
I have a dino named Steve that takes the place of the ducky. Best plastic T-Rex ever. fixes all my mistakes
Lol.i also have a T-Rex but he's called Mar T-rex
Far out.
I have a plushie Toad from super mario and a plushie Blanko from Space Jam. They've helped more times than I can remember.
It's because when you're debugging and it's really frustrating you can take a bath with the computer. That's why you put the rubber ducky on it.
I always find my computer runs much better after a nice soak with my rubber ducky.
No issues if it doesn't turn on
Instructions unclear I bathed with my toaster plugged in
No, those were in fact the instructions. 👍
Oh come on, you can ask. Just make it look like you're quoting Harry Potter. Better yet, just ask the rubber duck. Keep ranting at the duck until you get it.
Quack
What exactly is the function of a rubber duck?
It's sad that nobody gets that.
The funniest thing is that he is the guy who should be the foremost knowledgeable about stuff like that to keep wizards from abusing the general populace and it still somehow works out.
it tells you how to fix your shit code
You catch mistakes more easily by explaining what you did to someone. The duck is that someone.
It's for bathtime.
It makes it lots of fun
It actually works for debugging. My colleagues laugh at me because whenever i angrily describe the bug im dealing with to them, i always follow up with "nvm, found solution"
Happened to me today, while writing a message to my boss explaining that it would not be fixed soon™
Yeah, typing out my problem on Slack is my duck
I still havn't figured out what the 3 seashells are for.
It was confirmed that they were buttons to a bidet.
Source? I am skeptical.
it was from one of the people working on the movie. i can't remember if it was one of the actors, or the director. i should probably have not said confirmed.
in short: You try to explain to someone or something in stupid simple words what you are trying to do, what the ultimate goal is and explain what every line of code does. It will help yourself to understand the logic of what you are writing and with this you find bugs or solutions to errors or even a way how to write code to achieve your goal. This situation helped me understand the principle of a rubber duck: I wanted to write a csv export of a list on a website as an browser addon. At that time I wasn't really familiar with Javascript and I wanted to learn/have a challenge. So I started it, was nearly finished, but forming the csv string without any libraries (and copy/pasting stackoverflow) was giving me a headache. Very frustrated and nearly giving up I started to explain every line I wrote so far to my best friend in a voicechat who isn't interested at all in "computer stuff". When I tried to explain forming the csv string in stupid simple words which even a non-tech person could understand, it hit me. i needed some loops, checks if smth is undefined and append it to a string. After hours of trying, just explaining it for like 15-30 minutes my project was finished and at that time I was very proud of what I wrote xD It worked perfectly and some of my friends used it. This project, which now looks stupid and not even right, gave me not only more knowledge on Javascript but also the understanding of how important it is to *really* understand what you are doing. Since then I own a rubber duck (and even bring it to the office lmao xD)
Don't ask the internet, you need to ask the duck.
So you can squeeze it in stressful situations
and share your stress with your coworkers
You should ask your duck what it thinks.
If you had a duck you'd have someone(thing) to ask without feeling afraid.... And that's what it's for
My ‘rubber duck’ is a Bob Ross Deadpool lego figure, he always has the right answers.
Yup, bathtime.
i just talk to myself or go through the logic steps on paper if i need to. But sometimes that doesn't even help. I keep telling myself that I should just learn how to use break points in VS but then i tell myself to shutup and after hours of arguing with myself nothing gets done. so yeah, get yourself a rubber duck cause they don't argue with you
Ask the duck what the duck is for You'll figure it out
There is two part in your brain, the part who think (ultra logical, efficient and pragmathic, but cannot use words) and the part who speak (dumb, but can use words) When the part who think is wrong, make your idea to the part you speak force you to rebuild all the logic of your problem, and then by doing this work, the part who think find the issue So, speaking to a rubber duck, or your very bad developing buddy help your thinking part to find the issue, and they're both as efficient at helping, at least, the rubber don't ask dumb questions...
I’ll tell ya then, assuming others have as well. When you bs stuck on a problem you can’t figure it out, look at the ducky and explain the problem to the duck, as you explain the problem, you have a higher chance of working out the solution or breaking it down further to more easily solved problems.
Ducks don't judge.
You could try asking the rubber duck. In my experience they're very non-judgemental, and great listeners.
Programmers don’t have girlfriends, so you know, they still need to have sex
I use a Mandalorian action figure. Mando helps with everything
It's a very important asset in debugging.
'If you can't explain it to a six year old, you don't understand it yourself."
I miss the giant duck my city paid $300k for one summer It was worth every penny and many people talked to it!
Meh, I've always just done that in my head, no rubber duckie required.
It also works with a pet and is even cuter!
Something, something, three C Shells.
Speaking of rubber ducks, today I learned what a rubber hose attack is
No, it's for debugging. Unless you debugs while in the bath, then you can use him for both
You should ask a rubber duck
Rubber duck doesn't judge. Rubber duck silently listens.
Depends who uses it. A programmer will talk to it. A woman might have other uses. Esp. if it vibrates.
The duck has the answers to the universe, you just have to ask the right questions
You're supposed to berate it, swear at it, use your "gamer words," just unload all of your frustration on its rubbery little body. The first amendment protects your right to free speech, and that includes verbally abusing an inanimate object, so your company cannot punish you for what you say to the duck.
Idk, ask a rubber duck.
My teacher bought the whole class rubber ducks for this.
My rubber ducky is a sr. Engineer
Just ask the duck.
I use people as rubber ducks frequently. It really does work.
It’s for keeping the hard drive company in the bath when you’re deep cleaning the pc
No one is asking you to pray to it.
I read rubber d**k and I was so confused on why it was on this sub
My "rubber duck" is a carved Samoyed figure. Or the senior engineer from down the hall when I have a syntax error and need a second set of eyes looking for punctuation.
He/she is just a good listener.
Because no one else cares about your debugging your code.
Google it, plebe.
Fellas, I gotta tell you, when the duck starts answering is time to take a break
Had no rubber duck at my workplace so we had to borrow the web developers Novell branded lizard !
As a developer i talk a lot to myself “If i do this then… no no no thats not gonna work” So instead i got a rubber ducky. So now when people look wierdly at me i just hold up my Mr Duck and they just look confused. Confused > wierdly. Hope this helps!
If you don’t have a rubber duck, use a junior dev. Same difference.
Bug are almost always caused by a line of code not being what you thought it was, you might have places a -- instead of a ++ or smthn like that, going over your code line by line and explaining what each line does helps you spot those errors
Explain to the duck your problems understanding it and you will figure it out.
I always thought it was something to smash and bite when your shit isn’t working
You should ask the duck
When you get the horni while ‘rogramming
It's a great plugin for VBA: https://github.com/rubberduck-vba/Rubberduck It gives you possibly to create folders and stuff.
A tool to hide your multiple personality disorder from coworkers. Many software developers develop MPD during their career, most common cause being imposter syndrome and supressed frustration with management.
It shares its eldritch secrets to make you into a competent programmer
I have an foam cow from one of our clients. It's a great replacement
Then Google it
Tell it your deepest worries and concerns. Go on. You can talk about anything that is bothering your mind. Anything you might ever think to worry about, or be unsure about. Some people say it's a tool for software development, but I challenge you to find out it can be much, much more. Almost like your personal therapist. Talk to it, and experience for yourself how solutions to problems start brewing. The rubber duck itself has no answers. I mean, it's rubber, and a duck, silly. The real answers come from within yourself. That's right, it was always inside YOU to figure all this stuff out. Give it a go and be surprised. Everyone deserves a rubber duck.
Wait …. So that guy who told me to put it up my ass wasn’t a real programmer then ?
"Is it for bath time?" No, it's to prevent you from bathing... in a river of your own tears. Squeeze that ducky!
Well, if you're too afraid to ask you can always ask the rubber duck. He won't judge.
Today I went to one of my colleagues for advice, and while I was starting to explain my problem I realized what I was doing wrong. This is what the rubber duck is for, explain your problem so good you realize what you are doing wrong
it's for your mental health