More on the unkillable XML-for-configuration rant
In short, Erich says that XML, plus the right editor, Just Works(tm). Well, yes. But when you are over a slow link, or when you are desperate with a b0rken system, you just don’t have Eclipse at hand to edit a config file. Of course, you could use the half-existing XML support you talk about in vim (I have not tested it, cannot be sure of it), but it is still a PITA if your /usr is not working fine or if your termcap is too dumb to manage. Yes, there are each time less of those situations, but anyway… I won’t start ranting on how YAML is the right tool for every situation where XML is used - It’s clearly not. XML is, after all, a standard. Some configurations can be done by XML, say, if you have any of those Java frameworks (I’ve only suffered^Whated^Wgot despaired^W^Wset up JBoss), but still… Configuration files, at least the important ones, should be editable by using a lightweight, easy and available tool like nvi, pico, or even cat|sed. Oh, and about YAML’s site being valid YAML: Of course, it only looks like it. But cut and paste it - It works for me :) Of course, it is not meant to replace or work over HTML. I would never dream of using YAML as a web-services language or anything of that sort. There are better tools for that. But please, leave config files hand-editable. With common, light and hard-to-break editors.
Comments
Aigars Mahinovs 2007-01-15 18:40:57
Re: More on the unkillable XML-for-configuration rant
Hey Gunnar,
how about if there is a library that apps use to access their config files and that library can understand multiple formats (with automatic detection of format on opening) + tools to convert from (more portable and verifyable) XML to some simplet and more human-editable or even sed-editable format?
The idea being that you log in into the server and (if the config file is in XML) you run a single command to convert it to a simpler format and just edit it in place. Optionally, converting back into XML.
Whould such a solution satisfy you? I am thinking of making a workshop about this in the next Debconf.