Archive

All published posts

2440 posts latest post 2026-04-21
Publishing rhythm
Apr 2026 | 41 posts

I smell a dependency to python-dotenv dying in my workflow. I originally read the title of the post and thought, “I know how to manage .env and almost skipped it”. I’m leaning more and more on uv run these days, so this should just go in my [[ just file ]] to make it easy to run.

Interesting catch from the HN discussion over his article that came out yestereday. I scanned it yesterday and it has some really fascinating diagrams showing different phases of the web being open, to being siloed, to somewhere that we are trying to make it easy to publish, and retain ownership. I don’t know enough about bluesky, but the core is build on the AT protocol, you can self host your own instance, you can build different front ends for it. So rather than having siloed instagram, FB, twitter, there are clones of those platforms that read the same data from everyones data, that they have the option of self hosting.

I like this distinction between Mastadon here. Mastadon can also be self host, but its data aggregation is...

Wanderers Crest Bind
Reapers Crest Gangfight
Violent Flintbeetle 2
Violent Flintbeetle Granted
Violent Flintbeetle 3

This is a super cool movement, I like the idea of giving access to composable components like we have in open source. You want to build a website you have a bunch of options from raw dogging assembly all the way up to predefined templates that just need your content. Idk if the analogy is perfect but there are aspects of it that work. I see where right now we are somewhere in raw dogging c or python. We have cheap nuts and bolts and some low level things, but once someone needs some coupler like this it’s dropping down to drawing it by hand.

Violent Flintbeetle 1

I can’t believe this thing is so devicive. I kinda can’t belive that I sit on the same side as Mathes and his always against the grain, non corporate influenced response. So many others have praised Haiden for bringing back the real gladiator bloodsport that SX is, is it that though?? It’s a race to the finish. different than a lot of other racing its very unpredictable takeout moves happen, occasionally as an accident, often taking both riders down at the same time.

Also different than MANY sports we have a huge industry of weekend warriors, Some of which make it into the night show of the biggest race on TV. You see we only bring 20 riders from each class, the top half to top quarter are “Factory” riders, the rest are privateers, sometimes these privateers are completely their on their own.

There is also something called a last chance qualifier. This is your last chance to get into the night show, often fought by these privateers out of box vans with their brother as a mechanic. Often that last spot is filled by sketchy on edge riding and takeout moves from a rider that looks like he is barely making it, but would run circles around anyone at your local race.

...

Covetous Pilgrim
Sherwood Gangfight
Long Pin
Halfway Home Gang Fight
Rosary String
Threefold Pin
Thread Storm
Progress so far on the Funk server elytra track. It goes through two sea lanturn lit caves so far.
A Full Cheese Board
A macropad filled with cheese keycaps placed in random orientations.
Full Box Of Cheese Caps
A full box of 9 keycaps sit behind a cap placed in front, they are custom wedge of cheese caps.
Printing A Full Plate Of Cheese Hats
A Bambu Lab Printer is working on the first few layers of cheese hats to be placed on top of keycaps.
Cheese Cap On A Macropad
A cheese keycap placed in the middle of a macropad, currounded by black/purple caps in a blue case.
A Box Of Caps And A Macropad
A macropad with a pixel heart and mlg glasses sit on a clean white background.
Heart Of A Macropad
A pixel heart kecap in the center of a macropad, the macropad is admittedly dirty, filled with small bits of fuzz.
First Cap Hat, It's A Heart
A 3d printed keycap with a heart glued to the top of it. The heart resembles a pixelated game asset.

I first met Adam in college, he seemed like quite a character on the outside, but was always quite smart and often leaned towards realistic solutions to problems rather than over complicating things. He was part of the SAE Formula car, well known for taking a simple problem and trying to turn it into a real formula one carbon fiber solution. I remember a period where he was a fan of old world blacksmithing as they would say at the time. He even got a few very simple and light parts on the car that were easy to make unlike the carbon fiber alternatives. By the time I was there he was more of a leader and did not do a lot of design on any whole system, but would take out class projects for a component or help with some hard problems. This company feels like it is a great extension of who he was a that time, with about 15 years of professional experience tacked on.

First Box Of Caps
A print in place box sitting on the printer bed used as a raft for the 9 caps perectly nestled inside in a 3 by 3 pattern.
Fourth Chorus

zmk two hand hold down

I don’t know about you, but I don’t re-flash my keyboard enough to ever remember where I put the bootloader. Sometimes its the last thing I think about in a refactor and I end up cornering myself into a place where I cant get into that layer anymore. I’ve started putting hardware switches on my newer builds, but some older builds don’t have a hardware one, so it requires disassembly and jumping the microcontroller. Even when I have one though, I gotta flip my board over and its annoying sometimes, so I prefer to have a keystroke for it.

What I’ve landed on recently is the idea of a two hand hold down combo for the bootloader. These combos are ones that there is no way I can hit without picking my hands up from their normal homerow position and pressing four keys simultaneously with pointer and thumbs.

Here are some example layouts from keymap-editor

...

2 min read
Lace
Beginning Of Little Boxes
Four little 3d printed boxes laying on a white background, one contains a painted lid that says M 2x5.

Why Make a Website in 2025

Inspired by Jim and Dave

If it’s not something that you enjoy, you might as well move on there are far better ways to spend your time in 2025. Only the weirdos read this shit anymore, the masses have long moved on to curated social media feeds, and on to chatting with llms. I enjoy spending some time in the digital garden every once in awhile tweaking templates, creating 4 min read

I needed to display some hover text in a web app that I am using tailwind and jinja on. It has no js, and no build other than the tailwind. I want this to remain simple. Turns out that you can use a span with a title attribute to get hover text in HTML.

Today I learned how to use tar over ssh to save hours in file transfers. I keep all of my projects in ~/git (very creative I know, I’ve done it for years and haven’t changed). I just swapped out my main desktop from bazzite to hyprland, and wanted to get all of my projects back. Before killing my bazzite install I moved everything over (16GB of many small files), it took over 14 hours, maybe longer. I had started in the morning and just let it churn.

This was not going to happen for re-seeding all of my projects on my new system, I knew there had to be a better way, I looked at rsync, but for seeding I ran into this tar over ssh technique and it only took me 6m51s to pull all of my projects off of my remote server.

store

I’ve been 3d printing for years, and create a lot of my own designs. Many of them are hyper specific to me, but for the ones that I think others might find useful I will be putting up here for sale, you can buy prints that will show up to your door in a few days. I’m leaning on the slant3d print farm so this depends on your proximity to them. The prints are typically black petg, if you would like a different color reach out to me and I will see what other options we have, or for an additional fee I can print it myself and ship out special colors.

These are all designs that I made and actually use myself, they bring me joy knowing that I made just the thing that I wanted to exist and if you buy something I hope that it brings you this joy as well.

I’ve used these skateboard wall mounts for years, I have 5 in my office featuring new decks in the queue, and probably 10 in the garage to display used decks, and fully assembled boards for me and my kids. I use these for both regular...

...

When you fill all of your time with a bunch of other things, it becomes really hard to become a friendly person. Prime talked about trying to learn how to drop the hurry in his life, and how to not always be in a frenzy of going from one thing to the next. It’s something that puts us in a state that its hard to remember to be friendly. Hard to remember that theres always time for coffee.

I do my best to always leave time for coffee, whether at home with my wife and kids, as well as at work. I am in a very unique place at work where I have a rare set of skills for the industry I am in. This comes with a lot of people insterested in how to do things like running data pipelines or managing server infrastructure. I always take time for these conversations, I find them interesting, and useful. Sometimes you end up with someone who asks the same questions every 6 months, other times, you have someone flourish from these conversations. I’m...

...

Skull Ant

I’ve been leaning on lazy-self-installing-python-scripts more and more, but I did not realize how much tooling that uv gives you to help manage your scripts.

uv init --script up uv add --script up typer rich uv remove --script up rich sed -i '1i #!/usr/bin/env -S uv run --script' up chmod +x up ./up

The result is a script that looks like this, its executable as what looks like regular command in your shell.