See the entire conversation

my build file is executable code. my CI/CD pipeline is executable code. my .YAML files implode whenever a gust of wind moves a space or tab the wrong direction. .. BUGS EVERYWHERE! ... .... now just hear me out mmk? ..... WHAT IF XML WAS THE RIGHT CHOICE ALL ALONG???
57 replies and sub-replies as of Jun 17 2018

Spring cloud steam exposes this issue in all its glory. So many similar configurations, where the only difference is the level of indentation. “Was that supposed to be under spring.cloud.stream.bindings.kafka or under spring.cliud.stream.kafka.binders?” 🤔
Yaml is a pain in the *ss. Now tool support should be better ( yeah jetbrains), but I really prefer just plain old properties.
so why don't we just make the conf file also exexutable? I still like to use @ApacheGroovy based configs for groovy projects. easy to read and write, ide support and so much more...
You can even do that with types in @kotlin
you can use #groovylang strongly typed too! I is just an annotation or compiler setting - depending on your preference...
but it is not that easy for ides to autocomplete/check even with that annotation, right? that is (one) of the reasons Gradle is "migrating" (not exactly migrating, as groovy will still be supported) to kotlin
good question. When I use types, intellij knows about them and reacts accordingly...
I refer you to take a peek at, say the OFX schema - schemas.liquid-technologies.com/ofx/2.1.1 or say the ACCORD schema used in Insurance... I rest my case!
Please don't "Make XML Relevant Again".
Or another Gradle? Or another properties file...
I kept saying.. dont underestimate XML.. it will rise like a phoenix again 🤣🤣
TOML is the answer :)
Don't know about XML. Prefer json myself.
properties or json are good enought. Please, don't do ugly xml again =)
How about we do beautiful xml then? (And how come I don’t hear people bitching about HTML?)
I may be old. But still shocked when developer say "I don't understand Xsd". I have some configuration file in xml where tags are verbs, so that users just have to write sentence with predefine grammar. They are unbeatable in clarity
Should we be interacting directly with meta languages/markup or are we really lacking the right tools to manage them?
In the old days, I was able to read an XML Schema and know how to write the XML file. Today, I have no clue how I am supposed to write a yml file
its ok they are slowly reimplementing all of xml again. just like sql databases are being redone
What SQL (relational) databases are being redone? Be specific.
Look at MongoDB implementing ACID, and Kafka KSQL
Those are not "sql databases" being redone. Those are document databases trying to correct course.
Or moving the various relational database processes like log writers, db writers, etc. into the application layer and calling it event sourcing...
Most schemas that I see left, right and center don't exist at all in the target servers anymore. If they ever existed. Nice idea, but requires maintenance of the schemas "forever"... So nice idea, but in practice, doesn't work.
It was and you know what? XSLT is executable code. Thank me later
I think it’s contextual, we have too many options now... Schema vs no Schema, readability, adaptation etc etc etc... oh my god!
Any language or configuration file format parser adversely affected by spacing is just plain shit.
Agree! I don’t want remember Cobol
Has anyone tried csv yet? 😎😂
I like XML it has a schema and the best tooling.
Problem with schemas is that people forget to update them all the time... when I was younger I worked with quite a lot of fintech apis and never encountered a bank with 100% up to date wsdl file, not one single time... and those were some really serious companies otherwise
And why should it be better if you don't have a schema at all?
Not saying it's better, has it's cons and pros. Doesn't give you a sense of false security, you know you can't trust the tools to automate everything. Of course, with proper schema you can trust the tools, which is even better - but again schema adds the layer of complexity.
From my experience I completely disagree
So start with Spring Boot and deprecate application yaml files.
Prefer json over xml
And have all those extra character data? Although it's the easiest to parse.
There’s still no good yaml or json analogues to xslt or xpath. (and no good way to represent something “<span>foo<em>bar</em>baz</span>”, either)
properties even verbose I’ll ever prefer it over .yml
Yeah. I love(d) how i just can look into the xsd and get quite a good understanding about how everthing belongs together. Although i saw some bad xml too, i would still prefer it. The 'old' spring xml rocked hard.
Isn't this what often happens when we try to replace something existing with something less complex. We forget the complexity is not accidental it is intended. So we strip away some features/complexity and make it look prettier and now we have the next cool thing. 🙂
I was saying this at work this week and I was just as hesitant as you are in this tweet. I feel like the syntax could be improved, but fundamentally it’s powerful technology.
{ "response":"Noooooo", "next_thought": "Heard about JSON?" }
I had the same discussion with my class full of developers last week. We had stray tabs, missing indents, and "smart quotes" sneaking into yaml everywhere. Cloud-init wasn't having it.
This looks fascinating. I have a few other yaks to shave before I take the “different day, different build system” yak for a run. (currently using @droneio ATM). Thanks for the link :-).
I have to caveat that I've only used this in toy projects.
Isn’t every project somebodies toy :-). #budgetPhilosophy
Yeah just some toys are more like juggernauts pieced together over many years from crud found in a scrap yard! 😋
And who come up with this idea comments should not be allowed in JSON?
No idea #johnzon allows is for that reason ;)
... asked no one ever
LISP teaches us that code can be data. So why not use code ?