YOUR FEEDBACK
Jeremy Geelan wrote: As mentioned in the Call for Papers we particularly welcome speaking proposals o...
AJAXWorld RIA Conference
$300 Savings Expire August 29
Register Today and SAVE!


2008 East
DIAMOND SPONSOR:
Data Direct
Frontiers in Data Access: The Coming Wave in Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
Intel
Virtualization – Path to Predictive Enterprise
Green Hills
IT Security in a Hostile World
JBoss / freedom oss
Practical SOA Approach
GOLD SPONSORS:
Software AG
The Art & Science of SOA: How Governance Enables Adoption
PlateSpin
Effective Planning for Virtual Infrastructure Growth
Fujitsu
Automated Business Process Discovery & Virtualization Service
Ceedo
Workspace Virtualization
Click For 2007 West
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SYS-CON.TV
TODAY'S TOP SOA & WEBSERVICES LINKS


XML IDEs vs Classic IDEs: Competition or Synergy
XML IDEs vs Classic IDEs: Competition or Synergy

During the past few months I've seen several discussions on the validity of the term XML developer. Does this breed of developer exist in today's computing industry? Has XML matured to a stage that it warrants job descriptions for developers who specialize in XML programming? Is there an independent category of programming that relates primarily to XML?

For example, recent articles in XML-Journal (Vol. 3, issue 3) have sparked a discussion in the community that orbits around the needs of the XML developer - a new breed of developer whose scope of work encompasses a multitude of different XML-related technologies to a point where the actual programming language these folks work in is no longer relevant. This is much the same process that has occurred in other areas, and gave birth to the database developer some 34 years ago with the standardization of SQL. I'd like to address this issue here, and demonstrate that XML and the XML developer have definitely come of age.

In light of this development, the behavior of such a developer certainly bears investigation, particularly with respect to development environments. This will allow us to shed some light on the recent debate about whether there is a natural synergy between classic IDEs (such as Borland's JBuilder or Microsoft's Visual Studio) and XML IDEs, or whether these IDEs will compete in the same marketplace.

The XML developer typically works with any number of XML-related documents, such as XML files, DTDs, XML Schemas, XSLT stylesheets, XPath expressions, WSDL and WML files, SVG (Scalable Vector Graphics) files, XHTML documents. The list grows almost monthly as various standards organizations produce a never-ending stream of new proposals and recommendations. The work done with these documents depends largely on the specific application, but typically includes such tasks as creating XML use-case scenarios, developing DTDs or schemas, creating instance documents (either programmatically or by hand), validating instance documents against the defining schema or DTD, designing XSLT stylesheets, developing Web services, testing Web services for interoperability, and debugging XPath expressions. The list also grows as we discover more scenarios in which XML can be applied to solve issues in new domains.

It's certainly true that most classic IDEs have recently added XML-related features to their repertoire of classic edit-compile-link-debug functions, but their focus undeniably rests on the programmer, who is tasked with creating software that produces or consumes XML data - a narrow view that doesn't do justice to the scope of tasks previously discussed with respect to the needs of the XML developer.

Take the latest Visual Studio .NET release, for example: this adds a simple XML Schema editor, some XML support in the generic text-editor, and schema-only validation to the Visual Studio IDE, which is a rather typical modern programming-language IDE (supporting C++, C#, Java, Visual Basic, and other languages through third-party plug-ins). While these new XML capabilities of Visual Studio will certainly help those developers who only casually need to touch up a schema or briefly look at some XML data once in a while, there are also lots of people out there - true XML developers - who work with XML, Web services, XSLT stylesheets, and XML Schemas on a daily basis. These people need many more XML capabilities than the programming-language IDEs such as Visual Studio can provide.

This is where the XML IDEs come into play, in that they are totally focused on providing XML-centric features to fill the needs that a classic IDE does not address, such as:

  • A graphical XPath Query analyzer to visualize the resulting node-set of an XPath expression
  • A schema generator that can extract and create an XML Schema from a set of different use-case XML instance documents or derive it from an existing SQL database schema
  • A SOAP debugger that can intercept Web services transactions and set conditional breakpoints on the value of any payload element selected by an XPath
  • And thousands of other little details that make life with XML easier
Examples of IDEs that support these types of capabilities are Altova's XML Spy and Tibco's TurboXML.

This also illustrates an important aspect of what makes a true XML developer - the term isn't necessarily restricted to people who write programs that emit and consume XML data. On the contrary, people who analyze requirements specifications and develop DTDs or XML Schemas, who develop stylesheets for transformation to diverse presentation form or interfaces for Web services - they all should be considered XML developers.

But the definition should be broader. Instead of restricting it to the classic developer (i.e., programmer) who just happens to work with XML, the XML developer is a person who develops XML-related materials - be it DTDs, schemas, stylesheets, or programs. This is analogous in many respects to the concept of a database developer or a Web developer - both terms describe much more than just the creation of programming language statements that deal with databases or Web pages!

As a result, we can now view XML-centric IDEs and classic programming-language IDEs from a new perspective: they aren't competing with each other, but instead are symbiotic in the sense that one provides what the other doesn't. These different paradigms are really complementary, and tools in those markets will continue to integrate well to provide developers in need of both sets of tools - programmers who are also XML developers - with a synergy of capabilities that make them truly productive.

To validate this perspective, let's take a look at an established market (>30 years) with a different powerful paradigm - SQL - and we'll see the same picture. Many programming-language IDEs provide a small set of SQL features to address the needs of the average developer. At the same time, there are several tools on the market for true SQL developers (or, more generically speaking, database developers) - for people who work with SQL daily and need more SQL capabilities than the run-of-the-mill IDEs can provide. Some of these SQL developer tools are so feature-rich that you could call them SQL IDEs, because they address those needs perfectly.

To use a more recent analogy, consider the case of Web development tools: while you can certainly create Web sites using classic IDEs - and some of them do indeed provide some HTML features - most professional Web developers still favor a Web development tool, such as Macromedia Homesite, for their Web-related work and typically use it in conjunction with a classic IDE to get the best of both worlds.

It's therefore valid to assume that things are going to play out similarly in the XML market space - history is prone to repeat itself....

In addition, of course, there is the issue of XML editing beyond the need of the developer, which is again something that's typically addressed by other components in the product line of XML vendors: graphically designing XSLT stylesheets (which is more a task for Web designers than for developers) and editing XML content to be stored in content management systems (which is important for all areas of enterprise knowledge-management). These things aren't going to be of any interest in programming-language IDEs at all, and consequently there's another field of possible synergies out there to empower XML developers with the tools to create and integrate such content-management solutions within the entire IT infrastructure of enterprise customers.

In the end I think we've established beyond doubt that there is indeed a new breed of XML developer out there. They come from a diverse variety of backgrounds that certainly includes - but is not restricted to - programmers, who will need both a traditional programming-language IDE and an XML IDE. To limit the scope of the term XML developer to programmers only would certainly be a huge mistake and wouldn't do justice to the entire idea of XML - to be extensible beyond our current imagination.

About Alexander Falk
Alexander Falk, cofounder, president, and CEO of Altova, has been actively involved with XML since the beginning and is a member of the W3C Advisory Committee and the W3C XML Schema Working Group. Author of the XML Schema processor and XML parser for XML Spy, Altova's XML software suite, he previously contributed to the ResEdit software at Apple Computer.

XML JOURNAL LATEST STORIES . . .
Two of the biggest launches in Rich Internet Application history took place in 2007/2008 when Adobe launched AIR 1.0 in February '08 and Microsoft launched Silverlight (September '07). At the 6th International AJAXWorld RIA Conference & Expo in October SYS-CON Events is delighted to be...
Red Hat CTO Brian Stevens, Citrix CTO Simon Crosby, Egenera CTO Pete Manca, Allen Stewart, Group Manager, Windows Virtualization at Microsoft, and Brian Duckering, Sr. Director of Products and Alliances at Symantec were the top industry executives who joined Jeremy Geelan in the 4th Fl...
This article is aimed at beginner and intermediate Web developers looking to make the leap into database support of their Web site. The article suggests a new declarative language based on HTML-forms, which is used for development of the database interface. HTML forms can manage not on...
ISO said Friday that the appeals made by Brazil, India, South Africa and Venezuela protesting the standardization of Microsoft’s Office Open XML (OOXML) file format hadn’t gone anywhere – it was unclear whether any of them had any standing anyway – but since they “failed to g...
Since its inception, XML has been criticized for the overhead it introduces into the enterprise infrastructure. Business data encoded in XML takes five to 10 times more bandwidth to transmit in the network and proportionally more disk space to store.
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON FEATURED WHITEPAPERS


ADS BY GOOGLE
BREAKING XML NEWS
Altova® ( http://www.altova.com ), creator of XMLSpy®, the industry leading XML editor, and other ...