- giraffes.html
- giraffes_in_history.html
- natural_predators_of_giraffes.html
- grade_inflation.html
- graffiti.html
- genghis_khan.html
- grassroots_lobbying.html
Since all my Zettel are version controlled anyway, I don't see the
point of tracking dates/times in filenames (or the file itself). I've now got so many
Zettel that I can no longer recall even descriptive names like the above
anyway: is the Zettel called giraffes_in_history.html or
history_of_giraffes.html ...? So in practise, nowadays, when I look
for related Zettel I always use grep with words I expect to be in the relevant Zettel. Example: grep -i giraffe *.html
It works really well.What I do recommend is writing a little tool that produces filenames in a consistent way. (E.g. stripping out 'weird' characters, removing capitalisation etc.) I found that the more uniform filenames, file structure etc, the easier searching remains. Moreover, writing tools that mine / transform Zettel is also easier when the setup is uniform.
I also tried adding structures by subdirectories
- computer_science
- economics
- biology
etc, but that didn't scale, since everything is connected to everything else. Knowledge is not tree- or DAG-structured. Flat file structure + hyperlinks works for me.I liked Gmail originally because it used tabs. I have seldom had an email that was permanently tagged with more than one tag, but I have imagined having files in a filesystem with multiple tags. Bloggers commonly use tags but I don't know if they're successful.
On a filesystem where tags were not native, you could implement tags as subdirectories, using symlinks to achieve that the same file had multiple paths giraffes/history.html and history/giraffes.html.
Did you try tags?
No. I found that many of my early ideas on how to structure my notes didn't scale, made evolution of my system more difficult. So later I tried not to impose addition structure. Tagging enforces a structure, and how I classify ideas changes over time. What do tags give that grepping words doesn't?I use a "Travel ideas" tag on emails from cruise lines if they suggest a specific place, time and cost to travel somewhere. Those words aren't in the email. The criteria that qualify the email for the tag are easy to check in a scan of the message but I don't know how I'd grep for them.
I still do searches but for other reasons.
If you wrote a note about a neutrino-hunting instrument at the South Pole, how many searches would it take you to find it later? What about a science station at McMurdo, which is in Antarctica but not at the South Pole?
You could allow yourself to have or not have a line of free association, whose only purpose was to match future searches that would otherwise miss because of how the content was phrased.
Regarding timestamps: I have a Python script triggered by Alfred App on my Mac. The script creates markdown files based on a template. The template has a header section with helpful infos like `Created: yyyy-mm-dd`.
Here is my template (with filled out placeholders):
```
Created: Fri, 2019-10-11 12:27:18
Title: BOOK - METAPHYSICS - ARISTOTELES
Author: Ugur
FileID: fid-20191011-122718-440741
Base Header Level: 2
Tags: #ethics #philosohy
[%Title]
{{TOC}}
# WRITEHERE
```
This is a markdown template that can be rendered by `iA Writer`.
I am in the process of moving away from proprietary note taking tools like AskSam (more than 15 years ago on a Windows machine), Evernote, Bear Writer and some more). Got a long list of legacy systems that I want to migrate to markdown / file based system.
I keep date stamping files like so: `yyyy-mm-dd_topic-subtopic-subsub`