Hi, since the index is so central to the whole idea of Johnny.Decimal, I am kind of wondering why there is not more discussion about or resources targeting this problem. (I have searched the forum but maybe I missed something.)
Since Johnny has abandoned his work on a dedicated app (understandably ), I was wondering, can we start sharing best practices and tools for keeping the index?
My ideal Index would be something like this:
Lightweight and super fast (with a good quick search and navigation through the hierarchy)
stored locally, so no internet connection needed (synced via iCloud, I guess)
unobtrusive to access (I donāt have to enter a bloated tool that takes long to load or enter login details to access)
possibly free or at least not tied to a pricy subscription
What do you guys use? What works for you and what doesnāt?
My background: I am a freelance designer and I have started implementing a PRO.AC.ID-style JD System a couple of months ago. On one hand I feel a lot of calm from the fact that I have a reliable filing system for everything, on the other hand I havenāt managed to keep a reliable index. Iāve started with a google sheet but that soon became unwieldy and not fun to use (no foldable headers, takes quite long to load, requires internet connection).
If you donāt need columns to track location etc. a simple(r) outliner is not a bad choice IMHO. https://zavala.vincode.io for example is looking to shape up quite nicely, available both on macOS and i(Pad)OS and free.
Yeah I currently use Airtable ā which has a healthy free plan, you never need to pay for it if you donāt want to. Thatās mostly because I use Airtable for a whole bunch of other stuff in my life/work and really like it as a product. JD needs āa databaseā and thatās exactly what Airtable is.
In the past Iāve used text files with great success. Just create a note for every new item, whether it needs a note or not. You need the sort of editor that lets you quickly filter on your notes, so you can type 32., scan the list of numbers, locate the next available, create a note, off you go. (I did this in an old job with Resophnotes for Windows, an unmaintained app which is janky but fast.)
Or any other database or an outliner or anything else, yes.
If I was to start again on some sort of solution of my own Iād pare it right back to a command-line thing that had a text file as its data store. The problem I had with the version I started was that it was going to be an online thing with user accounts and the possibility of sharing projects and so on and so forth which ā turns out! ā is a butt-load of work. Especially when youāre not already a full-stack web developer and youāre trying to do it in your spare time. I donāt know what I was thinking.
Thanks @johnnydecimal and @bogenschlag for your thoughts. Your remarks on using an outliner gave me the idea to try and use taskpaper, which I bought a long time ago but never really used for tasks. It fulfills a lot of the requirements I am looking for: Itās lightweight, has good navigation and filtering, the data is stored in plain text and synced via iCloud. Not sure what app I can use on iOS but Iām pretty sure there is one.
Iāll try it for now and report how it goes.
One thing that interests me though: Why do you need columns to track locations? In my case, for a google drive folder or file I would now try to just add a link in taskpaper like so:
I just posted a link to the article Johnny mentioned on Twitter. Itās from September, but I found an interesting link there. It is for an Obsidian plugin that seems to auto-index all folders and sub-folders. I havenāt tested it yet, but even though I do not use Obsidian, couldnāt I, theoretically, install Obsidian, point it at my root JD folder, run this plugin and have it auto-index everything?
follow-up - I installed and ran the plugin. Hereās the screenshot. I think it pretty much did what I had hoped. I need to tinker with the settings, but if you need an index, well, there it is!
Bottom left, you can see the index file. I opened it, then moused over some folders, following down to a file. I may change the index file prefix so that this view doesnāt show the index files first in each subfolder, but that may be what someone wants, so ā¦
Thanks for sharing the link. Iām going to see if I can replicate it in Obsidian. I like Obsidian, but always end up using Craft. I LOVE Craft.
I use Mindnode as my main index, and at least once a week try to go in to review based on my use and see if I need to make changes. I started using the system a couple of months ago. I was able to move around almost all of my important files into the system, although I would love to number all files. I havenāt had time for that. I would love to move my files in Craft and Obsidian to the system. Iāve done some work on it, but still have quite a bit to go. I also would like to relabel/number my databases in DEVONThink, but thatās another project I havenāt had time to start.
Iām curious about what data you entered to run the plugin. Did you enter say, 10-19, 20-29, 30-39 and so on i the āfolders includedā section? What else did you enter across the sections?
Iām terrified about entering something wrong and fully messing up my files.
You can do it a couple different ways, the plugin can only create index files of your content and wonāt ever modify/delete any of your content (unless I guess you had some existing files with the same names as the auto-generated index files?)
If you have some higher level folder that contained all your 10-19, 20-29, etc. folders, you only need to enter the higher level folder name in the āFolders includedā section.
Alternatively, if you leave the āFolders includedā section blank, it will generate index files for every folder in your vault, including the base vault folder.
Another way is have the plugin generally index everything in your Obsidian vault, except for the folders you specify in the āFolders excludedā setting.
FYI- If you are on Mac and just want to quickly pull lists of folders and files, you can select everything in a folder with cmd-A and paste into a plain text editor such as TextEdit (plain text format, not rich text), all the file and folder names selected will be pasted as a list.
Hi all! Jumping straight into this discussion, after having binge-read the knowledge base (thanks John!) and explored a bit the forum.
Iām still in the initial phase of finding out areas/categories, but I thought a lot about the index. Iām leaning towards a plain-text format (for the moment). And I thought that the YAML file format suits almost perfectly my needs, at least in this preparation phase.
Something like:
00-09 Meta:
00 Johnny Decimal system:
00.00 Setup:
- Note: this ID must contain the index file, at least
10-19 My great area:
11 A category:
11.11 Some brilliant ID:
- Note: |
This is an arbitrary note
which can span multiple lines!
11.19 Archive:
- Note: This is an archive Johnny.Decimal ID
12 Personal finance:
12.11 Bills:
- Note: Billings of all kinds
12.12 Contracts:
- Note: Contracts (mobile, banking, etc...)
12.13 Investments:
20-29 Projects:
21 Personal projects:
21.01 Website for my sister:
21.02 Podcast project
22 Work projects:
On a desktop/laptop, searching is a breeze with any editor (Iām using Vim). On mobile, it should be pretty easy as well. Adding new IDs might not be as fast as Airtable and definitely itās not as polished. Bonus point: since itās a well-established format, itās fairly easy to write a script in any language (Python, Go, JavaScript, you name it) if one wants to parse the index and manipulate it in a semi-automatic fashion.
I started formally defining this when I had ideas about writing an app. (I thought Iād written more than that tbh )
And Iām thinking about it myself again now as I start a new job next week, which will require a new index.
Iāve been using Airtable to track numbers for a home project and while I do like it, itās undeniably āheavyā. Iām almost certainly going to go the plain-text route for the new job.
As you note, searching is easy. Itās the ultimate cross-platform format. Itās free. You can build your own tools to query it. Iām saying all the things you said.
I am still interested in the idea of an agreed standard. Hereās what else I had in my mind that I was sure Iād put in that GitHub repo.
Whitespace shouldnāt matter from a parserās perspective, but nice indentation obviously makes your file more readable.
i.e. you should be able to choose your own indentation.
I had exactly your syntax for recording notes, or any other metadata.
That is, on any line after an A, C, or ID, enter:
dash space [word] colon space [free text],
e.g. - Location: File system
You can define as many of these as you like.
I hadnāt thought of the YAML multi-line thing, thatās nice.
I allowed JS-like comments with // at the end of a line or /* ā¦ */ for multi-line.
Probably something else I forgot.
I had intended to spend some of October on the site but other stuff had to take priority. Aah, time.