On 1/18/2010 5:10 AM, Dale wrote:
+1 I do OK with plain text but no clue on the new xml stuff. Why not just keep it simple? Is xml REALLY needed?
XML allows you to generate complex, structured, hierarchical data that can be read, changed, and stored by well-tested third party libraries that don't need to know anything about the contents or meaning of your configuration data beforehand. This means I, as a developer, don't need to write any code to read and parse configurations, validate the syntax or structure (only the content), or persist it back out.
In simpler terms: less time spent on the configuration parser, more time spent being productive.
If there was a less-verbose alternative that was as easy to implement, with known stable parsing libraries, that had the same expressiveness as XML, I'd probably use that instead. But when you're talking about data that goes beyond a simple list of name/value pairs, anything attempt to stream it to a flat-file format is going to result in something that is either 1) redundant, or 2) hard to read. I'd go with 2 over 1 any day.
In my opinion, if the worst thing you can come up with to complain about is "they used XML for their configuration files", then I'd say that software is in pretty good shape. On the other hand, even I can see that HAL has plenty of problems (besides its XML configuration). The fact that it completely fails to work for you being a good example :)
--Mike