joonas.fi

  • Home
  • Today I Learned
  • About
  • Contact
Let’s get to work ᕕ( ᐛ )ᕗ

    2023

  • 2023-03-12
    An approach to protocol reverse-engineering
  • 2022

  • 2022-05-14
    QMK w/ Drop CTRL: Nordic layout hack in ANSI layout
  • 2022-02-12
    Programming pattern for ensuring a function is called as root
  • 2021

  • 2021-08-03
    SAML is insecure by design
  • 2021-07-15
    Stable device path for Linux hwmon interfaces
  • 2021-07-04
    Ping metrics as graphs
  • 2021-06-09
    Coding pattern: preventing the use of '0 results' as a loading indicator
  • 2021-02-23
    Docker multi-arch image tooling, buildx
  • 2021-02-22
    Blog facelift & technical renovation
  • 2021-02-18
    UEFI, PC boot process and UEFI with QEMU
  • 2021-02-17
    Reverse-engineering MIDI devices, AKAI MPK Mini Mk3
  • 2021-02-16
    Locating costly AWS S3 buckets
  • 2020

  • 2020-12-17
    Attach a keyboard to a Docker container
  • 2020-12-14
    Audio in Docker containers, Linux audio subsystems, Spotifyd
  • 2020-09-09
    Quantified self: overview & quick links
  • 2020-08-03
    Displaying RSS feed with Home Assistant
  • 2020-08-02
    Restore accidentally deleted/replaced binary of a running process
  • 2020-04-17
    Tracking down inefficiencies in parallelization
  • 2020-04-04
    Preventing outdated docs links in software projects
  • 2020-04-03
    Quick primer on SVG paths
  • 2020-03-27
    Linux kernel probing
  • 2020-03-21
    COVID-19 and the world´s refusal to blame China
  • 2020-02-24
    Go is not a simple language
  • 2020-02-22
    Modem drops internet every now and then? I made a modem rebooter util
  • 2020-01-20
    Serious security vulnerability in GunDB (and new ones)
Page 1 of 4
Copyright © 2026 joonas.fi
  • Home
  • Today I Learned
  • About
  • Contact