July 2004 Archives

David A. Chappell

AddThis Social Bookmark Button

Related link: http://www.ftponline.com/weblogger/forum.aspx?ID=1&DATE=07/27/2004#185

I recently had a dialog with Jim Fawcette (CEO of Fawcette Technical Publishing) regarding the ‘A’ in SOA. The resulting discussion has been captured and written up by Jim as a Q&A on FTP’s web site.

The focus of the discussion is around Enterprise Service Bus (ESB), SOA, appservers, integration containers, Indigo, and JSR-208. The full discussion can be found here.

http://www.ftponline.com/weblogger/forum.aspx?ID=1&DATE=07/27/2004#185

Dave

I would love to hear your thoughts on this subject.

Robin Berjon

AddThis Social Bookmark Button

Related link: http://www.w3.org/TR/xbc-use-cases/

The first public Working Draft of the XML Binary Characterization Use Cases has been published. It’s not complete as a number of use cases still need to be written, and there is still some editorial work to be done on the existing ones, but it’s the first taste of what you’ll get from this working group, and your first chance to provide feedback.

As you may know, the task of the XML Binary Characterization WG (or XBC WG for friends and family) is to gather information that will help determine the nature of [the] use cases [for binary XML], characterizing the properties that XML provides as well as those that are required by the use cases, and establishing objective, shared measurements to help judge whether XML 1.x and alternate (binary) encodings provide the required properties.

This is to be a short-lived WG that will not produce Recommendations (but rather just WG Notes indicating its findings), so if you have feedback to provide you only have until circa the end of next March to give it. After that, either the WG will have failed in providing answers in time, or it will form an opinion on whether the W3C should produce a standard in that area or not. So give it now! Even if it’s just the first document in a series and it isn’t yet complete, there is already meat to comment on. We await your feedback with expectant impatience ;)

Do you think that the XBC WG is just a bunch of crack-smoking geeks? Or, irrespective of whether you think binary XML should exist, do you find their work useful?

Robin Berjon

AddThis Social Bookmark Button

Related link: http://www.xml.com/pub/a/2004/07/21/dive.html

Mark Pilgrim wrote an interesting piece on XML.com about how he considers that XML on the Web Has Failed. That’s a bold claim to make though, and while his arguments ferret out some real problems, they also carry serious flaws.

Starting with the flaws, he considers “strike 3″ to be that XML parsers are all buggy, broken, and liberal in what they accept rather than draconian. For this he refers to the XML specification, notably parts surrounding a bit that defines how encodings can be inferred when there is a high-level protocol carrying XML:

When multiple sources of information are available, their relative priority and the preferred method of handling conflict should be specified as part of the higher-level protocol used to deliver XML.

Here, there are two things to stress. The first is that it says “should”, not must. The second is that this is part of Appendix F.2, which is non-normative anyway. Therefore, inferring rom that part of the specification, as Mark does, that XML parsers that don’t support RFC3023 are broken is wrong.

His “strike 2″ is that too many Web servers are misconfigured. Well, that’s sadly true, but it’s not really a failure of XML. In fact, it’s a big enough problem that some Web clients (most infamously IE) have included content “sniffing” code to try to deal with the issue, in turn making it far easier to never notice that servers are misconfigured in the first place. Yes it’s a problem, no it’s not something that XML can do much about. At best, it can try to derive practices that work around the problem.

“Strike 1″ is one are where he makes a good argument: RFC3023 is quite likely broken. Indeed, XML is very good at labelling the encoding that it’s using, the rules are precise and deterministic. Why oh why then would someone else, at another layer, want to add their own rules? File format and transport-level metadata should be as separate as they can possibly be, for there is little value and high cost in having incestuous relationships between the two.

So how to move forward? Well, I don’t claim to have the perfect answer, but it would appear to me that forbidding the usage of charset parameters on all XML Media Types is a good step forward. Processors will then be able to rely simply on the information contained in the XML documents and we’ll avoid clashes that buy us nothing and decrease interoperability. Content producers will then either produce well-formed XML or not, and it’ll be easy to fix. As a side note, I feel that Mark vastly overstates the value in using whichever encoding one wants. I’ve been sticking to UTF-8 and UTF-16 only for several years, and have been very happy using those for many languages. A second step could possibly be to stop kidding ourselves that XML is “just text” and drop the text/xml MIME type altogether, using only the application/* and image/* ones. That’ll teach those gung-ho transcoding proxies to behave.

Update! Right in the nick of time, it would seem that
Murata/Kohn/Lilley have produced an Internet Draft obsoleting 3023 :) The list of changes is as yet uncomplete, but one should already help: text/xml and text/xml-external-parsed-entity are deprecated. I highly recommend reading the text in section 3 that justifies this if you are interested in this topic.

Is XML on the Web really broken? Or has Mark produced a stimulating, but somewhat over-enthusiastic piece?

Antoine Quint

AddThis Social Bookmark Button

Related link: http://www.svg.org/blogs/graouts/archives/001361.html

Macromedia, cornered by the mobile industry quite decided to stick to standards, finally decides to make a magic PR turn-around, and get with the SVG program. But you wouldn’t think they’d give in without a dirty fight…

Macromedia’s Mobile and Devices product manager, Troy Evans, writes about the Flash Lite / SVG Tiny relationship, full with inaccuracies and blatant lies, a sorry state of affairs… Here’s a transcript of a journal entry of mine trying to set the record straight:

I am not going to comment on the pure marketing sides of this article, although there are a few things in there that made me raise my eyebrows. It’s really when it gets technical that I feel the need to speak out.

Troy Evans writes “In doing so, handsets can now support the basic needs of vector graphics as defined in the SVG-T profile, as well as the richer interactive multimedia feature set Flash Lite 1.1 provides“.

While he is right in pointing out that technically SVGT 1.1 does not offer a feature range as wide as Flash Lite, lack of programmatic (ie, through scripting an API) interactivity being the major difference, he is a little undermining when saying that SVGT only serves “the basic needs of vector graphics“. SVGT 1.1 supports 99% of the declarative animation features found in SVG Full. This goes beyond simple vector graphics.

Troy Evans then touches briefly (brief as Macromedia’s research of SVG I imagine) about differences between SVGT and Flash Lite: “SVG-T supports within its profile vector graphics, images, and text, but lacks the ability to add interactivity or audio without the use of additional auxiliary technologies such as JavaScript.

Huh? As I said above, SVGT 1.1 does not allow for programmatic interactivity, but through the animation features available, a fair amount of declarative interactivity can be achieved in SVGT 1.1. You can change object’s colors, positions, geometrics and the likes in reposnse to mouse events. For a quick idea of what can be done today using SVGT 1.1 and its declarative interactivity features, you can go through the Beatware Mobile Designer (an excellent mobile SVG authoring tool) virtual tour. What we have there are things like buttons remotely triggering animations, buttons with animated rollover behaviors, navigation bars and popup menus. Not bad for a language that according to Macromedia “lacks the ability to add interactivity“. Point taken for the lack of audio in SVGT 1.1 though, this is only in SVGT 1.2.

So Troy Evans is on a roll, but he doesn’t stop there! “However, one of the problems with the SVG-T format is the many optional features that are inherent in the specification. So while our player conforms to the SVG-T standard, other implementations from other vendors may differ, causing differences in supported features across handsets and vendor implementations.

Ok, the number one requirement for SVG Tiny was, and still is, no optional parts. There isn’t a single feature in SVG Tiny that is optional. Troy may be confusing SVG Basic and SVG Tiny here. I really can’t believe a company like Macromedia can say something like “we’re number one when it comes to SVG Tiny conformance”, where no one I know have been able to independently test their implementation. And of course we all know the tremendous history Macromedia has with regards to SVG, trying to undermine it since its very creation years ago. So, would anyone take Troy’s word and believe that Macromedia’s SVG Tiny implementation is more compliant than, say, BitFlash’s or ZOOMON’s, two companies involved in the standardization process at W3C for years who also have a number of shipping mobile phones on the market today with their implementation built-in? This is preposterous.

The fact is SVG Tiny is truly a specification with excellent interoperability. Ask a major carrier like Vodafone what they think about the level of SVGT interoperability. They’re making SVG Tiny one of the foundation technologies in their Vodafone live! client. Can you really believe that world’s largest carrier would commit to a technology without appropriate insurance that it is reliable? It’s only their flagship product after all…

It is becoming clearer every day, and we have evidence from the mobile phone market, that Flash Lite is getting its ass whooped by SVGT 1.1, even though SVGT 1.1 doesn’t have all of its features and doesn’t even have a multi-million dollar company pouring marketing resources into making it a success. And it’s only getting worse as SVGT 1.2 is getting closer and closer and should be a recommendation within six months. Feature-wise SVGT 1.2 goes beyond Flash Lite’s offerings, and with support from platforms like J2ME (through JSR-226) and Symbian (through Series 60 SE), you bet integration issues are pretty much figured out. And remember, SVGT is a standard, approved by W3C and 3GPP. No matter what play on words and rewrite of definitions Macromedia folks can come up with, Flash Lite is not standard.

In the end, Macromedia is only showing the world their ignorance of SVG, which doesn’t come as a big surprise considering their lack of SVG support, ever. As a friend of mine says: “you need to trust a company if you are putting their product into millions of devices. Macromedia show they are not worthy of that trust”. Realize!

Are Macromedia desperate enough to spread malignant lies? Or are they simply misinformed?

Bob DuCharme

AddThis Social Bookmark Button

Related link: http://free-culture.cc/notes/

It’s difficult to write about technology, particularly the web, without mentioning URIs. Cool URIs don’t change, but many uncool URIs are still useful. This presents a problem when writing something for distribution in a book, magazine, or other hardcopy format—if a resource’s URI does change, you can’t update your reference to it.

While reading the Penguin Press edition of Lawrence Lessig’s book Free Culture, I saw the URI www.webstationone.com/fecha in the first footnote and wondered how robust it was. The full footnote reads

See “Saints: The Heroes and Geniuses of the Electronic Era,” First Electronic Church of America, at www.webstationone.com/fecha, available at link #1.

I saw that the introduction to the Notes section says “For each link below, you can go to http://free-culture.cc/notes/ and locate the original source by clicking on the number after the # sign. If the original link remains alive, you will be redirected to that link. If the original link has disappeared, you will be redirected to an appropriate reference for the material.” I checked that web page and saw that the URI for link #1 had already changed. The Notes page also includes the e-mail address of someone that readers can alert about broken links on the page.

This approach reminds me of the old computer science aphorism (50 years old, apparently) “Any problem in computer science can be solved with another layer of indirection.” It was nice to see how this principle fixed such an apparently low-tech problem.

“Free Culture” is a great book, by the way, and worth reading if your vocation or avocation involve content that can be considered intellectual property. Lessig’s description of the historical British and then U.S. legal treatment of intellectual property (as opposed to physical property, and much turns on the distinction) provides a solid background for anyone interested in discussing the issues intelligently. In my experience, those who claim to disagree with Lessig usually disagree with exaggerated second-hand reports of his opinions; they should try the primary source. Free versions of the book are available at the website, but the bound version is more convenient to read. I’ve recommended to several friends that they read the first chapter or two of the free version to decide whether to buy the book.

Indirect linking from paper to the web must be older than “Free Culture”; who did it before Lessig?

Simon St. Laurent

AddThis Social Bookmark Button

Related link: http://www.extrememarkup.com/extreme/2004/schedule.asp

The complete schedule for Extreme Markup Languages 2004 is now available. If you have an interest in XML, SGML, or other markup approaches, or a broader interest in ways to structure and represent data, Extreme is a great place to fill your head with new ideas. (Montreal in August is also a great place for it.)

There are presentations on XML and object models, as well as a number on frequent topics like stylesheets, schemas, and querying. A number of presentations are targeted at people managing large volumes of information and metadata, covering things like Topic Maps, ontologies, and RDF. My favorite category of talks looks at the places where XML doesn’t work very well, and proposes solutions for those problems. I’d like to know more about “Relaxing with Son of ODD,” certainly!

The tutorials are well worth a look as well. Extreme manages to reach beyond the basics into subjects that improve the way people work with markup.

Judging from the program, it will once again do what I like best about Extreme: make people think, and drive them to ask questions.

Hope to see you in Montreal!

Edd Dumbill

AddThis Social Bookmark Button

Related link: http://thomas.apestaart.org/log/index.php?p=191

Thomas Vander Stichele’s opinions on the story behind Real going GPL with Helix Player make interesting reading. Should the open source world hold Real in suspicion?

Vander Stichele works for Fluendo, a streaming media company whose products are based on the open source GStreamer framework. He was part of the team providing the world’s first large scale live Ogg Theora stream at the GUADEC conference last week, where Real’s Rob Lanphier made the announcement about open sourcing.

Given Real’s history of decline, you might be forgiven for thinking that the move to GPL the player and embrace open source codecs is a last-ditch attempt to turn the business around. On the other hand, perhaps this is the final dawn of enlightenment.

Vander Stichele’s summary is certainly pretty punchy:

The Real codecs are the carrot. The player and framework are the Trojan Horse. And inside of the horse are the suits who want to save the company from going bankrupt by selling you music.

What do you think about Real’s release of their framework and player as GPL?

David A. Chappell

AddThis Social Bookmark Button

Related link: http://www.ftponline.com/reports/javaone/2004/roundtable/default.aspx

I recently participated in a technology rountable discussion with a number of representatives from BEA, Borland, Compuware, Eclipse, Oracle, Sun, Quest, and Wiley.

The conversation mainly focused on SOA and how it is affecting developers and architects.

JavaPro magazine did a writeup at http://www.ftponline.com/reports/javaone/2004/roundtable/default.aspx.

Dave

David A. Chappell

AddThis Social Bookmark Button

At long last, my latest book on the subject of “Enterprise Service Bus” has hit the shelves.

Actually, it was officially released at JavaOne last week. There were hot-off-the-press copies of it being sold at the onsite DigitalGuru bookstore. For the first two days it was on the top 12 bestseller list at the show. Sonic Software also raffled off a few copies as a promotional thing. However, it hasn’t really become available in book stores until this week.

This book is the first in a new “Enterprise Series” that is targeted at architects. The content is loaded with discussion of the architectural concepts that make up an ESB, including lots of diagrams and integration patterns.

More information on the book (and about ESB) can be found at the foloowing links:
Amazon -
http://www.amazon.com/exec/obidos/tg/detail/-/0596006756/qid=1089114619/sr=8-1/ref=pd_ka_1/104-3887079-2712743?v=glance&s=books&n=507846.

O’Reilly -
http://www.oreilly.com/catalog/esb/

Sonic Software (this includes a TOC) -
http://www.sonicsoftware.com/solutions/learning_center/books/enterprise_service_bus/index.ssp

And BTW, those are eggs on the cover, not beachstones ;)

Dave

Edd Dumbill

AddThis Social Bookmark Button

Related link: http://www.opera.com/pressreleases/en/2004/06/30/

Opera, Mozilla, Apple, Macromedia, and Sun are going to build a better plugin API. And about time too: while other browser technologies have moved on, plugins have remained a square gray box in the middle of a page.

From the press release:

The companies have set to enable developers to build Web browser plugins more securely and efficiently. The announced alliance is working to extend the Netscape Plugin Application Program Interface (NPAPI) to support an advanced plugin model based on open Web standards.

Happy to see the browser wars reactivated. It’s pushing
the technology on again.

Simon St. Laurent

AddThis Social Bookmark Button

I’ve been working with an Apple ][ emulator lately, remembering some of the charms it had that we’ve largely lost since.

Users of the Apple, or my old Franklin, or many of the other systems out there at the time, had a much more “up close and personal” relationship with the hardware and with the software. I remember my parents talking about a System/360 they’d used in graduate school with punch cards, and wondering how anyone could stand it, when instant feedback from the computer was available right in our den.

Applesoft BASIC and DOS 3.3 were programs, sure, but there was much less distance between me typing at the keyboard and the programs I wrote than there is now between me and any Java program I write. BASIC and DOS intermingled easily, though with a very different vibe than shell scripting has. There’s was no compile-link-wait-wait-run-oh-no-recompile-link-wait-maybe cycle. I could type A=1 into the thing, then PRINT A five minutes later and get back “1″. Writing programs didn’t feel like a separate process from using the computer.

(Logo also felt that way a lot of the time, though it was kind of its own separate environment.)


Typing a program into the Apple ][e emulator

After I ran the program, or broke out of it for whatever reason, I still had access to variables and could see what happened.


Testing a variable in the Apple ][e emulator

Applesoft was my preferred language then, and I’ve blamed it for years for my spaghetti programming tendencies. Coming back to it, though, I’m not sure I’m right about that blame. Sure, life with all global variables and no named subroutines is probably not a great way to learn if you value encapsulation, but I have to wonder if structured programming and then the current generation of object-oriented development have their own problems. I’ve seen a lot of strangely thought out encapsulation that I think may be the result of not having worked without it.

They’re not so much technical problems as political problems. “Hello World” in Applesoft is simple: PRINT “Hello World”. It doesn’t even need a line number. In Java, you’re trapped into creating an object with a main() routine. It’s ordinary to rely blindly on thousands of lines of library code to get simple things done. Applesoft certainly did things for me - even the Monitor environment and its mini-assembler were there to make life more convenient - but it was a much thinner layer, and I could do all kinds of damage to myself if I wanted to. When I first saw the Macintosh, I wondered why anyone wanted a computer that kept them away from the computing.

In looking back and comparing, my programs run about as well as they did then, and debugging, while a different process with a lot more up-front investment, takes about the same amount of brainpower. I was doing different things, certainly, when I was 13, but the games I was writing weren’t much less complicated than the odd XML parsers I’ve conjured more recently. (I wasn’t a professional programmer then, and I’m not one now.)

One thing I do remember well was the low frequency of unexplainable crashes. It seems like a 128-level stack limit should have ensured periodic disasters, but it didn’t. The commercial software I bought was remarkably reliable stuff, even relative to what I’m running on my iMac today. I don’t think I’m ready to chuck Microsoft Word and go back to AceWriter, even if I can get the disk working, but Word sure has crashed a lot more.

I’ll be playing with this thing for a while. It’s been fascinating reading the old books, which seem a lot easier now, and I need to get back into assembly work. I’ve been having a great time so far on this tour, and hope to do something useful, if perhaps perversely useful (not a lot of people run Apple ][s any more!) with this thing, and I’ll let you know when I have something worth showing.

(I still haven’t found bootable DOS 3.3 disks, but I do now have an Apple ][e, giving me a legitimate set of ROMs. Virtual II has been great. Maybe Apple could start throwing in a copy of the old ROMs with every Mac?)

If you only have 64KB to play with, would you rather use J2ME or an Apple ][-like environment?

Advertisement