Remember when we switched from mainframes to client-server, only to realize we need 3-tier setups, quickly replaced with Web apps? Every once in a while comes a new technology that asks us to suspend disbelief, let go of the past and embrace the new black.
Today we’re going to help you decide: are you ready to take on the Next Big Transition?
Part 1: How fed up with XML are you?
I use XML because … (minOccurs=1)
[ ] I read about it in CIO magazine/attended a Gartner conference.
[ ] My boss told me to.
[ ] I work as a consultant.
[ ] I don’t, but it looks good on my resume.
[ ] What else would I use?
How well do you know XML? (maxOccurs=1)
[ ] I wrote some HTML, which I heard is XML with a FONT tag.
[ ] I just created my first Web Service. I heard SOAP uses XML, so I guess I know XML now.
[ ] Well enough to avoid using SOAP encoding, and go easy on the namespaces.
[ ] I use RDF to capture semantic relations from RSS feeds and present them visually by transforming into SVG using XSLT. Also, I know what doctype-public stands for.
[ ] I’m Tim Bray.
XML’s greatests value is … (minOccurs=1)
[ ] It was featured in CIO magazine.
[ ] It was invented by the W3C, as an extension of the Web (also a W3C invention).
[ ] S-expressions without RPN.
[ ] Tags. Attributes. Processing instructions. Namespaces. Doctypes. What’s not to like?
[ ] It’s supported in VisualStudio 2007.
To what extent do you use XML? (maxOccurs=1)
[ ] Any time I need to store data. My photo album is all SVG.
[ ] Any time I need to transport data. I even invented my own XML-based ping protocol.
[ ] For interoperability between Windows XP and Windows Vista.
[ ] On some days I may write a line or two of code, but everything else …
[ ] I don’t personally, but my team …
Part 2: Do you grok the greatness that is JSON?
Now let’s move on to some questions about JSON that will prepare you for the transition.
Have you heard of JSON before? (item: true)
[ ] No.
[ ] Yes.
[ ] I met him at some geek conference, he was wearing a funny hat.
[ ] I invented it.
[ ] I took credit for that.
What platforms support JSON? ([item: true, ...])
[ ] JavaScript.
[ ] DHTML.
[ ] AJAX.
[ ] Firefox.
[ ] C, Java, Lisp, Perl, PHP, Ruby, you name it.
The problem with JSON is … (item: true)
[ ] I never used it, so I wouldn’t know.
[ ] That’s why I never use it.
[ ] No angle brackets.
[ ] Too simple.
[ ] Not in the J2EE BluePrints Solutions Catalog.
I would consider using JSON only if … ([item: true, ...])
[ ] It was called something else.
[ ] I was really using YAML.
[ ] All my XSLT 2.0 stylesheets would work.
[ ] I could speak about it at a conference, fully comped.
[ ] Boss is leaving soon, ask me again later.
Where would you use JSON? ([item: true, ...])
[ ] Only with JavaScript. Duh.
[ ] Not even with JavaScript. Duh.
[ ] Let me check our product brochure and get back to you.
[ ] Right now I’m integrating our HR system with Google Maps.
[ ] Everywhere. It’s the new XML.
Part 3: Test yourself.
What does this piece of code do?
{ json: "rocks",
xml: "suck" }
Hint:
ruby -e "puts %q{.ggiD fo noitatnemelpmi thgiewthgil a s'tI}.reverse"