• LordKitsuna@lemmy.world
    link
    fedilink
    arrow-up
    5
    ·
    3 months ago

    Anyone that says yaml is readable is psychotic. It’s literally objectively not readable because a random white space character can break the entire thing and that’s by definition not readable I can’t see whether there’s a white space or not without explicitly setting that up in an editor

      • azertyfun@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        3 months ago

        Only 1.1. Which everybody has been fiercely clinging onto since 2009, because YAML 1.2 did not seem to consider it a problem that they broke backwards compatibility on that behavior. So now the only way to keep existing YAML files working is for us all to keep pretending YAML 1.2 does not exist.

        • corsicanguppy@lemmy.ca
          link
          fedilink
          English
          arrow-up
          1
          ·
          3 months ago

          they broke backwards compatibility

          Tell me this is post-y2k and built in the dark ages after we lost our mentors and gurus without using those words.

          • azertyfun@sh.itjust.works
            link
            fedilink
            arrow-up
            1
            ·
            3 months ago

            Which versioning???

            somekey: yes
            

            Go right ahead and tell me what the YAML version is and what is the type of somekey is. Oh that’s right, it’s impossible, because the versioning is entirely up to the serializers for some godforsaken reason.

    • brax@sh.itjust.works
      link
      fedilink
      arrow-up
      1
      ·
      8 days ago

      I fucking hate YAML. Everything about it is shit. I have no idea why it exists. “Oop, my config failed because I accidentally used an extra tab” should not be a thing.

      Anybody that uses any of that shit can get fucked. KDL, too. I almost used Zellij until I saw how brain-dead their config system was.

  • CaptPretentious@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    3 months ago

    Honestly, fuck Ansible.

    It’s the dialup of automation tools. It was probably amazing 10 years ago.

    It’s YAML is awful, it scales terribly, it’s so fucking slow at literally everything, it gives people who have no clue what they’re doing a false sense of confidence.

    The number of times I’ve seen app teams waste the time of support groups and engineers because something went wrong and they didn’t have the knowledge to know why and need to waste so many man hours having other people solve it for them. I (the engineer) was added to a chat that had 15 people in it because they, after running ansible, saw errors in their server… So clearly there was a problem with the server… At no point did they question there Ansible job.

    Of the various tools I’ve used, I prefer Salt. The YAML is slightly less ass and it’s so much faster while also seeming to scaling better too. It by no means is perfect.

    • corsicanguppy@lemmy.ca
      link
      fedilink
      English
      arrow-up
      3
      ·
      3 months ago

      Honestly, fuck Ansible.

      It’s the dialup of automation tools. It was probably amazing 10 years ago.

      It’s actually on par with 20-year-old tech. There’s nothing it’s doing that we weren’t doing back then already in the enterprise space. And, in so many cases where Ansible’s unable to respond well to changes to the system, it ends up not being on par with 20-yer-old tech.

      Salt is better as it’s one generation newer, aka last-gen. Puppet, salt, chef/cinc, all the same generation, and we get single source of truth and fast operation de

      Current-gen is mgmtconfig, and from it we get instant/constant converging event-driven code. If you like ansible, you’re gonna love sale or cinc. If you love salt or puppet, mgmtconfig will blow your mind clean out the back of your head.

      100 servers? 5000? Ansible don’t care

      Sub-second convergence of thousands of servers. Files managed so hard you can’t manually mod them as they revert immediately and it’s an actual race to try and mod a file to use it, since it’s hooked into inotify and friends.

      James even put in a YAML-ish DSL for the crayola crew who haven’t learned Go yet. :-P

      • hushable@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        3 months ago

        Terraform and Ansible do different things, they do have overlapping features, but ultimately they’re meant to do different things. I use them both at my current job with Terraform running Ansible

  • hardcoreufo@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    3 months ago

    I hate anything that uses python or depends on whitespace in it’s code. Nothing but fucking problems. You know what’s hard to see an extra space in a line of code. A missing semicolon is so much easier to find.

    • figjam@midwest.social
      link
      fedilink
      English
      arrow-up
      3
      ·
      3 months ago

      I have to say, the resurgence of this energy in the last whenever has been refreshing. Can’t we all just crank our hogs?

  • ColonelThirtyTwo@pawb.social
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    3 months ago

    “Keep it simple” says the project that decided it would be great to program in YAML…

    I’ve tried using it to manage a few home servers and parameterizing anything was painful and boilerplate-ridden

    • Funwayguy@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      Jist wait until you have to start fucking around with multiple incompatible versions of python for different targets.

        • Lichtblitz@discuss.tchncs.de
          link
          fedilink
          arrow-up
          0
          ·
          3 months ago

          No. Because the python version of the host and the target server must loosely match up. Otherwise you get some cryptic error messages in some unexpected modules. Red Hat’s solution: just manage RHEL 9 targets from RHEL9 hosts and RHEL8 from RHEL8 hosts. There is no official way to align python versions across that major.

    • tzrlk@lemmy.world
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      Except it isn’t actually YAML you’re writing, it’s a jinja2 string template that parses to YAML because the expressions they came up with ended up not being sufficient.

      • JackbyDev@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        ·
        3 months ago

        Mm, I love stacking weird formats. How many backslashes do I need for a regular expression to work right? 🥵

  • hushable@lemmy.world
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    3 months ago

    I’ve been using Ansible for almost 10 years now and one thing I learned is to keep things simple, most issues I had with Ansible in the past were due to me taking the wrong approach to problem solving. In way, it forced me to not overcomplicate things.

    I’m not the biggest fan of it, but I do prefer it over other IaCs.

    edit: tbh my biggest issue with Ansible is other people who ask me “why not wrtie a bash script instead?”

  • towerful@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    3 months ago

    uses yaml for scripting so it’s clean and readable.

    Eh…

    I guess yaml is fine.
    I hate the significance of whitespace, and the fact that I cannot find any editor that can auto-format. Which are both related, I guess: there is no way to know a yaml document is actually correctly formatted without knowing the intended schema.

    Whereas JSON doesn’t have this ambiguity. But JSON has it’s own drawbacks.

    • kevincox@lemmy.ml
      link
      fedilink
      arrow-up
      1
      ·
      3 months ago

      YAML is fine as a configuration language and ok data input language.

      YAML is absolutely cursed as a programming language. As in Ansible has created a really shitty programming language inside of YAML. Should be burned with fire.

    • moncharleskey@lemmy.zip
      link
      fedilink
      arrow-up
      1
      ·
      3 months ago

      SSH is a network protocol for making secure connections, allowing remote access to various systems. As for why you should care, if you didn’t know what SSH was, then you probably shouldn’t care since you aren’t the target audience. It’s fringe knowledge for me too.