We don't spend enough time praising the genius inventors who make our lives so much better, especially while they're still alive. How I regret not sending praise to Norton Buffalo, inventor of the Buffalo Wing, before his recent passing.
So today I praise Douglas Crockford, who gave us JSON(.org) as a way to share data between computer systems.
Back in the day, there used to be a lot of pressure to use a complex XML format any time you wanted to send data between one computer and another. More time was spent writing and debugging XML parsers than really getting work done, and when person A's program didn't work with person B, more hours would be wasted arguing over who got the XML wrong.
Meanwhile, anytime a real programmer would informally talk to another, they'd scratch out on a whiteboard some pseudo-code that looked like simple programming notation. If there were no suits around they might even program their systems to work directly with the pseudo-cody-looking text (bypassing XML altogether because no authority figure was watching).
But whenever a manager or committee got involved they would insist that XML be used because it was "the standard" and how professionals did it. You could argue until you were IBM-Blue in the face about the easier approach, but you'd know that the argument would get nowhere, and you'd just cave in and do the XML.
Until one day Douglas Crockford had his stroke of genius. He created the name JSON for this sourcy-looking data notation, and, most importantly, he created the website JSON.ORG.
From that point on, when someone would insist that you work in XML, you could say "I prefer JSON, it's an accepted standard" and you could point them to the JSON.ORG website saying "See, it's got a .org website and everything."
End of problem.
And that's what a genius does: Ends problems. Thanks DC.
P.S. I don't really know if any of the above is true, and don't feel like taking the time to do any fact-checking, but it's one of my favorite stories so I'm sticking to it.
He is a genius, you're right.
ReplyDelete