Blog posts by Tag
- Cheat Sheets 10
- Data Analysis 49
- Data Science 9
- Downloads 4
- Graphic Design 4
- Image Processing 8
- Independent Web 8
- Jekyll 11
- LGBT 1
- Machine Learning/AI 23
- Markdown/LaTeX 30
- Neuroscience 11
- Open Source 29
- Personal Knowledge Management 18
- Personal Opinion 13
- Photography 8
- Privacy 3
- Python 63
- Scientific Writing 27
- Teaching 16
- Wallpaper 3
- Web Design 15
- Zen 6
#Cheat Sheets
Hacks and extensions to improve your coding with Visual Studio Code
This curated list contains useful hacks and extensions to improve the overall coding performance with Visual Studio Code (VS Code).
New Teaching Material: Python Cheat Sheets
I’ve started a collection of various Python cheat sheets that contain some useful and commonly used commands and usage examples.
Emojis for Jekyll via Jemoji
A how-to and a list of all currently working Emojis on Jekyll built websites.
strftime Cheat Sheet
Cheat Sheet on formatted date and time strings used, e.g., in Python, C/C++ or even on Jekyll websites by using Liquid tags.
Liquid Cheat Sheet
This Cheat Sheet gives an overview of Liquid syntax commands one might encounter while developing a Jekyll website.
Minimal Mistakes Cheat Sheet
A quick overview of available commands for creating content with the Minimal Mistakes Jekyll theme.
Supported syntax highlighting in Jekyll
A list of supported programming languages for Jekyll’s syntax highlighting.
How to use LaTeX in Markdown
A quick guide on how to enable MathJax support in your Markdown documents.
New Teaching Material: LaTeX Guide
I’ve added a LaTeX guide to the General Teaching Materials in the teaching section. It serves as a Getting started with LaTeX guide and as a LaTeX glossary.
New Teaching Material: Markdown Guide
I’ve composed a Markdown Guide for my teaching courses.
#Data Analysis
Mamba vs. Conda: Unleashing lightning-fast Python package installations
If you’ve ever experienced the frustration of waiting for ages while installing Python packages with conda, there’s a game-changer I wish I’d heard about ear...
Assessing animal behavior with machine learning
High-throughput and multi-modal behavior experiments, coupled with machine learning analysis, unlock valuable insights into complex systems by capturing dive...
Bioimage analysis with Napari
I’ve added new teaching material on using the free and open-source software (FOSS) Napari for bioimage analysis. Feel free to use and share it.
Using random forests for pixel classification
Beyond traditional classification problems, random forests have proven their effectiveness in pixel classification. In this post, we will delve into this dom...
Decision Trees vs. Random Forests for classification and regression: A comparison
Decision trees and random forests are popular machine learning algorithms that are widely used for both classification and regression tasks. In this blog pos...
Image denoising techniques: A comparison of PCA, kernel PCA, autoencoder, and CNN
In this post, we explore the performance of PCA, Kernel PCA, denoising autoencoder, and CNN for image denoising.
Using Autoencoders to reveal hidden structures in high-dimensional data
In this Python tutorial, we explore the application of Autoencoders for dimensionality reduction, demonstrating how this powerful technique can help us uncov...
Unlocking hidden patterns with Factor Analysis
In this Python tutorial, we dive into Factor Analysis, a powerful statistical method used to uncover hidden, or ‘latent,’ variables within high-dimensional d...
Untangling complexity: harnessing PCA for data dimensionality reduction
This tutorial explores the use of Principal Component Analysis (PCA), a powerful tool for reducing the complexity of high-dimensional data. By delving into b...
t-SNE and PCA: Two powerful tools for data exploration
Dimensionality reduction techniques play a vital role in both data exploration and visualization. Among these techniques, t-SNE and PCA are widely used and o...
Understanding L1 and L2 regularization in machine learning
Regularization techniques play a vital role in preventing overfitting and enhancing the generalization capability of machine learning models. Among these tec...
Understanding gradient descent in machine learning
Gradient descent is a fundamental optimization algorithm widely used in machine learning for finding the optimal parameters of a model. It is a powerful tech...
Loading and saving files in Google Colab
Enable I/O support in your notebooks running in Google Colab with just a few additional commands.
Mutual information and its relationship to information entropy
Mutual information is an essential measure in information theory that quantifies the statistical dependence between two random variables. Given its broad app...
Information entropy
A fundamental concept that plays a pivotal role in quantifying the uncertainty or randomness of a set of data is the information entropy. Information entropy...
Understanding entropy
In physics, entropy is a fundamental concept that plays a crucial role in understanding the behavior of physical systems. It provides a measure of the disord...
Bio-image registration with Python
Which method works best for which registration problem? In this tutorial we compare different methods for the registration of bio-images using Python.
How to run PyTorch on the M1 Mac GPU
As for TensorFlow, it takes only a few steps to enable a Mac with M1 chip (Apple silicon) for machine learning tasks in Python with PyTorch.
How to run TensorFlow on the M1 Mac GPU
In just a few steps you can enable a Mac with M1 chip (Apple silicon) for machine learning tasks in Python with TensorFlow.
Is there a difference between miniconda and miniforge?
Simply said: not really. Miniconda is the company driven minimal conda installer, while miniforge is its community driven variant. In the end, you’ll get the...
Hacks and extensions to improve your coding with Visual Studio Code
This curated list contains useful hacks and extensions to improve the overall coding performance with Visual Studio Code (VS Code).
Setting up Visual Studio Code for Python
In just a few steps you can turn Visual Studio Code (VS Code) into a powerful Python editor for both pure Python code and Jupyter Notebooks.
Enable interactive plots and other plot modes in Jupyter notebooks
Learn how to enable interactive, static and stand-alone window plots in Jupyter notebooks with the magic command %matplotlib.
Enable code folding in JupyterLab
Learn how to enable code folding in JupyterLab for both, Jupyter Notebooks and pure Python scripts.
How to create and apply a requirements.txt file in Python
Learn how to install Python packages with a requirements.txt file and how to create one yourself.
Virtual environments with venv
In addition to conda’s create command, Python’s built-in venv command offers another way for creating virtual environments.
Using pip to install Python packages
pip is another package installer for Python. Learn how to use it for installing and managing Python packages in your projects.
How to install and run Python code from GitHub
Learn how to install code from GitHub, that is, e.g., not (yet) available via conda or pip.
A minimal Python installation with miniconda
Learn how to install miniconda to have a quick and minimal Python installation on any operating system. Also learn how to use conda to create and manage virt...
Stable installation of Napari on a M1 Mac
In case you’re having problems installing Napari on your M1 Mac, try to install it from conda instead of pip.
Open Zarr files in Fiji
Both Zarr and OME-ZARR files are supported in Fiji. Here’s how to get it working.
Using Zarr for images – The OME-ZARR standard
As for any other NumPy array, we can use the Zarr file format to store image files. In this post we additionally explore the NGFF (next-generation file forma...
Zarr – or: How to save NumPy arrays
What is Zarr and why is it probably the most suitable file format for saving NumPy arrays?
How to read patch clamp recordings in WaveMetrics IGOR binary files (ibw) in Python
This is a mini tutorial on how to read patch clamp recordings in WaveMetrics IGOR binary files (*.ibw) in Python using the neo and igor packages.
How to add statistical annotations to matplotlib plots
This mini tutorial shows, how to add statistical annotations to matplotlib plots with just a few commands.
Make matplotlib plots look more appealing with just a few extra commands
Learn how to nice up matplotlib plots with just a few hacks.
Variable Explorer in Jupyter Notebooks
Extend your Jupyter environment with Notebook Extensions and enable, e.g., the option to explore your currently defined variables in a running Jupyter session.
Opening a Jupyter notebook from GitHub in Binder: A step-by-step guide
Opening a Jupyter notebook from GitHub in Binder simplifies access to shared code and facilitates seamless collaboration. With just a few steps, you can laun...
New Teaching Material: Python Cheat Sheets
I’ve started a collection of various Python cheat sheets that contain some useful and commonly used commands and usage examples.
New Teaching Material: Statistical data analysis and basic time series analysis with Python
I’ve added two new tutorials in the teaching section on statistical data analysis and basic time series analysis with Python.
New Teaching Material: Analyzing IGOR binary files of patch clamp recordings
I’ve added a new tutorial in the teaching section on how to read and process IGOR binary files (ibw) of patch clamp recordings.
The Weierstrass function and the beauty of fractals
Fractals are captivating mathematical objects that exhibit intricate patterns and self-similarity at various scales. In this post, we explore the elegance a...
The Lotka-Volterra equations: Modeling predator-prey dynamics
The Lotka-Volterra system, also known as the predator-prey equations, is a mathematical model that describes the interaction between two species: predators a...
Interactive COVID-19 data exploration with Jupyter notebooks
Amidst the ongoing challenges of the COVID-19 pandemic, I have written a Jupyter notebook that facilitates interactive exploration of COVID-19 data. You can ...
The SIR model: A mathematical approach to epidemic dynamics
In the wake of the COVID-19 pandemic, epidemiological models have garnered significant attention for their ability to provide insights into the spread and co...
The two-body problem
The two-body system is a classical problem in physics. It describes the motion of two massive objects that are influenced by their mutual gravitational attra...
Solving the Lorenz system using Runge-Kutta methods
In my previous post, I introduced the Runge-Kutta methods for numerically solving ordinary differential equations (ODEs), that are challenging to solve analy...
Runge-Kutta methods for solving ODEs
In physics and computational mathematics, numerical methods for solving ordinary differential equations (ODEs) are of central importance. Among these, the fa...
Earth's dipolar magnetic field
In physics and computational mathematics, numerical methods for solving ordinary differential equations (ODEs) are of central importance. Among these, the fa...
#Data Science
Conditional GANs
I was wondering whether it would be possible to let GANs generate samples conditioned on a specific input type. I wanted the GAN to generate samples of a spe...
Eliminating the middleman: Direct Wasserstein distance computation in WGANs without discriminator
We explore an alternative approach to implementing WGANs. Contrasting from the standard implementation that requires both a generator and discriminator, the...
Wasserstein GANs
We apply the Wasserstein distance to Generative Adversarial Networks (GANs) to train them more effectively. We compare a default GAN with a Wasserstein GAN (...
Probability distance metrics in machine learning
Probabilistic distance metrics play a crucial role in a broad range of machine learning tasks, including clustering, classification, and information retrieva...
Comparing Wasserstein distance, sliced Wasserstein distance, and L2 norm
In machine learning, especially when dealing with probability distributions or deep generative models, different metrics are used to quantify the ‘distance’ ...
Approximating the Wasserstein distance with cumulative distribution functions
In the previous two posts, we’ve discussed the mathematical details of the Wasserstein distance, exploring its formal definition, its computation through lin...
Wasserstein distance via entropy regularization (Sinkhorn algorithm)
Calculating the Wasserstein distance can be computational costly when using linear programming. The Sinkhorn algorithm provides a computationally efficient m...
Wasserstein distance and optimal transport
The Wasserstein distance, also known as the Earth Mover’s Distance (EMD), provides a robust and insightful approach for comparing probability distributions a...
Visualizing Occam's Razor through machine learning
Here, we illustrate the concept of Occam’s Razor, a principle advocating for simplicity, by examining its manifestation in the domain of machine learning usi...
#Downloads
Building New Universes
Lost&found: In the wake of the redesign of my website, I’ve rediscovered an old project from 2016, where I created imaginative sceneries by using water, ...
IDAHOT (International Day Against Homophobia, Transphobia and Biphobia, May 17)
Today is the International Day Against Homophobia, Transphobia and Biphobia ꜛ. As a small contribution to the fight for equal rights, I’ve redesigned my “he...
Material Design
In 2014, Google introduced its new design language Material Design ꜛ. I was fascinated by its design concept:
Study with Colored Pencils
Searching for a new desktop wallpaper, I took some photographs with colored pencils. For the first time, I worked with my little improvised studio. You can d...
#Graphic Design
Building New Universes
Lost&found: In the wake of the redesign of my website, I’ve rediscovered an old project from 2016, where I created imaginative sceneries by using water, ...
IDAHOT (International Day Against Homophobia, Transphobia and Biphobia, May 17)
Today is the International Day Against Homophobia, Transphobia and Biphobia ꜛ. As a small contribution to the fight for equal rights, I’ve redesigned my “he...
Material Design
In 2014, Google introduced its new design language Material Design ꜛ. I was fascinated by its design concept:
Study with Colored Pencils
Searching for a new desktop wallpaper, I took some photographs with colored pencils. For the first time, I worked with my little improvised studio. You can d...
#Image Processing
Bioimage analysis with Napari
I’ve added new teaching material on using the free and open-source software (FOSS) Napari for bioimage analysis. Feel free to use and share it.
Image denoising techniques: A comparison of PCA, kernel PCA, autoencoder, and CNN
In this post, we explore the performance of PCA, Kernel PCA, denoising autoencoder, and CNN for image denoising.
Bio-image registration with Python
Which method works best for which registration problem? In this tutorial we compare different methods for the registration of bio-images using Python.
Stable installation of Napari on a M1 Mac
In case you’re having problems installing Napari on your M1 Mac, try to install it from conda instead of pip.
Open Zarr files in Fiji
Both Zarr and OME-ZARR files are supported in Fiji. Here’s how to get it working.
Using Zarr for images – The OME-ZARR standard
As for any other NumPy array, we can use the Zarr file format to store image files. In this post we additionally explore the NGFF (next-generation file forma...
Zarr – or: How to save NumPy arrays
What is Zarr and why is it probably the most suitable file format for saving NumPy arrays?
New Teaching Material: Fiji short course
There is a new tutorial in the Teaching Material. It’s a short Fiji tutorial on analyzing biomedical image data.
#Independent Web
Switching to a Mastodon-powered comment system
I’m switching to a new Mastodon-powered comment system for my blog.
How to get an RSS feed of your Mastodon bookmarks
The third-party service Mastodon Bookmark RSS allows you to subscribe to your Mastodon bookmarks via RSS, so you don’t forget to make use out of them. You ca...
Moving a Mastodon account to another server
I recently moved my Mastodon account to a new server, including all my followers. I was surprised, how easy and seamless it worked. Here is a how-to, summari...
Some useful Mastodon links
This is a curated list of useful Mastodon links.
I'm on Mastodon
Mastodon is not just a Twitter alternative. It’s a free and open-source social media platform of its own kind. Here is my story how I got there.
Embedding flickr photos on your Jekyll website
Easily integrate entire flickr photosets on your Jekyll website via a ruby plugin.
On website subscriptions via RSS and Atom feeds
Personal opinion on how to create and maintain personal news feeds beyond the dependence on big social media and tech companies.
I switched to Jekyll websites
I have redesigned my website and moved it to a new host as well: I’m running it as Jekyll website hosted on GitHub now.
#Jekyll
Switching to a Mastodon-powered comment system
I’m switching to a new Mastodon-powered comment system for my blog.
On website subscriptions via RSS and Atom feeds
Personal opinion on how to create and maintain personal news feeds beyond the dependence on big social media and tech companies.
Emojis for Jekyll via Jemoji
A how-to and a list of all currently working Emojis on Jekyll built websites.
strftime Cheat Sheet
Cheat Sheet on formatted date and time strings used, e.g., in Python, C/C++ or even on Jekyll websites by using Liquid tags.
Liquid Cheat Sheet
This Cheat Sheet gives an overview of Liquid syntax commands one might encounter while developing a Jekyll website.
Minimal Mistakes Cheat Sheet
A quick overview of available commands for creating content with the Minimal Mistakes Jekyll theme.
Supported syntax highlighting in Jekyll
A list of supported programming languages for Jekyll’s syntax highlighting.
How to use LaTeX in Markdown
A quick guide on how to enable MathJax support in your Markdown documents.
New Teaching Material: LaTeX Guide
I’ve added a LaTeX guide to the General Teaching Materials in the teaching section. It serves as a Getting started with LaTeX guide and as a LaTeX glossary.
New Teaching Material: Markdown Guide
I’ve composed a Markdown Guide for my teaching courses.
I switched to Jekyll websites
I have redesigned my website and moved it to a new host as well: I’m running it as Jekyll website hosted on GitHub now.
#LGBT
IDAHOT (International Day Against Homophobia, Transphobia and Biphobia, May 17)
Today is the International Day Against Homophobia, Transphobia and Biphobia ꜛ. As a small contribution to the fight for equal rights, I’ve redesigned my “he...
#Machine Learning/AI
Conditional GANs
I was wondering whether it would be possible to let GANs generate samples conditioned on a specific input type. I wanted the GAN to generate samples of a spe...
Eliminating the middleman: Direct Wasserstein distance computation in WGANs without discriminator
We explore an alternative approach to implementing WGANs. Contrasting from the standard implementation that requires both a generator and discriminator, the...
Wasserstein GANs
We apply the Wasserstein distance to Generative Adversarial Networks (GANs) to train them more effectively. We compare a default GAN with a Wasserstein GAN (...
Probability distance metrics in machine learning
Probabilistic distance metrics play a crucial role in a broad range of machine learning tasks, including clustering, classification, and information retrieva...
Comparing Wasserstein distance, sliced Wasserstein distance, and L2 norm
In machine learning, especially when dealing with probability distributions or deep generative models, different metrics are used to quantify the ‘distance’ ...
Approximating the Wasserstein distance with cumulative distribution functions
In the previous two posts, we’ve discussed the mathematical details of the Wasserstein distance, exploring its formal definition, its computation through lin...
Wasserstein distance via entropy regularization (Sinkhorn algorithm)
Calculating the Wasserstein distance can be computational costly when using linear programming. The Sinkhorn algorithm provides a computationally efficient m...
Wasserstein distance and optimal transport
The Wasserstein distance, also known as the Earth Mover’s Distance (EMD), provides a robust and insightful approach for comparing probability distributions a...
Visualizing Occam's Razor through machine learning
Here, we illustrate the concept of Occam’s Razor, a principle advocating for simplicity, by examining its manifestation in the domain of machine learning usi...
The Integrate and Fire Model: A simple neuronal model
In this post we explore the Integrate-and-Fire model, a simplified representation of a neuron. We also run some simulations in Python to understand the mode...
Assessing animal behavior with machine learning
High-throughput and multi-modal behavior experiments, coupled with machine learning analysis, unlock valuable insights into complex systems by capturing dive...
Bioimage analysis with Napari
I’ve added new teaching material on using the free and open-source software (FOSS) Napari for bioimage analysis. Feel free to use and share it.
Using random forests for pixel classification
Beyond traditional classification problems, random forests have proven their effectiveness in pixel classification. In this post, we will delve into this dom...
Decision Trees vs. Random Forests for classification and regression: A comparison
Decision trees and random forests are popular machine learning algorithms that are widely used for both classification and regression tasks. In this blog pos...
Image denoising techniques: A comparison of PCA, kernel PCA, autoencoder, and CNN
In this post, we explore the performance of PCA, Kernel PCA, denoising autoencoder, and CNN for image denoising.
Using Autoencoders to reveal hidden structures in high-dimensional data
In this Python tutorial, we explore the application of Autoencoders for dimensionality reduction, demonstrating how this powerful technique can help us uncov...
Unlocking hidden patterns with Factor Analysis
In this Python tutorial, we dive into Factor Analysis, a powerful statistical method used to uncover hidden, or ‘latent,’ variables within high-dimensional d...
Untangling complexity: harnessing PCA for data dimensionality reduction
This tutorial explores the use of Principal Component Analysis (PCA), a powerful tool for reducing the complexity of high-dimensional data. By delving into b...
t-SNE and PCA: Two powerful tools for data exploration
Dimensionality reduction techniques play a vital role in both data exploration and visualization. Among these techniques, t-SNE and PCA are widely used and o...
Understanding L1 and L2 regularization in machine learning
Regularization techniques play a vital role in preventing overfitting and enhancing the generalization capability of machine learning models. Among these tec...
Understanding gradient descent in machine learning
Gradient descent is a fundamental optimization algorithm widely used in machine learning for finding the optimal parameters of a model. It is a powerful tech...
How to run PyTorch on the M1 Mac GPU
As for TensorFlow, it takes only a few steps to enable a Mac with M1 chip (Apple silicon) for machine learning tasks in Python with PyTorch.
How to run TensorFlow on the M1 Mac GPU
In just a few steps you can enable a Mac with M1 chip (Apple silicon) for machine learning tasks in Python with TensorFlow.
#Markdown/LaTeX
Bridging ideas on the go: WikiLinks come to DEVONthink To Go
The WikiLinks feature has finally arrived on DEVONthink to go, DEVONthink’s mobile app, which unleashes new possibilities to work with your Personal Knowled...
How to get an RSS feed of your Mastodon bookmarks
The third-party service Mastodon Bookmark RSS allows you to subscribe to your Mastodon bookmarks via RSS, so you don’t forget to make use out of them. You ca...
Track the growth of your Zettelkasten with DEVONthink
You can easily track the growth of your Zettelkasten using DEVONthink’s smart groups.
Problems with large vaults in Obsidian
In the past few days I played a bit with Obsidian. Turns out that its iOS app has some serious problems with large vaults.
DEVONthink and privacy
One thing I really love about DEVONthink, is its high security and privacy measures regarding the synchronization of my notes across different devices. No ot...
Using VS Code as LaTeX editor
It doesn’t take much to convert Visual Studio Code into a powerful LaTeX editor. Here are the necessary steps that enable full LaTeX support.
Hacks and extensions to improve your coding with Visual Studio Code
This curated list contains useful hacks and extensions to improve the overall coding performance with Visual Studio Code (VS Code).
How DEVONthink's auto-WikiLink feature changed my Zettelkasten workflow
DEVONthink’s automatic WikiLinks function is a powerful tool, both for discovering connections between notes – expected and unexpected ones – and for the au...
DEVONthink Markdown Table-of-Contents generator
I wrote a custom AppleScript for DEVONthink Markdown files, that bypasses the problem of broken links in the auto-generated Table-of-Contents (TOC) of MultiM...
DEVONthink Image Toolbox
I just shared a collection of AppleScripts on GitHub for handling images in DEVONthink.
Floating Back-to-top button for Markdown documents
You can quickly add a floating Back-to-top button to your Markdown documents in just two steps.
Using Obsidian as a Zettelkasten
In this post I show how you can quickly set up a Zettelkasten in Obsidian.
Using DEVONthink as a Zettelkasten
In this post I show how you can quickly set up a Zettelkasten in DEVONthink.
Use your Zettelkasten as a research, thinking and learning tool – Personal knowledge management as a system
In the last part of the series about personal knowledge management, we dive deeper into the Zettelkasten method and demonstrate, how to integrate all parts a...
Take smart notes with the Zettelkasten method
With the Zettelkasten method by Niklas Luhmann, we give the previously presented personal knowledge network a concrete shape and practical implementation. Th...
Don't take isolated notes, connect them! Vannevar Bush on building a self-organizing network of knowledge
In 1945, Vannevar Bush presented his concept of a self-organizing personal knowledge network by linking informational units with each other. This concept, th...
Boost your research with a smart personal knowledge management system
My next posts will be a short series about personal knowledge management and how it can be integrated as a holistic system into our overall research workflow...
Clean Thesis: A simple and elegant LaTeX thesis template
If you’re looking for some inspiration for your thesis, I just came across Clean Thesis by Ricardo Langner, a simple and elegant LaTeX template for thesis do...
Using Markdown for note-taking
It might be a bit difficult to learn at the beginning, but there are several benefits of taking personal notes in Markdown. Here is why I switched.
Free LaTeX editors
A list of currently freely available LaTeX editors (constantly updated).
Markdown vs. LaTeX for Scientific Writing
A comparison of Markdown and LaTeX in regard of scientific writing.
Free Markdown editors
A list of currently freely available Markdown editors (constantly updated).
Emojis for Jekyll via Jemoji
A how-to and a list of all currently working Emojis on Jekyll built websites.
strftime Cheat Sheet
Cheat Sheet on formatted date and time strings used, e.g., in Python, C/C++ or even on Jekyll websites by using Liquid tags.
Liquid Cheat Sheet
This Cheat Sheet gives an overview of Liquid syntax commands one might encounter while developing a Jekyll website.
Minimal Mistakes Cheat Sheet
A quick overview of available commands for creating content with the Minimal Mistakes Jekyll theme.
Supported syntax highlighting in Jekyll
A list of supported programming languages for Jekyll’s syntax highlighting.
How to use LaTeX in Markdown
A quick guide on how to enable MathJax support in your Markdown documents.
New Teaching Material: LaTeX Guide
I’ve added a LaTeX guide to the General Teaching Materials in the teaching section. It serves as a Getting started with LaTeX guide and as a LaTeX glossary.
New Teaching Material: Markdown Guide
I’ve composed a Markdown Guide for my teaching courses.
#Neuroscience
The Integrate and Fire Model: A simple neuronal model
In this post we explore the Integrate-and-Fire model, a simplified representation of a neuron. We also run some simulations in Python to understand the mode...
Assessing animal behavior with machine learning
High-throughput and multi-modal behavior experiments, coupled with machine learning analysis, unlock valuable insights into complex systems by capturing dive...
Bioimage analysis with Napari
I’ve added new teaching material on using the free and open-source software (FOSS) Napari for bioimage analysis. Feel free to use and share it.
New publication on Tauopathy
A new study on Tauopathy in which our lab was involved has just been published.
Mutual information and its relationship to information entropy
Mutual information is an essential measure in information theory that quantifies the statistical dependence between two random variables. Given its broad app...
Information entropy
A fundamental concept that plays a pivotal role in quantifying the uncertainty or randomness of a set of data is the information entropy. Information entropy...
How to read patch clamp recordings in WaveMetrics IGOR binary files (ibw) in Python
This is a mini tutorial on how to read patch clamp recordings in WaveMetrics IGOR binary files (*.ibw) in Python using the neo and igor packages.
New Teaching Material: Python Cheat Sheets
I’ve started a collection of various Python cheat sheets that contain some useful and commonly used commands and usage examples.
New Teaching Material: Statistical data analysis and basic time series analysis with Python
I’ve added two new tutorials in the teaching section on statistical data analysis and basic time series analysis with Python.
New Teaching Material: Analyzing IGOR binary files of patch clamp recordings
I’ve added a new tutorial in the teaching section on how to read and process IGOR binary files (ibw) of patch clamp recordings.
New Teaching Material: Fiji short course
There is a new tutorial in the Teaching Material. It’s a short Fiji tutorial on analyzing biomedical image data.
#Open Source
Switching to a Mastodon-powered comment system
I’m switching to a new Mastodon-powered comment system for my blog.
Mamba vs. Conda: Unleashing lightning-fast Python package installations
If you’ve ever experienced the frustration of waiting for ages while installing Python packages with conda, there’s a game-changer I wish I’d heard about ear...
Assessing animal behavior with machine learning
High-throughput and multi-modal behavior experiments, coupled with machine learning analysis, unlock valuable insights into complex systems by capturing dive...
Bioimage analysis with Napari
I’ve added new teaching material on using the free and open-source software (FOSS) Napari for bioimage analysis. Feel free to use and share it.
How to get an RSS feed of your Mastodon bookmarks
The third-party service Mastodon Bookmark RSS allows you to subscribe to your Mastodon bookmarks via RSS, so you don’t forget to make use out of them. You ca...
Bio-image registration with Python
Which method works best for which registration problem? In this tutorial we compare different methods for the registration of bio-images using Python.
Moving a Mastodon account to another server
I recently moved my Mastodon account to a new server, including all my followers. I was surprised, how easy and seamless it worked. Here is a how-to, summari...
Some useful Mastodon links
This is a curated list of useful Mastodon links.
I'm on Mastodon
Mastodon is not just a Twitter alternative. It’s a free and open-source social media platform of its own kind. Here is my story how I got there.
Embedding flickr photos on your Jekyll website
Easily integrate entire flickr photosets on your Jekyll website via a ruby plugin.
How to run PyTorch on the M1 Mac GPU
As for TensorFlow, it takes only a few steps to enable a Mac with M1 chip (Apple silicon) for machine learning tasks in Python with PyTorch.
How to run TensorFlow on the M1 Mac GPU
In just a few steps you can enable a Mac with M1 chip (Apple silicon) for machine learning tasks in Python with TensorFlow.
Is there a difference between miniconda and miniforge?
Simply said: not really. Miniconda is the company driven minimal conda installer, while miniforge is its community driven variant. In the end, you’ll get the...
Hacks and extensions to improve your coding with Visual Studio Code
This curated list contains useful hacks and extensions to improve the overall coding performance with Visual Studio Code (VS Code).
Setting up Visual Studio Code for Python
In just a few steps you can turn Visual Studio Code (VS Code) into a powerful Python editor for both pure Python code and Jupyter Notebooks.
Enable interactive plots and other plot modes in Jupyter notebooks
Learn how to enable interactive, static and stand-alone window plots in Jupyter notebooks with the magic command %matplotlib.
Enable code folding in JupyterLab
Learn how to enable code folding in JupyterLab for both, Jupyter Notebooks and pure Python scripts.
How to create and apply a requirements.txt file in Python
Learn how to install Python packages with a requirements.txt file and how to create one yourself.
Virtual environments with venv
In addition to conda’s create command, Python’s built-in venv command offers another way for creating virtual environments.
Using pip to install Python packages
pip is another package installer for Python. Learn how to use it for installing and managing Python packages in your projects.
How to install and run Python code from GitHub
Learn how to install code from GitHub, that is, e.g., not (yet) available via conda or pip.
A minimal Python installation with miniconda
Learn how to install miniconda to have a quick and minimal Python installation on any operating system. Also learn how to use conda to create and manage virt...
Stable installation of Napari on a M1 Mac
In case you’re having problems installing Napari on your M1 Mac, try to install it from conda instead of pip.
Open Zarr files in Fiji
Both Zarr and OME-ZARR files are supported in Fiji. Here’s how to get it working.
Using Zarr for images – The OME-ZARR standard
As for any other NumPy array, we can use the Zarr file format to store image files. In this post we additionally explore the NGFF (next-generation file forma...
Zarr – or: How to save NumPy arrays
What is Zarr and why is it probably the most suitable file format for saving NumPy arrays?
Variable Explorer in Jupyter Notebooks
Extend your Jupyter environment with Notebook Extensions and enable, e.g., the option to explore your currently defined variables in a running Jupyter session.
Clean Thesis: A simple and elegant LaTeX thesis template
If you’re looking for some inspiration for your thesis, I just came across Clean Thesis by Ricardo Langner, a simple and elegant LaTeX template for thesis do...
My website is now completely cookie-free
I made several changes to my website to further increase the privacy protection. As a result, it runs now completely without cookies.
#Personal Knowledge Management
Bridging ideas on the go: WikiLinks come to DEVONthink To Go
The WikiLinks feature has finally arrived on DEVONthink to go, DEVONthink’s mobile app, which unleashes new possibilities to work with your Personal Knowled...
How to get an RSS feed of your Mastodon bookmarks
The third-party service Mastodon Bookmark RSS allows you to subscribe to your Mastodon bookmarks via RSS, so you don’t forget to make use out of them. You ca...
Track the growth of your Zettelkasten with DEVONthink
You can easily track the growth of your Zettelkasten using DEVONthink’s smart groups.
Problems with large vaults in Obsidian
In the past few days I played a bit with Obsidian. Turns out that its iOS app has some serious problems with large vaults.
DEVONthink and privacy
One thing I really love about DEVONthink, is its high security and privacy measures regarding the synchronization of my notes across different devices. No ot...
Putting text sources into the Zettelkasten?
Should text sources (ebooks, PDF, website snapshots) be saved in a Zettelkasten?
On project notes in the Zettelkasten
Should project notes be a type of notes of their own in our Zettelkasten?
How DEVONthink's auto-WikiLink feature changed my Zettelkasten workflow
DEVONthink’s automatic WikiLinks function is a powerful tool, both for discovering connections between notes – expected and unexpected ones – and for the au...
DEVONthink Markdown Table-of-Contents generator
I wrote a custom AppleScript for DEVONthink Markdown files, that bypasses the problem of broken links in the auto-generated Table-of-Contents (TOC) of MultiM...
DEVONthink Image Toolbox
I just shared a collection of AppleScripts on GitHub for handling images in DEVONthink.
Floating Back-to-top button for Markdown documents
You can quickly add a floating Back-to-top button to your Markdown documents in just two steps.
Using Obsidian as a Zettelkasten
In this post I show how you can quickly set up a Zettelkasten in Obsidian.
Using DEVONthink as a Zettelkasten
In this post I show how you can quickly set up a Zettelkasten in DEVONthink.
Use your Zettelkasten as a research, thinking and learning tool – Personal knowledge management as a system
In the last part of the series about personal knowledge management, we dive deeper into the Zettelkasten method and demonstrate, how to integrate all parts a...
Take smart notes with the Zettelkasten method
With the Zettelkasten method by Niklas Luhmann, we give the previously presented personal knowledge network a concrete shape and practical implementation. Th...
Don't take isolated notes, connect them! Vannevar Bush on building a self-organizing network of knowledge
In 1945, Vannevar Bush presented his concept of a self-organizing personal knowledge network by linking informational units with each other. This concept, th...
Boost your research with a smart personal knowledge management system
My next posts will be a short series about personal knowledge management and how it can be integrated as a holistic system into our overall research workflow...
Using Markdown for note-taking
It might be a bit difficult to learn at the beginning, but there are several benefits of taking personal notes in Markdown. Here is why I switched.
#Personal Opinion
Embracing imperfections: Kintsugi and the story of my teapot
Kintsugi, the traditional Japanese art of ‘golden joinery’, celebrates the beauty of brokenness. My experience with a cherished teapot taught me not just abo...
Visualizing Occam's Razor through machine learning
Here, we illustrate the concept of Occam’s Razor, a principle advocating for simplicity, by examining its manifestation in the domain of machine learning usi...
Zen and natural sciences
In this post, I broaden the scope and explore the intersections of Zen and natural sciences more generally.
The Zen of Python
The connection between Zen and programming is not a subjective one at all. For instance, Python has built it directly into its core programming, known as The...
The Zen of programming
Some thoughts about the connections between Zen and programming.
DEVONthink and privacy
One thing I really love about DEVONthink, is its high security and privacy measures regarding the synchronization of my notes across different devices. No ot...
I'm on Mastodon
Mastodon is not just a Twitter alternative. It’s a free and open-source social media platform of its own kind. Here is my story how I got there.
Laying off thousands of employees: Not okay! How to delete a Twitter account
Putting thousands of people on the street is anything else than cool. Here is how to fix it.
Putting text sources into the Zettelkasten?
Should text sources (ebooks, PDF, website snapshots) be saved in a Zettelkasten?
On project notes in the Zettelkasten
Should project notes be a type of notes of their own in our Zettelkasten?
The quickest way to find help for Python commands: The help() command
Python’s built-in help system is probably the fastest way, to quickly look up Python commands and their syntax. It works without leaving your Python environm...
On teaching
I strongly believe that teaching is not a unidirectional thing, but both sides, the participants and the teacher benefit from it. This is a personal comment ...
On website subscriptions via RSS and Atom feeds
Personal opinion on how to create and maintain personal news feeds beyond the dependence on big social media and tech companies.
#Photography
Embedding flickr photos on your Jekyll website
Easily integrate entire flickr photosets on your Jekyll website via a ruby plugin.
Building New Universes
Lost&found: In the wake of the redesign of my website, I’ve rediscovered an old project from 2016, where I created imaginative sceneries by using water, ...
About Weekend Stories
Weekend Stories is my on-going photographic diary project, where I collect everyday stories (mostly) occurring on the weekends.
German Angst
Co-effects of the Corona lockdown: people buy like crazy toilet paper, until nothing is left anymore. This is a copycat work, the original work from David Hu...
ok cool
wuhaa! Thanks a lot to ok cool ꜛ for featuring my work! Please check out their websiteꜛ (or flickr or instagram) to see many more cool 😎 photographers 📸
IDAHOT (International Day Against Homophobia, Transphobia and Biphobia, May 17)
Today is the International Day Against Homophobia, Transphobia and Biphobia ꜛ. As a small contribution to the fight for equal rights, I’ve redesigned my “he...
Material Design
In 2014, Google introduced its new design language Material Design ꜛ. I was fascinated by its design concept:
Study with Colored Pencils
Searching for a new desktop wallpaper, I took some photographs with colored pencils. For the first time, I worked with my little improvised studio. You can d...
#Privacy
DEVONthink and privacy
One thing I really love about DEVONthink, is its high security and privacy measures regarding the synchronization of my notes across different devices. No ot...
My website is now completely cookie-free
I made several changes to my website to further increase the privacy protection. As a result, it runs now completely without cookies.
On website subscriptions via RSS and Atom feeds
Personal opinion on how to create and maintain personal news feeds beyond the dependence on big social media and tech companies.
#Python
Conditional GANs
I was wondering whether it would be possible to let GANs generate samples conditioned on a specific input type. I wanted the GAN to generate samples of a spe...
Eliminating the middleman: Direct Wasserstein distance computation in WGANs without discriminator
We explore an alternative approach to implementing WGANs. Contrasting from the standard implementation that requires both a generator and discriminator, the...
Wasserstein GANs
We apply the Wasserstein distance to Generative Adversarial Networks (GANs) to train them more effectively. We compare a default GAN with a Wasserstein GAN (...
Probability distance metrics in machine learning
Probabilistic distance metrics play a crucial role in a broad range of machine learning tasks, including clustering, classification, and information retrieva...
Comparing Wasserstein distance, sliced Wasserstein distance, and L2 norm
In machine learning, especially when dealing with probability distributions or deep generative models, different metrics are used to quantify the ‘distance’ ...
Approximating the Wasserstein distance with cumulative distribution functions
In the previous two posts, we’ve discussed the mathematical details of the Wasserstein distance, exploring its formal definition, its computation through lin...
Wasserstein distance via entropy regularization (Sinkhorn algorithm)
Calculating the Wasserstein distance can be computational costly when using linear programming. The Sinkhorn algorithm provides a computationally efficient m...
Wasserstein distance and optimal transport
The Wasserstein distance, also known as the Earth Mover’s Distance (EMD), provides a robust and insightful approach for comparing probability distributions a...
Visualizing Occam's Razor through machine learning
Here, we illustrate the concept of Occam’s Razor, a principle advocating for simplicity, by examining its manifestation in the domain of machine learning usi...
Zen and natural sciences
In this post, I broaden the scope and explore the intersections of Zen and natural sciences more generally.
The Zen of Python
The connection between Zen and programming is not a subjective one at all. For instance, Python has built it directly into its core programming, known as The...
The Zen of programming
Some thoughts about the connections between Zen and programming.
Hokke ten Hokke
Hokke ten Hokke is a chapter from the book Shōbōgenzō by Dōgen Zenji, the founder of Soto-Zen in Japan (13th century). Motivated by the text, I tried to crea...
Mamba vs. Conda: Unleashing lightning-fast Python package installations
If you’ve ever experienced the frustration of waiting for ages while installing Python packages with conda, there’s a game-changer I wish I’d heard about ear...
The Integrate and Fire Model: A simple neuronal model
In this post we explore the Integrate-and-Fire model, a simplified representation of a neuron. We also run some simulations in Python to understand the mode...
Bioimage analysis with Napari
I’ve added new teaching material on using the free and open-source software (FOSS) Napari for bioimage analysis. Feel free to use and share it.
Using random forests for pixel classification
Beyond traditional classification problems, random forests have proven their effectiveness in pixel classification. In this post, we will delve into this dom...
Decision Trees vs. Random Forests for classification and regression: A comparison
Decision trees and random forests are popular machine learning algorithms that are widely used for both classification and regression tasks. In this blog pos...
Image denoising techniques: A comparison of PCA, kernel PCA, autoencoder, and CNN
In this post, we explore the performance of PCA, Kernel PCA, denoising autoencoder, and CNN for image denoising.
Using Autoencoders to reveal hidden structures in high-dimensional data
In this Python tutorial, we explore the application of Autoencoders for dimensionality reduction, demonstrating how this powerful technique can help us uncov...
Unlocking hidden patterns with Factor Analysis
In this Python tutorial, we dive into Factor Analysis, a powerful statistical method used to uncover hidden, or ‘latent,’ variables within high-dimensional d...
Untangling complexity: harnessing PCA for data dimensionality reduction
This tutorial explores the use of Principal Component Analysis (PCA), a powerful tool for reducing the complexity of high-dimensional data. By delving into b...
t-SNE and PCA: Two powerful tools for data exploration
Dimensionality reduction techniques play a vital role in both data exploration and visualization. Among these techniques, t-SNE and PCA are widely used and o...
Understanding L1 and L2 regularization in machine learning
Regularization techniques play a vital role in preventing overfitting and enhancing the generalization capability of machine learning models. Among these tec...
Understanding gradient descent in machine learning
Gradient descent is a fundamental optimization algorithm widely used in machine learning for finding the optimal parameters of a model. It is a powerful tech...
Loading and saving files in Google Colab
Enable I/O support in your notebooks running in Google Colab with just a few additional commands.
Mutual information and its relationship to information entropy
Mutual information is an essential measure in information theory that quantifies the statistical dependence between two random variables. Given its broad app...
Information entropy
A fundamental concept that plays a pivotal role in quantifying the uncertainty or randomness of a set of data is the information entropy. Information entropy...
Understanding entropy
In physics, entropy is a fundamental concept that plays a crucial role in understanding the behavior of physical systems. It provides a measure of the disord...
Bio-image registration with Python
Which method works best for which registration problem? In this tutorial we compare different methods for the registration of bio-images using Python.
How to run PyTorch on the M1 Mac GPU
As for TensorFlow, it takes only a few steps to enable a Mac with M1 chip (Apple silicon) for machine learning tasks in Python with PyTorch.
How to run TensorFlow on the M1 Mac GPU
In just a few steps you can enable a Mac with M1 chip (Apple silicon) for machine learning tasks in Python with TensorFlow.
Is there a difference between miniconda and miniforge?
Simply said: not really. Miniconda is the company driven minimal conda installer, while miniforge is its community driven variant. In the end, you’ll get the...
Hacks and extensions to improve your coding with Visual Studio Code
This curated list contains useful hacks and extensions to improve the overall coding performance with Visual Studio Code (VS Code).
Setting up Visual Studio Code for Python
In just a few steps you can turn Visual Studio Code (VS Code) into a powerful Python editor for both pure Python code and Jupyter Notebooks.
Enable interactive plots and other plot modes in Jupyter notebooks
Learn how to enable interactive, static and stand-alone window plots in Jupyter notebooks with the magic command %matplotlib.
Enable code folding in JupyterLab
Learn how to enable code folding in JupyterLab for both, Jupyter Notebooks and pure Python scripts.
How to create and apply a requirements.txt file in Python
Learn how to install Python packages with a requirements.txt file and how to create one yourself.
Virtual environments with venv
In addition to conda’s create command, Python’s built-in venv command offers another way for creating virtual environments.
Using pip to install Python packages
pip is another package installer for Python. Learn how to use it for installing and managing Python packages in your projects.
How to install and run Python code from GitHub
Learn how to install code from GitHub, that is, e.g., not (yet) available via conda or pip.
A minimal Python installation with miniconda
Learn how to install miniconda to have a quick and minimal Python installation on any operating system. Also learn how to use conda to create and manage virt...
Using Zarr for images – The OME-ZARR standard
As for any other NumPy array, we can use the Zarr file format to store image files. In this post we additionally explore the NGFF (next-generation file forma...
Zarr – or: How to save NumPy arrays
What is Zarr and why is it probably the most suitable file format for saving NumPy arrays?
How to read patch clamp recordings in WaveMetrics IGOR binary files (ibw) in Python
This is a mini tutorial on how to read patch clamp recordings in WaveMetrics IGOR binary files (*.ibw) in Python using the neo and igor packages.
How to add statistical annotations to matplotlib plots
This mini tutorial shows, how to add statistical annotations to matplotlib plots with just a few commands.
Make matplotlib plots look more appealing with just a few extra commands
Learn how to nice up matplotlib plots with just a few hacks.
Variable Explorer in Jupyter Notebooks
Extend your Jupyter environment with Notebook Extensions and enable, e.g., the option to explore your currently defined variables in a running Jupyter session.
Opening a Jupyter notebook from GitHub in Binder: A step-by-step guide
Opening a Jupyter notebook from GitHub in Binder simplifies access to shared code and facilitates seamless collaboration. With just a few steps, you can laun...
New Teaching Material: Python Cheat Sheets
I’ve started a collection of various Python cheat sheets that contain some useful and commonly used commands and usage examples.
New Teaching Material: Statistical data analysis and basic time series analysis with Python
I’ve added two new tutorials in the teaching section on statistical data analysis and basic time series analysis with Python.
New Teaching Material: Analyzing IGOR binary files of patch clamp recordings
I’ve added a new tutorial in the teaching section on how to read and process IGOR binary files (ibw) of patch clamp recordings.
strftime Cheat Sheet
Cheat Sheet on formatted date and time strings used, e.g., in Python, C/C++ or even on Jekyll websites by using Liquid tags.
Supported syntax highlighting in Jekyll
A list of supported programming languages for Jekyll’s syntax highlighting.
New Teaching Material: Markdown Guide
I’ve composed a Markdown Guide for my teaching courses.
The Weierstrass function and the beauty of fractals
Fractals are captivating mathematical objects that exhibit intricate patterns and self-similarity at various scales. In this post, we explore the elegance a...
The Lotka-Volterra equations: Modeling predator-prey dynamics
The Lotka-Volterra system, also known as the predator-prey equations, is a mathematical model that describes the interaction between two species: predators a...
Interactive COVID-19 data exploration with Jupyter notebooks
Amidst the ongoing challenges of the COVID-19 pandemic, I have written a Jupyter notebook that facilitates interactive exploration of COVID-19 data. You can ...
The SIR model: A mathematical approach to epidemic dynamics
In the wake of the COVID-19 pandemic, epidemiological models have garnered significant attention for their ability to provide insights into the spread and co...
The two-body problem
The two-body system is a classical problem in physics. It describes the motion of two massive objects that are influenced by their mutual gravitational attra...
Solving the Lorenz system using Runge-Kutta methods
In my previous post, I introduced the Runge-Kutta methods for numerically solving ordinary differential equations (ODEs), that are challenging to solve analy...
Runge-Kutta methods for solving ODEs
In physics and computational mathematics, numerical methods for solving ordinary differential equations (ODEs) are of central importance. Among these, the fa...
Earth's dipolar magnetic field
In physics and computational mathematics, numerical methods for solving ordinary differential equations (ODEs) are of central importance. Among these, the fa...
#Scientific Writing
Bridging ideas on the go: WikiLinks come to DEVONthink To Go
The WikiLinks feature has finally arrived on DEVONthink to go, DEVONthink’s mobile app, which unleashes new possibilities to work with your Personal Knowled...
How to get an RSS feed of your Mastodon bookmarks
The third-party service Mastodon Bookmark RSS allows you to subscribe to your Mastodon bookmarks via RSS, so you don’t forget to make use out of them. You ca...
Track the growth of your Zettelkasten with DEVONthink
You can easily track the growth of your Zettelkasten using DEVONthink’s smart groups.
Problems with large vaults in Obsidian
In the past few days I played a bit with Obsidian. Turns out that its iOS app has some serious problems with large vaults.
DEVONthink and privacy
One thing I really love about DEVONthink, is its high security and privacy measures regarding the synchronization of my notes across different devices. No ot...
Using VS Code as LaTeX editor
It doesn’t take much to convert Visual Studio Code into a powerful LaTeX editor. Here are the necessary steps that enable full LaTeX support.
Putting text sources into the Zettelkasten?
Should text sources (ebooks, PDF, website snapshots) be saved in a Zettelkasten?
On project notes in the Zettelkasten
Should project notes be a type of notes of their own in our Zettelkasten?
The Feynman problem-solving algorithm
Yet another problem-solving approach by Richard Feynman.
The Feynman method as an effective learning tool
The Feynman method can help you not only to remember new knowledge, but also to really and deeply understand it.
How DEVONthink's auto-WikiLink feature changed my Zettelkasten workflow
DEVONthink’s automatic WikiLinks function is a powerful tool, both for discovering connections between notes – expected and unexpected ones – and for the au...
DEVONthink Markdown Table-of-Contents generator
I wrote a custom AppleScript for DEVONthink Markdown files, that bypasses the problem of broken links in the auto-generated Table-of-Contents (TOC) of MultiM...
DEVONthink Image Toolbox
I just shared a collection of AppleScripts on GitHub for handling images in DEVONthink.
Floating Back-to-top button for Markdown documents
You can quickly add a floating Back-to-top button to your Markdown documents in just two steps.
Using Obsidian as a Zettelkasten
In this post I show how you can quickly set up a Zettelkasten in Obsidian.
Using DEVONthink as a Zettelkasten
In this post I show how you can quickly set up a Zettelkasten in DEVONthink.
Use your Zettelkasten as a research, thinking and learning tool – Personal knowledge management as a system
In the last part of the series about personal knowledge management, we dive deeper into the Zettelkasten method and demonstrate, how to integrate all parts a...
Take smart notes with the Zettelkasten method
With the Zettelkasten method by Niklas Luhmann, we give the previously presented personal knowledge network a concrete shape and practical implementation. Th...
Don't take isolated notes, connect them! Vannevar Bush on building a self-organizing network of knowledge
In 1945, Vannevar Bush presented his concept of a self-organizing personal knowledge network by linking informational units with each other. This concept, th...
Boost your research with a smart personal knowledge management system
My next posts will be a short series about personal knowledge management and how it can be integrated as a holistic system into our overall research workflow...
Clean Thesis: A simple and elegant LaTeX thesis template
If you’re looking for some inspiration for your thesis, I just came across Clean Thesis by Ricardo Langner, a simple and elegant LaTeX template for thesis do...
Free LaTeX editors
A list of currently freely available LaTeX editors (constantly updated).
Markdown vs. LaTeX for Scientific Writing
A comparison of Markdown and LaTeX in regard of scientific writing.
Free Markdown editors
A list of currently freely available Markdown editors (constantly updated).
How to use LaTeX in Markdown
A quick guide on how to enable MathJax support in your Markdown documents.
New Teaching Material: LaTeX Guide
I’ve added a LaTeX guide to the General Teaching Materials in the teaching section. It serves as a Getting started with LaTeX guide and as a LaTeX glossary.
New Teaching Material: Markdown Guide
I’ve composed a Markdown Guide for my teaching courses.
#Teaching
Assessing animal behavior with machine learning
High-throughput and multi-modal behavior experiments, coupled with machine learning analysis, unlock valuable insights into complex systems by capturing dive...
Bioimage analysis with Napari
I’ve added new teaching material on using the free and open-source software (FOSS) Napari for bioimage analysis. Feel free to use and share it.
The Feynman problem-solving algorithm
Yet another problem-solving approach by Richard Feynman.
The Feynman method as an effective learning tool
The Feynman method can help you not only to remember new knowledge, but also to really and deeply understand it.
Opening a Jupyter notebook from GitHub in Binder: A step-by-step guide
Opening a Jupyter notebook from GitHub in Binder simplifies access to shared code and facilitates seamless collaboration. With just a few steps, you can laun...
On teaching
I strongly believe that teaching is not a unidirectional thing, but both sides, the participants and the teacher benefit from it. This is a personal comment ...
New Teaching Material: Python Cheat Sheets
I’ve started a collection of various Python cheat sheets that contain some useful and commonly used commands and usage examples.
New Teaching Material: Statistical data analysis and basic time series analysis with Python
I’ve added two new tutorials in the teaching section on statistical data analysis and basic time series analysis with Python.
New Teaching Material: Analyzing IGOR binary files of patch clamp recordings
I’ve added a new tutorial in the teaching section on how to read and process IGOR binary files (ibw) of patch clamp recordings.
New Teaching Material: Fiji short course
There is a new tutorial in the Teaching Material. It’s a short Fiji tutorial on analyzing biomedical image data.
Free LaTeX editors
A list of currently freely available LaTeX editors (constantly updated).
Markdown vs. LaTeX for Scientific Writing
A comparison of Markdown and LaTeX in regard of scientific writing.
Free Markdown editors
A list of currently freely available Markdown editors (constantly updated).
How to use LaTeX in Markdown
A quick guide on how to enable MathJax support in your Markdown documents.
New Teaching Material: LaTeX Guide
I’ve added a LaTeX guide to the General Teaching Materials in the teaching section. It serves as a Getting started with LaTeX guide and as a LaTeX glossary.
New Teaching Material: Markdown Guide
I’ve composed a Markdown Guide for my teaching courses.
#Wallpaper
Building New Universes
Lost&found: In the wake of the redesign of my website, I’ve rediscovered an old project from 2016, where I created imaginative sceneries by using water, ...
Material Design
In 2014, Google introduced its new design language Material Design ꜛ. I was fascinated by its design concept:
Study with Colored Pencils
Searching for a new desktop wallpaper, I took some photographs with colored pencils. For the first time, I worked with my little improvised studio. You can d...
#Web Design
Switching to a Mastodon-powered comment system
I’m switching to a new Mastodon-powered comment system for my blog.
Embedding flickr photos on your Jekyll website
Easily integrate entire flickr photosets on your Jekyll website via a ruby plugin.
My website is now completely cookie-free
I made several changes to my website to further increase the privacy protection. As a result, it runs now completely without cookies.
Create fancy text styles with Unicode
I found an online font generator to create fancy text styles, simply by using Unicode letters.
On website subscriptions via RSS and Atom feeds
Personal opinion on how to create and maintain personal news feeds beyond the dependence on big social media and tech companies.
Emojis for Jekyll via Jemoji
A how-to and a list of all currently working Emojis on Jekyll built websites.
strftime Cheat Sheet
Cheat Sheet on formatted date and time strings used, e.g., in Python, C/C++ or even on Jekyll websites by using Liquid tags.
Liquid Cheat Sheet
This Cheat Sheet gives an overview of Liquid syntax commands one might encounter while developing a Jekyll website.
Minimal Mistakes Cheat Sheet
A quick overview of available commands for creating content with the Minimal Mistakes Jekyll theme.
Supported syntax highlighting in Jekyll
A list of supported programming languages for Jekyll’s syntax highlighting.
How to use LaTeX in Markdown
A quick guide on how to enable MathJax support in your Markdown documents.
New Teaching Material: Markdown Guide
I’ve composed a Markdown Guide for my teaching courses.
Feed subscriptions to this website
In order to follow updates of my website, I provide RSS/Atom feeds you can subscribe to.
I switched to Jekyll websites
I have redesigned my website and moved it to a new host as well: I’m running it as Jekyll website hosted on GitHub now.
Restarting my website
In the wake of the COVID-19 pandemic, I have made the decision to relaunch my website. While I have previously utilized my website for smaller personal proje...
#Zen
Embracing imperfections: Kintsugi and the story of my teapot
Kintsugi, the traditional Japanese art of ‘golden joinery’, celebrates the beauty of brokenness. My experience with a cherished teapot taught me not just abo...
Visualizing Occam's Razor through machine learning
Here, we illustrate the concept of Occam’s Razor, a principle advocating for simplicity, by examining its manifestation in the domain of machine learning usi...
Zen and natural sciences
In this post, I broaden the scope and explore the intersections of Zen and natural sciences more generally.
The Zen of Python
The connection between Zen and programming is not a subjective one at all. For instance, Python has built it directly into its core programming, known as The...
The Zen of programming
Some thoughts about the connections between Zen and programming.
Hokke ten Hokke
Hokke ten Hokke is a chapter from the book Shōbōgenzō by Dōgen Zenji, the founder of Soto-Zen in Japan (13th century). Motivated by the text, I tried to crea...