Learn & Share video Obsidian

You want a reliable tool which is easy to use, extendable and adaptable to your personal needs? Meet Obsidian.

Knowledge is very powerful. So, finding the right tool to help you gather, structure and access information anywhere and anytime, is rather a necessity than an option.
You want to accomplish your tasks better? You want a reliable tool which is easy to use, extendable and adaptable to your personal needs? Today I would like to introduce you to the knowledge management system of my choice: Obsidian. Its areas of application are extensive, and the tool gives you endless opportunities of customization.

What is Obsidian and what makes it a great alternative to OneNote and the like?

Obsidian is an open-source application, which gives its targeted developer audience, the opportunity to build a personal knowledge base beyond existing alternatives. It is multi-platform, so you can download it either for Mac or for Windows and even for Android. Although I personally recommend using it on a bigger screen. It is a wiki-style note-taking app with a navigation consisting of (wiki) links. What stands out the most though is its possibility to visualize all your links as a graph, the efficient code-autocomplete function and Git integration. It is the only knowledge base software I have come across so far, that integrates seamlessly into my workflow as a Software Developer.

And let’s face it: There are some great knowledge management tools out there. I have tried several alternatives myself: Notion, Evernote, OneNote, Microsoft To Do and Google Keep, just to name a few. All of them have their advantages and disadvantages, but in the end, none of them satisfied my needs completely. After sharing my experiences with my colleagues, one of them recommended Obsidian to me. Motivated to try yet another knowledge base system, it got me hooked for good.

What makes Obsidian stand out as a knowledge base system and why do I think it is the perfect match for anyone working as a programmer?

The tool was designed and developed with the needs and wants of its users in mind. I have compiled the most important features in the following list:

Data Ownership is key

When using Obsidian, the notes belong 100% to you. Lots of other tools save your notes in a special format, like e.g. in a binary format or in their own special format. So even if you can export your data in any other knowledge management tool, consider the following issues which can lead to you losing all the information you collected up until then:

  • your license runs out
  • you are not satisfied anymore and want to switch to a different tool
  • or the company behind the tool goes out of business

With Obsidian, you don’t have to worry about those things. Your notes are saved in your local file system in a plain text format. This means you could even edit them with a simple note pad. You can open, read, and edit your data from anywhere and anytime.  Your knowledge base is not stored in any cloud or on a server, it is really on your device. And since Obsidian is using a folder structure, any other application can modify them.

Here is an example: Let’s say you want to use a command-line tool that watches whether the file is changing in the folder. With this knowledge base software, you can easily set this up and are able to do something about unwanted accesses. In another case you might want to use a tool with which you can add some additional info to your notes, or you want to be able to easily replace text. Obsidian gives you all these options.

The links are first class citizens

You are not only making notes and add links in Obsidian. This tool takes links to a whole other level.
Links are maintained in any direction, forward and backward (= backlinks). You can visualize the links with an integrated visualizing tool. Further than that, you can even find new relevant connections between your notes. Obsidian makes this process feel very natural and helps you organize your notes in a structured and well thought out scheme.

The knowledge tool was designed to be extendable by others from the start

The useful core functions of the Obsidian knowledge management system can be extended and customized according to your preferences. It was designed to encourage people to do so from the start. The software grants endless flexibility so therefore people can write their own plugins, to add even more functionality to the tool. There is a thriving and active community who will happily assist you putting Obsidian to use exactly the way you need it to.  

Obsidian was optimized for performance and low memory consumption

The app was developed with Electron, a software framework which is commonly known for needing a lot of resources. For some reason though, the Obsidian team set up its knowledge base tool to be exceptionally efficient and will therefore not pull your CPU down or block you from doing other things simultaneously. Furthermore, the memory consumption is impressive - with half a dozen plugins and a decent amount of notes it still needs less than 100 MB of memory. This is something that really impresses me, so I cannot emphasize it enough.

A knowledge base with powerful search capabilities

 The Obsidian development team was collecting ideas for inspiration from several high-end tools like Visual Studio Code. They focused on providing a search feature that is easy and intuitive to use. You can customize a hotkey for opening search, you can search for selected text and the tool remembers the most recent search queries. You can copy or embed search results and take advantage of many other features, which again, can be customized to your needs.

 

What is Obsidian useful for?

Officially Obsidian is titled as a knowledge management system, which means it can serve you as a second brain. Above that you could make it your log and later transfer notes to another tool like Toggle, e.g. to book your working hours. You can also use it for studying or taking notes when you are reading something. The Obsidian knowledge tool even has an outlining and folding option, which means you can collapse the titles when needed. Whatever text you collected beneath each title, you can use Obsidian simply to read passages aloud or to repeat what you have written and take advantage of it as an efficient learning tool. As you can see, you can use this app for many different tasks, the opportunities are nearly unlimited.

Here is a summary of areas of application:

  • Knowledge management system or Second brain

  • Diary and Work Log

  • Time Management

  • Learning tool

  • Local file storage

  • Interface to many other tools

 

How is the Obsidian knowledge base tool built up?

Collections of notes are called Vault in Obsidian. A Vault contains a folder and any sub-folders you created within it. The body of the note is kept in a so-called Markdown format, which is a formatted plain text. Markdown is widely used by sites like GitHub or Reddit. That makes it so easy to directly edit the source files with the right editor, edit them with scripts or easily transfer your files and data to many other software applications.

There are two kinds of Obsidian plugins:

  • Core plugins

  • Community plugins

Currently there are 26 core plugins provided by Obsidian, ranging from an Audio recorder to File recovery and easily an easily set-up Template plugin. As mentioned earlier, Obsidian is strongly interested in third parties to develop their own plugins. There are currently more than 300 community plugins available which can be accessed by turning off Safe Mode.

Here are a few community plugins I use and find very helpful:

  • Editor Syntax Highlight

  • Kindle Highlights

  • Templater

  • Slides

  • Global Hotkeys


If you want to watch more Brown Bag Sessions, visit our YouTube channel!

Blog 10/1/22

Introduction to Functional Programming in F# – Part 4

Unlock F# collections and pipelines. Manage data efficiently and streamline your functional programming workflow with these powerful tools.

Blog 3/22/23

Introduction to Functional Programming in F# – Part 8

Discover Units of Measure and Type Providers in F#. Enhance data management and type safety in your applications with these powerful tools.

Blog 11/30/22

Introduction to Partial Function Application in F#

Partial Function Application is one of the core functional programming concepts that everyone should understand as it is widely used in most F# codebases.In this post I will introduce you to the grace and power of partial application. We will start with tupled arguments that most devs will recognise and then move onto curried arguments that allow us to use partial application.

Blog 6/27/23

Boosting speed of scikit-learn regression algorithms

The purpose of this blog post is to investigate the performance and prediction speed behavior of popular regression algorithms, i.e. models that predict numerical values based on a set of input variables.

Blog 10/27/21

Isolating legacy code with ArchUnit tests

Clear boundaries in code are important ... and hard. ArchUnit allows you to capture the structure your team agreed on in tests.

Blog 5/18/22

Introduction to Functional Programming in F#

Dive into functional programming with F# in our introductory series. Learn how to solve real business problems using F#'s functional programming features. This first part covers setting up your environment, basic F# syntax, and implementing a simple use case. Perfect for developers looking to enhance their skills in functional programming.

Blog 11/15/22

5 lessons from running a (remote) design systems book club

Last year I gifted a design systems book I had been reading to a friend and she suggested starting a mini book club so that she’d have some accountability to finish reading the book. I took her up on the offer and so in late spring, our design systems book club was born. But how can you make the meetings fun and engaging even though you're physically separated? Here are a couple of things I learned from running my very first remote book club with my friend!

Blog 11/24/23

Part 3: How to Analyze a Database File with GPT-3.5

In this blog, we'll explore the proper usage of data analysis with ChatGPT and how you can analyze and visualize data from a SQLite database to help you make the most of your data.

Blog 7/25/23

Revolutionizing the Logistics Industry

As the logistics industry becomes increasingly complex, businesses need innovative solutions to manage the challenges of supply chain management, trucking, and delivery. With competitors investing in cutting-edge research and development, it is vital for companies to stay ahead of the curve and embrace the latest technologies to remain competitive. That is why we introduce the TIMETOACT Logistics Simulator Framework, a revolutionary tool for creating a digital twin of your logistics operation.

Blog 11/22/22

Part 1: Detecting Truck Parking Lots on Satellite Images

Real-time truck tracking is crucial in logistics: to enable accurate planning and provide reliable estimation of delivery times, operators build detailed profiles of loading stations, providing expected durations of truck loading and unloading, as well as resting times. Yet, how to derive an exact truck status based on mere GPS signals?

Blog 11/14/23

Part 2: Data Analysis with powerful Python

Analyzing and visualizing data from a SQLite database in Python can be a powerful way to gain insights and present your findings. In Part 2 of this blog series, we will walk you through the steps to retrieve data from a SQLite database file named gold.db and display it in the form of a chart using Python. We'll use some essential tools and libraries for this task.

Blog 11/10/23

Part 1: Data Analysis with ChatGPT

In this new blog series we will give you an overview of how to analyze and visualize data, create code manually and how to make ChatGPT work effectively. Part 1 deals with the following: In the data-driven era, businesses and organizations are constantly seeking ways to extract meaningful insights from their data. One powerful tool that can facilitate this process is ChatGPT, a state-of-the-art natural language processing model developed by OpenAI. In Part 1 pf this blog, we'll explore the proper usage of data analysis with ChatGPT and how it can help you make the most of your data.

Blog 7/13/21

Composite UI with Design System and Micro Frontends

Discover how to create scalable composite UIs using design systems and micro-frontends. Enhance consistency and agility in your development process.

Blog 7/22/24

So You are Building an AI Assistant?

So you are building an AI assistant for the business? This is a popular topic in the companies these days. Everybody seems to be doing that. While running AI Research in the last months, I have discovered that many companies in the USA and Europe are building some sort of AI assistant these days, mostly around enterprise workflow automation and knowledge bases. There are common patterns in how such projects work most of the time. So let me tell you a story...

Blog 10/31/23

5 Inconvenient Questions when hiring an AI company

This article discusses five questions you should ask when buying an AI. These questions are inconvenient for providers of AI products, but they are necessary to ensure that you are getting the best product for your needs. The article also discusses the importance of testing the AI system on your own data to see how it performs.

Blog 2/21/22

The Power of Event Sourcing

This is how we used Event Sourcing to maintain flexibility, handle changes, and ensure efficient error resolution in application development.

Blog 11/27/23

Part 4: Save Time and Analyze the Database File

ChatGPT-4 enables you to analyze database contents with just two simple steps (copy and paste), facilitating well-informed decision-making.

Blog 6/29/21

7 Positive effects of visualizing the interests of your team

Interests maps unleash hidden potentials and interests, but they also make it clear which topics are not of interest to your colleagues.

Service

Digital Architecture

In order to survive in a dynamic and highly competitive market, you need to be able to adapt your business processes, products and services efficiently to the needs and expectations of your customers

Blog 12/19/22

Creating a Cross-Domain Capable ML Pipeline

As classifying images into categories is a ubiquitous task occurring in various domains, a need for a machine learning pipeline which can accommodate for new categories is easy to justify. In particular, common general requirements are to filter out low-quality (blurred, low contrast etc.) images, and to speed up the learning of new categories if image quality is sufficient. In this blog post we compare several image classification models from the transfer learning perspective.