• @[email protected]
    link
    fedilink
    17
    edit-2
    7 days ago

    Honestly, CSS is a fucking joke and it’s solely to blame for why centering something isn’t always straightforward.

    By the way, this picture is a crock of shit for people who aren’t programmers. Anyone who is a programmer will not take it seriously because programming is so much more about helping others instead of shaming them.

    • @[email protected]
      link
      fedilink
      66 days ago

      Stackoverflow: exists solely from the urge of developers to help developers, and since ExpertsExchange was paid dogshit.
      This meme: pisses on its whole purpose.

      • @[email protected]
        link
        fedilink
        English
        16 days ago

        Stackoverflow is for senior devs to clown on junior devs. It’s the inverse of helping juniors.

    • .Donuts
      link
      fedilink
      English
      2
      edit-2
      6 days ago

      I’ve never asked ChatGPT to fix a syntax error because I use Copilot

      If you are going to be this pedantic, I’ll have you know Copilot is a ChatGPT model in a Microsoft skin.

      • @[email protected]
        link
        fedilink
        438 days ago

        We need to bring back 2010-2012 rage comic memes. All we needed was a badly cut-out blonde wig to trans Derp’s gender.

      • @[email protected]
        link
        fedilink
        English
        13
        edit-2
        8 days ago

        So were “computers”. It used to be a job, delegated mostly to women. The JD is doing calculations day in and day out.

      • snooggums
        link
        fedilink
        English
        11
        edit-2
        8 days ago

        The moon landing by hand wouldn’t have been as funny without the over the top body builders first.

      • @[email protected]
        link
        fedilink
        English
        117 days ago

        “Creates a whole game in assembly” is probably referring to roller coaster tycoon, which was written by a man. (lots of other games were written in asm, like many NES games, but I’d wager RCT was what they were alluding to)

        • @[email protected]
          link
          fedilink
          37 days ago

          That was my immediate thought. There were many that came before RCT, but it has the distinction of being (possibly) one of the last in an industry that had already moved on to higher-level languages to do merely half as much.

      • @[email protected]
        link
        fedilink
        37 days ago

        No, I don’t think so. It’s true that many of the earliest programmers were female, but there were very few of them, and that was a long time ago.

        In a way, Ada Lovelace was the first programmer, but she never even touched a computer. The first programmers who did anything similar to today’s programming were from Grace Hopper’s era in the 1950s.

        In the late 1960s there were a lot of women working in computer programming relative to the size of the field, but the field was still tiny, only tens of thousands globally. By the 1970s it was already a majority male profession so the number of women was already down to only about 22.5%.

        That means that for 50 years, a time when the number of programmers increased by orders of magnitude, the programmers were mostly male.

      • @[email protected]
        link
        fedilink
        English
        27 days ago

        Depends how far you go back. The top half is pretty representative of the professional dev team I was in in 1992.

          • @[email protected]
            link
            fedilink
            78 days ago

            The large initial percentage of female coders was due to computer having been a female job, because secretary was. Their role within companies didn’t change, what changed is that they were using machines to do the computing instead of doing it by hand.

            We’re kinda lucky to have the woke trifecta (Ada, Grace, Alan) (first programmer (woman), inventor of compilers (woman), absolute unit (gay)) to keep the chuds at bay. Even if we weren’t all socially inept nerds (or pretending to be so to bosses) there’s only so much you can do, culturally, if the population is growing exponentially. Uncle Bob (yes I know he’s a chud) did the maths at some point IIRC it was something like the number of programmers doubling every two years. Which also means that at any one point in time roughly 2/3rds of programmers have no idea what they’re doing, which explains the javascript ecosystem.

              • @[email protected]
                link
                fedilink
                English
                17 days ago

                At first I thought this was the Wicked Witch of the West’s actress and thought she must have been multitalented. Then I looked it up to verify. Nope, same name, different women.

                • @[email protected]
                  link
                  fedilink
                  37 days ago

                  If you want famous actresses who contributed to technology, you want Hedy Lamarr:

                  At the beginning of World War II, along with George Antheil, Lamarr co-invented a radio guidance system for Allied torpedoes that used spread spectrum and frequency hopping technology to defeat the threat of radio jamming by the Axis powers.

  • hope
    link
    fedilink
    1258 days ago

    I feel very confident in my understanding of random 8 bit CPUs and their support chips, but asking me to center a div is like this xkcd.

    • Ethan
      link
      fedilink
      English
      298 days ago

      I’ve never understood why people are so intimidated by tar

        • @[email protected]
          link
          fedilink
          English
          348 days ago

          Thanks! This will definitely help me to remember it from now on.

          Me 6 months from now:

          tar -EZVF

          • Oniononon
            link
            fedilink
            English
            3
            edit-2
            7 days ago

            Me in 6 months "how to install winzip using terminal"

        • @[email protected]
          link
          fedilink
          English
          168 days ago

          Nobody wants to deliberately use the wrong compression type when extracting, so modern tar will figure out the compression itself if you just point it at a file. So tar -xf filename works on almost anything. You don’t need to remember which flag to use on a .tar.bz2 file and which one for a .tar.xz file.

        • The Ramen Dutchman
          link
          fedilink
          English
          121 hours ago

          I was about to say tar -CompressZeVuckingFile; great mnemonic and I use it every time!

      • @[email protected]
        link
        fedilink
        7
        edit-2
        8 days ago

        It is “backwards” from some other commands — usually you run copy/rsync/link from source to destination, but with tar the destination (tarball) is specified before the source (directory/files).

        That, and the flags not needing dashes always just throws me for a loop.

        And the icing on the cake is that I don’t use tar for tarring that often, so I lose all muscle memory (untaring a tgz or tar.bz2 is frequent enough that I can usually get that right at least…).

        • Ethan
          link
          fedilink
          English
          2
          edit-2
          8 days ago

          I almost never create a tarball, so I have to look up the syntax for that. Which is as simple as man tar. But as far as extracting it almost couldn’t be easier, tar xf <tarball> and call it a day. Or if you want to list the contents without extracting, tar tf <tarball>. Unless you’re using an ancient version of tar, it will detect and handle whatever compression format you’re using without you having to remember if you need z or J or whatever.

          • The Ramen Dutchman
            link
            fedilink
            English
            1
            edit-2
            21 hours ago

            It can be easier if you’re used to the dash before the arguments; it’s optional but you can put them:

            tar -cf   # Compress File
            tar -xf   # Xtract File
            
      • Eager Eagle
        link
        fedilink
        English
        2
        edit-2
        8 days ago

        I got tired of looking up the options for each possible combination of archiving + compression, so today I have a “magic” bash function that can extract almost any format.

        Then for compressing, I only use zip, which doesn’t need any args other than the archive name and the thing you’re compressing. It needs -r when recursing on dirs, but unlike “eXtract” and “Ze”, that’s a good mnemonic.

      • @[email protected]
        link
        fedilink
        17 days ago

        One reason is that tar supports both traditional style args “tar tf <filename.tar>” and unix-style args “tar -tf <filename.tar>” but there are subtle differences in how they work.

        • Ethan
          link
          fedilink
          English
          16 days ago

          Literally the only time I’ve ever run into that is when I was trying to manipulate the path it extracted to. In 99% of cases I’m doing tf, xf, or cf plus flags for the compression type, etc, and those differences are irrelevant.

          • @[email protected]
            link
            fedilink
            16 days ago

            I used something recently where it wasn’t possible to use the traditional-style args. I think it was a “diff”, which meant I needed a “-f”. It wasn’t a big deal, but, occasionally it does happen.

            • Ethan
              link
              fedilink
              English
              25 days ago

              I’m not saying it doesn’t happen. This thread started because I said I’ve never understood why people talk like tar is some indecipherable black magic. Common tasks are easy and there’s a man page for everything else.

  • @[email protected]
    link
    fedilink
    648 days ago

    Hey now. Searching stack overflow circia 2011 to 2018 was an Art. You had to know enough to find the correct question that wasn’t deleted because a mod thought it was a duplicate of another question

    • @[email protected]
      link
      fedilink
      198 days ago

      Also to find the actual correct answer three comments down because the one that was voted highest worked, but was actually a really shit way to do the thing being asked

    • @[email protected]
      link
      fedilink
      58 days ago

      After a while you got know which stack overflow questions were a waste of time, and you used that knowledge for years.

    • @[email protected]
      link
      fedilink
      27 days ago

      Before that you had to hang out on flipside or other gamedev sites and show your worthiness before begging for information.

      I was so proud when they shared the DS hack (basically a homebrew SDK made by trial and error by some people) so that I could make small games on it.

    • @[email protected]
      link
      fedilink
      17 days ago

      I mean, maybe it was just me but I had to search what the hell ^ meant in nano, but after that it was alright.

    • @[email protected]
      link
      fedilink
      English
      698 days ago

      Nano… Like… The one that has all the keybinds permanently shown at the bottom of the screen?

    • I Cast Fist
      link
      fedilink
      188 days ago

      That deserves a “do you know how to read?”, because the exit command is on the lower part of the screen for nano

      • The Ramen Dutchman
        link
        fedilink
        English
        221 hours ago

        To be fair, they show up as “^X” or whatever, and typing [Shift]+[6] followed by the [X]-key doesn’t do the trick.

    • @[email protected]
      link
      fedilink
      57 days ago

      Huh? Isn’t it like right there at the bottom of the screen?

      I guess not knowing that ^X means Control+X could be the issue, but still…

      • @[email protected]
        link
        fedilink
        English
        4
        edit-2
        7 days ago

        TIL!

        Can exit nano on my own, have the common sense to not call in a panic about it before at least looking it up. (Which is how I learned how to exit it: looking it up.) But was never taught about ^ meaning “Control+” until your comment, especially since nowadays people write it out as “Control+” or “CTRL+”.

        I might have put two and two together when dealing with everything else in nano after I learned to exit, but never really internalized the rule “^ means Control+”. So thank you for your comment!

        Disclaimer: I feel like I am too stupid for most of programming.dev but participate here anyways because I learn stuff from the comments.

        • @[email protected]
          link
          fedilink
          37 days ago

          Don’t feel stupid. It’s bad enough that all of IT is one giant impostor-syndrome support group. There’s literally too much for any one person to know, and it’s been that way for a very long time. Just give it your all, and memorize how to reliably search and look things up; take notes for the really important stuff. The rest will filter into your memory with practice.

          Also: anyone that holds this kind of thing over your head is attempting to distract from how much they don’t know. Most people in this industry understand and don’t judge.

          As for the ^ thing, I recall seeing that as far back as the 1990’s. I want to say Microsoft actually popularized it, but it could easily be OS2 (IBM) or Apple. In hindsight, it’s kind of wild to have a TUI (terminal user interface) hold your hand like this. Nano (and Pico) are kind of in a special category like that.

      • Zagorath
        link
        fedilink
        68 days ago

        Read as in, with their eyes? Or how to ingest it into some other app/script? Cos I’m vaguely aware that awk can be used in some way for this, but wouldn’t have a clue how.

  • @[email protected]
    link
    fedilink
    478 days ago

    One of my favourite game dev stories from the 1980s is the story of Elite. It was a game people thought couldn’t be made. Most devs thought hardware wasn’t powerful enough and publishers thought it wouldn’t be fun enough.

    It was one of the first properly 3D open world video games ever made. I think when it released it sold nearly as many copies as there were home computers that could run it.

    In order to make the game small enough to fit on a cassette tape they had to ditch basic and program the entire game, world in assembly.

    There’s a fantastic video about it here: https://youtu.be/lC4YLMLar5I

    • Lemminary
      link
      fedilink
      128 days ago

      the game small enough to fit on a cassette tape

      Holy hell, that is OLD old. We’re talking about the beginnings of digital time here. Had the first web constellations formed yet? How fast did you crank your CPU?

        • The Ramen Dutchman
          link
          fedilink
          English
          121 hours ago

          To be fair, unlocking the frame rate on console-to-PC ports still fast-forwards many games including Nier: Automata or breaks the physics like in Skyrim.

          It doesn’t have to be this way, any more, but it still is because… Lack of expertise? I really can’t think of anything else?

      • @[email protected]
        link
        fedilink
        3
        edit-2
        7 days ago

        Yeah, I played it a lot, and a similar one called aviator which was a kinda flight sim. There wasn’t really much of an internet back then but stuff was easy to copy on tapes.

    • @[email protected]
      link
      fedilink
      117 days ago

      In order to make the game small enough to fit on a cassette tape they had to ditch basic and program the entire game, world in assembly.

      Putting aside the fact that the majority of commercial games of the time were written in assembly (or other low-level languages) just as a matter of course, I strongly suspect that programming the game in assembly was an execution speed issue, and not a cassette space issue. Regular audio cassettes easily held enough data to fill an average 8-bit home computer’s memory many times over, whether that data was machine code or BASIC instruction codes.

    • candyman337
      link
      fedilink
      27 days ago

      Elite Dangerous is the most recent installment of the series started by that game

    • Rose
      link
      fedilink
      167 days ago

      If using plain CSS, usually it’s enough to set width appropriately, and margin-left and margin-right to auto.

      If using a Modern Frontend/CSS Framework, then may God have mercy on your poor soul.

      (Seriously I just started a new project with TailwindCSS and I’m so confused. But not entirely desperate yet.)

        • @[email protected]
          link
          fedilink
          English
          157 days ago

          If you spend a lot of time on a single framework, you will transcend and become a sort of frontend diety, growing multiple extra limbs allowing you to type in CSS classes faster than any mere mortal

        • @[email protected]
          link
          fedilink
          57 days ago

          Generally I find many these frameworks will make some complicated things simple, but the cost is some things that were once simple are now complicated. They can be great if you just need the things they simplify - or in other words can stick to what they were intended for, but my favorite way of keeping things simple is to avoid using complicated and heavy frameworks.

        • @[email protected]
          link
          fedilink
          07 days ago

          I think they exist because of ignorance.

          People who don’t understand how to do a task will usually choose the wrong tools for that task.

          If someone is trying to cover up their lack of knowledge, they will usually make things more complicated than they need to be.

      • @[email protected]
        link
        fedilink
        English
        27 days ago

        I’m doing a small hobby project (a ladder/ranking system for playing beer sports with my community), and I tried out Tailwind.

        I gave up and loaded Bootstrap instead, but I will probably end up just writing all the CSS myself.

        Seems so silly to have 15 CSS classes on a single DOM element…

        • @[email protected]
          link
          fedilink
          16 days ago

          Why is that silly? As long as the classes follow a strict naming scheme & have useful abstractions, that seems much better than having to give every node a unique class name that doesn’t necessarily have much meaning. I can’t count the number of “container” and “wrapper” and “content” classes I’ve seen & written, where the names don’t describe anything useful.

          • @[email protected]
            link
            fedilink
            0
            edit-2
            7 days ago

            Shouldn’t they be designed in an intuitive manner that makes misuse more difficult than regular use?

            Otherwise, why even bother using them? It’s like now you need to know all the ins and outs of CSS and a trendy framework that will lock you into their ecosystem.

            • @[email protected]
              link
              fedilink
              English
              27 days ago

              Kidding aside, I think the popular frameworks these days are incredibly well made. Frontend web has always been hell, and if your job is producing functional web GUIs, you can’t do it on a large scale without them.

              • @[email protected]
                link
                fedilink
                07 days ago

                Based on my own experience developing GUIs, I’ve reached the conclusion that creating them through code is obsolete.

                We should be focusing on developing GUIs to develop GUIs, like Godot, instead of ‘frameworks’ that make an obsolete method of doing things even more cumbersome and complex.

            • @[email protected]
              link
              fedilink
              English
              17 days ago

              Well, I find bootstrap very intuitive, and I don’t have 15 classes on my elements. That’s why I was asking.

      • The Ramen Dutchman
        link
        fedilink
        English
        121 hours ago

        My brother in Christ TailwindCSS just gives classes that let you do inline styling in a shorter syntax! (and theme configuration, but mostly inline styling)

        Replace width: ...px with w-..., margin-left: ... with ml-... and margin-right: ... with mr-.... Setting both horizontal margins is mx-... and both vertical margins is my-....

        If you can do inline styling, TW just makes the syntax a bit shorter, but that’s it, really.

    • @[email protected]
      link
      fedilink
      9
      edit-2
      7 days ago

      If you define what you mean by centering I’ll give you a straight answer.

      Vertically? Horizontally? Center the text or the entire box? Compared to the viewport, the parent container or the entire page?

      “Centering” isn’t as straight forward as you’d think, and what you actually want usually depends on the situation.

        • @[email protected]
          link
          fedilink
          37 days ago

          Yeah that works if you wanna center a box of content it relative to the parent container, either horizontally or vertically. For other situations we’ve got different tools

      • Schadrach
        link
        fedilink
        English
        47 days ago

        Fuck it, align=‘center’. That’ll center it horizontally relative to some context and if that’s not good enough then you should have been more precise in your request.

    • @[email protected]
      link
      fedilink
      English
      97 days ago

      Depends if you’re centering the div or the things in the div. Which has probably been the main issue since CSS was invented.

    • @[email protected]
      link
      fedilink
      English
      77 days ago

      Same way you did it in 2024 but it’s easier because the springgirdles have been replaced with rotated manglebrackets.

      • @[email protected]
        link
        fedilink
        27 days ago

        probably a lot less performant than doing it the old fashioned way. sometimes that matters. you should have the non-grid non-flex method half committed to memory. abusing flex or grid to save 2 lines of code is not a great practice, and having only one child element is usually a pretty clear sign that flex/grid is the wrong tool for the job

        at the end of the day though do whatever you want, in fact why not just write a javascript function to recenter it every frame at 60fps cause 99.9% of the software 99.9% of people interact with is pure shit made by developers who don’t care for users who don’t care.

        we live in a slop world, made by and for slop people who love slop. can you tell i’ve been awake for 30 hours? anyways…

  • I Cast Fist
    link
    fedilink
    348 days ago

    80s programmers hated Unix, btw. Look up Unix Haters Handbook, it’s a free and funny read

      • @[email protected]
        link
        fedilink
        English
        27 days ago

        Thanks. I didn’t know there was a real band called “The Pipi Pickers” and I might have lived on happily without that knowledge.

    • @[email protected]
      link
      fedilink
      26 days ago

      A lot of it was fair criticism at the time. Linux fixed some of what was wrong. Having a good sudo config mostly resolves the problem of having one superuser account, and big, multiuser systems are a lot less common now, anyway. X’s network transparency features aren’t that useful in modern computing contexts, either, though I have found a few over the years.

      But mostly, it’s because the landscape changed from a hundred Unix vendors vs a bunch of other OSen, to now where it’s Windows vs Linux vs OSX. By that comparison, the two with Unix-derived history look well thought out.

      (This also implies that NextStep was the one old Unix vendor that has survived in a meaningful way. I don’t think anyone would have guessed that 30 years ago.)

    • exu
      link
      fedilink
      English
      27 days ago

      Unix does so many stupid things and we’re still stuck with some of them. Especially the terminal section still applies today.

  • Lemminary
    link
    fedilink
    338 days ago

    Hey buddy, if I fix one bug and cause three more, it’s called job security. Where’s my medal?

  • @[email protected]
    link
    fedilink
    338 days ago

    QA: “Yeah, Hi. Can you look at this defect ticket?”

    Reading ticket details…

    Me: “Let me guess. Is [whatshisname] responsible for this?”

    QA: “Yeah.”

    Me: “Get him to fix it.”

    QA: “I tried. Like four times.”

    Me: Sigh “I’ll take care of it.”

    QA: “Thank you!”

  • @[email protected]
    link
    fedilink
    298 days ago

    I once had an intern attempt to install sudo using NPM and when that didn’t work he asked ChatGPT “Why can’t I install sudo from NPM?” while I’m trying to explain it to him.

    He was smart, but somehow knew very little about commercial computers despite being on the verge of getting his master’s in computer science.