How I remember everything I learn
Aurelio

Aurelio @aurelio

About: Engineering manager and software engineer in Zürich

Location:
Zürich
Joined:
Aug 16, 2018

How I remember everything I learn

Publish Date: Nov 1 '20
738 55

Have you ever been asked this question: 

 If you could have just one superpower, which one would you choose?

It's one of those questions that can either leave you frozen without any actual clue what to say or you might catch yourself with so many ideas that you're simply overwhelmed by the abundance of options.


Unrelated: the most clever answer to this question I've read is this one by the way.

Screenshot from a Quora answer

(not a bad idea, right?)


There's no right or wrong of course, but if you asked me, my answer would be something like:

I would be able to remember everything I learn

I don't know about you, but knowledge retention is easily one the big challenges of my life. I read blogs every day, I watch countless videos, I start (and sometimes finish) a few technical books per year and remembering everything I learnt is outright unrealistic.
There's just so much one can retain of what they read or hear.

What I tried

If you're like me, you've tried them all:

  • blogging about it
  • highlighting the most important sentences of the books you read
  • taking physical notes
  • taking notes online (eg Evernote)
  • writing summaries of the books and videos you read
  • flash cards
  • semi-organised (or semi-random), heavy bookmarking with tools like Pocket
  • you name it

All these methods have their merits. All of them ultimately fall short for me.
Some worked better than others but I couldn't for the life of me stick to one.

An impossible balance

I felt I was somehow looking for an impossible balance. I wanted a solution that:

  • was structured...
  • ...but still loose enough so it didn't kill my creativity and the free flow of thoughts that happens when learning something new
  • searchable
  • low friction, as in, easy to type in, giving me a pleasant, natural experience
  • non-existent learning curve (no "new revolutionary tools"). Sorry, I'm busy leaning something else
  • easily retrievable, available anywhere
  • recoverable if a disaster happens (think about forgetting your notebook on a train, or having it chewed by your dog)
  • trackable, I wanted to be able to see my progress through the months, and possibly get some stats, if not for vanity

Turning point

I was resigned to never find a solution for it.
Until one day, I randomly bumped into this

I’ve been extending and improving my personal wiki for 1 year now and it has been one of the best things I’ve done. I found writing blog posts was too high friction and very often didn’t finish things because there is so much you can talk about in any given article. But a wiki is just a living document containing your notes and thoughts on things. I also use it as my public bookmark manager as I collect interesting to me links under each topic.

For my wiki, I render everything to the web first with GitBook. And I have a macro I run that automatically commits any changes I’ve made with Sublime Text on the mac and Ulysses on the phone so everything is super easy to edit and publish.

Does anyone else keep their own wiki here? Or you think a blog is enough for you?

-- Nikita Volobev on Lobsters

And there it was. The sign that the "impossible balance" was actually possible.

From that moment, around 2 years ago, I also created my own personal wiki and it's been my go-to tool for remembering everything I learn.

It's nothing more than a repo on Github, divided in folders with a bunch of READMEs in each of them.
Folders are the main categories, such as databases, Kubernetes, JavaScript, security, regex etc. Each README inside them subdivide the folder into specific topics. Security would have READMEs for JWT, Frontend, Cryptography etc.

Evolution

I initially started with only programming topics but found myself using the wiki to store notes about literally anything I learn in any domain such as music, writing, managing, speaking and writing German.

The structure is not super strict, but still provide some order and thanks to Github searching is absolutely a breeze.

Since everything is committed, I wrote a small Go program to calculate some stats by accessing the git history and generate an HTML page. A Github action runs the script and publishes it to a URL. The page looks - let's say - minimal (it has literally 3 lines of CSS), but it gives me an overview of what I have been learning in the past 90 days. Apparently I've been very much into career development and management as of late.

Giving it a try

I strongly recommend giving this method a try if you're also struggling with knowledge retention.
The investment to start is so low, you literally only need to create a repo and that's it, and you can even fork mine and simply delete most of the folders if you like.

Nikita and I are not the only ones using this method. You can find plenty others for inspiration by going through this long list of wikis.


Cover image by Osman Rana

Comments 55 total

  • Valentin Radu
    Valentin RaduNov 1, 2020

    In other words, a modern-day research journal? 😜

  • Kalle Fagerberg
    Kalle FagerbergNov 1, 2020

    This is a really cool concept! Thanks for enlightening me about this :) Very keen in trying it immediately

  • Lotfi
    LotfiNov 1, 2020

    Interesting concept, thanks for this blog post. I would like to know what is the real advantage over an Evernote-like?

    • Aurelio
      AurelioNov 1, 2020

      HI! Good question, here's a few advantages:

      • you can use your own editor of choice to take notes, manage the folders and sync the remote
      • easier to share and find. Github repos are public by default and have good SEO ranking
      • don't want to share your notes? Simply make your repo private
      • very low friction when moving stuff around. These are just text files and a bunch of directories
      • markdown!
      • you can store any type of file other than text. I have stored TypeScript files for instance when I am dealing with code.
      • leaves a lot of freedom to go beyond the Github UI. I generate my own static website every day at midnight and on every push, some others generate a wiki-like Gitbook that provide a nice looking UI that makes browsing more user friendly.
      • everything is under version control, so it makes it possible to calculate historical statistics about what you are learning through the course of your life, like I am doing

      There might be even more, but hopefully this is a sufficient list already.
      Thanks for the comment!

      • Lotfi
        LotfiNov 1, 2020

        Thanks for your clear answer.

  • AKAAKI157
    AKAAKI157Nov 1, 2020

    I am going to give this method a try. I also have multiple Excel trackers/files, journals, notebooks, and files where I keep different items that I learn for reference. I keep creating more and constantly look for where I have stuff. Work in itself. ( ´・_・`) I really hope this works. I will take you on @aurelio and copy your folders as a starting point. Why reinvent the wheel, right? (¬‿¬) My favorite benefit that you listed (I never got into Evernote, tried Google Keep also) is the fact that I can create my own static website of it all. The format looks pretty good too. Wish me luck. ☀

    • Aurelio
      AurelioNov 1, 2020

      Exciting! Let me know how it goes, fingers crossed!

  • Jayson Monterroso
    Jayson MonterrosoNov 3, 2020

    Good Idea!

  • alanmynah
    alanmynahNov 3, 2020

    Interesting! I'm using Roam for exactly that! The syntax is markdown and people do have some crazy methods, but I just add topics and keep it simple. So far pretty good and helps with drafts and keeping really valuable references.

  • Victor Janin
    Victor JaninNov 3, 2020

    Nice article and interesting build on Github!
    I was sorta starting to build something similar, also for cooking recipes (what I've tried and worked/failed with reiterations) books read (and the infinite lists of the ones still to read) and such.
    I've been using Notion, curious to know if you have you tried it?

    PS: Definitely going to study a bit your german folder, hard one to learn!

    • Aurelio
      AurelioNov 4, 2020

      I tried Notion and while i like it, it's still forcing me into a UI that wouldn't allow me to use my editor afaik. I also dread vendor lock in, what happens when the next Notion comes around? I feel safe in betting on git to stay around for a long time 😁

      And please don't learn German from me, I'm a disaster......

      Thanks for the comment, really appreciate it

  • Austin Hackett
    Austin HackettNov 3, 2020

    I just finished the initial foundation for mine this past week after a month or so of free time work. Been a hurdle to get the groundwork laid, but now it's a matter of taking a little bit of time at the end of the day to add to it!

    github.com/ahackit/work-on-the-LATTS

  • Jeff Davidson
    Jeff DavidsonNov 3, 2020

    For fellow Mac users, I've found that the Notes program works extremely well for creating a personal wiki. It's light on some desirable features like categories, but is solid and never lags, no matter how much data I store. The best part is that it (nearly) instantly syncs everything on all devices. Pro tip - dragging pdfs into notes is a great way to keep your docs organized!

  • Juliana Jaime 🎃
    Juliana Jaime 🎃Nov 4, 2020

    Amazing advice!! Thanks a lot, I'll be doing one of these for myself! Maybe with NextJS and deploying with Vercel

  • Phong Duong
    Phong DuongNov 4, 2020

    I have heard about Digital Garden very much recently but don't have a chance to try it

  • Brian De Sousa
    Brian De SousaNov 4, 2020

    This is a great idea. Thank you for sharing!

  • Cody Swartz
    Cody SwartzNov 4, 2020

    Does anyone remember the guy who made a big query tool for his huge memory collection? I forget what the memory tool is called, it was some old old device someone invented. I think it was showcasing Ember, so it was a while back. It was fascinating because he could verify memories like checking against what the weather was that day to verify it did actually rain according to weather services. Or he had a query language like: music during:#roadTrip2007 with:@friendName

    I've been wanting to find that video again, but the irony of my memory failing me 😂

    • Aurelio
      AurelioNov 4, 2020

      LOL

      I never heard of it. This sounds hilarious but also genuinely interesting. Let's see how my Google skills are, I'll try and find it.

      If anyone knows it please post a link!

      • Cody Swartz
        Cody SwartzNov 6, 2020

        I've tried a few times and had no luck : (
        I was wondering if maybe it is in the old Ember documentation or some old ember blog post that doesn't exist anymore : \

    • Joel Lau
      Joel LauNov 7, 2020

      for the record, i want to know more about this too!

  • Manuel Figueroa
    Manuel FigueroaNov 4, 2020

    As someone who struggles with note taking, thanks for sharing this. I'm actually going to try and implement this into my learning workflow. Wish me luck.

  • Felix Wolfsteller
    Felix WolfstellerNov 4, 2020

    I use zim on the desktop. I believe its quite extensible and a solid thing.
    I also store private data in it (like notes about my tax declaration, contractor data etc), thats why I cannot (= don't want to) use an "online" Wiki. I once had two "notebooks"/wikis and encrypted pages and stuff but ultimately figured out that the more simpler version worked the better.

  • OpenTech-Consult
    OpenTech-ConsultNov 4, 2020

    Interesting really. But my own opinion about remembering almost everything that we read is to create a project that will allow you to put in practice the technology learned and to document the code well. Makes me think that doc and wiki have lots in common

  • Sebastien Lorber
    Sebastien LorberNov 4, 2020

    Looks similar to the digital Garden concept

    christopherbiscardi.com/what-is-a-...

  • Ernst Pierre
    Ernst PierreNov 4, 2020

    Interesting but I use Notion to do the same thing. The result has been fantastic. And also from each category in Notion, I write QA to test my knowledge from time to time ... Here is what my "Brain " look like dev-to-uploads.s3.amazonaws.com/i/...

  • Thomas P
    Thomas PNov 4, 2020

    Hey :) Nice article! I personally use Zettlr. It's a free alternative to Roam and you can apply the Zettlekasten method to organize your thought.

    I have two kinds of posts :

    • on-the-fly-post : they are short and timestamped (ex: 20201104093430-rails-6-1-new-features.md).
    • a few posts for main themes: ex: docker.md. I use them as an index even though the research tool could make this kind of posts useless.
  • Pedro A. Carrasco Ponce
    Pedro A. Carrasco PonceNov 4, 2020

    I use Obsidian with the diary and zettlekasten plugin. In Android I take fast notes with Gitjournal, this repo is synced with my home PC, and later I read this fast notes and if is needed I put the notes in the definitive notes folder writting the tags and the links, is my beginner zettlekasten learning.

  • cem kaan kosali
    cem kaan kosaliNov 4, 2020

    I use dev.to for the same purpose.

  • Victor Dorneanu
    Victor DorneanuNov 4, 2020

    Have you tried Tiddlywiki? You can do lots of stuff in it. There are tons of examples out there. You can also check my "external brain" located at brainfck.org.

  • Gabriel Novakovski Nunes
    Gabriel Novakovski NunesNov 4, 2020

    Nice Article! I'm always searching for better methods because, well, memories don't stay in my head too much lol. I'll give it a try!

  • Budi Salah 🐋
    Budi Salah 🐋Nov 4, 2020

    I was suffering from this too. until I decided to do just exactly that, I didn't know this from anyone, I just figure it out by myself. This helped me a lot and it gave me much confidence. really recommended.

  • Felipe Bosi
    Felipe BosiNov 4, 2020

    You circled back to a tool that people use on science for a long time, a file system, and that is very nice. The good thing about it is that we already have a lot of information and books about it, we just need to learn how to adapt it to the new informational world. One of these books that I love is Umberto Eco's "How to write a Thesis", he have a lot of tips on how to write and organize a file system.

  • Jeremy Wells
    Jeremy WellsNov 4, 2020

    Over the past couple of years, I ended up doing pretty much the same thing:

    github.com/jsheridanwells/dev-scra...

    All of the project setups, or configurations, or commands that I can never remember off the top of my head get a markdown file. I ended up putting it all in a big markdown directory after having dozens of Github Gists became too unmanageable. What I like most is that I can just clone the repo onto my work and personal computers and sync my notes that way, or edit it inline on Github.

    Thanks for the great article.

  • Anton
    AntonNov 4, 2020

    Hello Aurelio!
    Thank you for the article.
    I usually keep my notes in OneNote and it did pretty good job in terms of organization and search capabilities.

    You said that you tried writing blogs and using Evernote for note taking. Would you mind describing what is the advantage of Github note taking (except version control) that made you transition to it from other tools.
    It seems like I missed something, because for me it looks like "yet another tool for note taking" and it's hard to see the advantages of this approach.

    Thank you!

    • Aurelio
      AurelioNov 4, 2020

      Hey Anton, thanks for the question.
      I answered a similar one here, so i suggest checking my answer there.

      All in all, i know this is "nothing extraordinary", these are just text files under version control and a search, but the simplicity of it is one of its advantages. You may want to Google "digital garden" to read a bit more and see more examples.

      Let me know if this answers the question.

      • Anton
        AntonNov 4, 2020

        Aurelio, thank you for the clarification

        BTW, not sure if the link you provided is a correct one since it brings me to another post about "managing application secrets" :)

        • Aurelio
          AurelioNov 4, 2020

          Wooops, you are right! 100% wrong link, fixed now.

  • SyntaxSeed (Sherri W)
    SyntaxSeed (Sherri W)Nov 4, 2020

    I've been using a personal instance of Dokuwiki for over a decade. It has coding tips in there, useful links, step by step guides on things I don't do often enough to commit to memory (like rare Git activities, bash commands, etc). It has my financial notes & savings goals. To-do lists and phone numbers. Drafts of articles I might write, form emails I use. Timesheets for projects I work on, technical & project documentation. Ideas for Xmas gifts for my kids, confirmation numbers for payments..... EVERYTHING.

    Easy to edit. Easy to backup. Easy to search. It's like an extension of my brain. Lol

    And since I self-host it, I own my data, won't get a surprise paywall & no ads or sales pressure.

  • Mats Pettersson
    Mats PetterssonNov 5, 2020

    Thanks for a great article!
    I recognize myself in what you describe, and this is definitely something that I'm going to try. I was not familiar with the concept of Digital Gardens, but this is definitely something that I will try out, and I will start planting the first set of seeds today :-)

    Many thanks for sharing!

  • Valerio
    ValerioNov 5, 2020

    Thank you for sharing this!

  • Ian Turton
    Ian TurtonNov 5, 2020

    I've been building a similar system using foam (github.com/foambubble/foam) which uses github and VSCode as the underlying toolset. But it is markdown based text so I could pull in all my existing notes and code logs very easily.

    Now all I need to do is reconfigure VSCode to look and feel like vim and I will be very happy.

  • Jessy
    JessyNov 5, 2020

    Please take a look at these "second brain" apps. One I found literally this week while I started feeling this need to start capturing knowledge and organizing is obsidian.md/. It's honestly instantly become my goto for note taking and knowledge base growth. I have what they call Vaults, for work projects, on my personal pc for my personal knowledge base. Back-up happens via OneDrive (for now, prob not the best idea)

    • karawitan
      karawitanNov 6, 2020

      obsidian.md looks nice. One question though, which LICENSE is it shipped with ? (did not find it browsing to gh/obsidianmd ...)

      • Ian Turton
        Ian TurtonNov 11, 2020

        obsidian.md/eula - gives terms and conditions.

        LICENSES

        OBSIDIAN is licensed as follows:

        Personal use.

        OBSIDIAN can be used for free for your own, private, non-commercial purposes (e.g. taking notes, doing research). The use of OBSIDIAN for the exercise of your own trade or profession for which you directly receive compensation (e.g. team work with colleagues, writing work reports) does not qualify as personal use.

        Special personal license.

        You have the option to obtain a special OBSIDIAN personal license (CATALYST) that grants you access to early, exclusive OBSIDIAN versions (INSIDER BUILDS). However, CATALYST is not required for personal use.

        Commercial use.

        If you use OBSIDIAN for commercial use, you must obtain a commercial license. Commercial use is defined as using OBSIDIAN for work-related activities in a company with two (2) or more employees.

        Companies must purchase at least as many licenses as the number of people using OBSIDIAN.

        For commercial use, you may evaluate OBSIDIAN without a commercial license for a maximum of fourteen (14) days.

        If you obtain both a CATALYST license and a commercial license, you can use our early, exclusive OBSIDIAN versions (INSIDER BUILDS) for commercial use.

        Non-profit organizations can use OBSIDIAN without commercial licenses.

  • Pedro Neves
    Pedro NevesNov 5, 2020

    Hi! 👋

    Nice article! I came to the same conclusion (of building my own wiki) since I struggle with the same issues and, on top of that, my memory sucks 🧠

    My approach is a bit different tho. Besides the points you mentioned, I personally have another requirement which is to be able to do everything on my phone as well, since I spent quite some time on this (BTW I'm typing this answer on mobile right now).

    Using GitHub in mobile is not impossible, but it's far from ideal (low friction right?). So Google Docs for me was the ideal solution. Same as you, i created a Knowledge repo (just a folder on Drive) and I dump notes there. From cooking recepies, to notes on astronomy, to coding, I try to register everything I believe it's worth remembering, the way I understand it.

    Thanks for sharing your ideas! 😄👨🏻‍💻

    Cheers🍻

  • 🎧Cirphrank👣
    🎧Cirphrank👣Nov 6, 2020

    Cool, I use keepnotes and I think I have found this your revelation more intuitive for the job.

  • Tkmanga
    TkmangaNov 10, 2020

    hey nice article!

    I use notion like a wiki i put an explain with a little example for my future me in case that not remember how did i resolve an issue

  • GuyDev1
    GuyDev1Nov 13, 2020

    Hey!
    This is a very interesting concept, I stumbled upon Nikita's version recently, point is, except taking it public, I didn't quite grasp the difference between that and Evernote or a similar note taking app.

    What do you feel was the major difference it made for you?

  • le-hu
    le-huNov 16, 2020

    Hey, this article is pure gold! I've been a fan of Allen's GTD (Getting Thing's Done) system plus several other note-taking (paper + electronic) tools, but lately i'm trying to settle on a final, most-centralised system I could come up with - and so far I've been successfully using Notion, although it's not perfect and still i use Google Keep for very quick notes like daily todo's and Google Sheets for large lists (read books, adressess etc).
    I find docuwiki/tiddlywiki ideas in other comments' brilliant. Your Git approach is also incredibly smart.

  • Eliomar Garzon
    Eliomar GarzonJan 15, 2021

    I'll try to apply your solution, I constantly find myself googling, I can't remember things that I learnt 1 week ago, So it's frustrating. Thanks for this article.

  • Luciano Strika
    Luciano StrikaAug 9, 2022

    I started my Digital Garden in 2020 and have been tending to it all along. I treat it like a public personal wiki, where I take notes from papers, courses and books.
    It's been working wonders for my memory (or lack thereof).

Add comment