Home | { TechDufus }
TechDufus writes about platform engineering, homelab rebuilds, and agent workflows that hold up in the real world.
{ TechDufus } Ā· techdufus.com [1]
This has to be top tier dopest home page of all time. The commands are all so well customized and whimsical on the terminal.
[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]: https://techdufus.com/#timeline
[2]: https://dropper.waylonwalker.com/api/file/5387bb34-4a9d-4a51-95d2-ed6242c411f8.webp
[3]: /thoughts/
Posts tagged: thought
All posts with the tag "thought"
866 posts
latest post 2026-05-25
Publishing rhythm
[1]
Iāve ran my homelab [2] on k3s for a year and a half now, and have had talos fomo the whole time. Iām not sure if this article helps or hurts. Helps to see that techdufus struggled and wished he went k3s first, but theres so much good to it that I want it.
Prometheus and Grafana for monitoring (because you canāt manage what you canāt see) # [3]
Iām getting there, ok, I have some of it figured out but not firing on all cylinders like I want.
CloudNativePG # [4]
for PostgreSQL (way better than managing databases manually)
Amen to this, cnpg is kick ass and has me tempted to drop sqlite for my production database default. I mostly make small shit on the side that is never going to blow up. sqlite is really good, but the automation that comes along with cnpg to just run it on all nodes and backups once you establish the pattern with the first one is sick.
š¤£š¤£š¤£ actually read the docs š¤£š¤£š¤£ # [5]
[6]
Is This Overkill for a Homelab? # [7]
Absolutely. Could do most of this with k3s or Docker Compose. But whereās the fun in that?
Speaking my language here! Again Iām well past the 1 year mark of running k3s and iāve had no regrets. Kubernetes is about establishing and replica...
Forming URIs for Autofill | Bitwarden
Find out more about how URI match detection works in the Bitwarden password manager.
Bitwarden Ā· bitwarden.com [1]
For anyone self hosting a bunch of apps under one domain, I just swapped all of mine to Host matching which includes the full subdomain, and it is glorious to not have 9+ items hit on all of your pages and only the one that you actually want.
open one > edit > gear icon next to url > Host
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://bitwarden.com/help/uri-match-detection/
[2]: /thoughts/
-
vim usage is becoming normie level. Just like archinstall made it too easy to install arch and brought normies into the ecosystem. It killed ArchBTW^TM^, distros like lazyvim have killed vimBTW^TM^. It used to be that to run arch, vim, nvim you had to read the docs, and go deep on understanding. running archinstallor lazyvim make it so easy to get started that you miss all of the details, you no longer have to understand ctags, quickfix, what an lsp is, or even how to set your own keybindings. You just use the damn thing, like you would with VSC****. No shame to anyone who does this, but you are probably missing out on a bunch of really useful features of a very core tool in your workflow.
Just discovered Sylvan Franklin in this post and he is cracked, sub now.
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/
[1]
Wish I would have saw this guide and provided assembly file for setting up virt-manager in distrobox. They call out immutable distros like the knew I was coming.
Note
This post is a thought [2]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: /static/https://github.com/89luca89/distrobox/blob/main/docs/posts/run_libvirt_in_distrobox.md
[2]: /thoughts/
Notes ā 06:11 Sun 22 Jun 2025
Notes ā 06:11 Sun 22 Jun 2025
dbushell.com Ā· dbushell.com [1]
Whatās even real anymore? What a shitty age we are in that you have to form an opinion about news outlets and media outlets.
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://dbushell.com/notes/2025-06-22T06:11Z/
[2]: /thoughts/
neverjust
a guide to better developer communication
neverjust Ā· neverjust.net [1]
I just never quite understood why the word just can send people over the top. I get it when you donāt know someone, you donāt have history with them, and they come in saying you are doing something wrong.
I pulled this out into a full post just [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]: https://www.neverjust.net/
[2]: /just/
[3]: /thoughts/
-
2025 is not the year to get put on the market, its rough out there. Juniorās have little chance, senior+ are even struggling. We had it easy from 2020-2023, now its over saturated and you have to want to be in this industry to be here and stay here. It used to be a fine place to get a good job to pay the bills, the bar has been raised and if you donāt want to be here you are going to struggle. Theo covers this in this linked video deeply [[ thoughts-472 ]].
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/
-
Nailed the netflix documentary style. Videos like this make me so grateful that I have a job in this rough market, if youāve followed jepiās series you know heās been out of a job for months, and he is not alone in this. This is the year of ālaid of, i didnāt get laid off, I left to focus on my startupā, [[ thoughts-716 ]]
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/
Notes ā 09:32 Thu 19 Jun 2025
Notes ā 09:32 Thu 19 Jun 2025
dbushell.com Ā· dbushell.com [1]
Davidās design on his blog is fantastic likely from years of small improvements like this converting ugly quotes to pretty quotes and optimizing fonts.
Itās common for markdown libraries to convert the first to the second like my build script does.
This is new to me, I had no idea that markdown libraries did this, Iām now interested if markdown-it does it.
For subsetting I use the fontTools library but Iāve no idea how to setup Python environments. I got it working once and failed to document the process.
David, David, David, Iām sorry python has done you this dirty. I should do a post on making python environments in the age of Posts tagged: uv [2]. You got options to run in docker/podman, a whole ass vm, uv venv, uvx, uv run, uv script, python -m venv, virtualenv, poetry, hatch, and too many more. The ones that matter are containers or uv.
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/notes/2025-06-19T09:32Z/
[2]: /tags/uv/
[3]: /thoughts/
Bug: Pypi metadata is wrong (Requires: Python >=3.6) Ā· Issue #1131 Ā· jmcnamara/XlsxWriter
Current behavior When pulling the dependency with pip (without pinning the version), our python3.6 tester pulls 3.2.3 and not 3.2.2 even though the version is no longer compatible with python 3.6. ...
GitHub Ā· github.com [1]
pypi yanks suck, they are rare, this one got me today as it was a pinned dependency in my dependency chain. The latest release broke python 3.6/3.7 (which 3.6 has been EOL for 3.5 years btw), and it claimed >=3.6. In order to allow users to still install xlsxwriter without pinning down it needed yanked. Iām not sure if there was another way around it as pypi releases are immutable, so you cannot fix
[2]
This now has me wondering what the heck is using it with old pythons.
It appears to have broken builds on Canonical/checkbox for ubuntu 18.04. Checkbox is a device compatibility testing framework.
https://github.com/canonical/checkbox/actions/runs/14644718138/job/41098549191#step:8:125
[3]
Note
This post is a thought [4]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: https://github.com/jmcnamara/XlsxWriter/issues...
Conventional Commits
A specification for adding human and machine readable meaning to commit messages
Conventional Commits Ā· conventionalcommits.org [1]
I try to use conventional commits on all of my commits, but I often end up only using feat/fix. I need to keep this page handy and get new verbiage worked into my language
- fix:
- feat:
- build:
- chore:
- ci:
- docs:
- style:
- refactor:
- perf:
- test:
Optionally include a scope fix(parser):
A bang indicates a breaking change note. For example ā¦
chore!: drop support for Node 6
BREAKING CHANGE: use JavaScript features not available in Node 6.
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://www.conventionalcommits.org/en/v1.0.0/
[2]: /thoughts/
-
Wyatt built out this full world to start making a film series about FROGS. The entire set it built on a flat world, but yet feels so immersive.
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/
Visualizing My Blogās Internal Links
Writing about the big beautiful mess that is making things for the world wide web.
blog.jim-nielsen.com [1]
I like Jimās visualizations on his site, reminds me a lot of obsidian. Iāve tried to do the same on my analytics [2] page in the past, but it didnāt come out right. Iām going to have to give this another go.
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://blog.jim-nielsen.com/2022/visualizing-my-blogs-links/
[2]: /analytics/
[3]: /thoughts/
Your Framework is Showing
The one where Iāve had enough of the same Next.js error
dbushell.com Ā· dbushell.com [1]
Great breakdown of nextjs. I was highly unaware of its performance optimizations before reading this. The smell of vendor lock in from next/vercel has been there from the start, this is the first real claim Iāve seen.
Iām out on modern js front ends, complex builds that change every 6 months, design patterns are out of date just as fast. Its hard to keep up, especially when you donāt have the use case for highly interactive apps. Libraries like htmx [2] or plain ol js gets the job done on the majority of sites and everything I tend to work on.
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/06/13/your-framework-is-showing-nextjs-error/
[2]: /htmx/
[3]: /thoughts/
-
Iām totally with Prime here, there is something about the read only, mouse clicking part of my brain that causes me to be more critical of the code at a different level. It doesnāt hit the part of my brain thinking about the edit or how to do the edit, it hits a part thats thinking about how I will have to deal with the code moving forward.
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/
Next.js 15.1+ is unusable outside of Vercel
TBD
Omar Abid - Personal Blog Ā· omarabid.com [1]
Vendor lock in disguised as performance. Nextjs aparantly now streams all of your metadata on the fly with js. This would obviously kill all seo right, well not if youāre on vercel they automatically detect search crawlers and serve the metadata. Why the f do they need to do this and not just serve everyone the metadata. The Web is this beautiful place where anyone can create and build amazing things with a relatively low skill. Js is meant to be enhancement, not degrade the experience of its users.
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://omarabid.com/nextjs-vercel
[2]: /thoughts/
Think less, ship more
I do too much thinking about what I want to make, and not enough actually making the thing.
cassidoo.co [1]
I thin a lot of us have this issues, especially on side projects. At work therre are expectations, jira tickets and so on, keeping you shipping. I think there is something to be said about getting that quick and dirty POC to the right group of people early for feedback before you add redis caching, kubernetes, auto scaling, disruption budget, distributed nodes, high availability, backups, disaster recovery. At work you kinda have to have the right person to shoot ideas by that can understand that you probably need some of these complex things for your app and it will take time to get right.
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/think-less/
[2]: /thoughts/
GitHub - trykimu/videoeditor: Your Creative Copilot for Video Editing
Your Creative Copilot for Video Editing. Contribute to trykimu/videoeditor development by creating an account on GitHub.
GitHub Ā· github.com [1]
I would love to have a browser based video editor I could throw on a server and do quick edits from anywhere. I tried to get this one to work and struggled to get front end to send api requets to backend. I think the root of it was their redis wants to run on 80, this caused a permission error so I tried to run 8880:80, but redis was still unable to start due to a config permission error.
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://github.com/robinroy03/videoeditor
[2]: /thoughts/
-
The ability to query s3 buckets so seamless looks like such a pleasure to work with if you have a use case for that. Kedro catalog takes care of this most of the time for me, but I wonder if there are some cross project searching use cases I might find for this.
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/