Archive

All published posts

2478 posts latest post 2026-05-13
Publishing rhythm
Apr 2026 | 47 posts

I got the kubernetes in my basement autism

What flavor of autism did you guys get, I got the kind where I run kubernetes in my basement. ![My homelab as June 2025](https://dropper.waylonwalker.com/file/49b356bc-f32c-4332-85ea-0eb2b7860091.webp) https://www.youtube.com/shorts/5Cac-cf5MOE
The k3s system-upgrade controller is a fantastic tool for upgrading k3s automatically. It has done a fantastic job for me every time I’ve used it. Today I ran it on a cluster that needed to upgrade several minors and I learned that the controller does not pick up on changes to the channel url if you change from minor to minor. The solution I came up with was to name the plan with the version it supports. Then on each patch upgrade, change both the plan name and the channel. I use gitops with argocd, it automcatically cleaned up old plans, created new plans, and the system-upgrade-controller picked up the plan and started applying immediately. # Server plan apiVersion: upgrade.cattle.io/v1 kind: Plan metadata: name: server-plan-v1.33 # <- This is important if you want to change the channel name namespace: system-upgrade spec: concurrency: 1 cordon: true nodeSelector: matchExpressions: - key: node-role.kubernetes.io/control-plane operator: In values: - "true" serviceAccountName: system-upgrade upgrade: image: rancher/k3s-upgrade channel: https://update.k3s.io/v1-release/channels/v1.33 --- # Agent plan apiVersion: upgrade.cattle.io/v1 kind: Plan metadata: name: age...
Deleting Code for Performance The one where I clean up an asynchronous mess dbushell.com · dbushell.com [1] I did not realize that David’s site was built on a homegrown Static Site Generator. As someone who also does this myself I appreciate the effort. I build my site on markata [2]. It started as a project to learn a set of tools and has become a project that I depend on everywhere and cant put down. It’s a great tool, but you probably shouldn’t use it. Anyways, I feel this really shows on David’s site. His site is filled with custom features that make it very unique, one off, and always a pleasure to read. Note This post is a thought [3]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://dbushell.com/2025/12/04/deleting-code-for-performance/ [2]: /markata/ [3]: /thoughts/

gpus are awesome

GPU's are awesome. I just added gpu support to my bambu-studio distrobox and its flying! On my wayland based system the native package has never worked, (arch or bazzite), but running in a distrobox does. Outside of distrobox the 3d rendering canvas is black, no output. It used to work fine without gpu support, was snappy enough, complex models were a bit sluggish, but fine. Lately something happened and simple models bring it to its knees. It got unusable! ![](https://dropper.waylonwalker.com/file/a06bbf8b-abea-472e-8d96-4255d522444d.webp) > The print I happen to be working on is some custom designed gumdrops for a > theater set. The ui is working and not lagging 30s between clicks causing > clicks to happen on the wrong ui element.
I recently discovered posse_party [1] by searlsco [2], and it’s truly impressive. Quit social media by posting more References: [1]: https://github.com/searlsco/posse_party [2]: https://github.com/searlsco
- Niche companies will rise from the ashes. Companies that want to build good products for customers. Companies that will get hundreds of users. They will treat them right and make enough money to support themselves, maybe. Alongside them we will self host [1]. We will run our own services out of our basement. There will be downtime, but its ok. We will enjoy ourselves. We will tell everyone how much better it is BTW Next to that is a firehose of shit piling back into the circular snakes mouth as all of your data flows freely between any company that can get their hands on it. These companies will spend and make money hand over fist. Most people will continue to use these services until enough is enough and unplug from everything. In this world I don’t see how we sustain the amount of engineers we have created. Small companies run lean, small, and allow slow organic growth happen. It will be interesting to see play out. [2] Note This post is a thought [3]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: /self-host/ [2]: https://dropper.waylonwalker.com/file/95ae2a95-308b-4d1d-bff8-8ce6194db132.webp [3]: /thoughts/
I’m impressed by awesome-nanobanana-pro [1] from ZeroLu [2]. 🚀 An awesome list of curated Nano Banana pro prompts and examples. Your go-to resource for mastering prompt engineering and exploring the creative potential of the Nano banana pro(Nano banana 2) AI image model. References: [1]: https://github.com/ZeroLu/awesome-nanobanana-pro [2]: https://github.com/ZeroLu
Malicious Traffic and Static Sites Writing about the big beautiful mess that is making things for the world wide web. blog.jim-nielsen.com [1] These look like fun endpoints to add anti-maliciously, give good stuff for the sleezy things to read. Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://blog.jim-nielsen.com/2025/malicious-traffic-on-static-sites/ [2]: /thoughts/
A ChatGPT prompt equals about 5.1 seconds of Netflix In June 2025 Sam Altman claimed about ChatGPT that "the average query uses about 0.34 watt-hours". In March 2020 George Kamiya of the International Energy Agency estimated that "streaming a … Simon Willison’s Weblog · simonwillison.net [1] This feels very promising for the future as we enter a world that is more and more dependent on AI that inference is so cheap. I did not understand the scale to how much cheaper inference is compared to training. As we get better with training I imagine this gets significantly better as well. I know they all claim to be profitable on inference, but scrolling through Simon’s feed here you see several articles on the stark difference. Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://simonwillison.net/2025/Nov/29/chatgpt-netflix [2]: /thoughts/
A pretty good email scam How I helped family recover from a clever email scam that hid behind sneaky account settings cassidoo.co [1] scams suck. This is a good story, sorry to hear that it happened to a real person. If you or anyone in your family has a compromised email, add these to your checklist to fix. - automatic forwards - 2-factor email Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://cassidoo.co/post/email-settings-scam/ [2]: /thoughts/
2025-11-27 Notes | Nic Payne yesterday: [[2025-11-26-notes]] Big Changes Got my workspaces script in working order It's not quite configurable yet This will allow an easy way to setup pype.dev [1] Nic is also building out a similar workspaces script. This feels like such a great thing to have ai work on fully customized tools for your personal workflow. Also Nice shout out! Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://pype.dev/2025-11-27-notes/ [2]: /thoughts/
Check out dawarich [1] by Freika [2]. It’s a well-crafted project with great potential. Your favorite self-hostable alternative to Google Timeline (Google Location History) References: [1]: https://github.com/Freika/dawarich [2]: https://github.com/Freika
K8s Diagram Builder - Visual Kubernetes YAML Generator Free Kubernetes diagram builder with drag-and-drop design. Auto-generate production-ready YAML for Ingress, Services, Deployments, ConfigMaps, Secrets & more. No signup required. K8s Diagram Builder · k8sdiagram.fun [1] This looks like great prototyping tool for k8s. I too often ask ai to get me going with the things I need. I’ve used k8s long enough that I can generally remember all the things I need, roughly where they go, would probably forget a few things and need to iterate, but I cannot remember exactly what goes where and need examples at a minimum. I need to give this a go from desktop and see if it will work for me. Right now looking through mobile looks promising. Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: http://k8sdiagram.fun/ [2]: /thoughts/
Apple Boxes Complete
A complete stack of apple boxes for the local theater.
Design For Bosch Colt Dust Collection V1
Isometric view of the Bosch Colt dust collection design.
Dust Collection For Bosch Colt V0
Dust Collection for Bosch Colt router v0 made of 3/4" plywood.
chr15m [1] has done a fantastic job with runprompt [2]. Highly recommend taking a look. Run LLM prompts from your shell References: [1]: https://github.com/chr15m [2]: https://github.com/chr15m/runprompt
setting COLUMNS env var to a number greater than 0 will make the terminal resize to that number of columns. COLUMNS=80 uvx --from rich-cli rich myscript.py Note Not all programs respct the COLUMNS env var, but rich does, and a lot of stuff I’m building uses rich. I discovered this when I was trying to make a low effort readme generated from the code, but did not depend on the size of terminal it was ran on. # justfile readme: echo "# Workspaces" > README.md echo "" >> README.md echo '``` bash' >> README.md COLUMNS=80 ./workspaces.py --help >> README.md echo '```' >> README.md
I’m really excited about alloy-scenarios [1], an amazing project by grafana [2]. It’s worth exploring! A collection of working Alloy scenarios References: [1]: https://github.com/grafana/alloy-scenarios [2]: https://github.com/grafana
The tea command for gitea (used by forgejo) has a flag for login. With gitea you can have multiple accounts logged in. When you try to run a command such as repo create it will prompt you which login to use, but I learned that you can bake it in to all of them with --login <login-name> ❯ tea repo create --name deleteme --description 'for example' ┃ NOTE: no gitea login detected, whether falling back to login 'git.waylonwalker.com'? [1] tea repo create --name deleteme --description 'for example' --login git.wayl.one References: [1]: https://dropper.waylonwalker.com/file/11dc820d-1680-414c-9624-cd970b057a74.webp
Looking for inspiration? wyattbubbylee.com [1] by WaylonWalker [2]. No description available. References: [1]: https://github.com/WaylonWalker/wyattbubbylee.com [2]: https://github.com/WaylonWalker
If you’re into interesting projects, don’t miss out on qmk_firmware [1], created by WaylonWalker [2]. Open-source keyboard firmware for Atmel AVR and Arm USB families References: [1]: https://github.com/WaylonWalker/qmk_firmware [2]: https://github.com/WaylonWalker

2025-11-21 Notes

Learned about nginx_auth today. Feels good to unlock a new skill that I did not quite understand before. I don't think I grasped that there is a backend...

1 min
Check out octelium [1] by octelium [2]. It’s a well-crafted project with great potential. A next-gen FOSS self-hosted [3] unified zero trust secure access platform that can operate as a remote access VPN, a ZTNA platform, API/AI/MCP gateway, a PaaS, an ngrok-alternative and a homelab [4] infrastructure. References: [1]: https://github.com/octelium/octelium [2]: https://github.com/octelium [3]: /self-host/ [4]: /homelab/

Another Big Cloud Outage Nov 2025

Today I woke up to finding out that cloudflare hade a widespread outage. My [[Reader]] uses tailwind cdn for styles and it was down. Otherwise it was not so impactful to me and felt kike they were quick to have it up. I’m not really researching here, just jotting thoughts down from a parking lot waiting for pickup. It feels like we are seeing a lot of these lately. They feel much more frequent. It feels like a whole industry was sold on 9’s and reliability of big cloud that we just aren’t getting. There’s a huge push to go back to self hosting, racking and stacking. I think this is great. I love it. I’m a big proponent for ownership and self hosting. It’s not the right move for everything and everyone, and is certainly not something to make a knee jerk reaction about in the moment of frustration. There’s a lot of things that are just impossible to do yourself, cdn caching, edge compute, ddos protection. These companies are not magic they are vulnerable to changes just like you ...
2 min read
- 👏👏👏preach it prime! M$ continues to prove that they are not making products for you something else is affoot and shit you don’t want is shoved down your throat and forced on you. Prime points out that the agentic is prompt injected itself😂. Rather than making a better os experience it’s assuming you are stupid and need everything done for you. But what I don’t get here in the text scaling example. Why the F does it not just fix it for me. When I ask the machine to make text bigger it puts a flashy circle where to click. This is a one time setup for someone who gives no fucks to remember how to do it. Why is the machine doing this weird hand holding watching us do it’s work rather than just doing it? I like the pattern when you change display setting it gives you a counter that reverts everything if for some reason shit is so bad you can’t even see it. Do that, not this help me click bs. Now in parallel we have steam making Linux desktop better and better. Allowing you to just access the hardware you own to do what you want to do with it. Providing a fantastic hands off out of the box experience for the price of the hardware. No ongoing fees, no upgrade cycle, soft lock, ari...
PETaflop cluster AI is a pain in the back. Justin Garrison · justingarrison.com [1] Justin makes the coolest kubernetes clusters wishing I could see it in the flesh at Kubecon. Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://justingarrison.com/blog/petaflop-cluster/ [2]: /thoughts/
- Absolutely banger of a video, what a wild idea to send gippity a bit off course and just see how far off the rails it will go. Dude did a banger of an edit on it. I’ll admit that I listened to the whole thing, but did not watch much, saving here as I might go back when I have time to really watch it. It was really weird how easy it was for chat to say something that could be true, but nearly no chance of it actually happening over and over and just keep it going down this dark spiral of conspiracies. It was ready to electrocute him and separate him from anyone who had a chance of being a non believer. At any moment was ready to say that those closest to him might be his problem. gipity is not your friend, or your therapist. Note This post is a thought [1]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: /thoughts/
I found an interesting side effect of manually running my script to generate [[ stars ]] posts is that you get notified when one gets renamed. Today I noticed that Ned Batchelder created a coveragepy org. [1] References: [1]: https://dropper.waylonwalker.com/api/file/cf6dd0cc-5a74-40bf-8512-f62471ea1e56.png
Today I learned how to use AliasChoices with pydantic settings to setup common aliases for the same field. I’m bad about remembering these things, and hate looking up the docs. I like things to be intuitive and just do the thing I want it to do. Especially when they get configured through something like yaml and do not have a direct lsp look up right from my editor. I figured out how to support what might be common aliases for a storage directory. These can be set up as environment variables and used by config. from pathlib import Path from pydantic import Field from pydantic import AliasChoices from pydantic_settings import BaseSettings class Settings(BaseSettings): storage_dir: Path | None = Field( default=None, validation_alias=AliasChoices( "STORAGE_DIR", "STORAGE_DIRECTORY", "STORAGE_PATH", "STORAGE_PATHNAME", "DROPPER_STORAGE_DIR", "DROPPER_STORAGE_DIRECTORY", "DROPPER_STORAGE_PATH", "DROPPER_STORAGE_PATHNAME", ), description="Directory for stored files", )

3d-Printed Corner Clamp

Getting ready to batch out 18 apple boxes for the local theater. Need to step up my woodworking tool game here quick on a low budget. Whipped this up up and built the prototype box , went really well. We have 4 in the arsenal now, might do 4 more if we need more assembly capacity. Pretty proud of the first 3d printed thread project here. The design for good 3d prints can be quite different with its anisotropic strength and hollow sections being nearly weightless when compared to traditional manufacturing methods. Its so fun to be able to do it for almost no cost right in my home office. [1] 3d-printed corner clamp printed in black pla. [2] Isometric view of my corner clamp v1 that supports up to 3/4" sheets and includes slots for dowell points on 3/4" and 1/2" material. References: [1]: https://dropper.waylonwalker.com/api/file/2701fb29-5a35-4249-a66d-8a84a774fb0c.jpg [2]: https://dropper.waylonwalker.com/api/file/6a0c5ef1-4f8b-4b4d-9def-60e3168a464c.png
Mark Zuckerberg scaled Facebook in 2005 - without Kubernetes, Serverless Functions, Redis, Managed Auth, Rust, or Kafka. No fancy orchestration. No distributed event streams. No cloud-native… | Anton Martyniuk | 270 comments Mark Zuckerberg scaled Facebook in 2005 - without Kubernetes, Serverless Functions, Redis, Managed Auth, Rust, or Kafka. No fancy orchestration. No distributed event streams. No cloud-native anyth… LinkedIn · linkedin.com [1] Lean on your skills and your goals. If your goals are to have fun, use whatever you want. If you are looking for a job, Lean on tech that bridges the gap between your resume and the job you want. If you want to build a good product use the tech you are best at. No one in their right mind would throw away 20 years of tech progression because Zuck built facebook ftping php to a server. The sentiment in this post is fine at best the picture feels triggering and oversimplies way too much. If you like kubernetes just fucking use kubernetes [2]. This topic deserves a full on post, maybe later. Note This post is a thought [3]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://www.linkedi...

Techbrophobic

I just heard someone drop the this term and it kinda fits a lot of shit on the internet right now. Arguing that its OK to question AI, its OK to like it, its OK to question if it needs to be in every goddamn thing we do, question its morality on training and the slop being pushed at us all the time. I’m not Technophobic I’m Techbrophobic I heard this and it kinda hit with a lot of things that I’ve resonated with lately. Tech bros of today have been compared to Steve Jobs in a lot of ways. Whether its style or the way he was so good at marketing, but this feels different. When Jobs launched the iPhone as this next great thing, He fucking made the thing. No broken promises of being sold something with hopes that it will do more tomorrow. No pushing around insane amounts of money with the hope to become profitable years down the line. No fear pushing that if you are not doing X today your business will be dead in 6 months. Giving us the promise that it was about to create an enti...
3 min read
- Are we cooked? Are we? Yes the consumers are cooked there are no more affordable cars with basic shit that you need to go point a to point b. Ford make us cars we can afford and you won’t be cooked by this dumb shit. If you can market it? Most people don’t care what sticker price is and only the monthly payment. This is why we are cooked. We stopped caring that these things cost way too much. I’m probably in a small minority that just want an affordable reliable vehicle and could care less about features past climate control. I don’t use them. My phone has maps and music I don’t need a screen in my vehicle for anything. Note This post is a thought [1]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: /thoughts/

Mcat Anything

I’ve long looked for a way to cat anything in the terminal. I’m am terminally in the terminal. I manage all of my projects, code, website, notes, files, servers, infrastructure, almost everything from the terminal. I occasionally open a file manager, mostly at home, only so that I can browse images. Compounding my issue, I’m a tmux user. It works great for me, and I barely have to think about it at this point. The keybindings are second nature to me. I can go between server, terminal, nvim, and between projects instantly, no loader, no lag, no animation, it just works for everything that really matters to me for really getting things done. Mcat # [1] mcat is a new tool that seems like it can cat anything in the terminal, code, files, images, markdown, markdown with images, and even video, without leaving tmux! mcat static/8bitcc.png curl https://r.jina.ai/https://waylonwalker.com/store/ | mcat --theme dracula --md-image all curl https://r.jina.ai/https://waylonwalker.com/shots/ ...
2 min read

Missing Thoughts

No one is perfect, this is why we have things like checkpoints or gates in the form of pull requests, linting, type checking, and tests. What happens when you work on small side projects by yourself that try to be content focused? What happens when you end up building a lot of the tech under that site and build it on the bleeding edge of all the tech you make? They are likely missing these things and occasionally there are some periods of regression. This is one reason I really like the term digital garden to describe one’s small corner of the internet where they share their thoughts. There will be regressions The Signs # [1] There were signs, signs I did not notice Chat is your rss feed broken? I’m not seeing anything show up in my rss reader me Do I not put thoughts in my rss feed, I swore I did. Chat my fault, Turns out I must have already clicked it in my reader. me great, glat it’s working …But it wasn’t Later this week comes the next sign that I also choose to ig...
3 min read
mcat [1] by Skardyy [2] is a game-changer in its space. Excited to see how it evolves. Terminal image, video, directory, and Markdown viewer References: [1]: https://github.com/Skardyy/mcat [2]: https://github.com/Skardyy

2025-11-04 Notes

Today I gave mcat a try and it's so sick. It can anything right in the terminal, pdf, image, even video. It even works inside tmux unlike almost anything...

1 min
- #minecraft" playlabel="Play: I refuse to change the way I play… 😂🔥 #comedy #videogames #minecraft [1]"> Microsoft has been addding features to Minecraft for over 10 years now. Idk if there was momentum from the mojang theme, but we’ve barely paid attention to any updates in the last five years. The ocean update was huge, caves and cliffs were huge then it trailed off to we play each release on release day, use commands to try out new features, then never touch them again either to play minecraft as we always have or to play a modded pack with crazy new features that really make an impact on gameplay. Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: /tags/minecraft/ [2]: /thoughts/
- Absolutely incredible what Preston is doing with his time. What a life changing experience this must be for him. Good job to Turso for making this happen. We are going to end up with very feature rich file based databases out of this that the whole world will benefit from. Note This post is a thought [1]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: /thoughts/
- Absolutely love this selfhosted arc of pewdiepie that is going on right now. It’s crazy to witness now fast he is picking up linux / self hosting, and sounds like soon will be programming. In this one he built a $20k AI beast that crushes gippity with power, speed, proximity, and security. No one to take your data, no latency to the data center, no one else bogging down your prompts, just raw speed. It looks absolutely wild. He implemented RAG and gave it a bunch of data about himself and its able to spit out his wife’s name and phone number in under a second. It writes code at blazing pace. This may be the future that we get over the next few years as things shift towards AI there will be more affordable options, and a larger second hand market for building out these highly capable machines. Note This post is a thought [1]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: /thoughts/
The Glorious Pipe Operator (Elixir for PHP Devs) Let's talk about how how the functional pipe operator helps to simplify and improve code readability and composability, and how it contrasts with the fluent interface design pattern commonly used i... Jesse Leite · jesseleite.com [1] I’m so glad that python supports method chaining out of the box, very similar to the pipe operator that Jesse mentions here. It makes everything much more readable to follow the flow rather than needing to parse nested funcion calls out(inside()). Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://jesseleite.com/2025/the-glorious-pipe-operator [2]: /thoughts/
- I greatly appreciated the wide variety of experienced maintainers of large oss projects. From webdev to desktop application. The most common sentiment here was don’t contribute to open source just to contribute to open source. Bring something meaningful to the project. Find a project you like, look at the discussions/issues for work or start some discussions. If there are no meaningful features that you can add to projects that you use and love, make your own thing. Adam from tailwind really hit on this one several times. He has made tailwind extensible so that you don’t have to contribute to tailwind to get new capabilities, you can probably just extend tailwind with your thing. Its likely that it makes a lot more sense or your use case, and if it turns out that it makes sense for everyone have the discussion about bringing it in. The upside to small oss projects is that you can move at whatever pace you want and break them all you want when the user base is just you. As you move your stuff into tailwind you have to be very careful not to break the massive tailwind user base and you have to bend to the release schedule of tailwind. The other adjacent topic that kept coming ...
Corner Clamp V1 Isometric
Isometric view of my corner clamp v1 that supports up to 3/4" sheets and includes slots for dowell points on 3/4" and 1/2" material.
Act Ii
Last Judge
rustfs [1] by rustfs [2] is a game-changer in its space. Excited to see how it evolves. 🚀 RustFS is an open-source, S3-compatible high-performance object storage system supporting migration and coexistence with other S3-compatible platforms such as MinIO and Ceph. References: [1]: https://github.com/rustfs/rustfs [2]: https://github.com/rustfs

Rules

- There is no such thing as magic - Be ready to roll back live deployments - If CI was too fast be suspicious - Always be available after a release. - No one wants to read your slop, if you are too lazy to write it don’t send it.
1 min read
You already have a git server: (Maurycy's blog) maurycyz.com [1] It’s so easy to forget low level tech sometimes. Things that are dead simple and just work without a hitch. git is one of those rock solid things thats very easy to remember all that it does, this is a classic use case. This just works cd /parent/directory/for/repo git clone ssh://username@server/path/to/repo In order to recieve you must update the remote to allow recieve. git config receive.denyCurrentBranch updateInstead Now you can pull update push. It’s funny how this was the way I first learned to do Continuous Deployment to a RHEL7 machine, also how Heroku worked, but its so easy to forget this solution is there. I come across it every few years and immediately have a few use cases in mind. Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://maurycyz.com/misc/easy_git/ [2]: /thoughts/