|By Jeremy Geelan||
|February 18, 2004 12:00 AM EST||
"The world has gone crazy with XML and then Web services," writes Sun's senior IT architect Victoria Livschitz, in an article currently to be found on the official Sun Web site.
"SOAP and UDDI are getting enormous attention," she continues, "and yet, from a software engineering standpoint, they seem to me a setback rather then a step forward. We now have a generation of young programmers who think of software in terms of square brackets. An enormous mess of XML documents that are now being created by enterprises at an alarming rate will be haunting our industry for decades. With all that excitement, no one seems to have the slightest interest in basic computer science."
Great sound bite. Now what about the reality?
Standards activist Rick Jelliffe, CTO of Topologi in Australia, comments:
'I don't think [Livschitz] has twigged that XML, raised as a side-issue at the end of the article, could be helpful for the kind of problem she complains about earlier on - 'subroutines, functions, data structures, loops, and other totally abstract constructs that neglect -- no, numb -- human intuition.' XML can allow a more human-friendly representation of things: a dog has three legs or whatever."
Microsoft's Dare Obasanjo, writing in the influential XML-DEV mailing list, writes: "Interesting."
"Too bad her comment is the equivalent of a sound bite with no substance at all," Obansajo (who works for Microsoft) continues. " I'd be curious to know why she thinks moving to XML from proprietary binary formats is a setback as opposed to a step forward. Maybe this is just Sun's way of justifying pushing replacing the XML in XML Web Services with ASN.1."
The last word though goes to XML expert Bob Wyman, who on the same list writes:
"From a 'computer science' point of view, you simply can't dispute what Livschitz has said. XML, etc. are a setback. But, she is wrong, I think, in her implicit equating of 'software engineering' with 'computer science.'
The strengths of XML, etc. are not in computer science. Rather, XML's strengths are in the human sciences of sociology, psychology, and political science. XML offers us no concepts or methods that weren't completely understood 'computer science' long before ASN.1 was first implemented in the early 80's. From a 'computer science' point of view, XML is less efficient, less expressive, etc. than ASN.1 binary encodings or the encodings of many other systems. However, because XML uses human readable tag names, because it is text based, easy to write, has an army of evangelists dedicated to it and many freely available tools for processing it, etc. XML wins in any system that values the needs of humans more than those of the machines.
XML's ability to 'win' in the human arena has enabled a great outburst of computer science as a result of the greater interchange of information and the increased ease of interchange. However, this great outpouring of utility and enablement of new computer science work has been at the cost of accepting an interchange format which is 'inferior' from the point of computer science. Of course, I think most of us accept that this cost is an acceptable one and a small price to pay in most cases.
Personally, I have always felt quite strongly that software engineering should be distinguished from computer science by recognizing that software engineering encompasses far more than the close technical scope of computer science. Where computer science is focused on algorithms and machine processes, the focus of software engineering should be on the development and deployment of software within and for systems that have human purposes as their goals. A computer scientist can, and should, focus only on the bits in the machine, a software engineer needs to consider not only the machine but also the organizational dynamics of the team that builds the software as well as the human needs of the organization that uses the software. A computer scientist couldn't help prefering ASN.1 binary encodings to XML. A software engineer, on the other hand, will often see no reasonable alternative to XML in today's world.
Virtually any argument that attempts to claim a technical superiority for XML is bound to be proved wrong by reference to ASN.1 or many other alternatives. In much the same way, most arguments that XML should 'simply be replaced' with a technically superior alternative simply expose the naiveté, ignorance, or closed-mindedness of their advocate. What is 'right' in computer science is not always what is 'right' in software engineering.
Of course, many people who read this will be wondering at this point why I, a "known" proponent of the use of ASN.1 and its encodings, am writing in defense of XML! Well, I'm not really. XML has its place and ASN.1 also has its place. XML is best used in applications where the influence of the human needs on design decisions is strongest while ASN.1 offers real value in applications where the needs of the machines dominate.
For instance, at PubSub.com, where we do content-based publish/subscribe, we speak to the outside world via HTML and XML since that is the 'language' that is most commonly understood by the world at large and the easiest format for people to generate and consume. On the other hand, all of our internal processing is done on ASN.1 binary encodings. (i.e. we convert everything to/from XML at our perimeter). The result is that we have great interoperability with the outside world by using XML and we've got great efficiency in our internal processing by using ASN.1 encodings. The best of both worlds. In the future, we will undoubtedly allow and even encourage some high volume publishers to send us data using ASN.1 encodings so that we can optimize a bit and eliminate some of the cost of translations at the perimeter -- however, I can't imagine that we would ever stop interchanging XML with the vast majority of our clients.
At the perimeter of PubSub.com's system, the human sciences and human needs dominate. In our core, it is the needs of our machines that dominate. Thus, we meld the application of software engineering and computer science.
Livschitz is right in saying that XML is a step backwards from the point of view of computer science. She is wrong in suggesting that it is anything but a tremendous step forward in software engineering."
|David Webber 02/20/04 12:02:32 AM EST|
Mike Plusch makes the case for ConciseXML, and there are other tools besides that offer different solution paths.
I''d urge people looking for ways to deploy user facing interfaces that make it much easier to grok XML to look at using VisualScript XML as a means to do that.
You''ll find more information on this at http://www.visualscript.com
and some interesting examples that can give you ideas around how you can use this at:
|Mike Plusch 02/19/04 09:08:47 PM EST|
If you are interested in an XML-compatible syntax
The specification is completely free and open, and parser implementations are also encouraged to be open source.
I am the co-creator of ConciseXML and would love to
|Thomas Cox 02/19/04 10:54:37 AM EST|
I''ve spent the last two years working with XML on a full-time basis, writing an applicataion to extract data from any arbitrary XML file. I''ve seen thousands of unique customer and third-party XML documents in that time.
From that perspective, I have to agree with Livschitz. Over 90% of the documents and associated DTDs or XSDs (if any) I see are a disaster. Of course, that''s not the directly the fault of XML, but XML does have some serious flaws (some pointed out by previous posters to this forum) that contribute to the mess. Not that XML doesn''t have many useful applications - RSS is one - but it is ill suited for many others, particularly when the data volume and/or data complexity is high.
I was particularly annoyed by Wyman''s specious contrast between "computer science" and "software engineering". Bad data structures - the problem underlying almost all bad XML - aren''t any more readable to humans than computers.
Further, if you care about scalability, performance, security, or data integrity then you should definitely pay more attention to computer science than Wyman''s fuzzy ideas about what SE should be. (FWIW, there''s already a discipline referred to as "Human Factors" or "Usability". It''s critical to good applications, but it doesn''t - and *shouldn''t* - usually deal with low-level constructs like data-interchange formats.)
Again, XML has its uses, but it is abused far more often than not.
|googler 02/19/04 06:11:35 AM EST|
She's probably trying to introduce ASN.1 into the non-tech world, in the same breath as XML (which people have head of and are interested in) so that people think Sun invented it. Sun One , ASN One.
It sounds like the kind of whining you got when VHS triumphed over Betamax. Live with it, move on or become irrelevant.
|Olderthan Sixteen 02/19/04 05:35:25 AM EST|
It is quite evident that XML is useful for many practical task. However, many people are finding that it is enough to say "XML solves this" to be viewed as visionaries. The result is that there is no meaningful discussion on the shortcomings and all we get is hype, hype, hype. The result is a very widespread misuse of XML.
In the article, there is a claim that XML is better than ASN.1. But in the field, architects have to deal with people claiming that XML is better than RDBMS, that it is easier to program with XQUERY than with container managed EJBs, that there is no more a need for RAD tools and other such nonsense. All of this is achieved magically by something called "XML". This is the real problem which is taking computer engineering, not just computer science, a step backwards.
It is not really a failing of XML as such, it is just lack of knowledge, which finds food in XML hype. Poeple not involved in technology just cannot tell the difference, as everything from Web Services, SOAP, XML databases, XPath, XSLT, etc. ... gets called XML. And then when someone complains that this is leading to nowhere, they come up with a comparison of XML and ASN.1 !!! Please, let's have some sanity.
|David Webber 02/18/04 11:46:09 PM EST|
Mike Plusch's example of boolean is exactly on the mark.
Head over to the OASIS CAM TC site and see how using CAM on top of schema goes after solving all this morass for you!
will get you a bunch of information on using CAM.
|Mike Plusch 02/18/04 11:04:14 PM EST|
XML is a step backwards as far as data representation goes.
Yes, I know that this is against conventional wisdom
|David Webber 02/18/04 10:03:44 PM EST|
I am focusing in on the morass of unmaintainable XML that is being created. This is a sad fact, and because noone is listening and learning the lessons of EDI before. To ameloriate this headlong rush to chaos, the OASIS CAM TC has created a system and the jCAM implementation to allow rigorous and consistent XML transactions and scripts to be assembled.
People should heed the message that Livschitz is delivering, and look to build better XML as a result by using techniques such as OASIS CAM is teaching.
DW, Chair OASIS CAM TC
|Cameron Roe 02/18/04 11:55:24 AM EST|
The ''real truth'' is that communicating to machines is hard. XML is, to my mind, an attempt to produce the ''Esparanto'' of machine to machine communication. It''s a fine notion but it loses something in the translation (pun intended).
|Wilfred Springer 02/18/04 10:43:11 AM EST|
> those of us who actually do this in the real world know the truth of the usefulness of XML and Web Services.
Hmmmmm, I wonder if a lot of people *really* know the truth about the usefulness of XML and Web Services. If that were true, then you would not expect seeing so many people embracing it as a general-purpose tool. This is (part of ) the truth:
There is no mutual agreement on how to do transactions across vendors. (ACID, or AC(I)D)
Just a couple of things that don't exist in the Web Services space. Sure, we have loads of specifications, but these specifications are sometimes only interesting from a theoritical perspective. Web Services will become truly interesting once all vendors agree on an integrated Web Services stack providing mechanisms to support reliability and transaction management.
Fortunately, we have JSR 208. Somewhere in the future, I will be able to deploy my services without really caring too much about the protocols. I will be able to leave that to the responsibility of the service providers; that will allow me to bind my service to ASN.1, ebMS, WS-I, REST, or what else is out there.
|Heywood Jablome 02/18/04 09:50:33 AM EST|
Such is the difference between theory and practice. Theorists, such as Livschitz, can pontificate all they want to puff up their pet beliefs but those of us who actually do this in the real world know the truth of the usefulness of XML and Web Services.
Discover top technologies and tools all under one roof at April 24–28, 2017, at the Westin San Diego in San Diego, CA. Explore the Mobile Dev + Test and IoT Dev + Test Expo and enjoy all of these unique opportunities: The latest solutions, technologies, and tools in mobile or IoT software development and testing. Meet one-on-one with representatives from some of today's most innovative organizations
Jan. 16, 2017 12:00 PM EST Reads: 1,324
20th Cloud Expo, taking place June 6-8, 2017, at the Javits Center in New York City, NY, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy.
Jan. 16, 2017 11:30 AM EST Reads: 4,117
SYS-CON Events announced today that Super Micro Computer, Inc., a global leader in Embedded and IoT solutions, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 7-9, 2017, at the Javits Center in New York City, NY. Supermicro (NASDAQ: SMCI), the leading innovator in high-performance, high-efficiency server technology, is a premier provider of advanced server Building Block Solutions® for Data Center, Cloud Computing, Enterprise IT, Hadoop/Big Data, HPC and E...
Jan. 16, 2017 11:30 AM EST Reads: 5,656
SYS-CON Events announced today that Linux Academy, the foremost online Linux and cloud training platform and community, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Linux Academy was founded on the belief that providing high-quality, in-depth training should be available at an affordable price. Industry leaders in quality training, provided services, and student certification passes, its goal is to c...
Jan. 16, 2017 11:30 AM EST Reads: 1,839
IoT is at the core or many Digital Transformation initiatives with the goal of re-inventing a company's business model. We all agree that collecting relevant IoT data will result in massive amounts of data needing to be stored. However, with the rapid development of IoT devices and ongoing business model transformation, we are not able to predict the volume and growth of IoT data. And with the lack of IoT history, traditional methods of IT and infrastructure planning based on the past do not app...
Jan. 16, 2017 11:27 AM EST Reads: 136
WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web communications world. The 6th WebRTC Summit continues our tradition of delivering the latest and greatest presentations within the world of WebRTC. Topics include voice calling, video chat, P2P file sharing, and use cases that have already leveraged the power and convenience of WebRTC.
Jan. 16, 2017 08:30 AM EST Reads: 3,010
"A lot of times people will come to us and have a very diverse set of requirements or very customized need and we'll help them to implement it in a fashion that you can't just buy off of the shelf," explained Nick Rose, CTO of Enzu, in this SYS-CON.tv interview at 18th Cloud Expo, held June 7-9, 2016, at the Javits Center in New York City, NY.
Jan. 16, 2017 06:30 AM EST Reads: 4,483
WebRTC sits at the intersection between VoIP and the Web. As such, it poses some interesting challenges for those developing services on top of it, but also for those who need to test and monitor these services. In his session at WebRTC Summit, Tsahi Levent-Levi, co-founder of testRTC, reviewed the various challenges posed by WebRTC when it comes to testing and monitoring and on ways to overcome them.
Jan. 16, 2017 06:30 AM EST Reads: 5,832
Every successful software product evolves from an idea to an enterprise system. Notably, the same way is passed by the product owner's company. In his session at 20th Cloud Expo, Oleg Lola, CEO of MobiDev, will provide a generalized overview of the evolution of a software product, the product owner, the needs that arise at various stages of this process, and the value brought by a software development partner to the product owner as a response to these needs.
Jan. 16, 2017 05:30 AM EST Reads: 1,079
WebRTC services have already permeated corporate communications in the form of videoconferencing solutions. However, WebRTC has the potential of going beyond and catalyzing a new class of services providing more than calls with capabilities such as mass-scale real-time media broadcasting, enriched and augmented video, person-to-machine and machine-to-machine communications. In his session at @ThingsExpo, Luis Lopez, CEO of Kurento, introduced the technologies required for implementing these idea...
Jan. 16, 2017 04:30 AM EST Reads: 4,487
The WebRTC Summit New York, to be held June 6-8, 2017, at the Javits Center in New York City, NY, announces that its Call for Papers is now open. Topics include all aspects of improving IT delivery by eliminating waste through automated business models leveraging cloud technologies. WebRTC Summit is co-located with 20th International Cloud Expo and @ThingsExpo. WebRTC is the future of browser-to-browser communications, and continues to make inroads into the traditional, difficult, plug-in web co...
Jan. 16, 2017 03:30 AM EST Reads: 2,836
The Internet of Things will challenge the status quo of how IT and development organizations operate. Or will it? Certainly the fog layer of IoT requires special insights about data ontology, security and transactional integrity. But the developmental challenges are the same: People, Process and Platform. In his session at @ThingsExpo, Craig Sproule, CEO of Metavine, demonstrated how to move beyond today's coding paradigm and shared the must-have mindsets for removing complexity from the develop...
Jan. 16, 2017 03:30 AM EST Reads: 5,227
While not quite mainstream yet, WebRTC is starting to gain ground with Carriers, Enterprises and Independent Software Vendors (ISV’s) alike. WebRTC makes it easy for developers to add audio and video communications into their applications by using Web browsers as their platform. But like any market, every customer engagement has unique requirements, as well as constraints. And of course, one size does not fit all. In her session at WebRTC Summit, Dr. Natasha Tamaskar, Vice President, Head of C...
Jan. 16, 2017 03:15 AM EST Reads: 5,733
Who are you? How do you introduce yourself? Do you use a name, or do you greet a friend by the last four digits of his social security number? Assuming you don’t, why are we content to associate our identity with 10 random digits assigned by our phone company? Identity is an issue that affects everyone, but as individuals we don’t spend a lot of time thinking about it. In his session at @ThingsExpo, Ben Klang, Founder & President of Mojo Lingo, discussed the impact of technology on identity. Sho...
Jan. 16, 2017 02:30 AM EST Reads: 3,921
DevOps is being widely accepted (if not fully adopted) as essential in enterprise IT. But as Enterprise DevOps gains maturity, expands scope, and increases velocity, the need for data-driven decisions across teams becomes more acute. DevOps teams in any modern business must wrangle the ‘digital exhaust’ from the delivery toolchain, "pervasive" and "cognitive" computing, APIs and services, mobile devices and applications, the Internet of Things, and now even blockchain. In this power panel at @...
Jan. 16, 2017 01:45 AM EST Reads: 2,666
With all the incredible momentum behind the Internet of Things (IoT) industry, it is easy to forget that not a single CEO wakes up and wonders if “my IoT is broken.” What they wonder is if they are making the right decisions to do all they can to increase revenue, decrease costs, and improve customer experience – effectively the same challenges they have always had in growing their business. The exciting thing about the IoT industry is now these decisions can be better, faster, and smarter. Now ...
Jan. 16, 2017 01:15 AM EST Reads: 4,152
WebRTC is about the data channel as much as about video and audio conferencing. However, basically all commercial WebRTC applications have been built with a focus on audio and video. The handling of “data” has been limited to text chat and file download – all other data sharing seems to end with screensharing. What is holding back a more intensive use of peer-to-peer data? In her session at @ThingsExpo, Dr Silvia Pfeiffer, WebRTC Applications Team Lead at National ICT Australia, looked at differ...
Jan. 16, 2017 12:00 AM EST Reads: 4,786
Internet of @ThingsExpo, taking place June 6-8, 2017 at the Javits Center in New York City, New York, is co-located with the 20th International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. @ThingsExpo New York Call for Papers is now open.
Jan. 15, 2017 10:15 PM EST Reads: 3,497
WebRTC has had a real tough three or four years, and so have those working with it. Only a few short years ago, the development world were excited about WebRTC and proclaiming how awesome it was. You might have played with the technology a couple of years ago, only to find the extra infrastructure requirements were painful to implement and poorly documented. This probably left a bitter taste in your mouth, especially when things went wrong.
Jan. 15, 2017 08:45 PM EST Reads: 7,388
A critical component of any IoT project is what to do with all the data being generated. This data needs to be captured, processed, structured, and stored in a way to facilitate different kinds of queries. Traditional data warehouse and analytical systems are mature technologies that can be used to handle certain kinds of queries, but they are not always well suited to many problems, particularly when there is a need for real-time insights.
Jan. 15, 2017 07:00 PM EST Reads: 6,132