Tinderbox Chronicles, part 6 – creating a Day Book

Time to get back to writing about Tinderbox. I’ve been trying to find the ideal set up for managing a day book. Being a constant fiddler, I’ve danced from application to application, but I’ve now determined that Tinderbox will serve this purpose well. Before explaining why, I should define what I mean by “Day Book.”

[If you haven’t already read my previous entries about Tinderbox, it would be helpful if you did.]

A day book is where I intend to collect miscellaneous chunks of information that are related primarily by their type and date. The day book is not a permanent home for project-oriented notes or bookmarks or research. It can be a temporary holding area for any of this kind of information. But primarily the day book is for random information, stray thoughts, notes about books or movies, tracking events. Of course, there are many, many applications that could adequately handle this type of work. Tinderbox is a good choice because of its flexibility and its adaptability.

In Tinderbox I can create prototypes that prompt me for specific bits of data that relate directly to the type of information I am collecting. I’ve created prototypes for book notes, film notes, events, contacts, journal entries.

Book Prototype
Image 1: The book note prototype I created for my Tinderbox "Day Book."

You can see from the screen-capture of the book note prototype that I am set to capture the data I want to record about the books I’m reading (or intend to read). The fields for “author,” “title,” etc… are known as key attributes in Tinderbox. In addition to this field-specific information, there is also plenty of space to record notes, thoughts, quotations, summaries, and more in the text field. This ability to generate different forms for different types of information is one of the key advantages of Tinderbox. Remember, once you create a prototype, you can use that as the model for any other notes in the Tinderbox document. That also means that if I want to add a field to all my book notes, I just change the prototype, and all notes that use the book note prototype inherit the new field.

Another advantage of Tinderbox is its versatility for organizing and presenting this information.

As you may recall from my previous entries, Tinderbox provides several different types of views for your information. The two that I use the most, and which relate specifically to my day book are the Map View and the Outline View. Where the Outline View shows me my information in a hierarchy, the Map View is like a cork board for a single level of information from the Outline. Below you will see the top level of my day book in Outline View:

Outline View
Image 2: This is the top level of my Day Book in outline view, without all sub levels hidden.

Doesn’t look very complicated, does it? But if I expand it, the information starts to get more complex:

Outline View - expanded Day Book
Image 3: My Day Book in outline view, expanded a couple of levels.

Now there is nothing wrong with an nice outline, but I can make better sense of my information if I use the visual cues available to me in Map View. See here:

Dashboard Map View
Image 4: A Map View shows my Day Book "dashboard." (Click for full size.)

Let me explain this “dashboard” view a little bit. If you refer back to the top level outline view in Image 2 above, you’ll see that one of my top level headings is called “Dashboard.” Then in the expanded outline view shown in Image 3, lower levels of the dashboard are revealed. Map View in Tinderbox shows one level of your outline in a graphic, cork board-like view. In Map View, you can move your notes around without affecting their place in the outline (unless you drop note A onto note B, which then makes note A a child of note B — and we now call note B a container, since it contains at least one note).

In Image 4 you can see that I’ve used an adornment called “Current Year” to group containers for the months in which I have collected notes (I started this experiment earlier this year, but only used this day book in fits and starts until recently, which is why there is not a container for each month of 2011). I’ve got another container to collect notes for future events, another for undated notes. I’ve also got an agent that collects aliases of contact notes. Finally I’ve got another agent called “Alerts” that uses the Tinderbox summary table feature to display a list of specific attributes from the contents of the agent — by contents, I mean the notes the agent has gathered. This is a great feature, so I’ll go into some detail about how I set this up.

Creating a Simple Summary Table

Agents in Tinderbox are active notes that hunt out other notes, collect copies (aliases), and optionally perform some action on those notes. For my Alerts agent, I am focusing on two key attributes I use in all of my various note prototypes. It is going to look for and collect notes that I’ve marked “Followup,” a boolean (true/false) key attribute (which you can see as a checkmark box in Image 1), and it is going to sort them by the DateAssigned attribute — DateAssigned is my nomenclature for any key date. (DateAssigned can be the date of an event, the date I finished reading a book, the date I viewed a film, a task due date, etc.) The sort feature matters because it affects the order in which the information will be displayed in the summary table. So, I create an agent, which opens the agent dialog box, then I add the query and set the sort order as demonstrated in Image 5:

Alert agent dialog
Image 5: The Alert agent dialog is where I set the query to find notes the I've marked for followup. (Click for full size.)

To get the agent to display the summary table, I use the TableExpression and the TableHeading attributes, which are part of the Map group of attributes (Tinderbox organizes the numerous attributes into groups to help make some sense of them). There are two ways to access and edit the attributes, Quick Stamp and Info View. Info View is the easiest, I think. Open the note window for the agent.

[Reminder: in Tinderbox each note (or agent) has two windows that access various controls and input fields. The dialog box (shown in Image 5) controls how the note looks and what it does, while the note window (shown in Image 1 and in Image 6), provides access to input and text, but also has a side bar to select different options, which I won’t go too much into here.]

Note Window
Image 6: Even agents have note windows. This is the note window for the Alert agent. (Click for full size.)

Clicking on the Info button shown in Image 6 reveals the long list of attributes that affect all the various aspects of notes and agents. Some of these can be altered directly by the user, some are set automatically when you use other controls to make adjustments (for example, size, color, position), others are system attributes that the user can’t change (such as creation date). These attributes are organized by function type. In Image 7 below, the Info Box reveals the “Map Attributes,” which contains the two we want to work with to create our summary table.

Info Box with Map attributes
Image 7: This is the Info Box showing the attributes that affect maps. I've highlighted the two attributes that affect our table summary. (Click for full size.)

In the screen clip above, you can see that I’ve used the following in the TableExpression attribute:


$Name is a system attribute that is the name or title of the note. $DateAssigned is a custom attribute I created. This expression tells Tinderbox to put the note name in the first column ($Name), then to shift a column (indicated by the pipe “|” character) and place the value of the $DateAssigned using a specific format style, designated by the “l”. (Honestly, I’m not sure what other format style options are available and what they do, but I know this one works.)

The expression for the TableHeading is a little easier to understand: Item|Date, where “Item” and “Date” are merely the text that will serve as the headings for the table columns and the pipe (“|”) character just separates the headings into columns.

So, what this agent does is look at all my notes to see which ones I’ve marked for followup. It collects copies of these (aliases), then displays the note title ($Name) and the critical date ($DateAssigned) in a table and it provides that information sorted so that the nearer deadlines are at the top of the list.

Summary Table
Image 8: A summary table displays all my notes that I want to follow up on, and when.

[Note about the Alert agent note pictured above: The reason this note has a solid, single color is because I just dragged the colored part until it covered the whole note. It could just as easily look like Image 9.]

Summary Table alternate view
Image 9: An alternate view of the summary table in the agent.

Getting Back to the Day Book

So here is how I use my Day Book. I leave Dashboard Map View open. I just simply switch to this window when I want to create a note, I make it whichever type of note I need using prototypes, add the information, then drag it into the the current month. When the year is up, I will create a note called “2011” and I’ll just drag all the month containers for 2011 into that note, then I’ll drag that note into the “Archive” note, and I’ll create new monthly notes for 2012 as needed. If I wanted to, I could automate the process of moving new notes into the appropriate month containers, but I like doing so manually.

The beauty of Tinderbox is that I can use agents to gather specific notes from anywhere in the document.   Five years from now, I can create an agent that will find all the books I’ve read over the past five years that I’ve rated highly. I can show this information in a timeline view (though I haven’t figured out exactly how to do that yet). I can see a list of all the comedy movies I’ve watched. Or I can browse the monthly containers to see what I was up to in March three years ago.

In keeping with the theme of my previous posts about Tinderbox, I hope you can see that even without applying a host of esoteric or exotic Tinderbox features, you can still create a powerful Day Book application. I will do additional posts as I add functionality to my Day Book. Stay tuned.

4 thoughts on “Tinderbox Chronicles, part 6 – creating a Day Book

  1. Thank you for this, Steve. In recent versions of Tinderbox there is an Inspector panel (Windows > Inspector) that is useful for changing attribute values for a single note (or a selected group of notes), as well as various appearance settings for the note(s).

  2. You have written great articles on Tinderbox, and this one is the best of all. Struggling to figure out how to add formatting options to my the dates, you finally helped me to understand it. This tutorial also helped me to write my first Agent (though I have read The Tinderbox Way, I was not able to get any clear way of doing the things).

    I wish Mark Bernstein has a little pedagogic skill as you do, Tinderbox would have been one of the most loved apps ( Mark is a great helpful guy, but, he just doesn’t know how to explain the app for the layman).

    I will be waiting for the next article.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s