Zettelkasten Forum


The Zettelkasten system (without software dependencies)?

This discussion raised some of the questions I have been thinking about for a while. What does the system require if you want to use it long term as in 20-60 years? And what is the definitions of requirements on the system as a system? In by braindump below I'm focusing on an electronic version and am keen on hearing your thoughts and views on this.

The zettel

First of all we have the actual zettel or piece of information to add to the system. For me this an idea or a thought or to some degree a fact that I want to keep and be able to go back to. I usually keep these quite short and try to keep my information focused. To write these down I see the need of the following features :

  • text - You need to be able to write your thoughts down.

    • formatting - Even though plain text gets you far it is a bit too limiting on it's own and having the possibilities to format the text (bold, italic, aligning left/right,
  • picture - Adding an image can sometimes really help (A picture is worth a thousand words)

  • links - Linking to other parts
    • reference link - Link to source of thought/idea/fact
      • reference - I want to have the information near by but not mixed with the zettels as it in my experience makes it messy
    • concept link - Linking to other information with information on why the link exists

Searching/Browsing

After a zettel is written the next part is finding how it relates to other zettels already existing in your system. Here is the where real strengths shows over a paperbased system as searching is SO much faster. However to really have this speed available I see the need of the following features :

  • free text search - From the beginning I thought I would use this the most however after you start to gather zettels you soon see that grouping things will really help out.
  • title search - I have mixed feelings adding titles to a zettel. Usually they are so short so adding a title feels like overkill. However having a title in the filename sometimes just make life easier.
  • tags search - Tags however I see as more useful and searching of multiple tags words usually really helps narrowing the search result. Adding these to the zettel is usually faster for me then coming up with a title.
  • linked from/to - Being able to see the zettels that are linked/to and from really helps and increases the speed of finding zettels in my experience.

Searching/Browsing extras

The items above is what I'm mostly using but some extra features that I think could help are :

  • timeline/time filter - I haven't had the system for long enough yet however I do believe that in the future to be able to limit search results on creation time might be of benefits.
  • tag cloud - Seeing a full view of all tags used and maybe indication of frequency or something can also help out.
  • link map - Seeing the whole system as a big mind map where I could see zettels in close relation to a specific one could potentially help out as well. But I do feel this would be hard to create while still having the content of each zettel visible.

Recovery/Portability

As all electronics your computer/phone/ipad or whatever you are using will one day suddenly day and you will be quite frustrated for a while until your new device is up and running. However when it is you don't want risk all your material to be gone so that requires features as well:

  • backup - All the nuggets of information you have stored should be able to backup and restore
  • replication/synchronization - I have three main computers and a phone and I would like my system to exist on all of them or at least be available to some degree.
  • history - Zettels can change overtime (at least by adding new links) so having a history of the zettelchanges can always be of interest.

Future-proofing

Now to the tricky part which I've spent some time thinking about. People are saying that keeping files as text is the best option however I'm seeing that as only half the answer. Textfiles are good however keeping them in a format that easily can be parsed a formatted into a new format is probably better as new standards are coming up over time. Markdown seems popular and it's nice as quite a few editors support it today. However textfiles/markdown is missing a few things as I see it :

  • tags - there is no clear standard on how to define tags
  • links - It supports links but doesn't really support concept links (a links that points to something and says why this item relates to that item)
  • backlinks - I see these as crucial but this will require something that generates it and a format that stores it in the zettel.

Comments

  • Reading your contribution - and even risking purists' contempt: Did you ever have a look at Dynalist? I work with Dynalist Pro since one year (after having left Workflowy) and it turned for me into an indispensable (red alarm?) companion – on desktop, notebook and smartphone.

    Dynalist Pro complies with most of your requirements and is being actively developed. I must admit though that I used it so far particularly to shape my complex operational life. But adapting essential ZK principles I recently started applying it for KM in a way other thinking instruments (analogous and digital) could never deliver to me.

  • Realised that the last part of my text wasn't added to my text when I posted it and I can't edit the post so I'm adding it here.

    Each function I have listed has more then one solution and as I see it the most important goal is to choose solutions which will allow me to change it in the future. That said as I can develop I've written my own help scripts to help out with tag clouding and generating htmls from markdown for easier browsing. Searches overall I do with a mix of applications like grep, emacs and atom etc. But is there any features I've missed in my listing that you can see as needed?

  • @De_rerum_naturis said:
    Reading your contribution - and even risking purists' contempt: Did you ever have a look at Dynalist? I work with Dynalist Pro since one year (after having left Workflowy) and it turned for me into an indispensable (red alarm?) companion – on desktop, notebook and smartphone.

    Dynalist Pro complies with most of your requirements and is being actively developed. I must admit though that I used it so far particularly to shape my complex operational life. But adapting essential ZK principles I recently started applying it for KM in a way other thinking instruments (analogous and digital) could never deliver to me.

    I have tried Dynalist but more for todo lists. Haven't thought of it as a good Zettelkasten system and I do not like subscription based solutions.

  • concept link - Linking to other information with information on why the link exists

    In HTML this can be achieved with the rel attribute for every link.

    However having a title in the filename sometimes just make life easier.

    And sometimes it makes it harder.

    linked from/to

    With unique ID in the filename, this is just one glob away.

    timeline/time filter

    I am relatively new to the method as well, but even so I already find the timeline of my zettels very helpful.

    history - Zettels can change overtime (at least by adding new links) so having a history of the zettelchanges can always be of interest.

    I decided against changing zettels. I create new ones instead. The creation date is in the filename, so history becomes apparent via linking.

    However textfiles/markdown is missing a few things as I see it

    You don't need to uses MD, there are other text markup languages, some of them also in wide use. AsciiDoc or Textile for instance, and I guess you could always work with LaTeX, and don't forget Org Mode. Never forget Org Mode.

    backlinks - I see these as crucial but this will require something that generates it and a format that stores it in the zettel.

    You see, this is right there where the beauty of Unix and shell scripts come in. If all your zettels are stored in text files, it shouldn't be too hard to create such an extension to your Zettelkasten.

    In this instance, to have a script parse your zettels and create backlinks is relatively simple. All the script has to do is to detect new zettels, parse them for links and append the backlinks to the respective zettels. Which would be cake easy if they are held in standard formats.


    So, in conclusion, except the last part with the backlinks, a HTML-based Zettelkasten would come with all the features you require.

  • @Perikles said:

    history - Zettels can change overtime (at least by adding new links) so having a history of the zettelchanges can always be of interest.

    I decided against changing zettels. I create new ones instead. The creation date is in the filename, so history becomes apparent via linking.

    This is an interesting idea. Can you elaborate a little more on your use case for this? Is this for?

    • Versioning
    • Expansion on the original idea/thought/information using the same title/filename for a newer more current Zettel with a more recent UID
    • Different stages of a draft
    • Something else
  • This reminds me of the Douglas Barone article that spawned a lot of my own digital experimentation: http://dougist.com/2009/08/file-system-infobase-manager/

    He links to AmberV's post on the Scrivener forums:

    Update: Forgot to mention the one thing that always made me nervous whenever I wasn't in Boswell: data security (which might seem ironic since it fubared my database once, but bear with me). Many of these applications support a form of locking which is in my opinion a very soft lock. The data cannot be edited, in some rare cases the meta-data remains locked, but in all cases you can still accidentally or even intentionally delete the file. Boswell just doesn't let you. The only way to edit old stuff is to version it to a new copy. There is simply no way to delete anything, period. At first it seems limiting, but once you get used to it, it makes everything else---especially raw file systems---feel absolutely dangerous.

    I experimented with this for a while in nvALT. Instead of editing notes in place, I'd duplicate them, assign a new ID, and leave back/forward links. It didn't go well. Maybe it's different if your app supports versioning notes natively. But shoehorning this in produced a ton of redundant search results and clutter :/

    Author at Zettelkasten.de • https://christiantietze.de/

  • @ctietze said:
    This reminds me of the Douglas Barone article that spawned a lot of my own digital experimentation: http://dougist.com/2009/08/file-system-infobase-manager/

    Thanks, when reading this I remembered reading this a long time ago. Also reminded my of the Noguchi’s system which could be interesting as well to implement function having cards relevant at the moment.

  • @ctietze said:
    This reminds me of the Douglas Barone article that spawned a lot of my own digital experimentation: http://dougist.com/2009/08/file-system-infobase-manager/

    He links to AmberV's post on the Scrivener forums:

    Just yesterday I read Douglas' article (and Amber's posts) as I was searching for longer-term solutions to the one-app-to-rule-them-all conundrum. Today I read this thread, as well as your 2014-15 posts re: plain-text ZK. I guess it's true, there really is nothing new under the sun. ha!

Sign In or Register to comment.