There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

programmer_humor

This magazine is from a federated server and may be incomplete. Browse more on the original instance.

dan , in A lot of YAML
@dan@upvote.au avatar

Friendly reminder if you prefer dealing with JSON - YAML is a superset of JSON, so any valid JSON is also valid YAML.

magic_lobster_party ,

That’s more of a weakness of yaml. There’s so many ways to specify the exact same thing. Not exactly what you need for configuration files maintained by multiple people. It easily becomes an big incoherent mess.

In JSON the default way is the only way. Nice and coherent.

dan ,
@dan@upvote.au avatar

I agree that YAML is painful and it really seems like it’s had a lot of feature creep.

JSON is painful in its own way too, though. There’s a lot of syntax noise from things like braces, quotation marks, etc, so it’s easy to make a mistake. Regular JSON doesn’t allow trailing commas.

YAML tried to solve some of that, and did succeed in some ways, but introduced its own issues.

TOML seems great to me, but maybe it has its own issues. TOML actually has defined data formats for things like dates (both offset and local) and times, which is missing from both JSON and YAML so every app ends up doing it its own way.

XTornado ,

One big thing of JSON I hate is that sometimes is used for config files or similar and it doesn’t supports comments which sucks.

rambaroo ,

JSONC does support comments but it wouldn’t be interoperable with anything expecting pure JSON. But still useful for local configs.

theterrasque ,

Found out the hard way that no, it’s not… there are a few valid json files that most yaml parsers choke on

Kid_Thunder , in A box of DevOps

I didn't know that ansible-galaxy had a comic

corsicanguppy ,

In typical ansible fashion, expect it in 20 years.

redcalcium , in A box of DevOps

Could’ve been worse. Could be unprettified json.

magic_lobster_party ,

Json is incredibly easy to prettify.

synae ,
@synae@lemmy.sdf.org avatar

I do it by converting to yaml ;)

Cratermaker ,

I wrote a json prettifier a couple months ago with just a couple lines of code. I thought it would take a while but ended up taking like 10 minutes.

kbotc ,

Import json Import pprint?

ElectricCattleman ,

js’s JSON.stringify(obj, null, 2);

30p87 ,

<span style="color:#323232;">| jq
</span>
30p87 ,

<span style="color:#323232;">| jq
</span>
magic_lobster_party ,

I use jq pretty much every day

MsPenguinette , (edited ) in A box of DevOps

I tell people I’m a software engineer but in reality I’m a config file engineer

ensignrick ,
@ensignrick@startrek.website avatar

Lol. Legitimately.

andrew ,
@andrew@lemmy.stuart.fun avatar

Eh. Software is just data too. It’s about solving problems with systems using those systems and other systems and that’s software engineering. It’s recursive and wherever you are in the stack you’re standing on the shoulders of giants, and you’re still doing engineering. 💪

trash80 , (edited )

I am working on nand2tetris right now and learning about all the layers of abstraction is just terrific.

chameleon ,
@chameleon@kbin.social avatar

Senior YAML programmer

Jaccident ,

Careers Fair; 2024

Teen: “Excuse me; how do I become a Tech Lead like you someday” Lead: “By simple luck of the draw I am the best at googling other people’s solutions to my team’s YAML config issues.”

stepanzak , in Best VS Code theme

Fakedonalds theme is better IMO

Dasnap , in A box of DevOps
@Dasnap@lemmy.world avatar

Me carrying a comically oversized box of compose files.

whodatdair , in A box of DevOps

Ansible go brrrr

corsicanguppy ,

… slowly.

dauerstaender ,

And yet its faster, easier and more reliable in setting up and maintaining complex cluster software.

tja , in A lot of YAML
@tja@sh.itjust.works avatar
F04118F , in A lot of YAML

Home Assistant back in 2019…

TwistedTurtle ,

It’s been satisfying watching my configuration.yaml file shrink over the years as more and more things get handled by the UI.

topinambour_rex , in A lot of YAML
@topinambour_rex@lemmy.world avatar

Is Yaml bad ?

mkhopper ,
@mkhopper@lemmy.world avatar

It isn’t “bad”, as it does have a purpose. It’s just fucking annoying to work with.

docs.platform.sh/learn/…/what-is-yaml.html

Michal ,

How’s it annoying? It’s easier to edit by hand than json as it allows for comments and there’s no trailing comma errors. I prefer it any day over json.

zalgotext ,

It’s just another syntax to learn. For someone who already has their head crammed full of a bunch of other syntaxes over the years, I didn’t want to learn a new one. YAML has kind of forced it’s way in anyways though.

TheGiantKorean ,
@TheGiantKorean@lemmy.world avatar

The fact that it allows comments is really, really handy. I used to be a JSON advocate until I realized this one useful piece of info.

bellsDoSing ,

Yeah, such a simple, but still killer feature. Really sad that JSON doesn’t support them.

TheGiantKorean ,
@TheGiantKorean@lemmy.world avatar

I wonder how you’d even implement that. Like maybe {! At the beginning.

GTG3000 ,

Most comment-aware JSON parsers I’ve seen just use standard // to delineate comment lines.

TheGiantKorean ,
@TheGiantKorean@lemmy.world avatar

They make sense.

magic_lobster_party ,

There’s a lot of foot guns in YAML. The specification is way more complicated with hidden obscurities. JSON specification is just 5 diagrams. YAML speciation on the other hand is an 86 page pdf, so there’s more room for nasty surprises (which is not a thing you want in configuration files).

I’ve also seen many people struggle more than they need to with the yaml indentation.

I think the only upside to yaml is that it allows for comments, but other than that JSON all the way.

https://ruudvanasseldonk.com/2023/01/11/the-yaml-document-from-hell

tuna_casserole ,

not at all. it’s used for configuration and stuff. having a lot of it can be a real bummer depending on the context. like a puppet config or perhaps a super weird docker compose setup. I’ve never heard anyone complain about the markup though. it’s like blaming json for a crap api or something or idk blaming the coffee cup for burnt coffee 🤷

MotoAsh ,

It’s just another structured data format. It’s used for a lot more than config. It’s also how you define commands and etc for Ansible. Like how a Maven project is defined in XML or a NodeJS package has its JSON.

Sure they’re still “just” data formats on their own, but what they’re used for is genuinely just as important as what it is. I really doubt XML would’ve held on like it has without HTML being the web.

sndrtj ,

For some little config it’s fine, but it’s horrible when used when you have thousands upon thousands of lines of it. Lots of DevOps tools tend to use it like a fully-blown turing-complete programming language, and each has a different DSL of doing variables, loops etc. And that becomes an abomination.

EmergMemeHologram ,

Not always, but the second you use anchor/references you have sold your soul in a Faustian bargain of convenience.

On the alignment chart of data/markup formats:

  • lawful good: JSON
  • lawful neutral: TOML
  • lawful evil: XML
  • neutral good: reStructuredText
  • true neutral: HTML
  • neutral evil: LaTeX
  • chaotic good: YAML
  • chaotic neutral: Markdown
  • chaotic evil: xlsx/csv
stebo02 ,
@stebo02@sopuli.xyz avatar

good to know I’m on both the lawful good and the chaotic evil side

Stumblinbear ,
@Stumblinbear@pawb.social avatar

TOML is my bestie

uid0gid0 ,

I honestly think that JSON and YAML should be swapped due to YAML’s strict indentation rules whereas you can just pack an entire JSON object on one line.

peopleproblems ,

Oh this is a good point - the syntax error on line one has ruined several productive days.

Of course the tool would happily prettify it for me, but it has to be valid json. Which I think would make it more enjoyable if it said in that message “Good luck, we’re counting on you.”

magic_lobster_party ,

I think yaml’s need for indentation alone makes it chaotic evil. I’ve seen so many people struggle with the indentation than they really need to it’s not fun. Especially problematic with large configuration files.

JSON is easy to unpack with tools like jq or whatever.

EmergMemeHologram ,

There are 6 different combinations of “interpret multiline whitespace” character patterns. There are three types of single-line strings, and if you use “Yes” or “No” the data gets type cast.

Yaml is chaotic.

uid0gid0 ,

Just because there are a lot of rules doesn’t make something chaotic in this system. The lawful-chaotic axis is a spectrum of how much of a stickler for the rules you are. YAML’s “one whitespace out of place and your whole config is fucked” attitude puts it squarely into lawful territory. JSON by contrast gives no shits about your file structure as long as your curly braces match.

Socsa ,

Also JSON has no comments. Which is great for me because I hate documenting my work, but it’s still annoying.

EmergMemeHologram ,

Just create an attribute for your comments!

sloppy_diffuser ,

I just learned yesterday you can do this, lol. You can use “//”: ‘’ once at the root level of a package.json file.

Had to put an override to block a dependency of a dependency from installing (@types/* stubs when the package now has native type defs that conflicted with the no longer maintained stubs).

I put in a comment as to why its there.

morrowind ,
@morrowind@lemmy.ml avatar

Nah this chart needs fixing. Raw html is not neutral. And how is html neutral but xml evil. And who is writing restructured text outside of python?

MotoAsh ,

Also where’s regex? Though that’s so troublesome because it’s a process encoded in a string, not really a structure with debatably obnoxious syntax… hmm

lud ,

Because regex isn’t a language used way to store or view data. It’s just a quick way to find, and potentially replace text.

kuneho ,
@kuneho@lemmy.world avatar

I went straight from chaotic evil to lawful good.

MagicShel ,

There are plugins that go back and forth between JSON and YAML so as you might expect it’s similar. Unlike JSON, spacing has semantic meaning, which can be a little annoying, especially when cutting and pasting. It’s nice in that configs aren’t cluttered up with open and close braces. It could be annoying AF if you’re a tabs instead of spaces person but idk because I’m a spaces person.

I like YAML for config over .config files but it’s not a big deal either way. It just encourages better organization of settings because the hierarchical structure demands it while .config let’s you just drop a setting anywhere in the file. But it’s valid to have the opposite preference for the exact same reasons.

marcos ,

Yes, a bit. But that’s not the problem.

The problem is that the current fashion of devops is done through piles and piles of badly defined YAML. If it used any other configuration language, it would be just as bad.

joyjoy ,

I’ll answer your question with a question. Why does YAML support sexagesimal? (that’s base 60)


<span style="color:#323232;">ports:
</span><span style="color:#323232;">- 22:22
</span>

Becomes


<span style="color:#323232;">{
</span><span style="color:#323232;">  "ports": [1342]
</span><span style="color:#323232;">}
</span>
learningduck ,

I learned the hard way that no is false in yaml. Took us a while to realize why our app failed to start in Norway. Too many ways to do something.

topinambour_rex ,
@topinambour_rex@lemmy.world avatar

Even a ‘no’ is a ‘false’ ?

learningduck ,

Yup. Have to ensure that you use “no” if you don’t want yaml to equate it to false.

JackGreenEarth , in A lot of YAML

What’s the original?

JimVanDeventer ,
darkdemize ,

Interesting. I’ve apparently never seen the original. The best version I’ve seen, which I thought was the original, was porn. It just makes the guy’s face in panel 4 that much better.

Lophostemon ,

For a start, there’s no such thing as “YAML” so it’s not funny. If the ‘punchline’ is a random gibberish word that no one understands then it’s not funny. That’s generally the rule.

LaSaucisseMasquee ,

Maybe calm your tits JSON

Lophostemon ,

My name is not Jason, and you even misspelled the name.

tetris11 ,
@tetris11@lemmy.ml avatar

God, when will these dyslexic CS grads learn

EmergMemeHologram ,

Sorry, you must be TOML

0ops ,

I can’t tell if you’re being serious…

CanadaPlus ,

If not, bravo for trolling us this well. Look at those downvotes, usually you have to be racist to get that much hate.

Lophostemon ,

There’s more than one way to skin a cat, as Jesus said.

FlaccidJim ,

So I just looked it up, YAML is a programming language, that is “often used for writing configuration files.” Then I checked the group this was posted on, makes a lot more since now.

mayoi ,

Ah yes, lists of lists is my favorite programming language.

jeena OP ,
@jeena@jemmy.jeena.net avatar

Sounds like Lisp.

Lophostemon ,

Nope. I’ve never heard of it and I’m not a programmer so therefore it’s triple-not-funny. I’m doubling down on this hill because… just because.

Mesa ,
@Mesa@programming.dev avatar

You’re on ProgrammerHumor… Why do you expect the jokes to cater to you if you’re not a programmer?

Lophostemon ,

It came up in my ALL feed. I can’t help but react if you all shove your sick lifestyle choices in my face.

Mesa ,
@Mesa@programming.dev avatar

Fair

Neil ,
@Neil@lemmy.ml avatar

deleted_by_author

  • Loading...
  • MagicShel ,

    Solipsism at it’s best… although… wait… Did solipsism exist before I heard of it?

    Lophostemon ,

    Don’t bring any of that woke nonsense around here.

    MagicShel ,

    Woke? Never heard of it.

    Lophostemon ,

    Goddam Solipsistic bastards. You know that’s just another kind of Communism!!!

    jeena OP ,
    @jeena@jemmy.jeena.net avatar

    The UX for knowing in which community something has been posted in is not very good here, I feel a lot of people have problems getting the context if you don’t spell it out in the title.

    TheGiantKorean ,
    @TheGiantKorean@lemmy.world avatar

    YAML is also a recursive acronym. It stands for YAML Ain’t Markup Language.

    baggins ,

    Pretty sure it’s Yet Another Markup Language

    TheGiantKorean ,
    @TheGiantKorean@lemmy.world avatar

    Nope.

    Edit: but TBF that would have made more sense

    yaml.org

    AlphaAutist ,

    I’ve been lied to

    shotgun_crab ,

    I’ve been fooled my whole life

    bufordt ,
    @bufordt@sh.itjust.works avatar

    No, they changed it from yet another to yaml ain’t.

    EmergMemeHologram ,

    Wait… I thought it was “yet another markup language”

    Is this another fucking Bearenstein/Mandala reality split?

    TheGiantKorean ,
    @TheGiantKorean@lemmy.world avatar

    I just had to go look that up. Yet Another just seems to make more sense, which is why I think a lot of people think that’s what it stands for.

    bufordt ,
    @bufordt@sh.itjust.works avatar

    And because that was the original name. They retconned YAML Ain’t.

    TheGiantKorean ,
    @TheGiantKorean@lemmy.world avatar

    Yep, just learned that!

    andrew ,
    @andrew@lemmy.stuart.fun avatar
    TheGiantKorean ,
    @TheGiantKorean@lemmy.world avatar

    That’s interesting!

    lars ,

    Whoa — I can’t believe YAML’s 22 years old

    Pelicanen ,

    And you can use it on GNU Not Unix!

    bleistift2 ,

    It’s not a programming language.

    vox ,
    @vox@sopuli.xyz avatar

    i thought the original onewas about flashlights

    morbidcactus ,

    The Future: More of the Present by Jake Likes Onions

    jakelikesonions.com/…/the-future-more-of-the-pres…

    trash80 ,
    quaddo ,

    Dude needs to get with the program.

    Use a single plate, cup, knife, fork, spoon, lot, pan. Never unbox the rest.

    Either that, or just eat over the sink.

    _dev_null ,
    @_dev_null@lemmy.zxcvn.xyz avatar

    Look at Mr. Money Bags over here with a sink!

    smileyhead , in They tried
    1. This was not about cookies, but processing of personal data and new definitions of such data. Cookies was just an example.
    2. By those laws, forcing user to consent with denying access to the service is declared illegal.
    ZebraGoose , in Hacker pranks

    Haha great site 😄 cant wait to use it on someone 😄😄

    yum13241 , in Hacker pranks

    pranx.com (formerly GeekPrank) has more stuff, but it’s nice to see an alternative.

    Vlaxtocia , in Hacker pranks

    I deserve everything I get if I click on that

  • All
  • Subscribed
  • Moderated
  • Favorites
  • [email protected]
  • random
  • lifeLocal
  • goranko
  • All magazines