about publications blog
  • algorithms
  • c++
  • conference
  • functional
  • jekyll
  • latex
  • machine-learning
  • meta
  • physics
  • publishing
  • rust
  • shell
  • svm
  • thesis
  • wasm
  • web
  • algorithms

    • Nov 13, '22
      The C++ range adaptor pipe operator is associative

      Tina Ulbrich (@_Yulivee_) recently gave her talk “How to Rangify Your Code” at my local meetup, in which she gave a rundown of several examples from her codebase where loop-heavy code was replaced by pipelines of range adaptors. I sunk my teeth into one of those from an API design perspective and show how it can be generalized to work with generic ranges, based on the associative property of the pipe operator used to compose ranges and range adaptors.


  • c++

    • Nov 13, '22
      The C++ range adaptor pipe operator is associative

      Tina Ulbrich (@_Yulivee_) recently gave her talk “How to Rangify Your Code” at my local meetup, in which she gave a rundown of several examples from her codebase where loop-heavy code was replaced by pipelines of range adaptors. I sunk my teeth into one of those from an API design perspective and show how it can be generalized to work with generic ranges, based on the associative property of the pipe operator used to compose ranges and range adaptors.

    • Oct 29, '22
      EuroRust 2022 Trip Report

      This fall, I attended the first-ever EuroRust, the European offshoot of Rustfest, in Berlin. In this post, I’ve collected my impressions of some of the talks, grouped by their overarching topics.

    • Aug 7, '22
      C++ on Sea 2022 Trip Report

      I had a chance to attend “C++ on Sea” in Folkestone this year. This write-up aims to give an overview of my personal highlights as well as some solid overview talks.

    • Dec 1, '19
      Version 3 release of TK-SVM — Wrapping up

      A new version of the TK-SVM framework has just been released and is now available on the university’s GitLab repository. In keeping with the number of SVM-related papers we have published in the past 1.5 years, this is version 3 and reflects the changes made to the framework to facilitate our latest paper, studying the XXZ model on the pyrochlore lattice.

    • Feb 3, '19
      Recursive visitors from fixed-point combinators

      In this follow-up post, we demonstrate how concepts from lambda calculus can benefit real code by using the Y combinator to define recursive lambda functions. This is particularly useful in the visitor pattern introduced in the previous post.

    • Oct 21, '18
      Type safety, variants, and visitors

      Don't use unions anymore. Variants offer type safety and better compiler diagnostics with less boilerplate. std::visit makes it easy to apply the visitor pattern without setting up intricate class hierarchies, while achieving data/algorithm separation.

    • Sep 15, '18
      Variadic expansion in aggregate initialization

      Variadic templates (parameter packs) have been in the language ever since C++11. With the introduction of fold expressions in C++17, they have gotten even more useful. This post showcases their utility for initializing aggregate types such as std::array without prior default initialization of their fields.

    • Feb 12, '18
      Interactive demo of Support Vector Machines (SVM)

      An interactive demo of support vector machines in two dimensions, written using WebAssembly.


  • conference

    • Oct 29, '22
      EuroRust 2022 Trip Report

      This fall, I attended the first-ever EuroRust, the European offshoot of Rustfest, in Berlin. In this post, I’ve collected my impressions of some of the talks, grouped by their overarching topics.

    • Aug 7, '22
      C++ on Sea 2022 Trip Report

      I had a chance to attend “C++ on Sea” in Folkestone this year. This write-up aims to give an overview of my personal highlights as well as some solid overview talks.


  • functional

    • Nov 13, '22
      The C++ range adaptor pipe operator is associative

      Tina Ulbrich (@_Yulivee_) recently gave her talk “How to Rangify Your Code” at my local meetup, in which she gave a rundown of several examples from her codebase where loop-heavy code was replaced by pipelines of range adaptors. I sunk my teeth into one of those from an API design perspective and show how it can be generalized to work with generic ranges, based on the associative property of the pipe operator used to compose ranges and range adaptors.

    • Feb 3, '19
      Recursive visitors from fixed-point combinators

      In this follow-up post, we demonstrate how concepts from lambda calculus can benefit real code by using the Y combinator to define recursive lambda functions. This is particularly useful in the visitor pattern introduced in the previous post.


  • jekyll

    • Jun 23, '18
      (Re-)Launching my web site and blog

      I’m happy to finally kick off this, my new-ish web presence. It is meant to serve both as a portfolio of my professional work (academically and otherwise), as well as a place to condense ideas and random ramblings into blog posts.


  • latex

    • Jun 24, '18
      Standalone figures from Gnuplot's LaTeX terminals

      Gnuplot offers many output terminals; amongst the more useful ones for scientific publishing are the LaTeX terminals which embed EPS graphics in a TeX file which adds labels. However, sometimes you need a standalone figure and this becomes a hassle. Here, I introduce a tool to extract the figures from rendered TeX output without littering your working directory with temporary files.


  • machine-learning

    • Dec 1, '19
      Version 3 release of TK-SVM — Wrapping up

      A new version of the TK-SVM framework has just been released and is now available on the university’s GitLab repository. In keeping with the number of SVM-related papers we have published in the past 1.5 years, this is version 3 and reflects the changes made to the framework to facilitate our latest paper, studying the XXZ model on the pyrochlore lattice.

    • Sep 3, '19
      Frustrated magnetism: Thesis motivation

      Frustration is ubiquitous in nature. This post explores its effects on magnetic systems, giving rise to spin liquid behavior and hidden multipolar spin order. Recognizing these phenomena is nontrivial and motivated the inception of a machine-learning scheme to do so automatically.

    • Mar 10, '19
      Two papers published in PRB

      It's my pleasure to annouce that as of last week, both of the papers we worked on last year have been published in Phys. Rev. B. We have also made the source code openly available.

    • Feb 12, '18
      Interactive demo of Support Vector Machines (SVM)

      An interactive demo of support vector machines in two dimensions, written using WebAssembly.


  • meta

    • Dec 2, '19
      Joining MVTec

      Starting today, I'll be working at MVTec as a C++ software architect.

    • Aug 30, '19
      Thesis handed in 🥳

      Over the past few month, I have been busy finishing yet another SVM-related paper but also writing my PhD thesis which I am happy to have handed in last week.

    • Jun 23, '18
      (Re-)Launching my web site and blog

      I’m happy to finally kick off this, my new-ish web presence. It is meant to serve both as a portfolio of my professional work (academically and otherwise), as well as a place to condense ideas and random ramblings into blog posts.


  • physics

    • Dec 1, '19
      Version 3 release of TK-SVM — Wrapping up

      A new version of the TK-SVM framework has just been released and is now available on the university’s GitLab repository. In keeping with the number of SVM-related papers we have published in the past 1.5 years, this is version 3 and reflects the changes made to the framework to facilitate our latest paper, studying the XXZ model on the pyrochlore lattice.

    • Sep 3, '19
      Frustrated magnetism: Thesis motivation

      Frustration is ubiquitous in nature. This post explores its effects on magnetic systems, giving rise to spin liquid behavior and hidden multipolar spin order. Recognizing these phenomena is nontrivial and motivated the inception of a machine-learning scheme to do so automatically.

    • Aug 30, '19
      Thesis handed in 🥳

      Over the past few month, I have been busy finishing yet another SVM-related paper but also writing my PhD thesis which I am happy to have handed in last week.

    • Mar 10, '19
      Two papers published in PRB

      It's my pleasure to annouce that as of last week, both of the papers we worked on last year have been published in Phys. Rev. B. We have also made the source code openly available.


  • publishing

    • Mar 10, '19
      Two papers published in PRB

      It's my pleasure to annouce that as of last week, both of the papers we worked on last year have been published in Phys. Rev. B. We have also made the source code openly available.

    • Jun 24, '18
      Standalone figures from Gnuplot's LaTeX terminals

      Gnuplot offers many output terminals; amongst the more useful ones for scientific publishing are the LaTeX terminals which embed EPS graphics in a TeX file which adds labels. However, sometimes you need a standalone figure and this becomes a hassle. Here, I introduce a tool to extract the figures from rendered TeX output without littering your working directory with temporary files.


  • rust

    • Oct 29, '22
      EuroRust 2022 Trip Report

      This fall, I attended the first-ever EuroRust, the European offshoot of Rustfest, in Berlin. In this post, I’ve collected my impressions of some of the talks, grouped by their overarching topics.


  • shell

    • Jun 24, '18
      Standalone figures from Gnuplot's LaTeX terminals

      Gnuplot offers many output terminals; amongst the more useful ones for scientific publishing are the LaTeX terminals which embed EPS graphics in a TeX file which adds labels. However, sometimes you need a standalone figure and this becomes a hassle. Here, I introduce a tool to extract the figures from rendered TeX output without littering your working directory with temporary files.


  • svm

    • Mar 10, '19
      Two papers published in PRB

      It's my pleasure to annouce that as of last week, both of the papers we worked on last year have been published in Phys. Rev. B. We have also made the source code openly available.

    • Feb 12, '18
      Interactive demo of Support Vector Machines (SVM)

      An interactive demo of support vector machines in two dimensions, written using WebAssembly.


  • thesis

    • Dec 1, '19
      Version 3 release of TK-SVM — Wrapping up

      A new version of the TK-SVM framework has just been released and is now available on the university’s GitLab repository. In keeping with the number of SVM-related papers we have published in the past 1.5 years, this is version 3 and reflects the changes made to the framework to facilitate our latest paper, studying the XXZ model on the pyrochlore lattice.

    • Sep 3, '19
      Frustrated magnetism: Thesis motivation

      Frustration is ubiquitous in nature. This post explores its effects on magnetic systems, giving rise to spin liquid behavior and hidden multipolar spin order. Recognizing these phenomena is nontrivial and motivated the inception of a machine-learning scheme to do so automatically.

    • Aug 30, '19
      Thesis handed in 🥳

      Over the past few month, I have been busy finishing yet another SVM-related paper but also writing my PhD thesis which I am happy to have handed in last week.


  • wasm

    • Oct 29, '22
      EuroRust 2022 Trip Report

      This fall, I attended the first-ever EuroRust, the European offshoot of Rustfest, in Berlin. In this post, I’ve collected my impressions of some of the talks, grouped by their overarching topics.

    • Aug 7, '22
      C++ on Sea 2022 Trip Report

      I had a chance to attend “C++ on Sea” in Folkestone this year. This write-up aims to give an overview of my personal highlights as well as some solid overview talks.

    • Feb 12, '18
      Interactive demo of Support Vector Machines (SVM)

      An interactive demo of support vector machines in two dimensions, written using WebAssembly.


  • web

    • Jun 23, '18
      (Re-)Launching my web site and blog

      I’m happy to finally kick off this, my new-ish web presence. It is meant to serve both as a portfolio of my professional work (academically and otherwise), as well as a place to condense ideas and random ramblings into blog posts.