How do you organize your knowledge?

twitter logo github logo ・1 min read

I read a lot of research papers, new concepts every week. I am wondering what is the best way to organize the knowledge so that I retain and more importantly recall it quickly when required. Ideally, a knowledge tree is what I should make in my mind or on paper maybe, but I am not sure how to go about doing it.

Please share your ideas how you organize important points when learning new things?

twitter logo DISCUSS (19)
markdown guide

I use Nuclino.

I've tried to offload as much of my brain's responsibilities as possible. For a computer analogy, the human brain is a great processor, but absolute shit everything else.

Todoist is my process manager (What do I work on when)
Nuclino is my hard drive (Remembering Things)
Whatever white-board/scratchpad I have handy is my RAM (In case I'm working with more than 5-7 things)


This is mind-mapping and this is awesome :)

Very usefull for:

  • TODO list
  • code security check-list
  • meeting
  • synthetize subject (before writting a book/powerpoint presentation, etc)
  • organizing your learning plan
  • decision (one idea per branch, comments becomes very readable)
  • plan a travel (one branch per place and you add subbranchs for hostel, transport, things to see)
  • plan everything: recently used for an advanced travel-bag check-list

I use Freeplan (offline linux desktop software).
(As developper check your solution can export your map as JSON or XML file)


Wow, Nuclino is so great! I just made an account. How do you organize what you learned on it - what kind of "clusters" are you creating to help with this? I think that's my biggest challenge.


Oh boy, well it's an evolving process...

I have workspaces Work and School. I have one for the entire sum of my software engineering knowledge. Reading List/Notes on books I've read is one (I have a super old blog post on this )

Journal is a workspace.... Contacts (I actually refer to it as Dossiers)... It can be anything. That's what makes it great, it's so flexible.


Nuclino looks quite impressive, clean and slick. For sure, trying out.


Nuclino looks slick. Definitely checking it out.


Thanks for the suggestions! I will surely check these out.

  • For graphical representation I love mind-mapping (see @sam_ferree post).
  • For searching into a lot of files I uses tags (native in Linux) but you can check [tagspaces.org] for Windows or Mac
  • For Snippet or text-notes I actually use Boostnote (Thanks to @brpaz)
  • I list all article in [wallabag.it] an alternative to Pocket. You can use tag for organize content.
  • For all the rest and following my work progression it's an homemade app :/

What is your method for tagging file in linux ? I've been looking for something like that but couldn't find anything that I liked.


My method ? I use tags for categorize photography (landscape, city, animal or nature). I use this functionnality rarely. Search filter is natively integrated with nautilus (Gnome on Debian9).


If you're interested in recall techniques, there's a fantastic book called Moonwalking with Einstein that talks about various mnemonic devices, and is really entertaining as well. It's insanely effective.

I offload as much as possible. The human brain is great for processing and decision-making, but terrible for data storage or repetitive tasks. So I aggressively automate what I can.

  • Automation: bash (or pick a language of choice, but the requirement is that you can quickly implement a script to do what you need, so you can automate the task, and get back to what you were doing)
  • To-Do: I like OmniFocus, but YMMV.
  • Random bits of data: I like TextExpander for text values I need to "remember" (ex: I have a snippet for my work phone number, etc.). I also use Alfred for longer bits of boilerplate (since Alfred lets me search & select snippets, it's better for stuff I use rarely), and I've played a little bit with Dash, but tend to go with Alfred because it's what I know.
  • I have a personal wiki where I put bits of helpful troubleshooting information. (Kind of my own personal Stack Overflow-- whenever I see a problem that I have a hazy memory of, chances are the solution is in my wiki.)
  • Reading & Retaining Information: I'm a kinesthetic learner, so taking notes on what I'm reading really helps with later recall. I use my wiki for this as well, creating a "book notes" page for books I want to retain. My notes are either structured in a way that mirrors the book's table of contents, or I add page references so that I can go find more information if I find my notes are insufficient.
  • Temporary Storage for Random Garbage: Meeting notes, debugging notes, etc, go into a paper notebook I carry with me at work. I put the Jira ticket number in the table of contents, and that way I can find anything I need to later. (I keep the Jira notes up to date, but sometimes there's info that's only important in retrospect, and it's nice to be able to find it later.)
  • Brute Force Memorization: There are some things that it's simply better to have in your head. For that, I make flash cards, or I type it repeatedly at random intervals, make up rhymes, or mnemonic devices (see: Moonwalking) etc. Once you have the mnemonics in place and you've solidified the memory, this takes up far less space in your head than you'd think. The trick is finding the right mnemonic, which is really hard for stuff like warehouse receiving processes, etc.

I started using Trello. Some ex co-workers introduced it to me a few years ago, but i started using it daily for only half a year now.
I find it verry nice, with a simple and clean interface, options to create boards / lists / cards, options for checklists, due dates, label coloring, attachments and all sorts of useful things. It's also colaborative, you can create teams and give access to other people. They can add comments and work together.

  1. Save bookmark in Firefox
  2. Sync bookmarks with Firefox sync
  3. Export bookmarks to JSON and transform into Emacs Org-Mode format
  4. Sort bookmarks into LessonsLearned repository
  5. Publish Org files to notes.experimental-software.com/

I have gone through A LOT of software and have actively used (ConnectedText, OneNote, Evernote, MindManager, FreeMind) trying to find a program that can help me organize my information / knowledge. What I wanted:

  • an integrated solution, where I could have the ability to
  • link all of the items in some meaningful way,
  • search through all of it based on criteria or just plain text,
  • be able to quickly sketch something down,
  • have a sense of time, i.e. calendar.

The only software that could satisfy those requirements for me is InfoQube

  • Portable desktop program!
  • stable
  • excellent outliner (hierarchies, hoisting, multiple parents)
  • multiple views
  • Firefox add-on for bookmarking and web-clipping
  • Evernote import
  • Calendar (soon fully Google Calendar sync)
  • Gantt charts
  • data in Access-like database
  • very responsive developer

Tried org-brain , but may be I was not creative enough to realize its' full potential at first go.
org-mind-map was nice, mostly as it saves me to remember the graph-viz commands , but there is some bug, when I am trying to convert an entire tree.
I am currently seeking a tool which not only does the job, is more intuitive, is without glitches or issues above, but also dumps json, so that I can further it as I want. mostly on the lines of org-element that can detects dependency relationships in a list, let the user edit it and give the data structure , with due UI .
If would have wrote one, but I am not that in to mind mapping, just toying with it yet.


I was a long-time and very extensive Evernote user. But two things started to bother me:

  • They force me into maintaining a subscription indefinitely
  • Their datamodel is not very rich. I missed outlines, note types, arbitrary fields, bi-directional & typed relationships
  • I want to reuse some of my notes for creating websites and presentations. WYSIWYG editing does not provide a good basis. A kind of Markup language would be better
  • I want to create knowledge communities around my research and discuss privately with peers.

In the beginning of 2017 I created Knowfox, an open source, personal knowledge management solution that gives me a single place to create my dream solution. I use it every day since and welcome contributions.


I use a personal slack workspace with channels for everything: java, python, spring, hibernate, design patterns,...

Classic DEV Post from Apr 18 '18

Explaining JavaScript’s Prototype Chain Like You're Five

Originally published in codburst.io as Pass Your Front End Interview By Kno...

Mazhar Naqvi profile image
CS PhD student, building fast storage systems that will support future applications with stringent latency and throughput demands.

Do you prefer sans serif over serif?

You can change your font preferences in the "misc" section of your settings. ❤️