CSV? Are you Serious?
Forget about XML vs. JSON - here is the real contender:
So, with this talk of services over HTTP, you might be rightly concerned that the next step is to discuss Dabble’s XML web service protocol. You’ll be relieved to find out that Dabble plugins don’t speak XML. They speak CSV (Comma-Separated Values). Dabble passes UTF-8–encoded plain-text, comma-separated data in and expects UTF-8–encoded plain-text, comma-separated data out.
So long, XML, hello again, CSV :-)
(I’m not really serious — for DabbleDB’s non-nested, record-oriented structures, CSV may well be a much better choice. I don’t expect this to become a trend of any kind, but it’s nice to see that the use of XML has not become a reflex for everyone. (And CSV sucks.))
[via James Robertson]
Why does CSV suck?
(1) There’s no escaping syntax (for commas/quotes in values) that everyone agrees on.
(2) Because of (1), people often use escaping syntaxes that aren’t even adequate to the task.
(3) When you get a CSV file you can’t tell what character encoding it uses (and whoever gave it to you probably doesn’t know what that means).
XML is a killer app in many places simply because it doesn’t have these weaknesses.
+1! I’m sure the Dabble folks know what they’re doing, but they’re hardly the typical CSV producer.