I wrote about SuperMemo some months back, but if I've told you once, I've told you 146 times: repetition is the very soul of the net.
SuperMemo is a piece of software from P A Wozniak, originally developed in 1987 as a DOS program for learning languages. Wozniak, a student of molecular biology, was frustrated by the amount of knowledge he lost after cramming for an exam, and worked to develop methods for improving long term memory. His 1992 masters thesis, Optimization of Learning, covered the early work on Supermemo and a discussion of spaced repetition in learning.
I've been using some of the principles from SuperMemo, in particular the discussion of using SuperMemo without a computer, to structure some organized retrospective looks at what I have been interested in over time and also to trigger follow up contacts with people and ideas that would have otherwise been forgotten. The important element of spaced repetition is used not to remember facts and figures but to trigger memory of people and the context I saw them in. The idea is that you structure a process to revisit previous days efforts - more recent days more frequently, and old days less frequently - and use that memory jogger to keep you connected.
What makes this newly easy (or at least easier) is some combination of tools and search engines not originally available in 1987, combined with my existing frequent blogging. Let me provide two examples, with some source code.
I keep a personal wiki with a page for each day. This is actually the second of those I have tried doing - the first was on custom pre-release versions of the Socialtext software and I reanimated it on the current Socialtext hosted platform. The notion is that you have a wiki page named "2008 August 12", or really one page possible for every day, and you take notes on or about that day there or link to it to refer to it. There's a little bit of code that I wrote to make links from that page to a series of days spaced in the past and future which I include as a block on that page, making it easy to hyperlink forwards and backwards in time. That's good, as far as I do have things in my personal wiki (though maintaining that every day is a burden and I often have big blank spots when the burden of diligence is too great).
The second and more immediately practical approach uses search engines to replace explicit page dates to slice up the world into punctuated time slices. I use this with my weblog, creating searches like
site:vielmetti.typepad.com "August 12, 2007"
to methodically revisit the past. As I said, it helps if you post daily, or have a tool like the delicious.com tag poster to do it for you.
The code I wrote which I'll share is based on "day.sh" which I released some time ago. That tool prints the date a specified time in the past; this new tool, "spaced-days", creates a series of days formatted appropriately for whatever you want to paste them into. The sample I have generates Socialtext formatted wiki pages but minor edits will generate Mediawiki pages and more major ones could make HTML with the formatted searches above.
So if I'm thinking about my cousin's wedding two years ago, or next year's St Urho's Day celebrations, or the Burns Park Run for 2009, it's because there was just enough reminders to jog 1/n of my memory and not the whole darn thing.