jaseg.de

Hi there, and welcome to my personal website.

I'm jaseg, and I write about my projects here. You can find long-form articles in the blog, and links to my open-source projects on the projects page. On the top right of this page, there are links to my git repositories and social media pages. If you want to learn more about me, head over to the about page.

Blog

Housekeeping note: git.jaseg.de has moved

2026-05-30

A small note: As part of moving the servers and website to a new, more suitable host for my Ashen and Yanartas projects as well as the creation of yasec, my freelance consulting business, I've moved git.jaseg.de from a custom cgit/gitolite setup to a forgejo instance. This may have broken some links, especially deep links into the old cgit. If you notice any broken links, please reach out through email.

Read more

New Artwork: Pixação Experiments

2026-05-30

I published a piece of algorithmic art fusing a Pixação graffiti-inspired lettering style with a layout similar to a Thai Haw-taew (five row) Yantra blessing tattoo.

Read more

The KiCoil Planar Coil Generator

2025-12-31

I wrote a layout tool generating planar coils that can handle spiral coils, toroidal coils, and hybrids in between the two.

Read more

How to make cgit serve PDF files as direct downloads

2025-11-17

cgit is great, but by default when you click on a PDF file in a repository content listing it will show you a hexdump of the file. You can access the actual file by clicking the "plain" link on top of the listing, but that's not only annoying, for large PDF files rendering the hexdump can also hang browser tabs.

Read more

New paper: Monitoring Tamper-Sensing Meshes Using Low-Cost, Embedded Time-Domain Reflectometry

2025-10-20

I've got a new paper accepted at CHES, to be published in TCHES 2026/1 around beginning of December and out on eprint now. The topic of the paper is a way of monitoring a tamper-sensing mesh through time-domain reflectometry using very cheap components. The end result is a circuit that costs about 10 € in parts that is able to measure TDR responses with a few hundred picoseconds of resolution.

Read more

wsdiff: Responsive diffs in plain HTML

2025-07-25

There's many tools that render diffs on the web, but almost none that work well on small screens such as phones. I fixed this by publishing wsdiff, a diffing tool written in Python that produces diffs as beautiful, responsive, static, self-contained HTML pages. wsdiffs wrap text to fit the window, and dynamically switch between unified and split diffs based on screen size using only CSS.

Read more

Code listings with nice line wrapping and line numbers from plain CSS

2025-07-23

Code listings in web pages are often a bit of a pain to use. Usually, they don't wrap on small screens. Also, copy-pasting code from a code listing often copies the line numbers along with the code. Finally, many implementations use heavyweight HTML and/or javascript, making them slow to render. For this blog, I wrote a little CSS hack that renders nice, wrapping code blocks with line continuation markers in plain CSS without any JS.

Read more

Getting the .ipynb Notebook File Location From a Running Jupyter Lab Notebook

2025-06-29

If you need to get the path of the ipynb file in a running #Jupyter notebook, this one-liner will do the trick. It seems chatgpt is confused, and a bunch of other approaches on the web look fragile and/or unnecessarily complex to me.

Read more

8seg Technical Overview

2023-12-26

8seg is a large-scale LED light art installation that displays text on a 1.5 meter high, 30 meter wide 8-segment display made from cheap LED tape.

Read more

Ubiquiti EdgeRouter on Deutsche Telekom GPON Fiber

2022-02-21

Short tutorial on getting a Deutsche Telekom GPON internet connection running using a SFP ONU unit in an Ubiquiti EdgeRouter.

Read more