Ten Predictions for XML in 2007
An anonymous reader writes "2007 is shaping up to be the most exciting year since the community drove off the XML highway into the Web services swamp half a decade ago. XQuery, Atom, Atom Publishing Protocol (APP), XProc, and GRRDL are all promising new power. Some slightly older technologies like XForms and XSLT are having new life breathed into them. 2007 will be a very good year to work with XML."
If you're getting RSI from XML, you're not doing it right. Use a tool! Anyway, the real reason to use JSON instead of XML is cross-site security restrictions. You can't make an XmlHTTPRequest call from one domain to another, but you can add a <script /> tag with a src pointing somewhere else.
..that XML will stop being a buzzword, and we will no longer see products with "XML support" as a feature point (supporting formats that USE XML is fine, but "XML" itself is a container format, it can describe literally ANYTHING..)
Speak before you think
If you're getting RSI from XML, you're not doing it right. Use a tool!
So, you're saying that in order to use a markup language whose primary design goal was to be easy for human beings to work with, I should invest in buying and learning at tool? Never mind that I have never even seen a decent XML editor.
Sorry, but XML is just bad design: it's badly designed for machines, and it's badly designed for humans. Using tools to deal with it may be a workaround, but it's certainly not "doing it right".
In fact, the best compromise is probably simply not to write code in XML, but pick one of the better alternative formats and convert to XML after editing.
May I suggest JEdit? It supports XML out-of-the-box and is open source and runs anywhere and is a great* editor by any measure. If after having your XML closing tags auto-completed, indented, and validated effortlessly in this editor leaves XML still too much work for you, then I hope you never use anything beyond Vi, APL, and LaTex.**
*I said "great" not "perfect". Lets keep this civilised.
**Nothing wrong with any of these: just examples of the tersest things of which I could think.
Your CPU is not doing anything else, at least do something.
SOAP is typed. XML-RPC isn't. So SOAP is easier to work with in conjunction with stub generators in statically typed languages. Dynamically typed languages are better off with XML-RPC.
A better comparison is - Is SOAP any better than CORBA for what SOAP is being used for. It was initially sold with the "port 80" and "easier to debug than a binary protocol" arguments. Those don't hold much water any longer. Further, SOAP added a ton of extensions obliterating any ease of use promises, a trap that CORBA itself fell into. Heck, even the basic WSDL spec turned out to be difficult enough that stub generators aren't available for most languages. Python recently got one last week, but dynamic languages mostly went without.
If all that one does is typed stateless procedural calls, CORBA is hardly anymore complex than SOAP and heck of a lot more efficient than SOAP.
In my experience those who hate it the most are those who understand it the least.
That's why I gave up using bitmap images. Looking at the picture, dividing it into a grid of units (I call them pixels, short for picture elements - cute, eh?), estimating the RGB values, converting them to hex and keying them in just got to be too much effort.
Only three things are certain; death, taxes, and apocryphal quotations - Ben Franklin.
I'd kill XML in favour of either:
- A standard binary, binary-safe serialization format that allows you to serialize simple objects: int, float, (unicode) string, list of any of these types and dictionary of int, float or string any of these types.
- A real, binary-safe, flexible grammar processing tool that allows you to define grammars in EBNF and process them (preferrably, constructing and deconstructing the parse tree), being standard, clean, and multi-language. This will allow you to work with XML as well as other existing exchange formats (INI, CSV, etc.) and absolutely anything else.
I was about to say 13256278887989457651018865901401704640, but it appears this number is private property.