I had a great day today, visiting the Open University Projects RISE and UCIAD.
RISE has implemented three kinds of recommendations that appear on search pages and has rolled this out to library users. The recommendations for serial items, the three types of recommendation are based on
- Choices made from prior search results for the same search term
- Choices made by users taking the same course
- What users went on to select after the same choice from the current user’s last choice
UCAID is developing the infrastructure to gather and ontologies to reason over activity data obtained from multiple sources of different kinds, eg Web sites, blogs, Library services, VLEs. Interestingly, the UCAID trace ontology is being built from the bottom up while examining linked data created from the logs (using a KMi tool, NeOn). While visiting UCAID and hearing more about it, I felt that this is in important longer-term project for the activity data in that the linked data approach will allow great flexibility over queries that are made over activity data, and via the ontology, the ability to infer user centric information. For example, following up an interest of mine, we discussed how this approach could be leveraged to “find me people who are interested in learning the same kinds of things as I am.” (Answer, for general purpose uses, needs a bit of technology to ‘understand’ text, certainly available in the future, we felt.)
While we were talking, I felt that the cookbook approach needed another component, an ingredient. I remember reading two cookbook authors in particular and noting their interest in ingredients: Firstly, Elizabeth David, doyenne of Mediterranean and French cookery who …
"Born to an upper-class family, David rebelled against social norms of the day. She studied art in Paris, became an actress, and ran off with a married man with whom she sailed in a small boat to Greece. They were nearly trapped by the German invasion of Greece in 1940 but escaped to Egypt where they parted. She then worked for the British government, running a library in Cairo. While there she married, but the marriage was not long lived.
After the war, David returned to England, and, dismayed by the gloom and bad food, wrote a series of articles about Mediterranean food that caught the public imagination. Books on French and Italian cuisine followed, and within ten years David was a major influence on British cooking. She was deeply hostile to second-rate cooking and to bogus substitutes for classic dishes and ingredients. She introduced a generation of British cooks to Mediterranean food hitherto barely known in Britain, such as pasta, Parmesan cheese, olive oil, salami, aubergines, red and green peppers, and courgettes.”
Wikipedia on Elizabeth David
No mean feat, to change the eating habits of a country.
More to the point, I remember reading her cookbooks and enjoying lengthy discussions about good ingredients, a proper concern for a cookbook. The second author is Shizuo Tsuji who wrote a standout work, The Simple Art of Japanese cook, and he properly devotes space to ingredients too. I’d show you pictures but it’s all copyrighted so if you want to, scroll down at Google books till you get to illustrations of ingredients.
So what’s an ingredient? Something you can use. In the UCIAD case, the first example is their UCIAD ontology.
But an ingredient can be a data set too, like LIDP’s activity data that is collected from multiple institutions, or RISE’s database contents, or UCIAD’s triple store contents. And there are more.
Back to Manchester, I thought about NeOn toolkit (produced by the NeOn Project ). This is a tool being used in the construction of UCIAD’s ontology.
For a cookbook metaphor, what about tools, where do they fit? Clearly as cooking utensils, and of course my cookbook heroes do also talk about utensils. I remember Elizabeth David discussing copper omelet pans, and Tsuji writing about chopsticks for cooking tempura, thick in diameter so as to handle the tempura more gently than standard diameter cooking chopsticks.
Of course NeOn is in this class of objects, one uses it to prepare something, an ingredient, the UCAID ontology.
So basically what we are using here is a metaphor, it turns out that we can use the metaphor of cookbook, recipes, ingredients, utensils, and dishes (we shouldn’t forget dishes!) for some useful computer system concepts:
- Utensils – programs or scripts
- Ingredient – data, be it usage data or data that describes usage data (eg an ontology).
- Dish – something for the user to consume (or interact with)
- Recipes – description of a process whereby ingredients are transformed to (or change) another ingredient or produce some dish
- Cookbook – a bunch of descriptions of processes.
Pretty good, although we didn’t intend to have as complete an activity-data computer-system description as offered by the metaphor, but those canny cooks have thought of it all. Perhaps it’s a consequence of the nature of making something; perhaps we could chosen any process of making something and used that as the metaphor. For example, we might have used flat-pack furniture construction instructions as the central part of the metaphor. Then in the metaphor we also have tools, bits of disassembled furniture, the piece of furniture assembled by following the instructions, and of course a collection of flat pack assembly instructions. (Don’t ask, but yes, really, honest I lie not :) this is a believable metaphor,of course I keep all my flat pack instructions just in case I find a need to dissemble to and re-assemble in the proper order.) No don’t believe me? ME neither! So it doesn’t take any consideration: The cooking metaphor is viable, perhaps because food is a feature of everyday life, and flat pack assembly as a metaphor is plainly just weird, probably because those instructions are often close to useless, and, additionally, how often do we get new flat pack furniture?
The point to all of this meandering is that cookbooks fulfill, for the synthesis team, a way of looking at project outputs, surfacing information that will inform whatever synthesis we do. One of the interesting things about synthesis activities is that one can’t say where the activity ends up, much depends on the way the informing information flows together and the patterns it reveals. Of course one can say things like “we can do some work in architecture”, or “we can attempt to build a taxonomy of activity data based systems”, or “we can pull together different projects’ user feedback into recommendations”, but one can’t foretell precisely what will turn up, and what turns the synthesis will take.
What I am hoping is that the process of eliciting and gathering recipes will elicit a good amount of data about the systems being developed. For example, it was revelatory to assist in recording three recipes for the three types of recommendations in RISE: By recording salient features of each of the three processes they suddenly stood, at a conceptual level, they stood in sharp relief to each other by virtue of differences expiated in the recipes.
And that’s all folks, have a happy Easter break!
- - - -
Footnote: For completeness from a computer scientist, but perhaps ignore this, an ingredient could also parameterise a process or specify how a program or script operates.
But something to mull over (vegetarians excepted, and apologies to you):