• Gentoo1337@sh.itjust.works
    link
    fedilink
    arrow-up
    4
    ·
    1 year ago

    I remember one GitHub project that implemented some algorithm (I think it was Dijkstra’s) but only used 4 or 5 single letter variables and just kept reusing them.

    • Dandroid@dandroid.app
      link
      fedilink
      arrow-up
      3
      ·
      1 year ago

      When I was in college, I had a guy that I was working on a project with that did this constantly. At one point I looked at one of his files and the variables were named a, b, c, aa, ab, ac, ba, bb, etc. That when I was like, bro, you gotta stop doing this.

      • wizardbeard@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 year ago

        “Inside you there are two wolves…” or something:

        Option 1: Sit down with them and go line by line through it. Make him identify each variable’s purpose and then immediately find and replace to rename every instance with a more descriptive name.

        Option 2: Small script to shuffle the variable names in his code around after each of his commits.

    • Pxtl@lemmy.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 year ago

      Maybe they had a background in low-level assembly code? If you’re writing assembly that’s kinda sorta how you’d handle registers.

    • lorty@lemmy.ml
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      When you are used to math equations, it’s easy to slip into that habit.

          • Scraft161@iusearchlinux.fyi
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            Length might have mattered in the 80s and 90s when IDEs were crap but we got autocomplete in pretty much all our text editors (even TUI ones like vim).

            As for readability there is an argument to be had in specific contexts, but 9 out of 10 times it makes more sense to use a proper word.

            Example:

            let list = [1, 2, 3];
            for i in list {
                println!("{}", i);
            }
            

            In this case using item in the place of i would be more fitting.