Programmers often discover solutions while explaining a problem to someone else, even to people with no programming knowledge. Describing the code, and comparing to what it actually does, exposes inconsistencies. Explaining a subject also forces the programmer to look at it from new perspectives and can provide a deeper understanding.

    • HubertManne@piefed.social
      link
      fedilink
      English
      arrow-up
      3
      ·
      6 days ago

      came to say this and in addition its more effective with an actual person even if they don’t say anything. Even a small amount of feedback helps that much more although ironically though it kinda palteus if it stops you from jumping on your new ideas and getting them down.

    • TrackinDaKraken@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      6 days ago

      Works with writing fiction, too. I read the section aloud and explain the reasoning behind the choices, and that helps me figure out what isn’t quite working. Also, reading aloud makes awkward dialog stand out more so than reading silently.

  • Caveman@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    ·
    6 days ago

    I call one of my coworkers once a week with “Can I rubber duck you?” which means I’m just going to talk about my problem and explain my thought process in hopes she spots an obvious solution.

    We do it to each other and 30% of the time the other dev says “why not just X” and we agree that it’s pretty obvious.

  • feinstruktur@lemmy.ml
    link
    fedilink
    English
    arrow-up
    5
    ·
    6 days ago

    But isn’t that well known, even from school days? If you’ve ever explained something to someone you’ve recognized that by doing that you’re forced into overthinking the context, diving deeper into the subject.

  • GreenKnight23@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    6 days ago

    fun fact, I used to do this and had a small mental breakdown because my piece of shit boss refused to listen to my solutions, ultimately causing me more work and stress because the solutions he forced me to implement failed even more spectacularly.

    I burned the duck as an effigy of my boss when he was finally fired.

    I will never have another duck.

  • Chaos_99@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    6 days ago

    I don’t know who initialyse selected the rubber duck as a symbol for that. But it can’t be a coincidence that the method works even better for me while showering.

    (Although with that, the energy costs might rival that of AI use)

  • becausechemistry@piefed.social
    link
    fedilink
    English
    arrow-up
    158
    arrow-down
    3
    ·
    8 days ago

    Now, hear me out: what if the rubber duck burned tons of energy, poisoned the water and air, caused a global shortage of computer parts, was built with material without the permission of creators, made it easy to make nonconsensual sexual images of people, and lied to you?

    • AA5B@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      6 days ago

      Obviously then you’d trust everything it says and fire half your staff to replace them with a row of ducks

      • halcyoncmdr@piefed.social
        link
        fedilink
        English
        arrow-up
        8
        ·
        7 days ago

        exploit and traumatize developing country workers to filter nsfw/nsfl

        I’ve always felt like there’s a place in there for the early internet users through millenials (and maybe some early Gen Z) who spent a lot of time getting tricked by places like 4chan to see nsfl stuff and developed a tolerance to that sort of crap.

        I’m sure there are a lot of people that already gave up on humanity years ago and have the psychological damage/callouses to deal with that more than a random selection of a population that hasn’t been affected yet. Let the already damaged use that ability, like a super power, to save those who haven’t experienced enough to the point where they’ve given up yet.

        • oce 🐆@jlai.lu
          link
          fedilink
          English
          arrow-up
          5
          ·
          7 days ago

          I don’t think they care as much for minimizing trauma as they care for cheap labor from a developing country. I doubt there are a lot of 4chan users there.

    • shrugs@lemmy.world
      link
      fedilink
      English
      arrow-up
      11
      arrow-down
      1
      ·
      7 days ago

      Yeah, but it always tells me my ideas are good and he is wrong. So there is that

    • 4am@lemmy.zip
      link
      fedilink
      English
      arrow-up
      12
      arrow-down
      4
      ·
      8 days ago

      It’s a moron detector.

      Most of us would avoid it like the plague, but morons will let it write their code in the first place.

    • Cellari@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      1
      ·
      7 days ago

      You can fix the world by putting an AI into the rubber duck without electricity and expensive parts and it still works!

      AI enhanced by that smile and those eyes and quiet posture helps solve problems :)

  • kurikai@lemmy.world
    link
    fedilink
    English
    arrow-up
    32
    ·
    8 days ago

    works even for non programming stuff. its letting our brain process the information in order ans organising it

    • WHARRGARBL@lemmy.world
      link
      fedilink
      English
      arrow-up
      9
      ·
      7 days ago

      I used to tutor college chemistry and calculus. I secretly sucked at both, but I knew what questions to ask students to start them thinking. They got excited to discover the answers while explaining it to me.

    • cageythree@lemmy.ml
      link
      fedilink
      English
      arrow-up
      2
      ·
      7 days ago

      Yeah. I’m no programmer but I’ve had it often that I couldn’t find a solution for a problem myself, said ‘fuck it, I’ll have to ask the internet’, and by writing out what my problem was I figured out the solution so I never even posted the half-written posts lol

    • pet the cat, walk the dog@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 days ago

      I write a lot of notes, because I can’t trust myself to remember details of any project after a day or more of hopping through multiple other tasks and online information onslaught. This particularly concerns any problems on which I get stuck — and whaddayaknow, writing out what specifically doesn’t work and how it should work, helps with realizing why it might not work.

  • 4am@lemmy.zip
    link
    fedilink
    English
    arrow-up
    7
    ·
    8 days ago

    Every single popcorn flick from the 80s and 90s has a main character make a big plot-resolving realization while doing early act 3 exposition

    If this is such a universal human experience that we wrote it into movies made for general audiences, I think that programmers are not the only ones debugging to their ducks

  • doesit@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    5
    ·
    7 days ago

    I used to teach design. Before a presentation, I always asked my student to explain their project to someone with no knowledge on the subject, like their grandmother or so. Mainly to discover the logic flaws in their presentation.