• JackbyDev@programming.dev
    link
    fedilink
    English
    arrow-up
    9
    ·
    14 days ago

    This symbol isn’t needed for spells this long, but it’s considered best practice and other wizards will make fun of me for not including it, even though it isn’t needed.

  • ilinamorato@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    15 days ago

    “Oh, dude, you gotta stop using TJ’s Action Rune of Changed Files. That runebook has a backdoor to one of the hells now. Didn’t you see the patch notes?”

    • dosuser123456@lemmy.sdf.org
      link
      fedilink
      arrow-up
      1
      ·
      7 days ago

      whats that? i use yenjis discus checker scroll, i know it was abandoned long ago back in the old days of the spell assemblers (when they were still a thing) but IT. JUST. WORKS. i dont need those fancy new features, i just want to see if the runes and incantations written on my magic discus got corrupt or not.

    • Toribor@corndog.social
      link
      fedilink
      English
      arrow-up
      5
      ·
      15 days ago

      I never update my spell book and nothing bad has ever happened.

      Help. Infernal imps somehow got inside my sanctum and used my scrying orb to send rude messages to the rest of the Circle.

    • JackbyDev@programming.dev
      link
      fedilink
      English
      arrow-up
      3
      ·
      14 days ago

      Ugh, look, I get it. I know TJ’s Lesser Action Rune of Changed Files that the Greater version does now, but TJ’s price structure is bullshit and I’m not paying for Greater just because he refuses to “support” us users of Lesser. I don’t even have a damn Portal, much less a Summoning Circle! Why are you so worried about a backdoor to the hells? Unless I connect this sigil to the weave nothing is going to come in or out. This sigil is only for monitoring the moisture content of my garden by way of a spell scroll attached. As we both know, scrolls and sigils use two different elements to communicate. One is gold ink and the other is silver ink. I have to use TJ’s Action Rune of Changed Files to see if the document has changed due to moisture. The scroll cannot directly talk to my watering golem’s receiving crystal.

  • Ethan@programming.dev
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    13 days ago

    If you’re adding code you don’t understand to a production system you should be fired

    Edit: I assumed it was obvious from context that I’m referring to copy-pasting code from stack overflow or an LLM or whatever without knowing what it does but apparently that needs to be said explicitly.

    • perestroika@lemm.ee
      link
      fedilink
      arrow-up
      3
      ·
      14 days ago

      I really like to build from zero, but some things are better copied, no matter if you fully understand them or fall short. :)

      For example, I’m not qualified to check if Hamilton and Euler were correct - I only do as they explained, and later double-check the output against input.

      • Ethan@programming.dev
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        1
        ·
        13 days ago

        I didn’t say never copy and paste. I’m saying when you push a commit you should understand what all the LOC in that commit do (not counting vendored dependencies). If you don’t understand how something works, like crypto (not sure what Hamilton or Euler refers to in this context), ideally you would use a library. If you can’t, you should still understand the code sufficiently well to be able to explain how it implements the underlying algorithm. For example if you’re writing a CRC function you should be able to explain how your function implements the CRC operations, even if you don’t have a clue why those operations work.

      • Ethan@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        13 days ago

        There’s a huge difference between copy-pasting code you don’t understand and using a library with the assumption that the library does what it says on the tin. At the very least there’s a clear boundary between your code and not-your-code.

      • Ethan@programming.dev
        link
        fedilink
        English
        arrow-up
        0
        ·
        14 days ago

        Are you seriously trying to equate “I don’t know which instructions this code is using” to “I copied code I don’t understand”? Are you seriously trying to say that someone who doesn’t know how to write x = a + b in assembly doesn’t understand that code?

        • JackbyDev@programming.dev
          link
          fedilink
          English
          arrow-up
          1
          ·
          14 days ago

          No, they’re pointing out that it’s a little silly to expect everyone to understand each and every later of abstraction fully before deploying code.

          • Ethan@programming.dev
            link
            fedilink
            English
            arrow-up
            0
            arrow-down
            1
            ·
            edit-2
            13 days ago

            I said you need to understand what the code you wrote (as in, LOC that git blame will blame on you) does. Not that you need to fully understand what the code it calls does. It should be pretty obvious from context that I’m referring to copy-pasting code from stack overflow or an LLM or whatever without knowing what it does.

      • Jankatarch@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        14 days ago

        No I just read the stack overflow guy’s explanation and the other small comments around and they explain it.

        • JackbyDev@programming.dev
          link
          fedilink
          English
          arrow-up
          0
          ·
          14 days ago

          Same here. Assembly is a little too high level for me. I don’t like the assembler guessing what I meant. I like telling processors exactly what to do.

          Honestly, modern CISC processors are also a little high level if you think about it. I don’t want the processor guessing what I meant to tell it. I like telling them exactly what to do.

          • Korhaka@sopuli.xyz
            link
            fedilink
            English
            arrow-up
            2
            ·
            13 days ago

            The processor is just going to guess wrong and might occasionally waste a few cycles!

      • Ethan@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        13 days ago

        If you are submitting work, you should understand how the code you’re submitting works. Sure, you don’t have to know exactly how the code it calls works, but if you’re submitting code and there’s a block of code and you have no clue how that block works, that’s a problem.

  • dosuser123456@lemmy.sdf.org
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    8 days ago

    tries to hide C:\jp\scripts\whuj9f.bat and the fact he copied 90% of the thing from a post in the offtopic section of a gaming forum behind his back (with no success)

    oh also hhe62m.lsp was copied off a magic spellbook dont ask about it

    • DerArzt@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      15 days ago

      My brother in Christ, why must you inform us of cool things and leave us with less free time? 🫠

    • CanadaPlus@lemmy.sdf.org
      link
      fedilink
      arrow-up
      1
      ·
      15 days ago

      Interesting. Does this provide any game balance whatsoever?

      I spent an embarrassing amount of time trying to design magic systems when I was a teenager, but they always ended up being either way too powerful or not “rich” enough to be interesting. It’s just really hard to design a simple mechanical system that stays within arbitrary human boundaries.

      Hmm, I feel myself getting drawn back in. That’s almost like a zero-knowledge proof, and there’s lots of weird ways to implement cryptographic primitives.

      • Grey Cat@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        14 days ago

        Well, ir’s obviously not balanced for vanilla. But I had talked to the quite a while ago now. And they did try to walk a fine balance of being useful and fun, but not too over the top. They apply limitations where it makes sense for them.
        Especially since there is PvP.

        If you liked Hex Casting, or even Psi. This should be right up your alley. It’s also less tedious than either of them I would say.

      • lime!@feddit.nu
        link
        fedilink
        English
        arrow-up
        1
        ·
        15 days ago

        no, it does not. there is a rune that consumes amethyst but it’s just for flavour, so you can give your spell a cost if you want.

      • lime!@feddit.nu
        link
        fedilink
        English
        arrow-up
        0
        ·
        14 days ago

        i guess you could say the learning curve is a balance feature. it’s an entire functional programming language in a pretty unergonomic form factor, so actually building spells that do anything impressive takes a lot of time.

        • CanadaPlus@lemmy.sdf.org
          link
          fedilink
          arrow-up
          1
          ·
          14 days ago

          Only until you’ve figured it out, at which point you’re god. You could make it non-repeatable somehow to avoid that, but magic is depicted as being mainly old, repeated spells most of the time, like in the comic. You could also move to something like Brainfuck or even Malbolge where coding a single new program is hard. As I learned the hard way, though, you’re still going to have no control over what ends up being easy and what’s not.

          Actually, it’s more like homeomorphic encryption since you have a system of some bounded complexity instead of a single fixed piece of information. That’s usually harder, but then again you actually want the scheme to be “insecure” in this case.

  • s12@sopuli.xyz
    link
    fedilink
    avesta
    arrow-up
    0
    ·
    15 days ago

    Syntax error: Mismatched △
    FATAL ERROR! DRAIN ARCANE ENTRY IMMEDIATELY!
    ARCANE ENERGY COULD NOT BE DRAINED AND WILL BE DISPERSED WHEN PROCESS IS TERMINATED.
    Kernel panic: Syntax error in interpreted kernel code. Spell OS 0.2.437 will now terminate.

    *Firery explosion

    “And that’s the most efficient way we’ve found of casting fireball. We’re still working on getting round to finding a more elegant solution.”

  • peoplebeproblems@midwest.social
    link
    fedilink
    English
    arrow-up
    0
    ·
    14 days ago

    Man this is just another great example of why I think software is essentially magic.

    At the root of it, the hardware, it’s magic smoke. It’s all based on magic from that point up - because the layer below the one you are using “works because it does.”

    • Redkey@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      11 days ago

      I think it depends a lot on a person’s individual knowledge. If you keep studying far enough away from your main area of expertise, there’ll still be some point where you stop and have to blindly accept that something “just works”, but it will no longer feel like that’s what your main field is based upon.

      Imagine a chef. You can be an OK chef just by memorizing facts and getting a “feel” for how recipes work. Many chefs study chemistry to better understand how various cooking/baking processes work. A few might even get into the physics underlying the chemical reactions just to satisfy curiosity. But you don’t need to keep going into subatomic particles to have lost the feeling that cooking is based on mysterious unknowns.

      For my personal interest, I’ve learned about compilers, machine code, microcode and CPU design, down to transistor-based logic. Most of this isn’t directly applicable to modern programming, and my knowledge still ends at a certain point, but programming itself no longer feels like it’s built on a mystery.

      I don’t recommend that every programmer go to this extreme, but we don’t have to feel that our work is based on “magic smoke” if we really don’t want to.

      ADDED: If anyone’s curious, I highly recommend Ben Eater’s YouTube videos about “Building an 8-bit breadboard computer!” It’s a playlist/course that covers pretty much everything starting from an overview of oscillators and logic gates, and ending with a simple but functional computer, including a CPU core built out of discrete components. He uses a lot of ICs, but he usually explains what circuits they contain, in isolation, before he adds them to the CPU. He does a great job of covering the important points, and tying them together well.