Do you ever get the feeling that XML configuration is out of control?

I decided to take a break yesterday from my efforts toward a new site to "enjoy" a little science project. The short description is that it's a little Silverlight app that I'd like to run out-of-browser, talking to the server via a WCF service. Before I knew it, I felt like there was XML configuration everywhere.

It could have been worse, because I figured I'd use the Entity Framework. I came to my senses realizing that was overkill, and used LINQ to SQL instead (which, by the way, has it's own config quirks when it comes to connection strings). I've been a big fan of what WCF can do, in particular the ability to create various endpoints in different formats, but my use of it has only been in the context of suggesting it to others who have already built stuff with it. Yeah, so I got to learn all about the vast configuration options there.

There are days like this where I feel that XML has been christened the great configurator, able to solve every problem. There are some risks that go along with this, I think, that include a certain brittleness to build processes and more difficult debugging. I mean, exceptions around these things rarely say, "Hey, your config is wrong, stupid!"

And even going beyond my science project, jump in with an IoC framework and find yourself in even more XML configuration hell. (Insert Ninject plug here... awesome stuff.) It gets to be a little out of control.

I wonder how we got to this point. I wonder if ultimate control via XML is actually more trouble than it's worth. My gut is that for 90% of development work done worldwide, it's totally not necessary. That makes me wonder why I'm chasing it around today.

5 Comments

  • I miss the beautiful simplicity of ini files.

    (I know we can get to them using DLLImport but it's too bad there isn't native support)

  • Oh, God, I wouldn't go that far! :)

  • Yeah, it can be crazy.

    I have not looked yet to see what Microsoft is doing with .NET 4 (being side by side), to see if they have simplified a standard web.config (which by now is growing large in say .NET 3.5 SP1)?

  • Yes, the ASP.NET 3.5sp1 web.config file is terrible. I hope they change that for ASP.NET 4.0. This always bothered me too. Most of this stuff can be stuffed away in the machine.config.

  • WCF is the worst offender that I've seen. I've spent days trying to google how to configure the thing to work or simply to find out why something is not working. It's always some magical config setting...

    im pulling out my hair right now...

Comments have been disabled for this content.