I’d like to propose a modest Tinderbox puzzle.
The Problem: Build a “journal” or “daily notes” facility that will make it easy to record notes about your progress on a project. This might be a personal journal, or perhaps a daily progress record for a construction project. It might be the record of a team, or of a graduate research group.
The general structure might be something like this:
Things that would be nice:
When you make a new daily note, initialize it with some template text, or display some important attributes, to remind you of things you ought to record.
Don’t require that the note for October 5 be written on October 5; make it easy to write on October 8 if that’s when you have time.
Don’t leave lots of empty notes lying around with nothing inside (e.g. notes for the future).
When you add a new note, make sensible assumptions for its name. (For example, if you add the first child to November 2021, it might default to November 1.)
Use $StartDate and $EndDate sensibly.
Think about what we might record in the notes for each month, and for each year.
Format these so they look good in outline view.
Perhaps, arrange these usefully in map view.
Don’t forget Attribute Browser.
Your solution doesn’t need to do all these things! It can do other things instead! In fact, go crazy.
If this interests you, but you don’t know where to start, please say so — either here, or PM me, or email email@example.com.
If you can spare an hour, throw together a prototype solution and upload it here. It’s fine if it’s incomplete, or doesn’t quite work. The idea’s the thing, and we can sort the rest out later.
Love this idea. For those looking for inspiration, I encourage you to take a look at :Tinderbox Training Video 26 - Daily Journal Time Tracking Project Management Part 1.
This sample file has many of the elements suggested above and more. I would encourage you to at the Daily Journal section under the “Project, Activity, Task & Time Management” separator. There are tons of easter eggs in this file. Note, I did this eight months ago (a lifetime ago in TBX years, so I suspect there are many areas for optimization).
Here’s one approach to doing Daily Notes In Tinderbox.
To begin, we have three prototype notes: Year, Month, and Day. I’ve chosen some styles for these that look nice in outline view.
All our journal notes reside in a container called Journal. That container expects to contain instances of Year. When you create a new note inside Journal, it’s automatically named for the year that follows the previous Year note. If there’s no previous Year note, we name it for this year.
Each Year expects to contain Month notes. Each month note has a StartDate of the first day of that month. We get the year from the name of the parent. The month is the month that follows the StartDate of the previous sibling. If there’s no previous sibling, it’s January. If it turns out that the $StartDate is no longer in the expected year — if we’ve added a note beneath December 31 — then this note isn’t a month at all and doesn’t inherit from the Month prototype.
Each Month expects to contain Day notes. These work much as months; we get the year from the grandparent and the month from the parent. Our day of the month is the day after the day of our elder sibling; if we have no elder sibling, we’re the first of the month. If it turns out that the $StartDate is no longer in the expected month — if we’ve added a note beneath June 30 — then this note isn’t a day at all and doesn’t inherit from the Day prototype.
If we want some writing prompts or reminders to be added for each new Day, we simply write the template text in /Prototypes/Day.
You can download the sample Tinderbox file here:
Daily Notes.tbx (117.6 KB)
“In fact, go crazy.” No place left to go, and the attached tbx file may reflect that.
Years ago I decided that while dates are very important for tracking a project, they are not the center of my attention. Rather it’s the activity or the work that’s accomplished on a particular date that I want front and center. The attached tbx file tries to reflect that, while also honoring the importance of dates. There are plenty of ways to mold the file into something more date centric.
Project Journal Sample.tbx (125.9 KB)
(Not sure that this matters, but the file was created in MacOS dark mode.)
Here’s a contrasting scheme, based on something I developed for my own use.
Create a simple note and then drag it onto one of the notes in the Make Logs section. Or, select one of the log-making notes, type Return to create a new note directly below, give the new note a title and then type Tab to add it as a child of the log-making note.
Each log-making note has an OnAdd action that prepends a date to the Name, sets the StartDate and EndDate to match, sets the Prototype to Log Entry and files the original note by year and month in sub-notes of Log Entries Original.
Make Log Today, Make Log Yesterday and Make Log Tomorrow are self-explanatory.
Make Log Manual Date yyyy-mm-dd has the DueDate exposed in KeyAttributes and via DisplayExpression. Edit that to a suitable date and then drag new notes in.
An alias of the new log entry then appears in one of the agents below, e.g., Log Entries Last Week. Most of the agents have very low AgentPriority to avoid consuming too much CPU.
LogExample.tbx (110.2 KB)
Sometimes it’s the simple things - looking at @eastgate 's example I realised I had never thought before of using fonts and outline background colour as a way of visually mapping out the hierarchy of notes. Outlining tools of course do this all the time - I never connected this to TB until I saw your example.
I was wondering how what setting was used to add the colour representation of the note in the outline view ? Below a screenshot to illustrate what I mean
The left most icon for each note provides feedback on the amount of text in each note, the column next to the note $Name is set using badges. My question concerns the column within the dotted lines ?
Set $OutlineColorSwatch to true to display the color swatch of a note in outline view.
Here is some more detail for how I chose to implement the attribute:
$OutlineColorSwatch=true; is included as a prototype rule. In the example file, instead of writing and repeating my rules for each prototype, I used a code note. You can see the full rule in “/Prototypes/Code/Prototype Set-up.”
It would have been easy to just set $OutlineColorSwatch=true in each prototype, but the code note approach might be handy for larger files.
Thanks @_Bill. I was wondering what added information does the Color Swatch provide you with ? From what I’ve read it was originally designed more to display visual bars (e.g. to indicate progress or similar information) in the outline mode.
I sometimes miss the ability to flag notes visually in the outline, for instance to say this is important or belongs to this category without using columns and attributes. Setting Flags in Map view works well - I’m wondering if color swatches can be used in this way.
Other ways to distinguish notes in outline view:
- $OutlineNameSize to change the size of the item
- $Badge to add a badge
- $Color to change the color (unless using Black or White Titles)
- $OutlineBackgroundColor to shade the background
First, the reason I chose to add a color swatch is because in outline mode, and particularly in dark mode, I prefer the appearance of the color swatch over having the note’s $Color display in the outline text. Perhaps with a different color scheme, I might use the $Color attribute of a note to set the outline text color. But at the moment, I’m preferring higher contrast in the outline from white text on a dark background, which your screenshot above nicely displays.
Second, regardless of whether outline notes are distinguished by $Color or by a color swatch, I expect to find the color distinctions to be of value. For example, in the scenario that you mention, flagging an important note, if you choose to change a note of importance to a distinct color, then the color swatch will work nicely in the outline to easily spot important notes.
I see that it’s possible to click on the badge in Outline View to change its badge to a flag. You don’t need a color swatch for that, the badge will also work nicely in outline view to show flagged notes. Thanks to Mark (eastgate) for pointing out other effective means to distinguish notes in outline view.
Thanks for the explanation @_Bill. I see your point: the contrast provided by color swatch setting in your case is strong and the colours are immediately interpretable. While badges can and do serve the same purpose, I find that contrast with the background less strong than a swatch and it takes more time to interpret a longer list of notes in Outline view.
A few years ago I have started with a trial to get planning and tracking in one file together. In addition I have tried a Kanban like view and a calendar view for today activities, because Omnifocus was too complex for this and I wanted to avoid a second tool.
I was stuck in trying automatic assignment of the planned activities to the daily view.
Very interested in this topic and looking forward to other examples.
Sample file enclosed.
project journal sample.tbx (188.9 KB)
This is a most excellent idea, and it’s great to see the creativity of the group by example!
One request, can we please append our user handles to the project filenames, say as in “projectjournal_rcramer_01.tbx”? Makes it much easier to reference/locate/discuss later.
Great work all!