If this article is any indication of the current state of the industry then the devops movement has busted. We're back to dev and ops.

The problem is YAML, but it's too late to stop that momentum now.

Is anyone using Cue or dhall in a real production scenario? I'd be curious to hear reviews of those, as they look promising.

I share your, and all Norwegians', distaste for YAML. One saving grace I have found is that YAML is a superset of JSON. JSON isn't great, but it's certainly better than YAML.

I toyed around with dhall to generate k8s deployments. It was fantastic, but then I realized there was no chance that others would be willing to learn FP. Cue is pretty great, but it still has many sharp edges in the tooling.

Ultimately, though, all configuration files tend toward turing completeness. Just use an actual programming language. If you need to dynamically parameterize it then you can import a JSON file or whatever.

> JSON isn't great, but it's certainly better than YAML.

This is the first time I've ever seen someone say this. Why do you think it's better?

Not OP but https://noyaml.com/ summarizes most of it.

TL;DR: It has way too many opinionated things builtin, too many ways to do the same thing.

As a additional note, unlike JSON that has the awesome tooling available (`jq` is reasonably widespread, you can count on python/perl/node being almost everywhere), it has nothing that (because of the multiple opinionated ways) will reliably read your files or not mangle your desired output in some way or another -- except if you limit your YAML to just a embedded JSON.

There actually is a yq [0] which I've used effectively for basic parsing and manipulation tasks on the command line. But I've no idea how well it handles YAML corner cases or how many advanced features it's missing compared to jq.

[0] https://github.com/mikefarah/yq