January 2003 Archives

Timothy Appnel

AddThis Social Bookmark Button

DJ Adams writes:

It seems that beyond carrying syndication information, RSS is a very useful and flexible way to get all sorts of application data pushed to a user over time. In the same way that a web browser is a universal canvas upon which limitless services and information can be painted, so (in an albeit much smaller way) an RSS reader/aggregator might also find its place as an inbox for time-related delivery of all sorts of information.

Amen DJ! As I asserted in a previous weblog post, Web Services We’d Like To See, I wrote Whether it is just assumed or simply overlooked, RSS is the most widely deployed Web service across the Internet. Granted, most RSS feeds have very simple interfaces with almost as simple backends that are unlike the Web services that usually come to mind. (Who says Web services need to be complex or sophisticated anyhow?) Under the principles of the REST architectural style that the Web was built on, RSS feeds do qualify. Consider that any site search engine becomes a Web service if it could emit results in RSS and the format’s potential in the realm of Web services becomes more apparent. It is this perceived potential that I’ve been an advocate of getting the RSS format’s house in order.

Numerous instances of the format’s value in service delivery are popping up in experiments around the network. Sam Ruby’s experiments with automatic linkbacks. Joe Gregorio’s RESTful interface for publishing to weblogs. (On an aside, Joe and I are co-conspiracers in starting a mailing list to discuss these very notions. Come one, come all.) DJ integrates SOAP and RSS web services in his experimental booktalk application script. Matthew Langham posted here about the use of RSS in deliverying business data. There is also the on-going discussion of remote commenting and tracking using RSS.

I’m happy to see the message spreading. Today Jeremy Allaire writes in An Explosion of Web Services?:

As I’ve been reading and writing today I’ve come to a somewhat obvious conclusion: there’s been an explosion of ‘web services’ in the past year, and it has nothing to do with SOAP, WSDL and such standards as described in the industry but with the ascending role of RSS and RDF as XML data and syndication formats.

Lots of industry analysts have commented that ‘public web services’ (e.g. web services that can be accessed and used through Internet-accessible public APIs) haven’t really happened. When one looks at RSS aggregation sites such as Syndic8.com it’s quick to see that there are thousands of “web services” out there for people today.

In an earlier post Jeremy points to some recent thoughts on RSS published by Tim Bray where he outlines some the issues: growing bandwidth consumption, settling on a media-type and eventual demise of RSS aggregators as a standalone application class. He concludes:

…[RSS feed aggregation] just belongs in the browser. It will take a couple of years for it to get cooked into mainstream browsers in a mature enough form to be usable, so the guys with the RSS-reader software should make hay while the sun shines and start figuring out their Next Big Thing.

He also adds anyone who does any kind of publishing software had better start offering a real-easy-to-use RSS interface and sooner rather than later or they’re just not going to be in the game.

I think gord says it best when he comments I am so impassioned by this recent explosion in open and well documented interfaces. We are so near a cascade level event with all of the emergent software that is evolving. And each new generation of software raises the potential interactions at an exponential rate. I concur and look forward to where this is all going.

Timothy Appnel

AddThis Social Bookmark Button

Related link: http://www.mplode.com/tima/archives/000187.html

The attempts to make UDDI useful and worthwhile keep getting more and more desperate. The latest is Extensible Resource Identifier (XRI) “a method for identifying any resource–from a Web service to a particular file–across different network domains, applications and transport protocols.” I don’t see what’s new here other then including UDDI into the mix — something that should have happened in the first place with URLs.

David A. Chappell

AddThis Social Bookmark Button

Related link: http://xml.coverpages.org/clippings200301.html#clip2003-01-14-c

Taken at face value, I think this means that MS is advocating the following:

  • Claiming that they have patents pending to pieces of the technology that are necessary to implement this spec.
  • Are willing to grant ROYALTY-FREE rights to the technology–provided that OASIS and other contributing TC members grant reciprocal rights to anything else they might themselves be holding patents to.

    It sounds like a reasonable to way to protect one’s investment–not necessarily any malicious intent
    here. Does anyone have any real experiences with regard to this to indicate otherwise?

    Dave

    As always, your thoughts on this are welcome and encouraged.

  • Micah Dubinko

    AddThis Social Bookmark Button

    The already infamous rant from Mark Pilgrim highlights a larger issue: when designing a markup language like XHTML 2.0, how does one decide what to include and what to leave out?

    Listening to those who ultimately will use the technology is, of course, critical. The trouble is, that different users have different (and quite often contradictory) requests.

    More is needed than just “listening”. There has to be a guiding princicple. The word ’semantics’ is often used in this context, but it has unfortunately become overused and hard to define. A better way to describe the principle is:

    A markup language should describe the author’s intent.

    This principle immediately clarifies countless cloudy issues. Daniel Glazman blogs about how he laments the <br> element, with this example:

    <p>Combien sont ces six saucissions-ci ? Ces six saucissons-ci sont six sous.<br/>Si ces six saucissons-ci sont six sous c’est six sous trop cher!</p>

    To analyze this, one needs to ask what the <br> element is inteded to accomplish. If the answer is ‘I inded for a line break to appear there!’, there’s a good indication that you’re addressing the wrong level. What would, for example, a voice browser expect to do with the <br>? At too specific a level, one ends up with presentation instead of intent.

    Another contentious area is around how to provide linking properties in a general way. Again, the answer is to let the author describe their intent in a general way, as I described in a skunkworks XML linking proposal.

    A few more examples. Should there be a a <hr>-like element, perhaps called <separator>? Yes, because separating two different pieces of text is an intent, one that can be readily rendered on the screen, voice, or print. Similarly, proposals for an attribute named xml:id fit in with the idea of exprssing intent.

    All in all, XHTML 2 is still growing and changing. The answer isn’t to push it aside, throw it away, nor even to rename it.

    XHTML 2 hasn’t radically changed recently. The best way forward is to stay the course. XHTML 2 needs a better-defined goal (ideally a requirements document), and continuous, incremental movement towards the goal. -m

    How do you express intent?

    Simon St. Laurent

    AddThis Social Bookmark Button

    Related link: http://www.sims.berkeley.edu/%7Epam/papers/xml2002.ppt

    For those of us frustrated by the Supreme Court’s disdain for the public domain, today is a pretty sad day. That doesn’t mean that it has to be the end, however. Pam Samuelson gave a keynote (PowerPoint slides) last month at XML 2002 that suggests other approaches to moderating the “property” in “intellectual property”.

    Samuelson started by examining the historical circumstances around copyright, the classic problem that “Copyright legislation most directly affects a small group of highly organized, well-financed firms”, and the general trend toward the “best laws $$$ can buy”, largely the same problems addressed by the Eldred case.

    Then her project did something different. The Samuelson Clinic joined the OASIS Rights Language Technical Committee. Instead of leaving these projects to vendors, who are generally expected to pursue their own interests rather than a public interest, the Samuelson Clinic (and the Society of Biblical Literature) joined the project, broadening the nature of the “rights” being described.

    In the initial proposal, the “rights” were much more on the order of “permissions” - it’s always tough to argue against metaphors based on rights, even when it’s not clear whose rights they were. Samuelson pointed out a whole range of questions about first sale and fair use that still have to be addressed, as well as possible patent issues on the whole scheme.

    Samuelson explored how “Digital Rights Management” and its claim to only be licensing content rather than selling it marks a drastic change in the publishing universe, giving the owners of intellectual property far more control over its use than was ever previously the case. Building those assumptions into a generic rights language may lock the public interest out as effectively as a Supreme Court decision - and in a potentially widely-distributed way that’s much harder to overturn.

    (If you haven’t read her other presentations, there’s lots to learn.)

    At present, and despite the best efforts of people like Pam Samuelson and Lawrence Lessig, the interests of “intellectual property owners” seem to be triumphant. They control the material, they control the dollars, and with terms like “Digital Rights Management” they control the terms of the discussion. It seems like the the discussion, technical and otherwise, might be the right place for interested members of the public to start fighting back. Call it what it is - “Digital Restriction Management” - and work to ensure that such mechanisms don’t erode the existing rights of the public.

    Know of other technical projects that may be endangering the public domain?

    Timothy Appnel

    AddThis Social Bookmark Button

    lazy \La"zy\

    1. Disinclined to action or exertion; averse to labor; idle; shirking work. –Bacon.
    2. Inactive; slothful; slow; sluggish; as, a lazy stream. The night owl’s lazy flight. –Shak.
    3. Wicked; vicious. [Obs. or Prov. Eng.] –B. Jonson.

    Source: Webster’s Revised Unabridged Dictionary

    I’m all for the concept of the LazyWeb and I’m quite excited by its potential. Shelley Powers put it best when she wrote I think we’re seeing a new form of open source development, based on technology developed for the community and its immediate, expressed needs. A case of community searching for technology rather than technology on the hunt for a users.

    Lazy doesn’t seem to be the word for it because members of the community describing its needs are taking action requiring some work to clearly articulate their need.

    In his article covering the LazyWeb and its significance, Clay Shirky explains that term first coined by Matt Blackbelt Jones initially meant If you wait long enough, someone will write/build/design what you are thinking about. The concept has since evolved to mean I describe a feature I think should exist in hopes that someone else will code it. The concept has evolved, but the name has not to reflect that change.

    I’m actually not sure what the right term is, so I suppose in essence this is my description of a need — the need for a more appropriate term. The term seems like a slight that doesn’t exactly encourage participation for those who are unfamiliar with the concept. (A form of Developers Have Blind Spots?)

    I’m the type of person who reads a request and develops something. Community software development needs more input from users and needs to encourage their participation anyway we can — like not describing them as slothful or the like.

    Is lazy the right term or not?

    Simon St. Laurent

    AddThis Social Bookmark Button

    Related link: http://www.microsoft.com/hardware/keyboard/wodbt_info.asp

    While I’ve not always been a fan of Microsoft’s software, I’ve been pretty consistently happy with their hardware. Now they have a very interesting looking Bluetooth keyboard/mouse combo - or do they?

    I’ve heard rumors that this hardware really does exist, but all I can find is the mouse, and the keyboard only seems to come in the combo package. The keyboard part’s the one that’s more important at the moment, of course!

    On the other hand, CompUSA and BestBuy - Microsoft’s “buy now” partners - don’t have the combo with keyboard, and Best Buy’s site won’t even let you order it. My local Best Buy has a label on the shelf for it, but no display, no stock, and three on order for a long long while. Other retailers (Staples, OfficeMax, PC Connection) don’t seem to carry it at all.

    I’m very used to hardware disappearing as it nears the end of its life. I’m a little more surprised by hardware that’s been out for a few months (October?) but can’t be found anywhere. I guess I could go with a different wireless keyboard, but Bluetooth seemed worth exploring.

    Any thoughts? Is this ordinary, or am I right to wonder?Am I just looking for keyboards in all the wrong places?

    [Update: eBay has a few. Still, I’d prefer a more traditional retail experience on a gadget like this.]

    Any thoughts?

    David A. Chappell

    AddThis Social Bookmark Button

    Related link: http://biz.yahoo.com/prnews/030109/sfth041_1.html

    Finally we will have an open standards-based platform-neutral way of doing reliable messaging for Web services. WS-Reliability offers an asynchronous reliable messaging protocol at the SOAP envelope level.

    This is a very exciting project to be working on. At the moment it is a spec that was initially developed by a group of six companies (Oracle, Sun, Fujitsu, Sonic, Hitachi, NEC). We plan to take it to a standards body very soon and form a working group or technical committee. I can’t say which standards body until it actually happens, but we are going through that process right now. We are looking forward to participation from other vendors when that step becomes official. We are already getting contacted by numerous companies who are interested in joining in. Keep your eyes open for upcoming events.

    WS-Reliability includes well known characteristics of reliable messaging such as guaranteed delivery, duplicate message elimination, and message ordering. Delivery options such as at-least-once, at-most-once, and exactly-once are available. Things like message expiration and delivery retries are also possible.

    WS-Reliability is a SOAP-based asynchronous reliable messaging protocol. This means that the spec defines a set of SOAP envelope headers that govern the behavior of the senders and the receivers. While an HTTP binding is provided, WS-Reliability is a level above, or independent of, the underlying protocol.

    There’s an article that I wrote about WS-Reliablility that is now posted at Web Services Journal

    A current copy of the spec, along with the schema, can be downloaded from the Sonic Software site, or any of the other participating companies’ web sites.

    Dave

    As always, your comments and feedback are welcome.

    Simon St. Laurent

    AddThis Social Bookmark Button

    Related link: http://simonstl.com/articles/civilw3c.htm

    A lot of developers seem to take the W3C as something that just happens. Specs appear, for better or worse, and we deal with them, for better or worse. It doesn’t have to be that way, though - there’s actually a lot that you can do to keep up with and even influence this hugely influential consortium.

    The W3C has a number of different and sometimes conflicting roles. First and foremost, it sees itself as the primary steward of the World Wide Web and the specifications that make the Web work. Just as important in practice, however, is its position as a membership-driven consortium, most of whose members are software vendors. This combination seems to make the W3C both hugely important and downright mysterious, since so much of the work that goes into W3C specifications is member-confidential.

    Whether you need to figure out what the W3C has to offer, want to contribute without going behind the veil of member confidentiality, or are curious about the prospects for a more active role working with the W3C, I hope my Outsider’s Guide to the W3C has something to offer. It’s derived both from my own experiences in dealing with the W3C and the W3C’s own publicly-available information. Comments and suggestions are welcome.

    It’s also the first piece of writing I’ve published under a Creative Commons License, the Attribution-ShareAlike 1.0 license. It seems appropriate given that I’m hoping to encourage communities to communicate!

    Do you have any interest in influencing the work at the W3C?

    Simon St. Laurent

    AddThis Social Bookmark Button

    Related link: http://www.devx.com/devx/editorial/10244

    Top ten lists are both fascinating and dangerous. A. Russell Jones, Executive Editor of DevX.com, put up a list of “The 10 Technologies that Will Help You Stay Employed”. It’s a pretty good set overall, but it’s also interesting to consider the order he chose.

    I’m always happy to see XML at #1, although the original article may have done that for some of the wrong reasons. (SOAP is really Web Services, not XML.)

    Just for fun, and staying inside that list, here’s how I’d like it to look: (The numbers are from his original list.)

      1: XML
      10: SQL
      6: Regular Expressions
      3: Object-Oriented Programming
      7: Design Patterns
      4: Java, C++, C#, and VB.NET
      2: Web Services
      5: JavaScript
      8: Flash MX
      9: Linux/Windows

    Information/data is at the core of all of this from my perspective, and I’d put XML and SQL at practically a tie, since they both reflect practices that are good at different kinds of data. From my odd perspective, people who have a deep understanding of data structures are more important for building lasting foundations of successful projects than people who know how to manipulate those structures, and OOP has really blurred those distinctions (I think for the worse). The apparently infinite longevity of some SQL databases as applications come and go seems to make that clear. (Most RDBMS systems have their own data/processing blurs, of course.)

    Regular expressions are kind of an inflection point between data and programming, and seem more and more to me like a key tool for pretty much any kind of information processing.

    Moving beyond that is the general programming notions you need for manipulating the information and building interfaces - OOP, design patterns, and then programming languages. Web Services feel to me much like an offshoot of programming than they feel like an offshoot of XML, so I’d really only be interested in people who had a grounding in the pieces above it. JavaScript seems to be fading, though it’s still important super glue. Flash MX and Linux/Windows are interesting/useful stuff, but I’m not sure I’d ever want to hire a programmer who didn’t know the other pieces first.

    In what I see and hear of supposed reality, I’d guess it looks something more like:

      4: Java, C++, C#, and VB.NET
      3: Object-Oriented Programming
      2: Web Services
      7: Design Patterns
      1: XML
      8: Flash MX
      10: SQL
      5: JavaScript
      6: Regular Expressions
      9: Linux/Windows

    Employers seem to value programming skills most of all. Web Services is a hot phrase, though no one really knows what lies beyond the acronyms. Design Patterns makes it sound like you know what you’re doing, but I don’t see it listed that often as a required qualification.

    XML is still up there, and likely to turn hotter as Office 11 and Open Office churn out a lot more XML, but it’s rarely given the prestige that “real programming” has. Flash MX is doing pretty well in the market despite my hopes. SQL is still critically important though hardly ‘hot’. JavaScript seems to be dying slowly, at least in respect. Regular expressions have never really gotten the recognition they deserve, and Linux/Windows seems like one of those really foundation things developers should have before applying for jobs for any of the rest. (Mac OS X may appear there someday as well.)

    Have your own order?

    Timothy Appnel

    AddThis Social Bookmark Button

    In the continuing the review and discussion of Safari, Jason Kottke asks the intriguing question why are Safari and Sherlock two different applications? Jason argues that there is little distinction between web browsing and using specialized interfaces for structured data. He provides screen mockups of Safari to illustrate his point. An active discussion in the comment boards follows.

    Back in September I wrote as the Internet continues to evolve into an 'Internet operating system'–programmable interfaces, ubiquitous access, and distributed computing resources–the document-centric browser is an awkward solution to a growing number of emerging needs. The browser is not dying by any means; it just needs a mate.

    Reading about Remote Application Development with Mozilla, the mod_pubsub open source project KnowNow kicked off and discussions like the one Jason is leading have me reconsidering my view. Does the browser really need a mate in as much as it needs to expand its range?

    Could browsers like Mozilla and Safari/Konqueror be the basis of simple lightweight structured interfaces for accessing network resources and microcontent? What if these browser brought bookmarklets and remote XUL to the forefront as equal partners to viewing webpages?

    More intriguing questions and experiments lie ahead.

    Does the browser really need a mate in as much as it needs to expand its range? Should browsers like Mozilla and Safari/Konqueror be the basis of simple lightweight structured interfaces for accessing network resources and microcontent?

    Micah Dubinko

    AddThis Social Bookmark Button

    Since I’ve started working at home, my home network has become quite hetergeneous. Several flavors of Windows, Linux, and soon Mac. What’s the best strategy for sharing files across different systems?

    My main file server is running Red Hat 8. It will be used mainly for backup purposes. I’d like to be able to easily read and write files from other Windows, Linux, and Mac systems.

    In the absence of other counsel, my first impulse would probably be to get Samba running. The Windows boxes would work great with this, as would other Linux boxes also running Samba. But SMB is such a pathetic protocol, there has to be a better way, right?

    What are my other options? NFS? WebDAV? FTP??

    Share your comments on how you share files across different platforms on your LAN.

    Timothy Appnel

    AddThis Social Bookmark Button

    In what must be the fastest, most in-depth, distributed product review in history, Apple’s new browser, Safari is being bashed about all over the blogosphere. Last night I was less than overwhelmed, but this morning I’m a little more happy. [Ben Hammersley]

    Ben is spot on. Based on the mob’s commentary (posts by Terrie Miller, Mark Pilgrim and myself provide numerous starting points) it would seem that tabbed browsing has been voted as the leading must-have missing feature from the new browser.

    Equally as noteworthy is the distributed conversation regarding Apple’s selection of an HTML rending engine and the mass debugging of its standards compliance.

    Apple’s use of the Konqueror/KHTML engine as opposed to Mozilla Gecko is a bit controversial (or more accurately intruiging), but in the long run will be beneficial to the space. Instead of one open source engine, developers will have more choice and the inheritent flexibility that two different efforts provide. (More specifically, these engines are likely to be essential in providing the basis to next generation Internet-aware microcontent applications.) There is some valid concern that another engine will divide the efforts of the community and introduce additional quirks and standards incompatabilites for designers concerned with universal access to work around. With Apple’s support and dedication, I’m optimistic that those issues will be surmounted — take David Hyatt and quick and open response to the community’s feedback.

    Once again the network effects of the Internet delivers.

    What are your thoughts on Safarai and its use of Konqueror instead of Gecko?