Post-mortem on my CIDOC 2012 -keynote
Last week, I gave a keynote speech titled "Love Thy Data (or: Apps Considered Harmful)" at the CIDOC 2012 conference in Helsinki. It appears the speech went well, and I got many comments afterwards; generally, folks agreed with my general message:
- Data has longevity, whereas apps and systems processing data will come and go.
- Take extra effort to share your data; make sure others can extend your data model(s)
- "Apps", the current craze, contribute to isolation of data (also the isolation of logic and presentation, mind you).
For commentary on the whole conference (including my speech), search for the #cidoc2012 on Twitter.
The conference was well organized and interesting. The venues were quite unique: I gave my keynote talk in the grand auditorium of the Finnish National Museum, and also listened to other presentation at Kiasma, the National Museum of Contemporary Art.
As for the background of this question of "isolation" of data (specifically, semantic isolation), I have had endless conversations with my colleague Ian Oliver abut the topic. Ian has now written a very nice series of blog posts on this, you will find them worth reading (part 1, part 2 and part 2½).
Death of Apps
Together with my colleague Ian Oliver I have been revisiting our old, favorite topic: The Death of Applications. This is continuation of the work we did at NRC with M3, and of the thinking I describe in my IdeasProject interview. Ian has also recently blogged about this.
So far, the thinking goes like this: "apps" are the concrete manifestation of locking data, logic and/or presentation in a proverbial "silo", and as such contribute to the fragmentation of information space. "There's an app for that" should be thought of as a curse, not as something positive.
Read Ian's blog entry on this, it goes more into details about our idea of "isolation", how apps isolate data and prevent access, reuse and integration.
I will give a keynote talk at the CIDOC 2012 conference in June, and will discuss these thoughts. This has been long time coming, and I look forward to discussing/debating this with folks.
Time to revisit Wilbur, part 2
I am happy to say that after I blogged about a Wilbur "redux", several people have already contacted me about the idea.
Now I have been thinking mostly what existing software I could use in the reimplementation. Last few years, many good quality libraries for Common Lisp have emerged. Here's my current thinking about the most critical bits:
- HTTP client: Drakma
- HTTP server: Hunchentoot (the Common Lisp version of OINK, on top of Wilbur, uses Portable Allegroserve, but I think we need to let go of that now)
- XML parser: several choices are available (CL-XML, S-XML, CXML), I have to figure out which one would make sense; I just need a "SAX-like" API for the RDF parser (which will be recycled from the Wilbur2 implementation)
- SQL connectivity: CL-SQL
- HTML generation: possibly CL-WHO, but the functionality I implemented for OINK earlier is actually pretty good and could be reused
Many other libraries also under consideration (URIs/URLs, EXIF metadata extraction, JSON, etc.).
On a slightly different topic, someone suggested I should consider reimplementing Wilbur in Clojure. Certainly then the availability of libraries would not be a problem.
Time to revisit Wilbur
I have been thinking about "revisiting" Wilbur, my Semantic Web toolkit implemented in Common Lisp. Wilbur has not been maintained for several years, and I have been doing most of my prototyping using Piglet, a reimplementation of Wilbur (in Python and C++).
If I were to redesign and reimplement Wilbur (probably as "Wilbur 3" this time), I would like to base it on
- Piglet database design (including support for aspect-oriented data), and
- best-of-breed CL libraries for various thing I might need (HTTP client, XML parser, etc.), rather than "rolling my own" as I did for the original Wilbur (because nothing existed at the time).
I also have some ideas about how to take the code written for OINK and use it as some kind of an "object-relational mapper" (or RDF equivalent thereof).
I was interviewed last week by kimmicblog, mostly about innovation in general and my work on Semantic Web in particular.