Why, Exactly, Dave Winer’s JSON Disdain is Ridiculous

As you may have read, Dave Winer has decided to pee all over JSON. JSON is a data serialization format - a way of specifying how the output of deconstructing data structures (arrays (lists), hashtables (lists where one value is associated with another by definition - akin in form to real-life dictionaries) and ordinary values, like numbers and text strings) should look.

Why Dave Winer takes issue with this is hard to imagine. JSON is not the first data serialization format, nor particularly suboptimal for any one task, nor the most obtuse, nor underspecified, nor completely unnecessary, nor verbose, nor patent encumbered, nor owned by anyone in particular. Dave Winer seems to only have two articulate worries with this:

  • JSON is not based on the data serialization format specified in SOAP, a protocol for web services.

  • JSON is not an XML format.

Dave Winer goes on to not list the apparently self-evident advantages of SOAP’s data serialization format over JSON, nor note how JSON’s parsing rules borrow heavily from JavaScript, codified as ECMAScript by, yes, that’s right, ECMA, a standards organization.

For his closing act, Dave Winer also declares that he hates how he’ll now have to write his own parser, ignoring in one fell swoop both a) the forest of existing JSON parsers out there for a number of sundry languages, b) the added difficulty and complexity of writing an XML parser from scratch versus writing a JSON parser from scratch and c) the added semantics that is usually read-into anything inside any form of XML format whereas JSON data may just be a bunch of free-form data. Dave Winer tops off by explicitly enunciating his desire to lynch everyone using JSON.

RSS 2.0 in JSON

RSS 2.0 in JSON by Adam Kalsey. Kalsey assigns RSS 3.0 and joins a line of other RSS 3.0s, some humorous, some not.

It is important at this stage to note that there have already been far more variations of RSS 2.0 than of RSS 3.0, since RSS 2.0 is vaguely defined and inconsistencies or cases of underspecification are solved by checking with the whim of Winer. This whim, as is typical of one, changes periodically. Oh, and you’re not allowed to codify these whims and publish them as a newer spec, or version them and specify that version in your feed. That would be easy and help tools parsing RSS and we can’t have that.

The Annual Winer Number Mass Decrementation Festival

Dave Winer calls for lynching of everyone who uses JSON. Includes the following delightful observations:

  • JSON isn’t XML. (Verbatim from the article, where it is written in italics.)
  • Because JSON is not the object serialization used in any standard Dave Winer has authored, JSON sucks.
  • People are not allowed to make clean breaks from earlier standards anymore, since everything since Dave Winer started is obviously perfect, and solves every problem from every angle.
  • Not only is JSON not XML, JSON is ‘reinventing’ XML. (Cursory facts: XML 1.0 was published in February 1998. JavaScript, from which JSON’s syntax was cribbed wholeheartedly, appeared in December 1995.)
  • Whoever invented JSON should be strung up in a tree. (”Now,” apparently.)

Winer Number Decrementation Power, Activate!

PS: I am fully aware that for the actual Winer Number to occur, personal attacks must be made. There’s something to be said, however, for the strength of the threat: that all sinners must be lynched. Batteries sold separately.

NeXT - X

Ten years ago today, Apple announced that they are buying NeXT. (Original press release.)

Celebrate.

« Newer posts · Older posts »