Structuring Your Notes with Stikkit

Stikkit logoI recently found out about stikkit and have been thinking about it ever since. It's premise looks very interesting to me. They take the idea of a post-it note, but start to discover structures in it. For example if you write (it's all plain text):

Stuff to do

- Go shopping
- Feed the dog
- Take a shower

Which in viewing mode will appear like this: Todo 1

Then I can click the bullet and it will mark an item as done:

Todo 2

If I look at the source of the note again it has changed to:

Stuff to do

- Go shopping
+ Feed the dog
- Take a shower

They established this interaction between a view of the data and the data itself that interact with each other.

If you write down something in a note that looks like a date is being added to the calendar. If you write down something in a note that looks like an address, such as:

Susan Jacobs [sample stikkit]
232 First Street
Portland, OR 97209
503-555-2344
susan@valuesofn.com
http://www.valuesofn.com

Stikkit will recognize it as a "peep", change the colour of the note and add it to the address list.

Peep

Stikkit currently has three of these special "data types" inside notes: calendar dates, people and todos. This idea intrigued me. Can't it be made more generic? Why just these kinds of notes/kinds of data? Why not let users create these types themselves. This way somebody could start off by just scribbling down some things in notes, and then after a while when "note patterns" start to emerge, new note types can be created, so you essentially get a database of notes.

For example if one would write down this:

Name: Zef
Age: 23
City: Groningen
---
Name: Justyna
Age: 23
City: Poznan

This is probably something I could scribble down in a text document somewhere when I have to take notes quickly. But this is actually quite structured data. In fact it's YAML data. We could define a new type called Person which will have a name, age and city field. Once this type information is also "scribbled" down, we can start doing very interesting things with that. It just becomes a database. We can create views on the data and so on.

These are just some premature thoughts I thought I'd share. Welcome to my brain dump ;)