• Mountainaire@lemmy.world
    link
    fedilink
    arrow-up
    0
    ·
    15 hours ago

    Okay, so go on… I, too, am hardly a programmer yet hangs out here anyway and have no idea of what this is all about, haha.

    • DaleGribble88@programming.dev
      link
      fedilink
      English
      arrow-up
      0
      ·
      14 hours ago

      The weird text the main bird is rattling off it something called “Assembly”. Many programming languages don’t really tell the computer what to do, they more or less outline the behavior they want, and then another program called a compiler turns that into 1s and 0s that a computer can actually understand. If you’ve ever heard of binary, that’s what these 1s and 0s are. Assembly is one level of abstraction* above the 1s and 0s. It is a good way for humans to understand what a computer is actually doing without having to look at the original programming code, and without 1s and 0s. So the main bird represents a computer doing it’s thing, running some program.

      Then comes the crow with a “Hello It’s me. The Keyboard! Someone pressed the letter e.” The crow represents something called an interrupt, which is exactly what it sounds like. It interrupts the normal flow of a program to signal to a computer “Hey, you need to deal with this. Like, now.”

      The reason why he is a keyboard is because that is how old keyboards used to work. Before USB ruled the world, mice and keyboards used something called a PS2 port. If you ever saw an old mouse or keyboard with a green or purple plug on one end instead of a USB, then that’s the old style we are talking about.

      Modern USB keyboards are a little more polite and will wait in a line until the computer is ready to deal with whatever the human just typed, but old PS2 keyboards used interrupts to demand attention. This was really important for old slow computers that needed to respond to user input ASAP. Modern computers can handle that sort of thing a little bit better.

      I think that is enough context to understand the meme.

      *Not really: see ISA layer and micro-ops for more information

      • Mountainaire@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        13 hours ago

        Ohhhhhhh.

        Huh.

        Also, wasn’t it even once stylized like “PS/2,” come to think of it? I did very vaguely remember learning about interrupts (as nouns, lol), but this makes it far clearer, thanks!

        • Rose@slrpnk.net
          link
          fedilink
          arrow-up
          0
          ·
          10 hours ago

          Yup, it was fully known as IBM PS/2, for “Personal System 2”. IBM wasn’t happy about how the original PC system got cloned to hell and back, so they designed a more proprietary and patentable system. Suffice to say it was a massive failure, what with it being incompatible with basically all of third party hardware. But the keyboard and mouse ports were widely regarded as a good idea! (and probably not as patentable)

        • Captain Aggravated@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          0
          ·
          13 hours ago

          There’s a Youtube channel called Ben Eater that does a great job of explaining computing from first principles. He built a computer out of discrete components on breadboards. He also has a great series where he wires up a 6502 microprocessor and basically builds a little 8-bit microcomputer around it, again on breadboards, in a way that you’ll get. He sells them as kits, so you can play at home if you want. They’re also just nice educational evening calm time viewing.

      • nightwatch_admin@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        14 hours ago

        This is a great explanation!

        But I do have to say, you darn kids with your fancy newfangled PS/2 input… in my days we had proper serial or DIN ports!

        • DaleGribble88@programming.dev
          link
          fedilink
          English
          arrow-up
          0
          ·
          10 hours ago

          OMG, that reminds of one of my first little hobby projects. Using a serial port to light up an LED whenever I had a new notification on… good grief was it Myspace or Facebook back then? Around that transition period at any rate.

        • leftzero@lemmy.dbzer0.com
          link
          fedilink
          arrow-up
          0
          ·
          13 hours ago

          I saw a computer with a parallel port at work the other day.

          No idea why it had it, it also had a couple blue USB3 ports. Also VGA and HDMI, and a bicolour PS/2. Damn weird mainboard.

          Zoomer intern was wondering what it was and I got to tell him about parallel and serial and all that. Made me feel nostalgic. And old.

          • Captain Aggravated@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            0
            ·
            13 hours ago

            “Work” computers will often have legacy ports because maybe you need it to connect to some old printer.

            There are a lot of places still using old-style dot matrix printers or other weird old hardware. Point-of-sale systems made to this day often come with a bunch of serial, or not quite serial, ports.