Semantic Squirrel:About
From Semantic Squirrel
Contents |
What is a Squirrel?
Squirrels exist to hoard data. The data they hoard is produced by the normal business of the applications and other activities of computer (and other systems) users. There does not have to be any conceivable objective for hoarding. As currently proposed, they get data on a periodic basis, which will often mean they hoard the delta per day. If this is the case, they may also hoard periodic index hoards. Squirrels come in different shapes and sizes.
- Copy data direct from an app's config to the larder;
- Query config stuff;
- Query an app for appropriate data;
- Be a shell script (or equivalent) or a plugin for an app;
- Query web sites;
- Query other offsite stuff;
- Be part of a squirrel-aware app.
- What they all have in common is that they are all about incidental knowledge acquisition, requiring no (or at least very little) deliberate activity by a user.
- Also, they do as little as possible to the data before hoarding it.
Firstly, this means that the likelihood of losing information is reduced (it may turn out the layout of an xml config page actually has some important meaning).
Secondly, we might never use this data (just as a squirrel may never find the hoard again), so we should leave just enough to be able to understand it later. If we do come along and process it (propagate?) into something more useful (a knowledge tree!), then we put it somewhere else, such as a RDF store (conservatory!), so that it can be widely used.
So never do anything unless/until you need to, and then only do it once.
In fact this is the principle of Lazy Evaluation (Henderson)
Squirrels will need to specify things like:
- Hardware platforms
- OS
- Input Application
- Output format
- Any associated propagator
- along with any version numbers or ranges of versions.
- Of course, in the end we need to do proper service specification, and process specification, etc..
Introduction
Some notes
Technology intercept.
Gartner: Put data away for the Plateau of Productivity after the coming Trough of Disillusionment.
Specialist knowledge - squirrel-writers may know about app but not SW - SW experts know SW but not app/platform.
Private data.
Generate data that SW apps can use.
Squirrel origin, das, swh
Terminology
It is hard to know how far to push the squirrel terminology.
Squirrels (ground, flying, tree; red, grey, pine,...).
They live somewhere (dreys, dens)
put away (hoard)
things (nuts, cones)
in places (middens, larders, stockpiles, or scatter-hoarding).
They have territories.
They are called babies, infants and juveniles before becoming adult squirrels.
Lots of them live in Lafayette Park, DC!
In the spring, the nuts can germinate. We can put them in a propagator to make it happen.
Here, words have been chosen, for the moment.
The Semantic Squirrel Web Site
So I see scope for a community of squirrel-builders, along with the associated propagator-builders and ontology designers, each of whom brings their own expertise. Squirrels are both platform-dependent and often application-dependent, but the structure (or rather lack of structure) of the hoard will mean that the entry cost of building a squirrel or propagator is low. Of course, over time some standards will develop for primitive data formats, just as I use ical and GPX XML in my hoard.
These components need to be gathered on a site (semantic-squirrel is proposed), so that the collaborative activity can begin. The sort of thing SourceForge provides, with awareness of platform and status/quality of components is a good starting point.
The current intention is to use GForge for this cooperative activity, especially as I am now told (srg) that there is an associated Wiki. Any better suggestions gratefully received. Now using MediWiki!
There will be a need for a front end (similar to Fink Commander) that lets people choose the squirrels they want on their system.
Issues
Where is the larder?
Where is the conservatory (RDF store?)?
How to group nuts? - By day?
How often - what period for what nuts?
Privacy. It should be possible to squirrel highly confidential data away - this system is for my personal use.
Privacy. Am I permitted to record sound and/or video for my personal use?
Where are the Propagators?
Where are the Onologies?
Disk Space! I find that most of my metadata is less than a 1 Meg. So a day of hoard is under 10 Meg. 3 Gig for a year is not a problem. Where I am gathering more data (photos, files, audio) it may yet become a problem - I would guess that video may become a problem.
How it Works on my System (or will)
There is a crontab that runs scripts. Some, such as the network config, run every 5 mins. Others, such as my Safari history, run once a day. They put the data in a directory called "today". Around midnight the rollover script moves "today" to an ISO-date labelled directory, and creates a new "today". Later, some other (offline) apps, such as my GPS tracker, may squirrel data into older folders.
I am currently squirreling the following (on my Mac, so Mac apps), using some very simple squirrels:
- Safari: History, Bookmarks
- iTunes: Library
- Entourage: today's in and out email, calendar
- Address Book
- iTunes: Library (yes, all of it, but only the metadata)
- the MAC address of my access point, plus the IP address after de-NATing - uses swh's server
- Weather: 6 hourly local record from http://www.nws.noaa.gov/
- Mail: today's in and out email
- Files: All files changed today
- GPS: the days's tracks (I keep it with me at all times)
- iPhoto: any taken that day
- Sound: I use Audiocorder to record what my laptop hears.
- Video: I wanted to use QT Pro for this, but it seems to be lost in a fire at the moment :-)
I still need to put some data away by hand - this is why I need other people to write squirrels! Also, my squirrels are very primitive - they simply grab a huge chunk of data, and they are not robust to any faults.
One week of data of this that I am happy to make public is available, so that propagators can work on something if they want.
Ideas for uses for Nuts
- Giving me the context for the next meeting.
As I leave for a lecture (on any meeting), the program looks in the diary to see what I am going to and where.
It then looks back in the nuts to find out when was the last of the same sort of meeting.
It know how long it will take to get there, so it plays the last segment of the last lecture (or meeting)
such that as I walk through the door the previous lecture is finishing.
Could also play it into the lecture theatre.
- Steve Harris found a taxi receipt from Parkway to the University, just saying "March 2005".
He didn't put the meeting in London he was at in a diary. He should be able to ask a system what day he was doing this, and where he went, in terms of his normal activity.
- I saw someone knocked off their bike this evening.
I stopped to check they were alright; they said they were and went off.
If I get contacted later, I should be able to find out that moment (when I stopped unusually) very easily.
I would be reminded of the weather and anything else, so help me recall the times and places.
Of course, if it was a court issue, it gets us round to the question of probity (http://www.probity.org/);
ways of verifying the honesty of nuts, or that they haven't been altered since a given time?
Some Related Activity Links
Nokia LifeBlog
World-Wide Media eXchange
Endnotes
Logo from Nick Lamb and Kevin Page.
Can anyone suggest an even better logo?.
Name "squirrel" from Hugh - Daniel Smith coined "Semantic Squirrel."
Lots of people consulted to get this far.
Especially talked with Steve Harris, but also talked with a bunch of people at Southampton, and Dan Brickley, Eric Miller.
