The tools I use to manage my knowledge (2021)
Constant learning is an important part of the life of a Software Engineer. But organizing and Digesting all that knowledge and information from multiple sources like Blog posts, newsletters, social networks, documentation sites can be a daunting task.
In this post, I will talk about the tools I use to help me with that.
Raindrop describes itself as "All-in-one bookmark manager". It can work as a replacement for the browser bookmarks but I use both, for different purposes. Browser bookmarks for more permament storage like links to sites and applications I use most, Raindrop mostly as an inbox of new content that I want to process.
When I found some interesting resource like a blog post that I want to read and process, I save it in Raindrop using it´s web clipper. Raindrop has a very clean UI and allows you to tag and organize your articles into collections, making easier to find all the links associated with a specific topic.
It´s a very recent tool in my workflow but I am very happy so far. I used Pocket for this before discovering Raindrop and it´s also a great tool, but it´s more focused on reading features like it´s "Reading Mode", which I didn´t really need. Organization features are more important to me and while Pocket also allows to tag articles for example, I feel Raindrop is more tailored to that.
I have a couple of collections/folders in my Raintrop like:
- Unsorted - This is a default collection in Raindrop, where links are saved by default. I use it as my Inbox, before moving or tagging links to a more appropriate collection. If I just want to save something and process later, this collection is a place to go.
- Dev Articles - Where I save links to articles related to Software Development that I found intersting or want to process later.
- Code - Links for code related stuff like Libraries, GitHub Projects, etc.
- Courses - Links to online courses that I might want to enroll.
- Books - Links to Books that I want to read.
- Product Hunt - Links to new interesting SaaS applications.
- Shopping - Links to products that I am interested to buy.
You can also add different icons for each collection makes it easier to identify.
I found this structure is working pretty well for me.
Notion / Obsidian
I use Notion as my central knowledge base and note taking platform. Every piece of information that I want to save, from a simple list of links related with some topic to book notes and annotations is stored in there. I also use it for project planning and specification.
It´s a very powerfull software that is widely popular right now and it´s incredibly flexible.
Here´s an example what the structure of my "Dev" workspace in Notion looks like:
Notion is not the fastest application. Some parts, like the search, is sometimes slow, which is not good. They are working on Performance, Offline and also on an API. let´s see how it improves.
I recently discovered Obsidian, which works on top of a local folder with plain text Markdown files. It´s still in early stages of development, but It seems to be gaining momentum and have a strong community. It´s a lot faster than notion, and it has a plugin system which could be huge, for more personalized workflows. It also has a graph view where you can see how your notes are connected.
I will keep following it´s development, and might switch from Notion. Not decided yet. Both are great choices, for sure.
Memex it´s also a bookmarking tool that can be somewhat used like Raindrop, but it has a very distinct feature, which is highlighting and annotating web pages.
It´s great when learning a new topic or to save specific bits of information from an article or web page. I can create a collection like an outline for a specific topic and then highlight and annotate interesting parts from multiple sources about that topic and have then together, so I can process them later.
I used Diigo for this purpose before, but Memex is a lot more modern and in active development. It is also Open Source, which is always nice.
I use Cacher to store and organize my code snippets. It syncs with GitHub Gist and have integrations with all the popular Code editors like VS Code or Jetbrains IDEs.
It also have a browser extension that allows to easily save snippets from the web and a tray application for quick access to your snippets.
I still use my code editor snippets features for one liners and mostly used snippets as the autocomplete it´s still faster, but Cacher works great as a library for interesting pieces of code that I stumbled upon.
This is the current list of tools that I use to manage my knowledge. I am quite happy with them and my workflow but in tech everything changes pretty rapidly, so this list could look very different in a year.
Besides Cacher, which I have been using for a while, all of these tools, I started using only last year. I have tried many others in the past from Evernote in the early days to Boostnote, Notable, Pocket .... And when I thought Notion was perfect, I discovered Obsidian. It´s a never ending quest to the perfect workflow! ;)
I get inspired by articles like this, presenting tools I don´t know about. Hope this can also help someone to discover something new.