Live data from Hacker News

In Defense of YAML

blog.atomist.com

171–173 of 173 posts

Re: In Defense of YAML

#171

Earlier quoted context omitted.

Have you looked at the work being done by stripe on skycfg? https://github.com/stripe/skycfg has the advantage of preserving protobuf message types as they're passed, so you get type checking.

I'm aware of it, but I haven't looked much at it. I'm a little confused about its scope--is it for building out protobuf specs and Kubernetes config files? Or does it somehow use protobuf specs to build out Kubernetes config files?

It's the latter. You import protobuf specs (compiled into golang). You build a runtime that imports the specs and they're available in the python interpreter.

Re: In Defense of YAML

#172
post #155

Earlier quoted context omitted.

True, but once you get it right once, it's really easy to generate the correct yaml over and over again because the input is not unknown random data.

The problem is that in practice you are modifying these somewhat frequently and if you aren't careful one of those modification will result in a production outage.

For the things that change frequently, guardrails can be built (extra testing, extra safety). But over time most configuration ends up stable, with the changes not being wild-wested, in my experience.

Re: In Defense of YAML

#173

Earlier quoted context omitted.

INI is the best config format imo since you can't do anything more complicated than assigning a value to a key in a namespace. The Dist::Zilla config file was a real eye-opener at what you can achieve with this kind of siimplicity.

You need to specify which INI config file format, unfortunately. There are many different ways to handle leading & trailing whitespace, quoting, multiline strings etc. and I think all of them have been implemented at some point.

> the Dist::Zilla config file
Post reply on HN