CoRecursive: Coding Stories · Adam Gordon Bell - Software Developer

Story: JSON vs XML

·50 min·4 clips
Sun and Netscape lied about JavaScript being a subset of Java to salvage their alliance and confuse the world.
This episode of CoRecursive features host Adam Gordon-Bell and guest Douglas Crockford, a pivotal figure in web development known for creating JSON. Crockford recounts his journey from dismissing JavaScript to becoming its advocate and his battle against the complexity of XML. The narrative begins with Crockford's initial contempt for JavaScript in 1995, when it was misleadingly renamed from LiveScript to capitalize on Java's popularity. He was working at a startup called Electric Communities, building an early metaverse-like platform that ran on the Java Virtual Machine. After the dot-com bust, Crockford pivoted to using JavaScript for a Turner Broadcasting children's card game project, despite his team of Java developers' skepticism. He discovered JavaScript's "good parts," particularly first-class functions and lexical closures, which led him to write the influential article "JavaScript: The World's Most Misunderstood Programming Language." While at the failed State Software startup, he and Chip Morningstar developed a simple data interchange format to avoid XML, which they later named JavaScript Object Notation (JSON). Crockford registered JSON.org and published its one-page specification, but the format was initially rejected by an industry enamored with XML and standards like SOAP. Influential tech voices like Dave Winer of scripting.com vehemently opposed JSON, with Winer even making hostile remarks about its creator. The tide turned with the rise of Ajax and applications like Gmail, where pragmatic developers adopted JSON for its simplicity over XML. Crockford took a role at Yahoo to evangelize proper JavaScript practices and JSON, teaching teams globally and leveraging Yahoo's influence to boost adoption. He also created JSLint, a linting tool that enforced coding styles like mandatory semicolons to prevent hidden bugs, which faced resistance from developers who saw it as restrictive. An amusing incident involved the website "Online Booty Call" hotlinking to Crockford's JSON.js file, costing him bandwidth until he added an alert to the script to stop them. In a later attempt to deter a Russian site from hotlinking, he redirected their requests to FBI.gov, accidentally triggering a denial-of-service attack that temporarily took down his servers. The episode highlights Crockford's iconoclastic and persistent style, arguing that simplicity often triumphs over imposed complexity. The tone is conversational and reflective, blending personal anecdote with software history. Listeners interested in web development history, language design, or stories of challenging industry norms will find this episode compelling. Those seeking highly technical deep dives or current coding tutorials might find the historical narrative less immediately applicable.

As heard by us

XML is treated as the heavy default, then sidestepped with a JavaScript data format and a browser-side parser.

Code Recursive: Coding Stories tracks Adam Gordon-Bell from a 2004 undergrad Enterprise Java Beans project to State Software, where a JavaScript data format helped avoid building an XML parser.

Read the full review in PlayNext →

Why you'd press play

You want the story behind a small JavaScript shortcut that let the web do the parsing.

Read the full recommendation in PlayNext →
Listen to the show on