• jsomae@lemmy.ml
    link
    fedilink
    arrow-up
    130
    arrow-down
    9
    ·
    1 day ago

    Teenage programmers can understand legacy code. These ones didn’t. Don’t dis teen coders.

    • geogeogeo@lemmy.world
      link
      fedilink
      arrow-up
      5
      ·
      11 hours ago

      The issue isn’t inherently age it’s just time and experience, understanding different coding patterns and paradigms that have changed over the years etc. Even someone who’s been coding every day from ages 14-20 can’t have the same knowledge and experience as someone who’s been working with software since the 90s or earlier. Granted, there will always be brilliant people who even when lacking experience are more talented and skillful than maybe the majority, but that is uncommon. I’m only in my late 20s. And I remember in college there was a huge diversity of skills, from “are you sure this career path is really a good idea for you?” To “holy hell how did you do all of that in one hackathon?” But even for those really smart folks, they aren’t just going to inherently understand all the different ways to organize and structure code, all the conventions that exist, and more importantly why those methods and structures exist and the history that informed them. I’m not saying you need on the ground experience (although, I’d say many people do, as many people can’t really internalize things without direct exposure), but there’s just not enough time, literally, in the handful of years that is childhood and teenage years to absorb all that history.

      Anyway, what I’m getting at is that, yes, I agree that the problem isn’t inherently about being teenagers but I do think it’s a valid criticism that it’s kind of ridiculous to have such young folks leading this kind of project given it’s literally impossible for them to have the same amount of experience as software vets. It’s also valid that young people are capable of seeing things in very new ways, since they aren’t weighed down by al that history. But that’s why diversity is useful especially for such a monumental project as this.

    • spooky2092@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      22
      arrow-down
      1
      ·
      edit-2
      20 hours ago

      How many teens you think can actually read and understand legacy languages like FORTRAN and COBOL? Let alone a complex codebase written in them?

      I studied COBOL a bit in college and it’s not exactly hard to read short snippets if you understand other languages, but good luck wrapping your head around anything remotely complex and actually understand what it is doing without having someone who understands the language. Hell, 15-20 years on and multiple languages later, my eyes still cross trying to read and grok COBOL. The people supporting those old code bases get paid well for a reason …

      • jsomae@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        5 hours ago

        I’m familiar with a dozen or so teenage romhackers. Assembly surely harder to get the big picture of than cobol, but they’re making incredible changes to 30-yo video games.

      • tempest@lemmy.ca
        link
        fedilink
        arrow-up
        19
        ·
        18 hours ago

        Learning to COBOL is not itself that hard.

        Understanding decades of “business” logic is.

        It isn’t WHAT it is doing, it’s WHY it is doing it that makes these systems labyrinthian.

        Also afaik they don’t get paid that well which is part of the problem.

    • Aceticon@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      1
      ·
      12 hours ago

      I think it makes sense that people who don’t have actual experience in making projects in a specific language won’t be aware of details such as the value 0 being the default in a certain kind of field in a certain language which makes it a good flag for “data unknown”.

      This is not a problem specific of teenage programmers - it is natural for just about everybody to not really know the ins and outs of a language and best practices when programming with it, when they just learned it and haven’t actually been using it in projects for a year or two at least.

      What’s specific to teenagers (and young coders in general) is that:

      • They’re very unlikely to have programmed with COBOL for a year or two, mainly because people when they start tend to gravitate towards “cool” stuff, which COBOL hasn’t been for 4 decades.
      • They haven’t been doing software engineering for long enough to have realized the stuff I just explained above - in their near-peak Dunning-Krugger expertise in the software engineering field, they really do think that learning to program in a given language is the same as having figured out how to properly use it.
      • spireghost@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        ·
        5 hours ago

        I think it makes sense that people who don’t have actual experience in making projects in a specific language won’t be aware of details such as the value 0 being the default in a certain kind of field in a certain language which makes it a good flag for “data unknown”.

        The whole “COBOL’s default date is 1875” thing is just a lie. COBOL doesn’t even have a date type.

        So the problem doesn’t have anything to do with COBOL, someone just made it up

      • jsomae@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        5 hours ago

        my brother taught me to code when i was 6, so at 19 i had 13 years of experience already. At 6 i was mostly doing simple stuff like qbasic, vb6, but still it adds up. I’m not saying I’m a great coder, not by a long shot, just that I was experienced as a teenager. I assume a lot of these teenagers are much better than i was.

      • Malfeasant@lemm.ee
        link
        fedilink
        arrow-up
        1
        ·
        10 hours ago

        I’ve been surprised multiple times by coworkers who don’t know the significance of midnight January 1st 1970… We support an embedded Linux device, among other things…