October 2006 Archives

Rick Jelliffe

AddThis Social Bookmark Button

When you run the same process over a few years, its particular shortcomings emerge and can dominate: for example, Joel Spolsky claimed that MicroSoft had an economic criterion for fixing bugs, so that they only fix a bug if it costs them more (e.g. in sales) to have it than to fix it—for a monopoly in a growing market there is no loss of sales from bugs, and for a near monopoly with free alternatives to some extent the funds you lose from an application sale may be spent on another purchase from you anyway: we spend less on Office but that gives us more to spend on Vista, for example.

I don’t know if Joel was correct in his assessment, or whether Microsoft have a different strategy now. But clearly the mid-term impact of such a strategy would be a buggy code base, with entrenched workarounds, combinatorial explosions of symptoms that prevent diagnosis, and an inadquate foundation to prevent major errors. Not to mention a sudden exposure to loss of market share when the market gets saturated and stops growing: when a sucker isn’t born every minute.

Sun’s Java effort is similarly suffering recently: they have a nice-looking error process based on people voting for errors as critical. Now whether Sun acutally use this list to determine which bugs they fix first, or whether they use the vote to justify ignoring bugs that they are not interested in, the result is probably the same. A system with lots of known bugs.

There are lots of other single-strategy methodologies: risk-based analysis, ISO 9126 software quality analysis, weighting bugs against their depth in the call stack so that libary bugs are fixed at hgih priority, metrics, test driven programming, and so on. I don’t know why we should have any confidence that any of them will necessarily not, over time, systematically fail to address some kinds of errors. Which will bite us.

So is a better approach to just fix bugs randomly? Pick a bug from a hat? Well, maybe….

Perhaps we should say each maintenance methodology applied singly over time will result in an accumulation of unaddressed errors in some aspect.

Part of the problem is human: people have interests and pressures and viewpoints. So democracies solve this by what Lee Teng-Hui (the Taiwanese president who secretly funded the opposition parties) called “the regular alternation of power”: term limits, shifting jobs, even sabbaticals.

Part of the problem, as I see it, is with simple prioritization of bugs. Sometimes it is better to see each module as a whole, allocate quality requirements for that module, and then handle each bug according to its module priority. For example, Sun could say “we don’t treat text.html as a priority module but we do treat 3D rendering as a priority”. Apply this to voting, and then two votes for an HTML bug would be required to equal one vote for a 3D bug.

But that is a more complex strategy to be sure, but it is still a single strategy.

A better way of doing things may be to divide the debugging/maintenance/natural enhancement effort into independent efforts. For example, have main stream process use immediate rational economic effect, risk or deadline criteria. But also have a background effort that alternates between different strategies: systematic audits for internationalization, performance, standards-compliance, transparency, integrity, resource utilization, and other quality concerns. And also have a background effort that uses weighted voting and different criteria that accepts minor Requests For Enhancement as well as bugs.

And even, for one in a hundred bug fixes, do pick a bug out of the hat, on the grounds that you don’t have 100% confidence that even the multi-criteria maintenance will prevent the emergence of a nasty clump of errors in some aspect. Shake it up.

Kurt Cagle

AddThis Social Bookmark Button

I’ve been giving a lot of thought lately to JSON and JavaScript in particular. For those in the XML community not familiar with it, JSON was largely the invention of Douglas Crockford, a JavaScript expert who currently works as an architect for Yahoo! and who I had the privilege of meeting at the recent AJAXWorld conference.

The idea behind JSON is surprisingly simple, and like many simple ideas, is also remarkably powerful. Dissatisfied with the complexity involved with using XML as a data format for seemingly lightweight tasks, Crockford asked one of those questions that causes all kinds of interesting repercussions: “Why couldn’t we use the “native” data format of the JavaScript, the associative array, as a vehicle for transferring content between client and server, instead of XML?”

M. David Peterson

AddThis Social Bookmark Button

Sylvain just pinged me to say he had left a comment on my recent “IRC’aholic” post. I refreshed the page expecting to see his comment, but no luck.

I checked my email to see if the system had marked it as “must be approved”.

Nothing.

An investigation into the comment section for that entry via the MT admin interface showed no sign of the comment. It wasn’t until I accessed the master comment section and clicked the “Junk” tab that I was able to locate what he was referring to. In reading his post, there is nothing strange about it that would lead me to believe the system would justifiably assume this to be junk, so I’m a bit bewildered by what might be going on.

I have noticed what I would term a *SIGNIFICANT* drop off of comments over the last week. Like basically *ZERO* as opposed to what is usually a fair level of activity. With Sylvain’s comment being labeled as “Junk” by the system this left me wondering how many other valid comments had been labeled junk and began to click through the listing of junk comments to see what I could find.

The problem? 10 pages worth of comments and I’m only about 6 or 7 hours back into the junk comment history, a history which contains about 24,000+ comments. Obviously, this could take a while.

Before I spend too much time rummaging through the “Junk” pile looking for lost treasure, has anybody else been noticing the same problem? Have you left a comment that provided an “Awaiting Moderator Approval” screen, never to see your comment approved? If yes, I would suggest leaving a comment to let me know such that the folks @ ORA can gain a better feel for what might be going on, but I’m not sure the message will get through.

As such, if you have noticed this problem, please let me know in private email such that I can provide this information directly to the folks @ ORA such that they can avoid having to dig through 24,000+ comments themselves looking for clues.

Thanks in advance for your help!

NOTE: If you could provide a searchable field such as the URL or email address you use this should make the task of locating valid comments quite a bit easier. Thanks!

Quick Update: I should note that this shouldn’t be seen as a problem from the ORA side. Sarah Kim came to the rescue a few weeks back, implementing the Akismet comment spam filter plugin, which it seems probably just needs a bit of tweaking to the settings to find the right balance. This kind of thing is normal, expected behavior, *ESPECIALLY* when you are dealing with a variable that can be seen as “typeless” from the standpoint that the comment spammers are always trying new ways to get around the system, so attempting to determine what is legitimate and what is junk is a constant battle between good and evil.

Duck-typing, generics, and to a lesser degree, reflection and constructor overloads are fine when you have a finite set of data types you are dealing with. But when these same data types are changing on an hourly basis, attempting to make a determination in regards to what is what is a task that makes me ill just thinking about. With this in mind, any help you might be willing/able to provide will be of great value, without a doubt.

M. David Peterson

AddThis Social Bookmark Button

Nobody learns if nothing is brok3n: Dropping the addiction that is irc

Eventually I switched to linux and started delving into linux channels. The most important thing I learned from a linux channel is that if someone doesn’t know what they are talking about, they’ll act like they do anyhow, and when asked for information they’ll tell you to go find it. It seems to serve some people well.

M. David Peterson

AddThis Social Bookmark Button

Mokka mit Schlag � Chameleon schemas considered harmful

This is not how namespaces are designed to work, and it’s going to cause massive problems for anyone writing any sort of software to process XForms, whether it’s DOM, SAX. XSLT, XPath, or almost anything else. XForms elements should be able to be recognized by their namespace alone. You should not have to care about the host language in which they’re embedded. If we’re going to start changing the namespace for every host language that comes along, we might as well not have namespaces in the first place.

If you believe there is a single, more important, absolute requirement in the land of XML than that of the proper usage of XML namespaces: You obviously don’t understand XML.

That said, there’s got to be at least some sort of reasonable explanation to the mentioned madness quoted above, doesn’t there?

Somebody care to clue me in, cuz’ I have to admit, at first sight it very much seems like a few loose screws have rattled off the W3C XHTML2/XForms working groups wagon wheel, placing some serious doubt upon the ability of these same mentioned groups to produce a quality specification that even closely resembles any of their 1.0 counterparts.

Anybody?

M. David Peterson

AddThis Social Bookmark Button

IEBlog : MSXML5…Not in This IE

Some of you may have noticed the following goldbar on some websites:
Our friend Adam on the XML team recently posted on the XML Team’s Blog about MSXML versioning. It’s a great read and thoroughly explains the best practices for using MSXML. As we’ve posted previously, MSXML5 is not pre-approved as there are better options such as MSXML6 and IE’s native XMLHTTP control which you can use on your webpage. Users will need to approve MSXML5 before it can be used on your webpage.

Please help us give users a great experience by moving to the supported versions of MSXML!

sharon cohen
Program Manager

Please feel free to complain, moan, call me or anybody else for that matter dirty evil names, and/or throw temper tantrums until your angry heart is satisfied, in the comment section below.

And as soon as you have got it all out of your system: Please do your customers a favor and follow Sharon’s advice from the above linked post.

With that: Let the temper tantrums begin!

(Thanks for the reminder, Sharon!)

M. David Peterson

AddThis Social Bookmark Button

Seo Sanghyeon has been kickin’ some tail end (yet again!), the result of which is the r3 release of IronPython Community Edition (IPCE).

While I would normally post this to my Windows DevCenter blog, there are some specific additions to this release that are directly related, and therefore directly beneficial to the XML community,

Numerous updates to pyexpat. Previously, pyexpat.py was only intended
to run ElementTree. It is now compatible enough to run xml.dom and
xml.sax codes.

SWEET! Thanks Seo!

I can already tell you from working with Seo (rather, I reported the problems, Seo fixed the problems — I don’t think that really qualifies as work on my part, so credit Seo++ :D) on a few issues that Mitch Garnaat’s AmazonAWS boto library (which provides a wonderful Pythonic API into S3 and SQS) will now work out of the box with this release of IPCE, so for those of you with interest in this…

Come and get it! :D

Thanks again, Seo! :)

(Seo’s recent post to the IronPython mailing list follows below)

M. David Peterson

AddThis Social Bookmark Button

{ End Bracket }: Is Programming an Art? — MSDN Magazine, October 2006

“The reason we say programming remains an art, not a science or an engineering discipline, is because we haven’t as yet been able to break it down into component steps and mechanize it. Once we succeed in that, a new scale of possibility emerges: programs to write programs from people-oriented design languages (PODL), programs to prove program correctness, and to analyze and support semantic query. Until then, however, programming remains an art, or so conventional wisdom has it.”

Wait, what?

“The reason we say programming remains an art, not a science or an engineering discipline, is because we haven’t as yet been able to break it down into component steps and mechanize it.”

With all due respect, Mr. Lippman (and I most certainly do have a lot of respect for you and your work), who’s we? And since when does breaking something down into component steps and mechanizing it turn this same something from art into science? In this regard it almost seems as if you are suggesting that science is defined as the final state instead of a series of experimental steps that help bring about this same mentioned state.

Then again, using the term “final state” isn’t really something that can be applied to this analogy either, as when was the last time anything anybody has ever created through the process of science, or maybe better said, the process of trial and error, stayed in this same “final” form indefinitely? Of course, through the *art* (or is it a science?) of preservation, there are those who can do a pretty good job of keeping the original state of something as close to its original state as possible. But even then its no where near perfect, and in many ways the very act of preservation goes against the very essence of what life is all about,

Change. Transition. Transformation. Progression.

Just to be certain we are both on the same page, lets take a look at the definition of “science”,

David A. Chappell

AddThis Social Bookmark Button

The ESB-CON II virtual conference that I wrote about here is now available for replay. To recap, ESB-CON II features descriptions and case studies of SOA projects that are based on experience with actual ESB deployments in Fortune 1000 companies. The vendors include Progress (Sonic), IBM, BEA, and Sun. The format of the event starts out with a panel style Q&A that includes a set of tough questions that require that the panelist talk about actual customer deployments. In addition to the recorded Q & A Session, there are vendor presentations in one-hour slots. In my slot, I talk about the SOA Maturity Model, referencing many F1000 customers, but feature the BGN Bookstore chain in the Netherlands, which is the world’s first business to combine item level RFID tracking with a SOA throughout a supply chain. I also highlight a case of incremental SOA reuse as part of explaining the model.
Dave

David A. Chappell

AddThis Social Bookmark Button

I recently published an article in Enterprise Systems Journal on the subject of SOA and meeting the needs of business. It’s called “SOA: Its the Business that Matters”>/a> and can be found at http://www.esj.com/enterprise/article.aspx?EditorialsID=2216
Dave

M. David Peterson

AddThis Social Bookmark Button

Link Attribution Lineage : Dare Obasanjo

Jeffrey Zeldman Presents : Web 2.0 Thinking Game

If we’re stuck with this meaningless Web 2.0 label, let’s at least have some fun with it. Here’s my new game. I’ll start, you finish:

Web 1.0: Joshua Davis on the cover of Art News.
Web 2.0: 37signals on the cover of Forbes.

Web 1.0: Users create the content (Slashdot).
Web 2.0: Users create the content (Flickr).

Web 1.0: Crap sites on Geocities.
Web 2.0: Crap sites on MySpace.

Web 1.0: Writing.
Web 2.0: Rating.

Now you try it!

Web 1.0: Dynamic Data, Static Languages
Web 2.0: Dynamic Languages, Static Data

NOTE: Probably should have mocked up the title in Python, huh?! ;)

M. David Peterson

AddThis Social Bookmark Button

Michael Sparks recently provided a follow-up to a post I made to the Kamaelia list regarding my most recent Kamaelia-related post here on this blog.

There is TONS and TONS of *EXTREMELY* valuable information contained in what amounts to about 2 printed pages of text. As such, and with his permission, I am re-publishing his entire post such that those who might read this can gain a full understanding of the methods Michael has chosen in regards to managing the Kamaelia project, the influences that helped form his chosen method, and an understanding of some of the benefits he has already started to notice because of this choice.

NOTE: Once I notice his original post archived on the SF.net list server, I will update accordingly with a link.

With that, via a post to the Kamaelia project list dated Oct 22, 2006 9:27 AM (MDT(-0600)), Michael Sparks, a scientist working for the Research & Development arm of the British Broadcasting Corporation (BBC R&D), provides the following information, re-published in its entirety, in regards to that in which is mentioned above.

M. David Peterson

AddThis Social Bookmark Button

Four little letters…

LLUP

Life after email

As a social phenomenon, the end of email has been widely reported. The next generation doesn’t use it. As a technical phenomenon, spam is a persistent threat. Spam’s been a lot worse in the last couple of weeks (no doubt the reason I started thinking about these things); apparently the spammers have concocted a strategy that circumvents Bayesian filtering (it’s only temporary, I’m sure, but the next victory in spam filtering is only temporary too). �

I’ve noticed the same phenomenon. It’s getting really, *REALLY*, bad!

What’s next? IM, Wikis, web forums instead of email? Bleh!

Agreed!

Maybe I’m just too old to learn new tricks, but I want correspondence pushed to me (or I want the appearance of push, anyway) and I want to read and edit it locally, in the application of my choosing, not in some browser form

Agreed. Too much effort. The solution must be seamless, and work with the tools we already use for email-esque communication. In fact, the solution has to be developed in such a way that those with an established position in the email client/server market(s) can quickly, easily, and as mentioned (and is really the key, in my own opinion) seamlessly integrate with these tools such that the “switch” from the existing technologies (e.g. SMTP, POP, IMAP, proprietary protocols such as those used in Exchange for advanced workgroup/corporate communication/collaboration, etc..) may not even require a switch at all (i.e. a driver that allows each of these technologies to easily interop with any of the new required protocols), and if it does, will be as transparent as possible to the customer/employee, etc… who will be using it.

It occurs to me that with a little work, Atom might function as a replacement for POP/IMAP and the Atom publishing protocol might replace SMTP. I can see a glimmer of how I might move forward while mostly preserving a couple of decades of work habits. As usual, the social problems are larger than the technical ones

Yep, completely agree! Through the work I have been doing with LLUP, I have come to my own conclusions that there are a few additional off-the-shelf pieces necessary to complete the puzzle, but without a doubt, Atom and APP are the key behind all of this.

In fact, this was a point I brought out to Eve (Maler) a while back when Russ and I first spoke with her about LLUP. There have been a few people along the way who have insisted that “you guys are taking too long to finish this up” or “if this really was so simple, why not just finish it out and be done with it” to which the answer, as mentioned to Eve, is pretty straightforward,

M. David Peterson

AddThis Social Bookmark Button

Firstly, Sylvain Hellegouarch continues to astound me with his dedication to each of the projects we are working on together, as well as his ability to get stuff done. I’ll avoid making a list of all that he does, as

a) it would take too long to research,
b) it would take too long to write,
c) it would take too long to read,

Of course, by too long I don’t mean it wouldn’t be worth the effort, and instead, I can more easily and simply summarize this list by describing the impression you would be left with after reading this list,

One word (and one punctuation mark),

M. David Peterson

AddThis Social Bookmark Button

IEBlog : SSL, TLS and a Little ActiveX: How IE7 Strikes a Balance Between Security and Compatibility

Obsolete controls disabled through ActiveX opt-in

An important part of the ActiveX opt-in feature is doing good housekeeping of the ActiveX controls that come with Windows. Many sites will benefit from IE7’s new native XMLHTTP control and sites can continue to use the MSXML 6.0 and 3.0 controls. The MSXML 5.0 control will not be enabled by default. The WMP 6.4 player is also disabled because its been replaced by the WMP 7 generation controls. As we can infer from HD Moore’s month of browser bugs, using the newer controls and leaving older controls disabled helps reduce the chances of user being exposed to a security or stability issue in an older control.

Since this should be a straightforward change for most sites, we’re asking for your help in moving your pages towards the native object XMLHTTP, the latest version of MSXML or the newer WMP control. In the best case scenario, the change might be to simply swap in the native object for XMLHTTP or the newer CLSID for the current WMP control.

There was a time that I had every desire and intention to stay closely attached with the development of IE7 and the RSS Web Feed engine via forums, blogs, and in some cases, email communication.

Why did that change?

ADD. My desire to overcome my ADD tendencies and actually place my primary focus on one of a bazillion and a half projects I have rolling around in my head at any given second, of any given day, month, week, year, and etc..

In other words,

AddThis Social Bookmark Button

Years ago, I worked in a small group that occasionally needed technical information from a second group. I was young and naive, and believed that if a person said “yes, the proper setting for the frobnitz is 34.128″ then setting the frobnitz to 34.128 was the Right Thing To Do.

I quickly found out that some members of that group were more than happy to supply you with an answer to any question you asked, regardless of whether they knew the answer or not. And those guys would speak as authoritatively when spinning a tale from whole cloth as they would when providing information that actually intersected with reality.

The words “I don’t know” were not in their vocabulary.

Beyond a mistrust for anything these guys said, I also learned the importance of those three words. There’s no crime in not knowing the answer to every question. Since those days, I’ve tried to be clear with people when I didn’t know something. I’ve had many opportunities for clarity.

M. David Peterson

AddThis Social Bookmark Button

I was in Seattle all week and as such, am just getting caught up on things outside the scope of my trip.

I did have a chance to chat with a somewhat excited Sylvain on Tuesday morning who had been chatting with Michael Sparks (BBC Kamaelia project creator) on IRC about various aspects of the Kamaelia project and how this relates to various projects we are both working on, that of Viberavetions and LLUP/Blip Messaging. He specifically pointed at a recent post from Michael that brought together a lot of problems we have been specifically trying to solve with LLUP. When we spoke, I was just getting ready to head out to meet up with Dimitre Novatchev for lunch, but by chance, Russ pinged me around the same time, and as such, picked up the conversation with Sylvain where I left off.

Russ recently provided the following in an entry entitled,

David A. Chappell

AddThis Social Bookmark Button

There’s a great article in Baseline Magazine on the current state of adoption of Web Services Management platforms. It includes several case studies and references of organizations that are using them to govern their SOA deployments. One such case study is CAL-ISO, a non-governmental public entity that manages electrical flow along California’s power grid.

http://www.baselinemag.com/article2/0,1540,2025387,00.asp
Dave

David A. Chappell

AddThis Social Bookmark Button

I have been intently following a blog thread that was initially started by the “Other” David Chappell. David’s initial posting
SOA and the Reality of Reuse sparked a small flurry of responses, and responses to responses, which also include Joel McKendrick’s Pouring Cold Water on the Service Reuse. I tend to agree with most of the points made in David’s initial posting which includes -
- Reusable services can sometimes be hard to do
- Effective SOA reuse requires strong corporate wide organizational support with top management support and buy-in.
- SOA creates agility by allowing for flexible business processes, which if are configuration driven may be readily changed to suit the changing needs of the business. David argues that this can be a form of reuse.

However the overall tone of the threads seem to be casting a very strong doubt on the reality and practicality of service reuse at all. Some of the responses are flat out saying that service reuse is not possible.

So I went and compiled some information gathered from our customers who are building SOAs.

Rick Jelliffe

AddThis Social Bookmark Button

I made three prototype implementations of the Topologi XSD to RELAX NG Compact Syntax translator, before adopting a particular one.

First, I used Topologi’s high-level inhouse Java library for XSD, which we use on other products. I looked at converting that into the Java API of one of the versions of RELAX NG in James Clarks’ Trang translation software.

Second, I tried using XSLT to generate RELAX NG Compact Syntax directly.

Third, I looked at using XSLT 2 (Saxon) to generate RELAX NG as XML, then use Trang to convert from this XML to RELAX NG Compact Syntax.

Which one did I go with?

Rick Jelliffe

AddThis Social Bookmark Button

In talking with Jean Paoli of Microsoft a few months ago about ISO standardization, he asked what kinds of changes would be needed to make OOX acceptable to ISO members. Of course, I cannot speak on any of their behalf, they will get their own votes in due couse, but one of the things I mentioned was that I thought it would great if OOX came with ISO RELAX NG Compact Syntax schemas.

The normative schemas are the W3C XSD ones. The ISO RELAX NG Compact Syntax schemas are non-normative/informative: which means that you rely on the XSD and the normative text of the standard ahead of the RELAX NG schema, and that adoption of the RELAX NG schemas implies adopting the maintained living versions rather than just the pre-baked version of the paper standard: you cannot adopt a non-normative part of a standard as if it were normative of course, that would go against the spirit of the standard and be dumb…you adopt the standard and then you use the RELAX NG version of the schemas (as maintained) .

SC34, the committee at ISO that handles ISO SGML (i.e. XML’s base), ISO DSDL (e.g. RELAX NG, Schematron) is also the committee that looks after the ISO standards for ODF, OOX and HTML. (I don’t think we do ISO PDF but I could be wrong.) I was involved a decade ago and again recently with ISO Schematron.

It is not just a matter of turf (SC34 does RELAX NG, therefore SC34 “products” should also use it) or a level playing field (ODF uses RELAX NG therefore OOX should use it.) The main reason for providing a RELAX NG schema is because it is easy to read and supports people who are integrating using the RELAX NG branch of technology. I don’t believe Microsoft has any plans or much need to adopt RELAX NG itself (Schematron is a different matter, I am always hopeful !)

So Jean then batted the ball to my court: they would include RELAX NG compact schemas if someone (i.e. me) could provide them. My company, Topologi had been working on various XSD tools and RELAX NG tools, so we were well placed to use OOX as the test case for developing an XSD to RELAX NG translator (functionality which James Clark’s Trang, for example, does not provide.)

I’ll write a little blog about the translator next.

Rick Jelliffe

AddThis Social Bookmark Button

Brian Jones has announced the availability of the final drafts of Ecma Office Open XML.

Once Ecma endorses it, as seems 100% likely, this is the standard that will be hot-footed to ISO for fast tracking. I think it is 75% likely that ISO member countries will accept it, for two main reasons:

  • First, because they will want to encourage Microsoft and other industrial powers to see the positive side of participating in standards bodies: win-win. Almost all technological growth in the last decade has been based on standards: by outsourcing the review process, more stakeholders get a chance to voice an opinion, reducing groupthink and increasing the depth and breadth of the review, at best.
  • Second, because OOX plus ODF plus HTML provide a rich but focused ecosystem for developers
  • After all the years of complaining about lock-in, binary formats and lack of documentation, it is pleasant to be able to report that paradoxically it is the scale of OOX that is probably its main technical obstacle to acceptance at ISO: the amount of scrutiny that such a large spec can have is fairly limited. When a 10-page spec has a serious problem, it can be a show-stopper for standardization: when a specification for thousands of elements has some problem but thousands of things right, what should a reviewer (for a national voting body) do?

    I think the answer to a lot of issues with standardization (what should be standardized, what quality should it be, what implementations should there be, what buy-in should be required, what should be done if there are competitive standards, and so on) can be readily solved by going back to first principles. The first principle of standardization at ISO is that a standard is an agreement. The nature of the things to be agreed on when the technology is pre-existing (i.e. Office) is quite different to when new standards are made, either from nothing or by combining different developer’s best practises.

    Should your goverment use ISO/OASIS ODF or ISO/Ecma OOX or XHTML? Err…, yes. All of them, where they are appropriate. For converting archives of Word .DOC and .RTF documents into an XML format that retains fidelity, clearly OOX is the winner. For maximal interchange between applications and preventing application-specific formatting conventions leaking through, ODF is probabably the winner. For text which needs to have the maximum reach in different media, XHTML is the winner. For documents which have embedded data that non-COTS applications use and which will be re-targeted to different kinds of publications (not just the same publication in different media/styles) then making your own home-made schema (subsetting public vocabularies whereever possible) is the appropriate. Outside of that, it is a dogfight, and the top-dog will emerge over time I suppose.

    M. David Peterson

    AddThis Social Bookmark Button

    Got my invitation a few hours ago for MSN (or is it Windows Live? Seems like its branded MSN) SoapBox. I can’t link to the video on SoapBox and expect that everyone will be able to view it until such time as they open it up to anyone with a Passport/Hotmail/MSN/Windows Live account (I think that technically speaking these are all one in the same, though a Windows Live account doesn’t necessarily mean you have an equivalent Hotmail account, though that one should be obvious). However, similar to YouTube, I can embed the videos in a web page.

    As such, here is David Spade expressing his feelings in general towards the iPod,

    Michael(tm) Smith

    AddThis Social Bookmark Button

    mobile2.0 event logo

    The one-day-only mobile2.0 conference, November 6 at the San Francisco Grand Hyatt, focuses on “topics like the growth of the mobile Web / mobile Internet, open services, media sharing on the mobile, mobile widgets, mobile Ajax, content adaptation and disruptive innovations in the mobile space”.

    The fee for the event is just 45 USD, and the hosts are a couple of people who are quite active in work related to mobile access to the Web:

    Daniel Appelquist
    Founded MobileMonday London, helped to create the W3C Mobile Web Initiative (MWI), and now chairs the MWI’s Mobile Web Best Practices Working Group
    Mike Rowehl
    Blog tagline: “Ripping mobility from the clutches of telecom”, he co-founded MobileMonday Silicon Valley and continues to organize most of its events.

    Here’s the list of confirmed speakers:

    • Steve Bratt - CEO of the W3C
    • Charles McCathieNevile - Chief Standards Officer, Opera Software
    • Kelly Goto - Principal, gotomedia LLC
    • Peter Vesterbacka - founder, Mobile Monday Helsinki
    • Tony Fish - Author of Mobile Web 2.0
    • Aron Holzman - Windows Live Mobile
    • Rhys Lewis - Chief Scientist, Volantis
    • Hetal Patel - Web 2.0 Evangelist, Symbian
    • Arun Ranganathan - AOL
    • Mike Wehrs - AOL
    • Oliver Starr - Blogger, MobileCrunch.com
    • Andy Tiller - CTO of Cognima

    The site also mentions that there will be “additional speakers from Mozilla.org, Widsets and Google”.

    Kurt Cagle

    AddThis Social Bookmark Button

    I am sorry to be bringing this up in a technical forum, but I felt it’s too important to let go by the wayside.

    I’m going to deviate from my normal XML discourse to point out that the US has officially become a police state. On September 27, 2006, the Military Commissions Act of 2006 was passed by Congress, and is being sent to the President who is only too eager to sign it. This particularly poorly thought out act includes the following provision:

    “No court, justice, or judge shall have jurisdiction to hear or consider an application for a writ of habeas corpus filed by or on behalf of an alien detained by the United States who has been determined by the United States to have been properly detained as an enemy combatant or is awaiting such determination.”

    The definition of alien, elsewhere within the same act, is written so broadly that it can mean not only foreign nationals but also US citizens, a choice of wording that was quite deliberately made by the framers of the bill.

    Habeas Corpus - To have the body - is a very basic principle, but is, more importantly, one of the foundational principles put into the Constitution. It means that if you are detained by a federal, state or local police agent, that agent must announce that you have been taken captive within a limited period (usually three days), must announce why you have been taken captive, and if no crime is charged against you within that period you must be released.

    The principle exists for a very simple reason - without it, people can be arrested and made to disappear. It means that you can be legally detained for no reason other than the fact that someone felt that it would be better if you were not free, and it means that if someone is arrested they can be held indefinitely with neither trial nor access to a lawyer. It was the bedrock principle upon which nearly all law and order within the United States was based. It no longer exists.

    Fully legally (assuming that the Supreme Court does not turn it over), this essentially means that your Congress (if you are an American) has backdoored the United States into Martial Law. The president, or any agent of his choosing, can imprison you or your friends or neighbors simply because you represent a threat to them. That is what Martial Law is. The United States has only not had the protection of Habeas Corpus once before in its previous history, and that was during the Civil War. Lincoln declared Habeas Corpus invalidated for the duration of the war because he saw no choice, and one of the first acts of Congress after the war concluded was to restore it.

    Remember that date: September 27, 2006. It is the day that the United States ceased being a democracy and become, for all intents and purposes, a dictatorship.

    Kurt Cagle

    AddThis Social Bookmark Button

    The following is a transcript (or at least a prescript) of the talk that I gave at the AJAXWorld conference on October 4, 2006, looking at emerging technology in that space and focusing (not surprisingly for me) on the XML side of things. I also have a Powerpoint of the presentation if you want to see how cheesy I can get with my own productions. If you are interested in seeing a video of the presentation itself, check back with AJAXWorldExpo.com - they should have that up shortly (I’ll post a more precise link when they have it loaded).

    So, without further ado, AJAX on the Enterprise:

    Kurt Cagle

    AddThis Social Bookmark Button

    While I blogged the second day of the AJAXWorld conference, intermittent WiFi connections and my own business needs prevented me from getting much of it posted. Here’s the recap of all but my own presentation at the conference, which I will be posting shortly:

    M. David Peterson

    AddThis Social Bookmark Button

    ongoing � Practical Transparency

    Need For Speed � Even a nice clean well-known feed doesn’t quite solve the whole problem. Your typical feed-reader is set up to poll every half-hour or even less often, and there are those in the financial community who are not going to be happy with a potential half-hour’s latency in getting the news. �

    I can think of one simple brute-force way to approach the problem, and another that’s a little more sophisticated. The simple solution is, assume that everyone who really cares will want to poll that material-news feed every few seconds. So, you stage Jonathan’s feed, not on the ordinary blogging infrastructure, but on a hyper-fast cache that can take that kind of transaction load; there might even be a business opportunity here for some infrastructure player to offer this kind of special-purpose staging.

    If you want to get fancy, you could use something like the proposed new Atom-over-XMPP trick. The idea is that people who want ultra-low-latency feeds don’t poll, but set up a persistent connection to the provider’s server, which pushes entries down the wire the moment they become available. This is elegant in theory; in practice I’d bet on the brute-force polling approach, at least off the top.

    And if you want it to really work well, take Atom, APP, XMPP, RFC 4661, OpenSearch, and LLUP (Blip Messaging) and thats it — Problem solved.

    From my recent post to the LLUP mailing list,

    M. David Peterson

    AddThis Social Bookmark Button

    NOTE: The title? I’ll let you figure it out for yourself, though I will suggest that if you don’t already own each and every Massive Attack and Tricky album, then you really should consider changing that just as fast as you possibly can.

    For those that already know what I’m talking about, suffice it say…

    ‘nuf said ;)

    So Jason Kolb, both a good friend and professional colleague in whom I have a tremendous amount of respect for has been on a blog entry tear like none other over the past six months. If you haven’t already subscribed to his web feed, you really need to change that or get left behind by those who are, and as such, already know EXACTLY what I am talking about.

    So, with that… Do yourself a favor and snap out of that Karmacoma funk you’ve been in and Future Proof yourself courtesy of Jason’s latest entry,

    M. David Peterson

    AddThis Social Bookmark Button

    [NOTE: There’s a reason for choosing to attach such a lengthy title, so please forgive me for blowing up your feed reader of choice if that feed reader of choice doesn’t handle titles that better resemble short stories all that well. ;)]

    So instead of attempting to describe the experience I just had, instead, with permission from Sylvain, I am simply going to copy/paste the conversation that just took place that has brought into a whole new light what the Lesser General Public License is all about, and why I think that it flat out ROCKS! (thanks for helping to bring this into a greater understanding for me, Sylvain!)

    Firstly, and understanding of what Kamaelia is all about,

    A framework providing the nuts and bolts for building components. A library of components built using that framework. Components are implemented at the lowest level as python generators, and communicate by message passing. Components are composed into systems in a manner similar to Unix pipelines, but with some twists that are relevent to modern computer systems rather than just file-like systems.

    Secondly, the conversation that lead to my recent epiphany in regards to the greatness (or at least potential greatness) of the LGPL.

    M. David Peterson

    AddThis Social Bookmark Button

    [NOTE: To fully grasp the meaning of the title, please see me make a complete fool of myself (yet again ;)]

    So whats got me going all BiPolar in Love with Kim Sarah?

    Behold,

    Kurt Cagle

    AddThis Social Bookmark Button

    Tuesday, Oct 3 at 3:00pm

    Live from AJAXWorld

    JSON: The Data Format of the Stars and JavaScript: A Language of Many Contrasts

    Douglas Crockford, Yahoo! and evanglist for JSON.org

    Douglas Crockford is a fascinating speaker, and is one of the major luminaries in the JavaScript field, with a long career (and a Wikipedia entry yet), and the developer and principle evangelist of JSON, a standard for transferring data objects that use a low bandwidth JavaScript like syntax.

    He had two sessions “JSON:The Data Format of the Stars” and “Professional JavaScript”, I caught the first session late, unfortunately (business intervened) so won’t attempt to summarize it here, though I plan to cover it far more in an upcoming article I’m writing on JSON.

    There are a lot of useful pieces of information in his talks, but most of these can be found at http://javascript.crockford.com, which I would heartily recomment that you bookmark if you do anything related to JavaScript.

    Okay, signing off for today - I will be posting the contents of my own talk tomorrow, and hope to continue coverage of AJAXWorld.

    Kurt Cagle

    AddThis Social Bookmark Button

    Tuesday, Oct 3 at 12:00pm

    Live from AJAXWorld

    AJAX and the Copernican Revolution

    David Temkin, Founder of Lazlo Systems

    • Ptolemy view
    • Server side has retained the big money while the client is given peanuts.
    • At the top is the server architect
      • Architecture-heavy, user interface light
      • Far from the user, close to the IT decision-maker
      • Lots of talk about scalability, “business logic”, and other enterprise keywords
      • Computer science degree
      • Architecture astronauts are rewarded
    • At the bottom is the web front-end developer and designer
      • Low pay
      • Far from control
    • Client centric software is user-centered software
      • Rich clients are programmers running in the browser
      • Programs are written by developers, not page designers
      • These programs are UI-focused, but also make extensive use of back end services.
    • AJAX Spectrum
      • HTML Page-Based Apps
      • DHTML Enhancements
      • Simple AJAX Apps
      • Advanced AJAX apps
      • Rich Clients
    • Contention - in order to create more user-centric apps, it is necessary to move away from the page paradigm.
    • Contention - client-side applications end up becoming the holder of the session state, which significantly change the server architecture as wel.
    • Back-to-Front Development
      • Start with abstract domain knowledge, objects
      • Create services that encapsulate functionaity
      • Tell the page designers to make it pretty
      • Mature frameworks, tooks, and processes are in place to support it
      • Start with the user experience (the design)
      • The functionality is largely client based
    • The Business is on the Glass
      • The glass is where the user meets applications
      • This is the critical interaction; leaving the UI to last reduces chances of business success
      • Uptime, scalability, and availability are important, but so is usability
      • The industry needs developers and IT managers who are oriented toward the client and the user experience
      • It is these technologists who will drive the next wave of software
      • The real winners in the Web 2.0 movement are those who are able to handle the clients
    • Perspective is worth 80 IQ points - rich clients providde an opportunity to rethink our perspective and rebalance how we design and develop applications.

    Comments: Almost didn’t go to this one, but am glad I did. David is an engaging speaker, has obviously been through the trenches on this. I find I agree with him just about on everything — we are seeing the rise of client-centric programming and it will change the world!

    Kurt Cagle

    AddThis Social Bookmark Button

    Tuesday, Oct 3 at 11:35am

    Live from AJAXWorld

    Enterprise Web 2.0 - Real Customer, Real ROI

    David McFarlane, Coach Wei, Nexaweb

    1. Enterprise Web 2.0
      • Unified, simplified and open
      • Robust , reliable and secure
      • Online, offline or mobile
      • Legacy and SOA integration
    2. Barriers to Web 2.0
      • Risk, Time and Cost? Especially rewrite risks
      • Which client technology to choose?
      • Tools and Training? Can skills and tools be leveraged?
      • Industrial Strength Solution? Is it secure, reliable, manageable, integratable
    3. Enterprise IT Concerns
      • Client Tier - AJAX, Java .NET
      • HTTP Web Tier
      • Serer Logic Tier
      • Integration Tier
      • Data and IT Systems
      • All of them have too much coding
    4. Web 2.0 Reference architecture
      • Service Consumption Layer
        • Client Tier - AJAX, Java .NET
        • HTTP Web Tier
        • Server Logic Tier
      • Service Providers
        • Server Logic Tier
        • Integration Tier
        • Data and IT Systems
      • All of them have too much coding
    5. Web 2.0 Implemenentation Blocks
      • Enterprise “Mashup” Server
      • Internet Messaging Bus
      • Universal Client Framework
    6. Coach Wei then brings speaker from Toshib showing component systems that are being developed to handle forency exchange system.

    From Coach Wei, “The one fundamental flaw of the Internet is that it is not reliable.”

    Some very interesting work in component systems from Toshiba, showing how AJAX based systems there are developing. Very utilitarian (and all in Japanese of course, which has the effect of highlighting the visual interfaces)

    Even in Japan, scheduling and calendaring seems to be the killer app for AJAX.

    Kurt Cagle

    AddThis Social Bookmark Button

    Tuesday, Oct 3 at 11:15am

    Live from AJAXWorld

    Open Laszlo Demo

    Lazlo Systems

    1. Laszlo fits within the RIA space (Full Page Experience) rather than DHTML Enhancement.
    2. Open Source product
    3. Demos -
      • Rich Web Email client - (very impressive piece) animation suport, smooth transitions, data binding, components are very intelligent
      • Pandora - online music player, built by third party company (part of music genome project)
        Gliffy - Laszlo based diagramming project (very nice).

      Indicative of adoption

    4. LZX is an XML markup language (XML+JavaScript) (edited in Lazlo Explorer). Server handles compilation, then generates output to appropriate devices.
    5. Support for databinding and app constraints. Component oriented.
    6. “Legals”- multi-runtime architecture project. Availiability : Source/nightlies w/ beta coming soon, developer’s release this year.
    7. Laszlo Calendar app is very impressive, especially since it is being built on DHTML runtime.

    Some comments - my jaw has dropped here. There is some incredible work done here, and I can see where this is giving other companies some real heartburn. I’m already rethinking some applications I’ve been working on in order to work against the environment. Check these guys out and help contribute to this fantastic OSS project!

    Kurt Cagle

    AddThis Social Bookmark Button

    Tuesday, Oct 3 at 10:00am

    Live from AJAXWorld

    Interview with Chris Burmester, Krugle.com

    One of the things that I love about conferences is that often times it is the hallway conversations as much as the sessions themselves that provide insight into what’s going on with the cool technology. One of the more intriguing such conversations was with Chris Burmeister, senior developer with Krugle.com, who I talked to while waiting for the next session to begin. Krugle.com is quite fascinating - it’s a google like search engine that’s specifically targeted towards retrieving open source code, both from the web and from collections such as O’Reilly’s Safari site.

    Chris walked me through its paces, including showing how it could be targeted towards retrieving code listings specific to a given language, with keyword searches that can be keyed towards retrieving function names, class names, comments, and other specific code elements, across a few dozen different languages, and includes means of pulling whole projects out from SVN and CVS trees with just Keywords I

    Live from AJAXWorld

    AJAX By The Numbers

    John Evans (jandrews@evansdata.com), Evans Data

    Lot’s of data here, so if I don’t catch everything I’ll see what I can do.

    1. Developers are beacons of change, constantly seeeking new ways to solve problems … (I like that)
    2. By 2007, Asia/Pacific and Africa become the heighest percentage of developers (40% Asia, 30% Africa)
    3. Top 15 countries comprise over 2/3 of the global developer population. NorAM 2.9Mil
    4. AJAX - 1.7 million developers using, within another 3 million developers evaluating.
    5. Latin America has the highest current adoption of AJAX.
    6. Emerging Market AJAX Usage - Brazil is heaviest, China catching up by 2007.
    7. Developer segment are developers who develop custom apps outside their company, includes System integrators.
    8. SMB sees slight more usage than enterprise, but at least half of all developers expect to be using AJAX. (50% of all devs)
    9. AJAX Use highest among Software design, IT consulting, Education, Information,, most of the rest are in 2-3% range.
    10. 73% of respondants work in small to medium sized organization with less than 250 employees.
    11. AJAX Respondents
      • Develoeprs 39%
      • Architects 14%
      • CTOs, CIOs and Directors, 10%
    12. Temam Size 1-5 (65.4%), 6-10 (12%)
    13. 1/3 of AJAX respondents are developing B2B/E-Commerce apps vs. 24% of the general developer pop.
    14. 37% are developing B23C/E-Commerce, vs 25% in general dev pop.
    15. Vertical Applications
      • E-Commerce 25%
      • CRM 22%
      • ERP 16%
    16. Web Services Types (B2B and Departmental)
    17. Programming Languages (XML 74%), Java (51%), C# (39%)
    18. Scripting Languages (JS 90%, ASP.NET 49%)
    19. Eclipse is used by 17%, with as many as 40% by next year
    20. Reasons for AJAX
      • Functionality 60%
      • Interactivity 20%
    21. Inhibitors - Skill sets 34%, Incompatibility of Browsers 22%
    22. 32% use Flash to extend AJAX (but only 4% in FLEX/AJAX Bridge)
    23. 16% currently use Atlas, +11% in the next 6 months
    24. SAJAX 9% currently use, +11% in next 5 months
    25. 11% in Mobility Space +12% in next 6 month.
    26. APIs
      • Google 40%
      • Microsoft 25%
      • Yahoo 20%
      • Amazon17%
    27. 4 in 10 developers are quite bullish about AJAX.
    28. Krugle (see above)
    29. Glbal developer pop is 12.8 mill, 17.1 mil in 2009, US 2,600,000 dev.
    30. AJAX at 1.7 mil, +1.8 mil evaluating it

    Final key: 40% expect their AJAX use to increase dramatically by 2007

    Kurt Cagle

    AddThis Social Bookmark Button

    Tuesday, Oct 3 at 9:15am

    Live from AJAXWorld

    Adobe Presentation

    Aarrrgh!! I missed Jesse Garrett!!! I’ll try to catch an interview with him later…

    Adobe’s presentation is of course focused on Flash and their core AJAX FLEX support app.

    The Programming Model

    • Expressiveness - Use of a vector language rather than XHTML (hmmm, bet its not SVG)
    • Real Time - Collaborative performance is critical
    • Rich Media - Want multimedia support
    • Performance - JavaScript is just not good enough
    • Offline/Desktop - We need to be able to be offline and outside the browser (I disagree somewhat on the latter, but this is their pitch).

    He provides an insurance application demo (I wish I had Adobe’s resources to put together demos), including a nice vector graphics piece showing the collision incident.

    The second demo, using the Flickr API is a less impressive piece. (His comment - you can’t do vector graphics natively in the browser … my comment… except in Internet Explorer, Mozilla, Opera, Konquerer and Safari). He then jumps to a google map with a flash overlay showing an online rich media streaming and message dispatching (video conferencing on the fly). Sweet, though I have to wonder about latency. The next application is a dashboard showing charting components, along with collaboration API.

    Financial services (mortgage application) - components that expand and contract, then shows a messaging application for remote desktop sharing.

    The impressive app was loading 20,000 rows of mySQL data into a component, then sorts it under half a second. Very nice. He then proceeds to snapshot the dataset, running in its own standalone component - a stand-alone flash/flex app called Apollo, more info coming.. Not surprising, though welcome, but I have to wonder if this is the shot across the brow to Microsoft saying that Adobe’s getting into the app development space.

    He finally shows Flexbuilder, running inside of eclipse, doing drag and drop of components, including smart datagrid which generates MXML in the background. He pulls in an array and a data service, then makes it editable … then proceeds to show that the data is auto-updated (sweet, and gives me some ideas of my own). He tries very hard to say that FLEX and AJAX are not competitors (hmmmm… me thinks he doth protest too much, but its still an impressive app - combining FLEX with a DOJO update app). Very good presentation.

    Kurt Cagle

    AddThis Social Bookmark Button

    I’m sitting here in my hotel room the night before the AJAXWorld conference kicks off in Santa Clara, California. It’s an event that I’ve been looking forward to for some time, both to get a sense of what is happening in the development community with this technology and to help (hopefully) to shape those technologies to a certain extent myself.

    Getting down here has been … challenging. My ancient Saturn, battered and beaten and held together by duct tape (quite literally) has been coughing and wheezing on its way down, including a rather embarassing episode where the engine overheated and started spewing steam and smoke just as we pulled up to the border crossing station at Blaine, Washington. I want to thank both the American and Canadian border agents for helping me push the poor thing off the side of to the side of the road and for expediting our trip through as a consequence. This is the car’s last hurrah, alas, and I suspect that I’ll be driving a new one by next week.

    I did meet the instigators of this particular grand fete, including Jeremy Geelan, Sr. Vice President of SYS-CON and Dion Hinchcliffe, Editor in Chief of AJAXWorld Magazine, both true gentlemen, who along with editor Kate Allen were taking a short breather after having pulled off the AJAX Boot Camp for the day. I am extraordinarily impressed with all of their efforts thus far — its been fascinating watching this process come together in a truly professional manner, and I’ve seen a lot of conferences over the years.

    I will be blogging the next two days (Tuesday and Wednesday) of the AJAX conference, though it’s unlikely I’ll be able to manage the blow by blow account that I did for XML 2005. I will see if I can at least provide a comprehensive view of the sessions that I will be attending, however. I am also speaking on the subject of AJAX on the Enterprise Wednesday morning, and plan to put the session notes for that up on this blog as well.

    This should be a major and influential conference, and I am looking forward to being a part of it. AJAX has come an incredible way in a very short time, and the ripples of the technology are only just beginning to be felt. More tomorrow …

    M. David Peterson

    AddThis Social Bookmark Button

    Spam on O’Reilly Weblogs - O’Reilly Linux DevCenter Blog

    Yo bloggers- you can delete the spam comments to your blogs. Just go to the same place you create your blog and visit the ‘Comments’ section. You have mighty delete powers over your own blog comments. Please don’t give spammers free hosting.

    Just to give you all an idea of just how bad of a problem this is, The following five screen shots taken at a screen resolution of 1280 x 1024 (trimmed to accomodate toolbars) represent each and every “comment” received in my inbox from 17:35 to 21:50 MDT this evening…

    Enjoy!

    Advertisement