NOTE: Live-blogging. Getting things wrong. Missing points. Omitting key information. Introducing artificial choppiness. Over-emphasizing small matters. Paraphrasing badly. Not running a spellpchecker. Mangling other people’s ideas and words. You are warned, people.
He begins by projecting the Berkman Web page for this event. He says it should be doing two things. First, it should enable humans visiting the event to get info. Second, it should make the data available to other calendars. There is an RSS feed on the page, but the machine-readable data in it does not include calendar info. The calendar info is there, but as mere text, not marked up as data. RSS feeds tend to be used to syndicate content, not data.
Jon takes blogs as an example of how syndicated feeds work. There are blog sites like WordPress or Userland that publish blogs. There are services that aggregate the feeds from the publishers; they’re registries. And there are tools that let users subscribe to feeds. The feed that you publish is your authoritative representation of yourself. (Dave Winer’s Userland fits into all three, Jon points out.)
iCalendar is the RSS of calendars, Jon says. We’ve had this standard for 10 years. Fairly recently, you can publish right out of your calendar. So, Jon envisions an analogue to the blogging ecosystem that has syndication hubs for calendar information. The publishers are sites like eventful, eventbrite, and Google Calendar. Subscribers might be community calendars, events calendars, etc. Jon is especially excited about individuals publishing events.
There are already about 50 hubs. Most are geographic, but some are topical. Jon is writing for Azure (Microsoft’s cloud server), but it’s open source. Jon points to a Stanford page that has an ical feed. Then he shows what the hub looks like. The hub is not designed primarily for end user access, although it provides an html view. The hub Stanford is using (InMenlo) happens to use Google calendar as a way to display its aggregated data feeds.
For Jon, this app is a demonstration of some what he calls the Elmcity Principles:
1. Data has structure
2. It can be transformed. E.g., into a human-readable form, or into another data format.
3. It can be syndicated.
Jon then applies this to calendar info. iCal provides a structure. It can be transformed int XML, HTML, etc. But, he points out, the transformations aren’t necessarily reversible. E.g., it can be very hard to go from the Web view back into iCal. This is hard for many people to understand, he says.
He points to Jeannette Wing‘s manifesto [pdf]: “To reading, writing, and arithmetic, we should add computational thinking to every child’s analytical ability.” (‘Computational thinking’ as a phrase has marketing challenges, Jon remarks wryly.) Educators are feeling around the edges of this idea. E.g., Phil Libin said, in an interview with Jon, that the public needs to understand one-way encryption because it’s a fundamental concept.
Jon’s local high school publishes its calendar as a pdf file. Jon would like it to be in a transformable data format. More important, he’d like the high school to be teaching his children computational thinking. There are missing concepts:
Structured data can be represented in many ways
Some reps are best for people, other for computers
Machine-friendly data can syndicate without loss of fidelity
Data feeds and items have unique names (urls)
Urls enable “small pieces loosely joined”
Urls pass data by reference, rather than by value. Jon doesn’t think “digital natives” intuit this.
I should be the authoritative, controlling source of my data
So, why is this hard? We haven’t evolved biological intutions about what happens online. E.g., in the real world, at some point in our development we get the concept of constant volume: Pour a glass into a larger glass and it’s the same value. There are fundamental concepts in the online world that are non-intuitive that we ought to be teaching.
Jon sees ical hubs as an example of, and a prototype of, some of these concepts, and an opportunity to help educate the public about them.
For example, Jon says, that using the syndication model, a scientist could be publishing on her site that about which she is an authoritative source, and publish it as a feed that gets syndicated into publishers and conversations. Because she can control that data, she can show the effect it has had.
Likewise, you could publish a book review and syndicate it to various e-library sources.
Likewise, we’ve acted as if the gov’t holds data that we demand, without realizing that we’re the soure of much of that data.
“Ultimately, this all goes to the broader theme of identity,” Jon says. Can we look for opportunities for ourselves to be the authoritative sources?
Q: Do you see a common pedagogy for approaching science, government, etc.?
A I think there are a handful of common principles.
Q: 100 yrs ago someone might have said citizens need to be conversant with how electricity works. But that shifted to a small number of people. Likewise for the pubsub and RSS models…
A: Yes, this is one of the breakthroughs of Facebook: It’s not hitting me over the head with “subscribe” buttons.
Q: How do the halves of your talk go together: The need for cal hubs and the need for computational thinking skills? What about our use of calendars demonstrates that need?
A: My local newspaper would love to have a comprehensive view of what’s going on in the community. Papers fail at this because the architecture of the solution is flawed: a central database with a single owner, and contributors bringing their facts to the database. …
A: But we’re using the old tools because the tools are simple. It’s easy to print out the HS calendar pdf. It’s not because of a lack of comprehension…
Q: (1) Ten yrs ago, the HS principle didn’t know what a pdf was, didn’t know how to post a blog, etc. (2) Why not scrape calendar info off of sites…
A: It’s being tried.
Q: Howard Rheingold is working on a book on digital literacy. And it can be difficult to the spidering/scraping because the sites haven’t bought into that.
Q: At the W3C we used to make the same sorts of pleas, e.g., separate content from data. People would push back that people won’t do it for themselves; we have to give them the tools. The kids today don’t know html. There hasn’t been a new literacy. Is it a marketplace issue? I.e., if you make it easy to use the tools, people will use them.
A: The end game (Jon hopes): when you’re born you’re given a cryptographic key to a cloud service, and that’s where your stuff goes. You control it and assert policy over it. Born with a personal data store.
Q: What are the limitations of ElmCity scaling? How can ical scale with all the language, infinite subjects, etc.?
A: The same way the Web scales.
Q: How tied is it to Azure?
A: The way a Google app is tied to the Google app engine.
Q: How do you keep loops from forming? I.e., someone re-syndicates…
A: Ical has an idea of a unique id for an event. The data being passed by reference is “uniquely minimal.”
Q: What determines the authoritative event?
A: The hub is a registry of feeds. It’s curated by someone who has authority to decide which feeds to include.