Since noticing that, I started doing it fairly, and not just with programming. At some point, I realized I was keeping a (somewhat oddly structured) journal.
1) I don't understand that. Let me ask StackOverflow.
2) I'm having trouble phrasing my question properly. What do you call $X? Googling ensues
3) Oh nevermind, I get it now <closes tab>
On a serious note, this effect can be applied to our everyday problem as well. Such as when you are feeling lethargic, you'd want to write down all of your thoughts in a list to see the bigger picture and figure out how simple it can be to finish a task at hand.
Also when I kept updating my blog posts about stupid problems that gooogle didn't answer seemed to attract some audience.
Opens new tab
Sound of typing
I've been thinking along the same lines for a very long time. Thanks for the inspiration to finally ask!
If they have a big enough database of half-typed-then-abandoned questions, do you think it would be possible to train an RNN (or something) to read a post in progress and predict at what point the answer should be obvious to you?
We haven't been writing long (in evolutionary terms) so I wonder why that is?
Thinking aloud, whether in the mind, on paper or even vocally, helps us to identify some of these points, and thus quantify a meaning from it. There's only so many points that we can mentally hold though - we're not good multi-taskers after all! So the better we can think aloud, the better we can consciously grab thoughts and identify the real gaps - which we can fill in by searching/ creating more points in our mind, or go external.
Hmm, just thinking aloud though ;)
lol just saying
I theorize that words you hear/read pass through some part of the brain specialized in finding answers, that is not engaged during regular problem solving.
Edit: I suspect Sherlock Holmes was the first fictional character to employ rubber-ducking (albeit with Watson as the duck). Greg House would be a more recent example (who uses his entire team).
the arrow of time in Western cultures moves from left to right.
It seems to have a lot of positive press, and it works for me--though I'm cautious of talking to myself at work before knowing if it would come across negatively.
These days I actually feel I'm worse at talking to myself in my head than I am in talking to myself via a keyboard.
I've tried both and you can talk yourself trough the problem inside of your head step by step just as effectively when it comes to coding tasks IMO.
Immediate problem solving/planning like "OK I need to do this then this" is a different story - saying stuff out loud helps here.
Would you use "rubber ducky debugging as a service" - like a chat service that stimulated you to find your own solutions?
You can thank me later.
"Is it because of the loop condition that you came to me?"