Ask HN: Do you keep a personal knowledge repository?

136 points by lethologica ↗ HN
And if so, which software do you use? I'm fascinated by storing things that I learn outside of my own brain. Ideally I'd love to create my own mini intranet of information, basically a personal wiki, that I can go to first before having to Google things, especially for my field of study.

I've looked into various Wiki packages but none quite seem to offer what I'm looking for (Mac, no need for a webserver, cross device functionality, math markup, searchability, tags)

If you do keep a personal knowledge repository, can you please describe your workflow for using and maintaining one for all the new knowledge you acquire?

128 comments

[ 55.7 ms ] story [ 3695 ms ] thread
I use adoc or markdown files in a personal git repo that I host on my own AWS instance. I use gitolite to manage access to the repo and even keep a version on my phone/tablet.

Works pretty well and is rather cheap.

(comment deleted)
I use OneNote... just kidding, I actually use TiddlyWiki
I actually do use onenote, and it's great.

Github would be better, actually....

VoodooPad, with web export.
For years I used the FreeMind mind-mapping app, but wanted to move all of it to a server that I could use across devices once smart phones came along, and moved to flat text files in Dropbox that I can edit with any text editor. The other thing with FreeMind is that the UX for navigating mind-maps can get unwieldy when they get big. (maybe there are other apps that implement this UX better, not sure). I have also tried using wiki software ( like https://tiddlywiki.com/ ) and other tools that just didn't work as good for me as flat text files at the end of the day. I don't feel this is a solved problem and I would explore other solutions. I think something that has a timeline view and very good search tools as well as integrates with media libraries in the same search and timeline (like my lightroom and my phone's google photos libraries) would be a really cool way to see thoughts and images in the context of time going back to the day you wrote something, etc.
> The other thing with FreeMind is that the UX for navigating mind-maps can get unwieldy when they get big.

In what way? I have some pretty enormous ones and they seem fine so far. I'd like it if FreeMind were more actively maintained, but at least it still works basically fine on the latest version of Java.

I just remember expanding and collapsing things a lot to keep what I wanted in view. Clicking and scrolling -- perhaps I never got proficient in the keybindings so that could explain it.
Spacebar expands and collapses nodes. I think part of the problem is just that the default settings are bad. Changing these couple things makes FreeMind 10x better:

Preferences -> appearance

  1. Check "edges start from 1 point at root node"
  2. Uncheck "enter confirms by default"
Preferences -> behavior

  1. Set "use formatting for all nodes" to no
Control-rightclick -> hide note window
I stick everything into Notes on macOS in an unstructured way and just use the search function to go back and find stuff. I also use Trello for more complicated things, but use that way less.
Notes would almost be perfect but the lack of being able to hyperlink between notes easily makes it a non starter for me unfortunately.
It doesn't quite tick all your boxes but I've been really impressed with Typora for this purpose.
I used to use FreeMind [0], a mind-mapping tool that I really like, to keep track of projects, ideas, and things to follow up on. I eventually noticed that the pretty pictures could be represented, without loss of information, by a simple outline in a text file. Reading 'Getting Things Done' [1] got me to think in terms of a 'Current Task' list, which I now keep as a text file, backed up on Dropbox. Anything I need to do, or want to follow up on, or want to dream about in a practical way, gets jotted down in the file, with the most urgent matters at the top, Some really interesting stuff drifts down in the file as time passes.

As I do stuff, things move from the Current Tasks file to a Logbook file. Beyond 'accomplished todo's, that file gets stuffed with, for example, interesting quotes I run into, command lines I think I'll need again, and a record of what I've been up to. When I need to put together a status report, or figure out for myself where my time went, or recall how to do something intricate that I haven't done in six months, I turn to my Logbook.

With these two pieces, I feel like I've got a handle on what I want to do, and a record of what I've done. Now, if I just could find the time to follow through...

[0] http://freemind.sourceforge.net/wiki/index.php/Main_Page

[1] https://en.wikipedia.org/wiki/Getting_Things_Done

boxes of university notes losing their meaning year by year

and evernote, where I occasionally drop ideas, save snippets of code or commandline pipelines along with snipped articles from the web usually recipes or long form articles

I would benefit from doing more

More short term I write whatever is happening on especially long narrow ruled legal pads (8.5 x 14) which often still contain lots of information after a few years

It is comforting to find I am not alone in this.
I use Evernote. I have multiple notebook stacks for different topics (like each company I work on, ideas, general life notes, learning, research, etc.) and within each stack have a notebook dedicated to notes addressing topics as well (for example in the company stack have a notebook for sales notes, in the learning stack have a notebook for JS).

Evernote has worked well so far and me trying to switch to OneNote didn't work out as well. I'm still open to alternatives, but Evernote has kept my mind organised without a doubt.

I use and recommend Notion (https://notion.so) although I do work there, so there’s some bias.

It’s good for free-form notes, but also has databases and relations for more structured data. Also has top-of-the-like Markdown and HTML export to get your data out.

You can publish parts of your workspace publicly read-only, or share via email with guests.

Words cannot describe my enthusiasm for this tool - it's all I have been searching for.

I have tried many tools throughout the last couple years in an attempt to declutter my mind and manage my time better each one failed to meet my needs at some aspect: clumsy-UI, not online, not accesible by smartphone/tablet, lacking features and similar.

I can highly recommend this project to anyone skimming the comments - I think it'll suit most people's needs.

Just searched to find the comment to upvote. Notion changed my life! It took over my life. It is my everything. My life is in Notion now. It is my repository of life. I am not exaggerating. I do not work there. It is SUCH a quality product in every way. You have features that I only even think about after using it every day for 8 months.
I've had problems finding a note taking suite that I could really buy into. There are a few I've used, they all have some pros and cons, but nothing stands out right now as the clear winner:

* Tomoby:

- pros: fast, good search, really liked local editing, integrates with quick launchers like Gnome DO and Albert which I found essential for quick references, especially programming and Linux commands which, when I want them, I want them NOW. type: "<ctrl>+<space>grep examples" and have a reference to my most frequently used patters in 1 sec is SO helpful.

- cons: sync/mobile solutions are hacky, no longer maintained, Ubuntu 19.04 removed it, not encrypted, Copy & paste to/from other apps (Thunderbird) doesn't work like you'd expect, formatting is not preserved.

* Evernote: meh...used it for a couple years. Liked multi-device support. Their web client wasn't that great and they didn't have a Linux client. I paid for it and put maybe 100 notes in it, but eventually stopped using it and converted back to the free version.

* Dropbox Paper:

- pros: nice editor, have the basics right, integrated with Dropbox which I already use, so no additional cost, good mobile client, really easy to share notes with groups of people (family) or one-offs to others with a link.

- cons: some bugs and bad UX still, no encryption (but Dropbox already has most of my files so I've already sold out a bit to them I guess), loading a browser tab is just slower than the Tomboy UX described above...I find I like using Paper for longer docs or things I'll access on mobile, but it's just not a good replacement for those quick notes that when I want them, I want them NOW!

I've tried a number of other ones over the years, never really found a sweet spot. I actually think something like Tomboy is really the best note taking app, but for it to really thrive, it would need better options for mobile and note sync than Tomboy ever had. Adding end-to-end encryption and sharing would also be great.

(comment deleted)
I use NVAlt with a quite complex tagging method. All in all, I guess you could say that it is a Zettelkasten notebook. [1]

[1]https://zettelkasten.de/

If anyone is interested in developing zettelkasten app based on keyboard shortcuts + vim hit me up at artur (at) qnsi.io

I want to open source it in the future. It is electron app soon to be written in typescript

Evernote. For KM, I keep notebooks labeled:

- Excerpts (for summaries and excerpts from books and articles)

- Snippets (for code snippets, formulas, etc)

- Reports (for results of research on a subject, e.g. learning new API)

- Papers (copies of research papers)

Dividing notes in such a way also helps to review them with varying frequency. For example, snippets get outdated often (e.g. workarounds for bugs or polyfills) so I have to go over them more often. Reports get updated as I learn new things about a particular subject that has its report. Excerpts are updated only if I decide to re-read the material they cover and extend them. Papers last as long as I'm interested in subject.

I use google colab (https://colab.research.google.com/notebooks/)for things like work notes on setting things up, any new tech I am learning. The best thing is it support code(python). Google keep(http://keep.google.com) for noting down any interesting thoughts/ideas/lesson I learn through out the day. I usually create a card per month to keep it organised.
Really interesting idea to use Colab. I assume that you occasionally download the notebooks for local backup? Also, are downloaded notebooks useable with Jupiter notebook?
Yes. Exactly. They can be used with local Jupiter notebook instance as well.
Notes for things I want to jot down. Things that are code end up in projects that I periodically refer back to.
Yes I do but I wish I didn't keep it so haphazard.

By haphazard I mean to focus not only on acquisition but reflection / contemplation: Collecting thoughts is one thing, putting them together into a cohesive and coherent body of knowledge is another. So, that's what I'm working on.

pmwiki for now. Workflow is personal domain, putting browser or window on one side of the screen and what I'm reviewing, or what I'm thinking / text editor (sublime text) of the other side. Putting into a DIY solution based on flask simply because that's flask practice.

I also like pens and paper and whiteboards. So take pictures and use Powerpoint's 'remove background' feature to have a liberal amount of pictures.

A bit rambling, but you asked and asking is usually best! So.. :D !

I've had troubles coming to a good software solution or workflow either.

Software wise, I've tryed a few things and settled with MediaWiki and some extensions added. Most notably Semantic MediaWiki (adds structured data storage and querying), Semantic Forms (structured forms) and a Bootstrap based skin. But only the technical setup won't get you far in a wiki, so I've also created a lightweight, flexible "ontology" / structure for knowledge management that was fitting my own needs.

This was not too easy to set up (Finding a structure / ontology / data and query workflow, but also the implementation using the wiki itself), but now I'm quite happy with it as a platform. I really wish there would be a lower barrier to entry for people here. If you're interested, please PM me and I can show you some examples.

As for the workflow of personal knowledge management, I'd be really interested what works for other people as well and I'm still figuring this out.

My current approach is using different phases. It's OK for me to read a book and not note anything or only do kindle notes. When reading articles on the net, I usually bookmark more interesting articles using getpocket. I do notes on paper when I don't want to be distracted or influenced by a computer.

For this year, my resolution is to acquire less new knowledge, but to take some time and to rehearse, summarize and repeat what I've found interesting and worth my time before. What sticks here should go into the wiki.

I want to keep my knowledge base very concise and opinionated. There's no need to create a second wikipedia.org. I'll only add something in the wiki when: * Some idea is truly remarkable on the first spot * I go over my old notes see what was the essentials of it. Those are worth putting into a wiki. * When I'm doing some dedicated, structured research around a topic. Then I also try to get the ontology and structure right first. * Code Snippets that I repeatedly use

Both public and private. Public, a static site made from markdown files : https://raymii.org. Almost 400 articles now.

private, a folder called "notes", with almost a thousand short text files. Workflow for it? Use grep to find what I want. I had a system of folders per topic but that became a mess. Grep is good enough. The notes folder is synced with synching to multiple systems and my phone. On the phone I have termux, which has grep and markor as text editor.