You're neck-deep in IKEA assembly instructions. Furniture parts lie strewn across the floor. Your new purchase sits half-complete in front of you, mocking your fruitless hours. As an uninterested partner walks in, you let the frustration out:

"I've done correctly! Look:

connect A with B using M1 screws

connect B with C with the M3 bolt using the key

join BC with D using… wait."

You suddenly realise you haven't joined BC with D. It all starts to click into place (literally), et voilà, you're finished.

It's a universal experience: the moment you try to explain a problem out loud, it all begins to make sense.

Software engineers call it "rubber duck debugging". So, where did this term come from and why is it so effective?

Explaining aloud

This well-known software engineering term has

See Full Page