All blog posts Aug 30, 2024 ESPHole - A network wide adblocker for your home #web Jul 24, 2024 Chording keyboards - A new territory for efficiency #keyboard Jun 14, 2024 Git Blame in Neovim without a plugin #neovim #lua #git May 14, 2024 Fedora Multimedia Codec is a pain to set up #linux Apr 26, 2024 My experience of learning Rust #rust Mar 29, 2024 Colemak-DHm - A keyboard layout for the modern era #keyboard Feb 29, 2024 I fell into the DIY keyboard rabbit hole, and I don't regret it! #keyboard Jan 31, 2024 Handling community contributions in your open source project #git Dec 29, 2023 Null vs Undefined and how to catch them #js Nov 30, 2023 Javascript Object Destructuring and places where it gets weird #js Oct 26, 2023 Plus Addressing: The hack to unlimited email addresses #web Sep 25, 2023 Are objects the same as Maps in Javascript? #js Aug 14, 2023 kiwi.nvim - A simple markdown note taking plugin #neovim #lua Jul 31, 2023 Teleporting inside a terminal with fzf #terminal Jun 30, 2023 Automate tracker sheet using Google Forms #web May 17, 2023 Count API built with Go #go #web Apr 30, 2023 Making a discord bot in Go? #web #go Mar 20, 2023 Rate Limiting an API #web Feb 24, 2023 Malicious URL detection #python Feb 9, 2023 I switched to Astro to rebuild my blog #web Jan 15, 2023 Enums - The not so type-safe feature of Typescript #js Dec 8, 2022 Still using console.log() for logging in JS? You can do better. #js Nov 6, 2022 Boarder: A 4chan hoarding utility #go #terminal Oct 23, 2022 Scripting Workflows for Neovim #neovim #lua Sep 20, 2022 Setting up a Personal Blog - So Simple Even Kids Do It #web Aug 21, 2022 Configuring Neovim with Lua #neovim #lua Jul 24, 2022 I Broke My Computer Apart After Taking a Training: Here's What I Learned. #non-tech