Skip to content

Instantly share code, notes, and snippets.

@reidjs
Last active August 27, 2022 00:14
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save reidjs/bad97a35bf16089d8890300b3b5ba71f to your computer and use it in GitHub Desktop.
Save reidjs/bad97a35bf16089d8890300b3b5ba71f to your computer and use it in GitHub Desktop.
A five point strategy to keep your notes organized and easily searchable

A five point strategy to keep your notes organized and easily searchable

Why structure your notes?

There isn't a correct way to take notes, but I have found that having a system, any system, is extremely beneficial when you are working on large projects. Conventions allow you to stop thinking about the style of your notes and focus on quality and content. This isn't a list of rules that must be followed at all times, it's a recurring process that leads to a more useful collection of notes over time.

My system

  1. Keep all your structured notes in a single root folder and make sure it's safely backed up. I keep my notes in iCloud.
  2. Minimize directory depth. For example, you may have a music folder, but you should not have ANY folders within it, if possible. If you start accumulating a lot of guitar specific notes, you should make a new folder at the root directory named guitar.

Example file structure

notes/
├─ guitar/
├─ music/
│  ├─ song_lyrics.png
│  ├─ chord_chart.html
│  ├─ misc_music_notes.md
├─ thoughts/
│  ├─ misc_thoughts.md
│  ├─ software_thoughts.md
├─ dont forget to Buy milk tomorrow.txt
├─ inbox.md
├─ todo.md
  1. Name files as accurately and consistently as possible. Use the same convention for each, I use snake_case. Make it easy to find the category/topic with fuzzy file name search. If you were looking for a certain piece of writing and couldn't find it after using the file name search, consider modifying the file name with the keyword you were originally thinking.
  2. Rename files as the scope of their content expands; if a file starts as jokes about cafes, name it cafe_jokes, if it expands to jokes about bars and cafes, rename it cafe_and_bar_jokes. If the name starts getting too long, consider breaking it into multiple files.
  3. Writing in a file should be roughly chronological, with the text at the top more recent than at the bottom. I use the keyboard shortcut OPTION + SHIFT + D to quickly insert a timestamp in (MM DD, YYYY) May 26, 2022 format before adding the content.
  4. Either use a newline with a triple dash (---) or two newlines to separate thoughts or related content within a file.

Example of a note file "software_thoughts.md"

August 1, 2022
There will always be things we wish to say in our programs that in all known languages can only be said poorly.
---
Richard P Gabriel (Nickieben Bourbaki)
Worse is better - programs are like viruses that spread quickly over time. If and only if they are successful, they will be improved over time. 
---
Isn’t it crazy that the guy who invented the internet is still alive

July 20, 2022
There are only two kinds of languages: the ones people complain about and the ones nobody uses
-- Bjarne Stroustrup

June 3, 2022
Reid Hoffman (linkedin founder): If you're not embarrased by your first launch then you've shipped too late

---

Hope this helps,

-- Reid Sherman

Software Engineer

@reidjs
Copy link
Author

reidjs commented Aug 1, 2022

@jonasbn
Copy link

jonasbn commented Aug 1, 2022

I believe your quote: "There are only two kinds of languages: the ones people complain about and the ones nobody uses" are by Bjarne Stroustrup, ref: https://www.stroustrup.com/quotes.html if you want to reference it

@reidjs
Copy link
Author

reidjs commented Aug 2, 2022

Thanks! will ref

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment