• bleistift2@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    3
    arrow-down
    18
    ·
    5 hours ago

    You don’t teach a farmer how an internal combustion engine works. Computers are tools to software engineers. What they need to know is how to operate them, not how to maintain them.

    • KnitWit@lemmy.world
      link
      fedilink
      arrow-up
      25
      ·
      4 hours ago

      I’m not sure how well that analogy holds up. Farmers are usually pretty well versed in mechanical systems. To the point that now that John Deere has been screwing them over on right to repair that some farmers are even becoming versed in computer programming so they can flash the firmware on their tractors.

        • KnitWit@lemmy.world
          link
          fedilink
          arrow-up
          4
          ·
          4 hours ago

          No, but if a farmer’s tractor is overheating (as in the gard drive conparison), I’m sure they could diagnose it.

      • bleistift2@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        3
        ·
        4 hours ago

        I never said that it was impossible for a farmer to learn things outside their immediate field. Just like computer programmers often have knowledge of hardware and the general technology stack.

        My point, to make it explicit to a few of the illiterates who’ve replied to my comment so far, is that it is not necessary to teach a web developer how a goddamn CPU works. They can gain nothing from that knowledge because there are at least 3 levels of abstraction between JavaScript and assembly.

        • KnitWit@lemmy.world
          link
          fedilink
          arrow-up
          7
          ·
          edit-2
          4 hours ago

          And my point is that the example you used does not make the point you are trying to make, but rather the opposite. I get what you’re saying, it just doesn’t apply to farmers and mechanics.

        • bane_killgrind@slrpnk.net
          link
          fedilink
          English
          arrow-up
          6
          ·
          4 hours ago

          Operating your tools and being able to maintain and repair your tools are the unequivocally essential skills for everyone in every single industry.

          If you can’t, you are not a professional.

          The concepts of machine logic, registers/lookups/etc are essential for every programmer. If you don’t have a clear idea about how the simplest CPU functions, you don’t have any basis of understanding the abstractions in front of you, scripting in JS. Not a professional.

    • kryptonianCodeMonkey@lemmy.world
      link
      fedilink
      arrow-up
      6
      ·
      3 hours ago

      Horseshit. Computers aren’t tools for a software engineer. Computers are tools to an administrator, an accountant. Computers are the sandbox you are building castles in as a software engineer. If you don’t understand the system upon which you build, its abilities and features, its limitations, it’s dependencies, you are going to make some stupid mistakes.

      You need to understand discrete mathematics as a consequence of computer computation. You need to understand parallel processing and threading for muli-core processors. You need to understand networking, package management, security vulnerabilities, etc. from different architectures and protocols. And it ALWAYS helps to understand the very basics of a computer’s functioning, from hardware, CPU architecture, machine code, assembly/low level programming, memory management, etc.

      print('Hello, World!) is day one shit for a reason. Programming language and logic is the basics. The real expertise comes from your 3rd and 4th year materials. Databases, architecture, theory of computation, discrete mathematics, networking, operating systems, compilers, etc.

    • hayalci@fstab.sh
      link
      fedilink
      English
      arrow-up
      13
      ·
      5 hours ago

      No, not really. Programming requires understanding of the underlying hardware, at least to a certain extent. Otherwise performance issues will look like dark magic and optimizing anything would be impossible.

      Where do you start debugging if something goes wrong with the software and your information level is this low/ do you look at network stats? CPU utilization, paging/swapping? Is the hard disk bandwidth the bottleneck? Without at least some passable understanding of a computer architecture people like this just throw up their hands, or throw whatever tricks they know at the wall and see what sticks.

    • bane_killgrind@slrpnk.net
      link
      fedilink
      English
      arrow-up
      5
      ·
      4 hours ago

      What the fuck

      How is he going to fix his tractor? Wait days for John Deere to send somebody? Let the crop rot on the vine?

    • chickenf622@sh.itjust.works
      link
      fedilink
      arrow-up
      7
      ·
      4 hours ago

      A lot of farmers are learning how they work cause the companies that sell them the equipment keep fucking them over. I would argue that farmers nowadays needs to know how that works along with basic programming to get past the anti-consumer bullshit companies put in to make it nigh impossible to fix things yourself.

    • sepi@piefed.social
      link
      fedilink
      English
      arrow-up
      4
      ·
      4 hours ago

      CS departments were doing poorly, but now they’re putting out farmers? No wonder all these new graduates can’t find a job.