Skip to content

How I Take Notes

Contents

Overview

Writing is an essential part of learning.

Through writing, one demonstrates what he/she has learned and proved he/she can explain it with words. This displays the ability to think critically and problem solve as well as absorb knowledge and curate it into wisdom for future endeavors.

Over time I have been influenced by and adopted the Zettelkasten system for note-taking (made popular by the book How to Take Smart Notes).

Zettelkasten is a note taking method popularized by German sociologist Niklas Luhmann. The system is straightforward. Take notes and make connections between them. Notes are organized topically rather than chronologically or by association with a document. The act of linking between notes is explicit through manually written cross-reference. And to make it easier to connect ideas, write entries that contain one single thought.

I have been using this method for some time now.

In this note, I will lay out the tools and the workflow I use. Essentially, I need something to:

  1. Capture ideas
  2. Reference Manager
  3. Place to store notes or a Slipbox and
  4. An Editor

Tools

Currently I use a suite of tools to aid in my note taking:

  • Pen and Paper Notebooks
  • Obsidian
  • Raindrop.io
  • Instapaper
  • Feedly
  • Zotero
  • Markdown
  • Git and GitHub
  • MkDocs and GitHub Actions
  • Evernote
  • Todoist
  • Typora
  • VSCode

Zotero: Reference Manager

Zotero is a free tool that I use to store and manage references. It has a neat web integration tool. When you visit a website like Amazon or Wikipedia, you can save the complete reference information to Zotero library. Zotero can also save a copy of the webpage and the full-text PDF. It can store references to videos and websites as well. I can then create a citation for any items in the library.

My Slipbox

./Slipbox
β”œβ”€β”€ Actuarial Data Science and Financial Modeling with Microsoft Azure.md
β”œβ”€β”€ Actuarial Development Master Resource List.md
β”œβ”€β”€ Actuarial Exams.md
β”œβ”€β”€ Actuarial Experience Studies.md
β”œβ”€β”€ Actuarial Property Casualty Data Thoughts.md
β”œβ”€β”€ Actuarial Rate Indications Automation.md
β”œβ”€β”€ Advanced Programming Concepts.md
β”œβ”€β”€ Alteryx vs Code.md
β”œβ”€β”€ Annual Goals and Life Domains.md
β”œβ”€β”€ API Architecture - Performance Best Practices.md
β”œβ”€β”€ API Authentication.md
β”œβ”€β”€ API Design.md
β”œβ”€β”€ _assets
β”‚Β Β  β”œβ”€β”€ Actuary_Article_Experience Study.pdf
β”‚Β Β  β”œβ”€β”€ Azure_API-Design_Guide_eBook.pdf
β”‚Β Β  β”œβ”€β”€ BPMN-CMMN-DMN-Specifications-at-OMG.pdf
β”‚Β Β  β”œβ”€β”€ bpmn.pdf
β”‚Β Β  β”œβ”€β”€ claim_schema.png
β”‚Β Β  β”œβ”€β”€ Database-Pooling.png
β”‚Β Β  β”œβ”€β”€ howtostartanywebappproject.pdf
β”‚Β Β  β”œβ”€β”€ lifetime-of-claim.png
β”‚Β Β  β”œβ”€β”€ losstri.png
β”‚Β Β  β”œβ”€β”€ Pasted image 20211115122342.png
β”‚Β Β  β”œβ”€β”€ pcdmcdm.png
β”‚Β Β  β”œβ”€β”€ PropertyCasualty-datamodel.pdf
β”‚Β Β  └── RewritingYourGitHistory-Cheatsheet-Final_weq1l2.pdf
β”œβ”€β”€ Atomic Notes.md
β”œβ”€β”€ Azure Setup Guide.md
β”œβ”€β”€ Backup Edge User Preferences PowerShell Script.md
β”œβ”€β”€ Bash.md
β”œβ”€β”€ Bayesian Statistics.md
β”œβ”€β”€ Building a Second Brain.md
β”œβ”€β”€ Business Process Model and Notation.md
β”œβ”€β”€ Caching.md
β”œβ”€β”€ CAS - Casualty Actuarial Society.md
β”œβ”€β”€ Cloud Computing.md
β”œβ”€β”€ Collectors Fallacy.md
β”œβ”€β”€ Credibility Theory.md
β”œβ”€β”€ Database Connection Pooling.md
β”œβ”€β”€ Data Cataloging.md
β”œβ”€β”€ Data Engineering Master List of Resources.md
β”œβ”€β”€ Data Lake.md
β”œβ”€β”€ Data Mart.md
β”œβ”€β”€ Data Science Lifecycle.md
β”œβ”€β”€ Data Versioning.md
β”œβ”€β”€ Data Warehouse.md
β”œβ”€β”€ Data Warehousing Concepts and Definitions.md
β”œβ”€β”€ Data Warehousing for Insurance Data.md
β”œβ”€β”€ Data Warehousing Roadmap.md
β”œβ”€β”€ Deployment.md
β”œβ”€β”€ Developer Notebooks.md
β”œβ”€β”€ Developer Productivity and Collaboration with Azure Machine Learning.md
β”œβ”€β”€ Developing PowerShell Modules and Functions.md
β”œβ”€β”€ Digital Garden.md
β”œβ”€β”€ Dimensional Modeling.md
β”œβ”€β”€ Documenting PowerShell Modules.md
β”œβ”€β”€ DotNet Core.md
β”œβ”€β”€ DotNet Framework.md
β”œβ”€β”€ Edge Search Engines.md
β”œβ”€β”€ ELT Cloud Based Pipeline Architecture.md
β”œβ”€β”€ ELT.md
β”œβ”€β”€ ETL Data Warehousing Best Practices.md
β”œβ”€β”€ ETL.md
β”œβ”€β”€ Fact Table Structure.md
β”œβ”€β”€ Features of a Data Warehouse.md
β”œβ”€β”€ Flask and Docker.md
β”œβ”€β”€ Free Actuarial System for Loss Reserving.md
β”œβ”€β”€ GCP Sketchnote Diagrams.md
β”œβ”€β”€ Generalized Additive Models.md
β”œβ”€β”€ Generalized Linear Models.md
β”œβ”€β”€ Geospatial.md
β”œβ”€β”€ Getting Things Done.md
β”œβ”€β”€ GTD Mindsweep.md
β”œβ”€β”€ How to create a passwordless sudoer on Linux.md
β”œβ”€β”€ Interest Rate Theory.md
β”œβ”€β”€ Interpolation of Cumulative Loss Development Factors.md
β”œβ”€β”€ KasaAI GitHub Organization.md
β”œβ”€β”€ Kimball Techniques for Data Warehousing.md
β”œβ”€β”€ Linux Commands - visudo.md
β”œβ”€β”€ List of Python Flask Resources.md
β”œβ”€β”€ Logical Architecture of Modern Data Lake Centric Analytics Platforms.md
β”œβ”€β”€ Loss Data Analytics.md
β”œβ”€β”€ Loss Triangles.md
β”œβ”€β”€ Machine Learning.md
β”œβ”€β”€ Memoization.md
β”œβ”€β”€ Microsoft Windows Terminal.md
β”œβ”€β”€ Miniature Insurance Economic Simulator.md
β”œβ”€β”€ MLOps.md
β”œβ”€β”€ Neural Networks.md
β”œβ”€β”€ No-Code and Low-Code.md
β”œβ”€β”€ Obsidian.md
β”œβ”€β”€ PARA Method.md
β”œβ”€β”€ Personal Backup Strategy.md
β”œβ”€β”€ PowerShell Core.md
β”œβ”€β”€ PowerShell Module - devblackops.md
β”œβ”€β”€ PowerShell Module - ModuleBuilder.md
β”œβ”€β”€ PowerShell Module - Pester.md
β”œβ”€β”€ PowerShell Module - Plaster.md
β”œβ”€β”€ PowerShell Module - PoshCode.md
β”œβ”€β”€ PowerShell Module - psake.md
β”œβ”€β”€ PowerShell Module - PSScaffold.md
β”œβ”€β”€ PowerShell Module - Stucco.md
β”œβ”€β”€ Probability Theory.md
β”œβ”€β”€ Problems with No-Code and Low-Code Tools.md
β”œβ”€β”€ Progressive Summarization.md
β”œβ”€β”€ Property Casualty Data Model.md
β”œβ”€β”€ Property Casualty Loss Reserving Methodologies.md
β”œβ”€β”€ Python Package - ChainLadder.md
β”œβ”€β”€ Python Package - Flask.md
β”œβ”€β”€ Python Package - SQLAlchemy.md
β”œβ”€β”€ Python Package - tryangle.md
β”œβ”€β”€ Random Forest Algorithms.md
β”œβ”€β”€ R - Connect Shiny to PostgreSQL Database.md
β”œβ”€β”€ R Database Packages.md
β”œβ”€β”€ _README.md
β”œβ”€β”€ Relational Databases.md
β”œβ”€β”€ Reproducible Data Science with Azure Machine Learning.md
β”œβ”€β”€ Reproducible Research.md
β”œβ”€β”€ REST API Best Practices.md
β”œβ”€β”€ REST API Idempotence.md
β”œβ”€β”€ REST API Methods.md
β”œβ”€β”€ REST API Resource Naming.md
β”œβ”€β”€ REST API Resources List.md
β”œβ”€β”€ R Package - actuar.md
β”œβ”€β”€ R Package - cascsim.md
β”œβ”€β”€ R Package - casdata.md
β”œβ”€β”€ R Package - casdown.md
β”œβ”€β”€ R Package - ChainLadder.md
β”œβ”€β”€ R Package - conjuror.md
β”œβ”€β”€ R Package - DBI.md
β”œβ”€β”€ R Package Development Resources.md
β”œβ”€β”€ R Package - imaginator.md
β”œβ”€β”€ R Package - insurancerating.md
β”œβ”€β”€ R Package - plumber.md
β”œβ”€β”€ R Package - raw.md
β”œβ”€β”€ R Package - RPostgreSQL.md
β”œβ”€β”€ R Package - rsvr.md
β”œβ”€β”€ R Package - simulationmachine.md
β”œβ”€β”€ R Packge - deeptriangle.md
β”œβ”€β”€ R Shiny Packages.md
β”œβ”€β”€ R Shiny - The Big Long - An Interactive Actuarial Simulation.md
β”œβ”€β”€ RStudio Package Manager.md
β”œβ”€β”€ Ruby.md
β”œβ”€β”€ Simulating Actuarial Claims Data with R.md
β”œβ”€β”€ SQLAlchemy ORM.md
β”œβ”€β”€ SQLite.md
β”œβ”€β”€ SQL.md
β”œβ”€β”€ SQL Server Management Studio.md
β”œβ”€β”€ SQL Stored Procedures Best Practices.md
β”œβ”€β”€ Stored Procedures - SQL Server.md
β”œβ”€β”€ Subject Area Models.md
β”œβ”€β”€ System Design.md
β”œβ”€β”€ Team Data Science Process.md
β”œβ”€β”€ Ten Step GTD Setup List.md
β”œβ”€β”€ The Kimball Lifecycle.md
β”œβ”€β”€ The Ultimate Guide to an Effective Weekly Review.md
β”œβ”€β”€ Todoist.md
β”œβ”€β”€ Tools.md
β”œβ”€β”€ Unified Architecture Framework.md
β”œβ”€β”€ Unix Philosophy.md
β”œβ”€β”€ Version Control.md
β”œβ”€β”€ Visual Studio Code.md
β”œβ”€β”€ Weekly Review Musings.md
β”œβ”€β”€ Windows Developer Environment.md
β”œβ”€β”€ Windows Dotfiles Musings.md
β”œβ”€β”€ Windows PowerShell.md
β”œβ”€β”€ Windows Shell Commands.md
β”œβ”€β”€ WSL Initial Setup Notes.md
β”œβ”€β”€ WSL Terminal and Shell Setup Guide.md
β”œβ”€β”€ Zettelkasten.md
└── zsh.md

1 directory, 170 files

To store the notes, I use the file system. I save all entries in markdown format and put them all in a folder. The wonderful thing about using markdown format is that it is plain text. That means you can use any editor to edit or read. Plain text files are easy to handle, easy to backup, and easy to transferβ€”no vendor lock-in.

I also put every note in a cloud-based file hosting server and back it up on a git server. This way, I can open it from my mobile devices and ensure that I have a backup for all my notes.

Workflow

All new information will first go to my notebook. I will then process this notebook. I do this at least once a week. But it is usually twice or more per week. When I understand the content, I move it to my slip box (a folder in my file system). If I need to think about the idea more deeply, I move it into Obsidian.

The flow does not always follow a neat sequence.

Collection and Curation

Good ideas are not conjured out of thin air; they are built out of a collection of existing parts, the composition of which expands (and, occasionally, contracts) over time. β€” Steven Johnson. Where Good Ideas Come From

I consume a lot of content. I watch videos, read blog posts, and listen to a podcast. Most of those content I quickly forget. Granted, some of this content is not worth a second thought, but I also forget about the good one. I tried to use the bookmark tool and read-later app. Those tools do help me collect and manage content. But all said and done, it is still one mindless consumption activity. This is when I learn about content curation.

Content curation is the process of sifting through content and organizing, filtering, and making sense of it. It is a process that turns information into knowledge. It forces you to judge and organize the resources. Organizing content pushes you to establish connections between sources and identify areas of synthesis. The entire process encourages critical thinking and allows you to engage these sources mindfully.

At the moment, I am using RaindropIO and Notion. I use RaindropIO to collect and curate books, blog posts, design pieces, visualization, diagrams, learning curriculum, my favorite books of all time, expert directories, and galleries. It is my go-to tool for collecting content. Before RainDropIO, I used PinBoard and Instapaper. But I have moved over to RaindropIO.


Backlinks:

list from [[How I Take Notes]] AND -"Changelog"