I'm still using XML because it works, because I'm used to the library (TinyXML) that I'm using it with, because I have existing code that makes use of it, and because it doesn't make any real difference.
XML is ugly? Sure, but who told you that you're entitled to look at the files? People always seem to imply that every file must be inspected in a hex or text editor, everything must be human readable, and everything that remotely looks like one might be able to edit by hand must be edited by hand. Why?
XML is overly complicated, redundant, bloated, etc...? Read again the last paragraph. You need not look at it if you don't like it. You need not edit it, The Program will read/write its data just fine without you interfering.
XML takes way too much storage space? Wait, did you hear that? That's the world's saddest song playing on the world's smallest violin. Seriously, you have an office package installed that takes half a gigabyte of disk space only for a text editor and a spreadsheet, you have 2 TiB of MP3s on your harddisk, and you worry whether a puny XML file is 4 kiB or 8 kiB? Tell you what, there is WinZIP if you need to worry about 4KiB. Right, the XML files in your content pipeline aren't precisely 4 kiB, they're more like 40 MiB. Good grief, I'm shocked.
Sure, there are other formats that are more comprehensible and more space-efficient. And sure, I'd rather use msgpack or protocol buffers when data has to go over a wire. If I was starting from zero, I'd probably choose something different for on-disk storage, too.
But as it is, for most things, XML works just good enough by all means. It isn't pretty, but who cares.
Edited by samoth, 02 August 2013 - 05:10 AM.