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

    Meanwhile I don’t like the software that saves a rolling three minutes of gameplay so I can instantly save anything cool that happens because I don’t want my SSDs constantly being written, so I just have it load the temp file into drive emulated by RAM instead. Don’t touch my SSDs!

    • Nurgus@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      8 hours ago

      Oo that’s actually a neat idea for those of us with plenty of ram in our gaming PCs. Thanks.

      • Rai@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        3 hours ago

        Heck yeah! It was super easy to set up with AIM Toolkit.

        I think 16GB of RAM would be sufficient for most any game computer to do it this way—I’d allocate like .75 to 1GB on my 16GB machines.

        My main game computer has 32, so I allocated 2GB since I never come close to touching it!

        I was looking at the RAM drive’s properties in Wandows and was giggling after clicking on the “ReadyBoost” tab. Gotta use that RAM drive as a buffer between RAM and SSDs!

        • partofthevoice@lemmy.zip
          link
          fedilink
          English
          arrow-up
          1
          ·
          2 hours ago

          What the fuck. Why can’t you disable such an expensive feature if you don’t want it?

          Next up, I’ll be adding a Whirlwind Simulator in my Ice-cream shop. It’s a surcharge and it’s required before you step in.

          • Rai@lemmy.dbzer0.com
            link
            fedilink
            English
            arrow-up
            3
            ·
            1 hour ago

            What do you mean, like the recording thing? You can easily disable it, but I DO want it! I want it so badly! But I don’t wait it constantly writing to an SSD or HDD.

          • KairuByte@lemmy.dbzer0.com
            link
            fedilink
            English
            arrow-up
            1
            ·
            57 minutes ago

            You can turn it off, people just enjoy the feature so decided to do an easy improvement that some corpo decided was “out of scope”.

  • Midnight Wolf@lemmy.world
    link
    fedilink
    English
    arrow-up
    80
    arrow-down
    2
    ·
    22 hours ago

    AI Cartel: we will buy all your stock

    Memory Cartel: yaaaay!

    MC: but now nobody is building computers, hurting our storage business :(

    AC: we gotchu fam, we will just make our systems outrageously system demanding, killing components and driving sales

    MC: yaaaaaaaay

  • Zarobi@aussie.zone
    link
    fedilink
    English
    arrow-up
    22
    arrow-down
    2
    ·
    19 hours ago

    Man, logging issues are like baby’s first engineering problem… That’s just embarrassing

  • adarza@piefed.ca
    link
    fedilink
    English
    arrow-up
    27
    ·
    22 hours ago

    eating their own dog food, are they?

    they’ll have to hire an actual developer to fix it.

    • luciferofastora@feddit.org
      link
      fedilink
      English
      arrow-up
      6
      ·
      edit-2
      12 hours ago

      A guy I know is trying to pitch a tool to people he made with AI. Which is to say AI made it for him, because his coding knowledge just about covers HTML and CSS, as best as I can tell, so everything else (and probably a good chunk of those too) is slopped up.

      Recently, someone apparently had difficulties signing up with their email, but only their email. Their partner’s worked fine. The guy was at a loss. I’m not sure he could read the code at all or has any idea of how troubleshooting works.

      If it was open source, I’d probably look into it just out of curiosity. My money is on “AI trained on junior devs’ output did the junior dev thing where they discover RegEx and try to use it for email input validation”, because the provider has a dash in their domain and that’s the simplest explanation for email address troubles.

      He also should hire an actual developer to fix his shit. My rates start at 100€/h, increasing by 10€ every time he suggests I ask AI.

      • IsoKiero@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        7
        ·
        8 hours ago

        they discover RegEx and try to use it for email input validation

        It actually can be done: Mail::RFC822::Address: regexp-based address validation

        It’s really simple:

        (?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
        )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:
        \r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(
        ?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ 
        \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\0
        31]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\
        ](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+
        (?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:
        (?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
        |(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)
        ?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\
        r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[
         \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)
        ?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t]
        )*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[
         \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*
        )(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
        )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)
        *:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+
        |\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r
        \n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:
        \r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t
        ]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031
        ]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](
        ?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?
        :(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?
        :\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?
        :(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?
        [ \t]))*"(?:(?:\r\n)?[ \t])*)*:(?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] 
        \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|
        \\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>
        @,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"
        (?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t]
        )*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
        ".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?
        :[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[
        \]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-
        \031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(
        ?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;
        :\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([
        ^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\"
        .\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\
        ]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\
        [\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\
        r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] 
        \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]
        |\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \0
        00-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\
        .|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,
        ;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?
        :[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*
        (?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
        \[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[
        ^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]
        ]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)(?:,\s*(
        ?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
        ".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(
        ?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[
        \["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t
        ])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t
        ])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?
        :\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|
        \Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:
        [^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\
        ]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)
        ?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["
        ()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)
        ?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>
        @,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[
         \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,
        ;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t]
        )*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
        ".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?
        (?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
        \[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:
        \r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\[
        "()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])
        *))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])
        +|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\
        .(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
        |(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(
        ?:\r\n)?[ \t])*))*)?;\s*)
        
        • luciferofastora@feddit.org
          link
          fedilink
          English
          arrow-up
          4
          ·
          7 hours ago

          Sure, if the provider is RFC882 compliant. I believe 882 has since been superseded too?

          I believe when I last researched the question to address some issue in my own regex, some Stackoverflow comment brought up an example of an address that could receive mail but wasn’t compliant.

          Hence the more robust approach, which is also the only feasible way to ensure that there are no typos and that the recipient is actually the one signing up: Send a verification mail to that recipient. If the correct confirmation token gets back to you, someone or something probably got and read that mail.

          You can do some minimal check to avoid things like spaces, ensure there is an @ in there somewhere, but beyond that, it’s really not sensible to check them against some long-winded regex.

          Particularly when you’re vibe-coding, can’t know whether the generator got the regex correct and also can’t debug it.

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

            You’re correct, current is RFC2822 (I think). The point, besides being a smartass, was that checking email address validity with just regexp is not a very good approach anyways. What you described makes much more sense, specially by verifying that the address is not just technically correct but that it actually belongs to the person filling the form.

  • tal@lemmy.today
    link
    fedilink
    English
    arrow-up
    7
    ·
    21 hours ago

    If you’re on Linux and aren’t particularly fussed about any issues stemming from power loss, you can probably run it under eatmydata and it’ll disable SQLite calls to fsync().

  • DevDave@piefed.social
    link
    fedilink
    English
    arrow-up
    14
    arrow-down
    10
    ·
    22 hours ago

    it’s weird who gets reported for this stuff.

    There was a game that released not too long ago that was spamming the same message to it’s log file in 500 millisecond intervals doing a constant stream of write and flush to disk the entire time the game ran.

    silence.

      • eleijeep@piefed.social
        link
        fedilink
        English
        arrow-up
        6
        arrow-down
        4
        ·
        21 hours ago

        Can you explain how you came to that conclusion? I don’t know what game it was and how many copies it sold, nor how many Codex users there are, but I assume you already know those details?

        • cecilkorik@piefed.ca
          link
          fedilink
          English
          arrow-up
          16
          arrow-down
          1
          ·
          20 hours ago

          500 milliseconds is an eternity in computer time. Doing a 10KB write (very generously large for a logfile) write every 500 milliseconds is something it could do continuously for about 1,000 years before it used up the write capacity of an SSD.

            • cecilkorik@piefed.ca
              link
              fedilink
              English
              arrow-up
              7
              arrow-down
              1
              ·
              18 hours ago

              They can’t have been talking about Windrose either, then, because they very clearly said it was writing log file entries every 500 milliseconds. Either they misunderstood the scale too, or they were talking about a different issue, because 500 milliseconds is definitely not on the same scale as what Codex or Windrose are being accused of. The game issue they described is not comparable to either of those scenarios.

      • DevDave@piefed.social
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        21 hours ago

        cue the scene from Airplane 2 where the Steward explains they have been knocked of course by just a “tad”

  • neon_nova@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    6
    arrow-down
    15
    ·
    19 hours ago

    Is there a way to mitigate this while still using codex like moving my project to an external drive I don’t care about?

    Is it better to switch to Claud code?