Everything you've ever wanted to know about getting around your city by bike — especially how to get started.| TJ's Blog
Learn how to edit your GoPro MAX's footage with Insta360 Studio so you can use its advanced features like Deep Track.| TJ's Blog
There is a Blender bug which prevents bloom from being exported properly when transparency is enabled. Here's how to get around it.| TJ's Blog
How I learned to design and build my very own custom arcade-style gamepad in just under a month, complete with custom hardware, software, and PCBs.| TJ's Blog
It turns out you *can* teach an old lock new tricks!| TJ's Blog
Learn how to install open source firmware on a cheap Emporia smart plug in order to unlock its full potential.| TJ's Blog
Learn how to create a comprehensive backup solution for all your important stuff based on the 3-2-1 backup strategy.| TJ's Blog
Learn how to enable fingerprint authentication on your ThinkPad with a Linux distro.| TJ's Blog
Why I'm skipping college and diving into a job hunt right out of high school.| TJ's Blog
Reverse engineering a WiFi-enabled Chinese drone to figure out how to control it from my own software.| TJ's Blog
If you've been here before, you probably noticed that things have changed. That's because this blog is now powered by Ghost! It's a very nice publishing platform that really beats writing Markdown for every post.| TJ's Blog
Write scripts that react to events that happen on your APC UPS!| TJ's Blog
The first in a series of posts about how to stand up your very own local and private home automation system using Home Assistant.| TJ's Blog
Add indoor AQI to your Home Assistant instance with an existing PM2.5 sensor.| TJ's Blog