Brother, Can You Spare a Metadata?

Metadata is expensive.  While management of metadata is just as important as generation, I will focus on the creation, or more precisely collection, of metadata because you can't manage what you don't have.

Most efforts to obtain metadata focuses on the creation phase of information using forms, tags, and inferences.  Unfortunately, creating metadata this way impeds creation of information by degrading user experiences and increasing knowledge requirement.  Emergent Markup Languages addresses some of the issues, but not significantly enough and not at all when forms are used.

A powerful way to generate metadata is by donation as the title of this post suggests.  By donation, I mean consumer of information (i.e. user viewing a webpage) voluntarily contributes metadata about all or parts of the information on the page.  As donated metadata accumulates over time, value of information goes up.  This technique can be applied to only certain types of applications, but I believe it can be a powerful tool for generating metadata cheaply.

How to encourage such contribution is a HCI problem and can be discussed in another post some other time.

Zeroconf Rising

I love the zeroconf stuff and am happy to see more open source zeroconf projects and products emerging.  Why?  Because my instinct tells me this area of technology is going to explode soon.  Mix zeroconf with location services and WiFi.  Kaboom!

Check out the screenshot of Howl on right by Swampwolf (via je_apostrophe via Ted Leung).

For information on zeroconf and related IETF specs, go to http://www.zeroconf.org.

Technical information about Rendezvous, Apple's Zeroconf implementation is here.

More zeroconf infomation:

If you have links to other zeroconf implementations, please let me know via comment.  I also haven't been able to locate Howl source code on Swampwolf website.

As Joe Cheap walked into Seoul's Yong-San district, he flipped his PDA on and queried his Bargainer 2.0 to see if any of the stores have the new Ding-a-Ring gadget for sale.  Finding five, he activates the Live Auction task.  Within a second, he receives five bids and direction to the store with the lowest bid.  As he strolls to his destination, he receives a 'they'll kill me if they found out' offer from another store via IM.  Joe taps on cancel auction button and turns around with a smile on his face.

Meanwhile Doug Hardball arrives on a bicycle and activates his PDA to harvest the local prices which are not available outside this district.  Scanning the prices, he notices that the prices are higher than the district that hired him.  As Doug moves on to the next shopping district, Sam Sneak, the district's disinformation manager snickers.  He tagged that harvester just last week on instinct.  Now, the harvester is carrying away fake prices with stealth beacon tags that will help him collect evidence to present to the national e-commerce association.

Java3D Dead?

According to this java.net weblog post by Chris Adamson, Java3D is done for in favor of JOGL, an open source Java binding for OpenGL.  JOGL, now why does that sound familiar?

I wrote an open source Java binding for OpenGL way back in 1996 called JOG (Java OpenGL).  After releasing it, I moved on and it eventually got lost during one of many ISP changes.  I am sure I still have the source code somewhere on a floppy, but I barely remembered its name.  Only trace of JOG left on the web was this OpenGL Language Bindings page which was updated last in 1997.  I wonder if any of my JOG code made its way into JOGL…

XML Namespace Ownership

During a discussion with Mark Pilgrim over some Atom extensibility issues, I ran into some questions which are likely to be controversial:

Who owns a XML namespace?

A XML namespace URI is supposed to be just an opaque string that is unique enough to identify a namespace.  It is not a place so the question of ownership is different the question of link ownership.  I suppose one could apply trademark or copyright laws to XML Namespace URIs.

If one can exercise legal control over XML namespaces, what are the legal implications of standard organizations like W3C owning key XML namespaces?  I am not a lawyer, no can I think like one so I'll punt this question.  But we are likely to see clauses appearing in specs related to XML namespaces.

Should XML namespaces be Open or Closed?

An open XML namespace allows third-parties to add new names according to a strict naming design pattern.  Are there use-cases where there is a need for XML namespaces to be open?  What about nested XML processor plugin frameworks that uses XML Namespace URI?

There is also the question of rogue tags being carried as a hidden beacon of sort across the Net and into Intranet.  If unknown tags are ignored by default everywhere, what are the security and legal implications?  If my web service logs all invokations and someone slips in copyrighted or illegal information into a SOAP call, am I liable?  There is a whole new type of cross-scripting issues in web services.

An Example of Emergent Markup Languages

This morning I came across a great example of Emergent Markup Languages I posted about in the past while scanning through Marc's blog.  In a post about social webware  and Burning Man, I saw this paragraph:

We'll have to provide a small extension to MT so that MT can help people semantically tag their blog entries with <want> and <have> as well as <geo:Point> and <geo:Time>.

Wow.  What a powerful pair of emergent meta tags or metags.

Update #1: A recommended reading, Sean McGrath's Zen and the Art of Motorcycle Manuals.  Thanks to Phil Wolff for the reminder.

XHTML: Technical Masturbation

Emitting XHTML instead of HTML is pretty popular among geeks these days and Pie/Echo/Atom (PEA) crowd is no exception.  I don't blame them because I am drawn to XHTML as well like a moth to the fire.  Unfortunately, it amounts to technical masturbation because there are no real benefits to using XHTML.  Even worse, using XHTML can be down right harmful.

Beside the subtle semantic differences between XHTML and HTML, DOM differences, lack of clients, round-trip problems, parsing problems, editor problems, and proliferation of invalid XHTML problems, the usability issues looms above them all.

You see, many people still write HTML by hand and will continue to do so for at least another ten years.  Same can be said about XHTML.  But XHTML is XML, meaning you can't just put elements anywhere like you used to in HTML.  It seems fine now because browsers think they are looking at HTML.

When and if XHTML browsers become popular, will they be as forgiving as HTML browsers with structural mistakes?  Answer has to be Yes because people want browsers to be a Tool, not a Judge.

Can people learn to write valid XHTML by hand?  My answer is No.  People can easily remember names of often used tags and attributes.  They can also remember certain common structures like <head> and <body> inside <html>.  But they just can't keep the whole XHTML schema in their head nor put up with having to look up all the time or get caught up in a viscious edit and validate cycle.

So, I consider XHTML to be the centerfold geeks are masturbating to.  I am a geek too and find XHTML to be sexy enough to ogle.  But I don't expect it to cook my dinner nor raise my children.  It's just an insert.

Why RDF Sucks

RDF sucks because its proponents want people to use it directly.  RDF syntaxes has little in themselves except as possible normalized data storage format.  Please don't throw nuts and bolts into people face when they are expecting knobs and buttons.

BileBlog

While most blogs are readable and many are informative, very few are enjoyable.  I ran into one this morning as I was looking around to see if there are any good open source Java blog tools out there.  The short answer is No.

BileBlog is a Java blog, meaning it is all about Java, by an apparently anonymous Java programmer named fate.  If he isn't anonymous, he must have a mile thick skin because most, if not all, of his posts are ultra-strength rants, strong enough to peel golden paints off saints.  If you take a some good observations and valid complaints, mix with some amusing bullsh*t generalization, and wrap them in colorful analogies, you have a BileBlog post.

I enjoyed reading BileBlog because, despite all the unnecessary extras, fate's posts scratched many itchy spots I have about Java technologies.   If you are into Java, go check it out and see if it scratches some of your itchy spots.  If you are an open source Java programmer, be sure to wear some protection before wading into it.