If Jerry Seinfeld were a programmer he might ask "What's the deal with configuration files having to be in XML format?". I just find them to be incredibly hard to read and decipher. The problem with XML is that it's just so verbose.
Java has property files which may or may not be berrer. Ruby on Rails using YAML files. These seem fairly reasonable. One thing an XML file does however is let you show relationships and nesting of data. So does the complexity of .NET require that the configuration files are also complex? The configuration file seems to be a collection of serialized objects spat out at random into a file. Is it a result of the everything must be XML crusades at the turn of the century? Could the files be simplified? Could we have seperate config files for seperate concerns. Example, I go into the config file to change a setting and I typo. My whole site (or server) goes down. Is this expected behavior?
So does the nature of .NET itself demand XML configuration or is this laziness on the programmers part to simply allow them to deserialize the configuration settings in the most convenient way (for them) possible?