Blog

Full Blog Posts

340 posts latest post 2026-03-27
Publishing rhythm
Feb 2026 | 6 posts

command palettes are overrated

Command palettes are slow, and overrated, you should treat yourself better. You probably installed VSC*** out of the box and your co-workers see you using the mouse and reprimanded you as they should. Mouse usage is not OK if you are a software dev, you should have the cheap ass free mouse that came with your cousins dell machine five years ago and only use if for emergencies. If you want to be fast you cannot do that by moving cursors to imprecise locations and clicking with your hand. You are not a caveman, put down the stones and get with the damn times. You need to be moving with precision.

So you are taking your first few baby steps away from that Logitech MX Master and you need to get shit done, during these infant months the command palette is your friend. Use it you will be 10x faster than Razer Naga Ron from accounting. If you are in an IDE like VSC*** or a JEttedBrains editor they come with a command palette for running commands and fuzy finding files, use it. If...

...

4 min read

just fucking use kubernetes

You want to run containers?

JUST FUCKING USE KUBERNETES.

Shut up. Close twitter and fucking do something. Life is complicated. You know what else is complicated? Email. DNS. Life. Kubernetes is the least painful way to orchestrate containers at scale. Docker Compose is for your laptop.

...

markata parallel render

_._ __/__ __ __ _/_ Recorded: 07:53:56 Samples: 71681 /_//_/// /_\ / //_// / //_'/ // Duration: 92.741 CPU time: 91.748 /_/ v4.5.1 Program: /home/waylon/git/waylonwalker.com/.venv/bin/markata build --pdb 92.740 Markata.run markata/__init__.py:443 `- 92.714 HookCaller.__call__ pluggy/_hooks.py:479 [2 frames hidden] pluggy 92.714 PluginManager._hookexec pluggy/_manager.py:106 |- 38.207 wrapper_register markata/hookspec.py:265 | |- 26.105 render plugins/link_collector.py:59 | | |- 10.012 BeautifulSoup.__init__ bs4/__init__.py:122 | | | [14 frames hidden] bs4, html | | |- 5.599 <listcomp> plugins/link_collector.py:181 | | |- 4.050 <listcomp> plugins/link_collector.py:173 | | |- 3.466 Markata.map markata/__init__.py:565 | | |`- 2.092 markata/__init__.py | | `- 0.942 BeautifulSoup.find_all bs4/element.py:2008 | | [2 frames hidden] bs4 | |- 9.107 render markata/plugins/render_markdown.py:260 | |`- 8.902 result_iterator concurrent/futures/_base.py:612 | | [5 frames hidden] concurrent,...

principal-engineer-at-meta

Jake Bolam principal engineer at Meta, has some of the best career advice for those looking to become principal or just be better at their craft. This video was such a banger I had to bring it in as a full post, and not just a thought. It was a random YouTube auto play, something that I probably wouldn’t have clicked on given title an thumbnail, but turned out to be very impactful. Jake is such a smart guy with a lot of great insights, and I can tell he thinks really quick on his feet, he just pulled all of these things out of his head on the fly.

Jake had a super long period of on boarding at meta, he came in as a seasoned leader yet took many months to get going. This was a phase during or near the end of the COVID-19...

...

csv

name,age,city Alice,30,New York Bob,25,San Francisco Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago name,age,city Alice,30,New York Bob,25,San Francisco Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago Charlie,35,Chicago graph TD A-->B A-->C A-->D D-->E document.addEventListener('DOMContentLoaded', function() { (function() { const ctx = document.getElementById('chartjs-1'); new Chart(ctx, { "type": "bar", "data": { "labels": ["Red", "Blue"], "datasets": [{ "label": "Votes", "data": [12, 19] }] }, "options": { "responsive": true } }); })(); (function() { const ctx = document.getElementById('chartjs-2'); new Chart(ctx, { "type": "line", "data": { "labels": [ 65, 59, 80, 81, 56, 55, 40 ], "datasets": [ { "label": "My First Dataset", "data": [ 65, 59, 80, 81, 56, 55, 40 ], "fill": false, "borderColor": "rgb(75, 192, 192)", "tension": 0.1 }...

perfect

Perfect is a made up word that humans use to describe something that is above average, or works really well for them. The idea of perfection is fleeting, as you think more deeply about something, you can continue to chase the idea of perfection to unimaginable senses. Sometimes perfect simply means good enough. Could there be something better, Always, but at what cost. If I spent 10 more minutes on this post would it be better, maybe, but I might fuck it up. If I spent my lifetime studying how humans read and think, sole focused on how it pertains to this post, ya it would get better. When I use this word perfect it’s not meant in the most literal sense of the word, but perfect to me, maybe good enough given the constraints I have, its the best thing I’ve got.

just

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.

When you say “just,” you’re skipping over all the invisible complexity. You’re assuming the problem is simple, and that the person asking for help hasn’t already considered the obvious.

You’re not seeing the constraints:

...

kraft

Kraft is the family gaming server that we started early 2025.

Villagers are really hard to get gong. We have this huge villager tower on the server, we nearly every bed filled, and one day we logged in and there were three. Not sure what happened until I witnessed one of them jump maybe 3 blocks down and off himself. I checked my last two villagers and they were each on one or two hearts left. We almost lost every single villager on the server.

To get villagers to breed and make baby villagers you need beds, which we already have, and food. I gave my guys some food and they started making baby villagers immediately, crisis averted as we start to get the first few fresh full health villagers on the server.

1 min read

my nvim spellcheck setup

I’ve gone too long without a proper spellcheck setup in nvim. I know it’s there, I just don’t use it, I don’t have the right keybinds, like I do with vim date, to make it work, and its clunky.

I really struggle with bracketed keybinds, they don’t flow for me. I have to shift into it and hit two keys, you cant just pop through them with intent, it always feels clunky to me.

I barely use F-keys in my keymap so that was free game. On my keyboard I have F1-F9 in a numpad layout on my right hand, so F4-F6 are home row, these are super easy to pop...

...

2 min read

Linux Is About Choice

This Luke Smith video came across my feed Linux, Bitcoin: When Tech Projects Become “Too Popular…” Don’t forget the goal.. It’s interesting to hear his perspective about Linux, FOSS, Free Software being the end goal, and that we are loosing sight of the goal. This sentiment really aligns with the early FOSS movement from Stallman, but was this ever the goal?

Luke talks about these projects getting taken over by people with no passion for the original goal of freedom and privacy. They want the projects to grow, get bigger, and become mainstream. This feels exactly the opposite of anything Luke would want, so my bias alarm goes off here. Honestly I do see some of the grossness of projects like this that were grassroots, for freedom and...

...

6 min read

tinyapps

I’m working on replacing my usage of google inline search apps with real apps, these are ones that I create and host on my own homelab. The first three that I created are mostly chatgpt based, with a bit of hand edit after the fact, uploaded to minio and become an app on my k8s-pages

I’m leaning on 3 min read

m9a devlog 1

It’s sad to see textualize.io close the doors, but textual is still alive and maintained as a n open source project. I tried to use it very early, and struggled, this was before docs and tutorials really existed, before a lot of the widgets and components existed. Then as we all do I got busy and moved on to other things in life and did not have the capacity to build TUIs.

I like tuis, I like staying in the terminal. I use lf daily to move files around when I want something more than mv and cp. I use k9s hourly to...

...

hollow knight home row layout

I just made it past 100% in my main hollow knight run, so now I will allow myself to get silksong when it comes out. I did this with a little bit of YT guidance, but mostly just figuring it out. I only just discovered the ⭐ ReznoRMichael hollow-knight-completion-check which got me an extra 2% for a few items I must have got and not saved on, because I was sure I had them.

Hollow Knight is a game that can be played with keyboard or controller, You can use analog stick for movements, but they just translate to dpad, there really are no analog moves in the game. This makes it ripe for playing on pure keyboard. I really favor controller when there...

...

fix feed descriptions

Today I fixed a bug in markata that has been occurring for a few months where the description for posts come out as None if coming from cache, the issue was a pretty simple check and pull properly from cache. This fixes all the descriptions in feeds and metadata on the post.

While in there we went ahead and improved our get_description to more accurately return plain text without escaped characters, remove cutoff words, and add an elipsis if the description cuts off the text.

While I was there I made longer form posts, til, blog-post use the super description of 500 characters instead of the regular 120 character description.

portal-platformer-devlog-1

Here is the current state of my platformer yet to really be named, I want to make something in between hollow knight and portal.

I made one once in make code arcace on a pybadge. It was quick and dirty, but fun to work on. It had the basic of blocks that I could move, blocks i could put a portal onto, and a goal for each level. Some levels you can just walk through and some levels required you to really think about where to place the portal.

So this version of the game is a least 2 years in the making, I open it every few months give it a day or two and move on. Its mostly something that I work on with my son. He really likes to jump around on projects so its hard to make real progress on something, but we are hitting an age where he is able to come back to projects a little better.

...

2 min read

Changing k8s Storage Class - Migration Job

I’m setting up longhorn in my homelab, and I ran into an issue where I initially setup some pvcs under longhorn, and later realized that to get longhorn to snapshot and backup I needed to hand edit volumes after the fact or change storage class. I’m all in on gitops so option 1 was not an option. So changing storageclass it is.

Now the issue is that you CANNOT mutate storageclass on a provisioned pvc, it is an immutable attribute.

This migration job will create a new pvc with the new storageclass and move the data from the old pvc to the new pvc.

...

homelab drive ids

ls -l /dev/disk/by-id/

Drive Bay 1 ata-ST4000VN008-2DR166_ZDHBZSWZ

+————————————————————————-+ | [ Power] [ Reset ] | +————————————————————————-+ | [ BAY 5 ] 3TB WD30EFRX WMC4N0D3J9R7 ext4 /mnt/sdf4 | +————————————————————————-+ | [ BAY 4 ] 14TB EXOS ZTM09R9N zfs main pool mirror /mnt/main | +————————————————————————-+ | [ BAY 3 ] 14TB EXOS ZTM0AALS zfs main pool mirror /mnt/main | +——————————————-+ | [ BAY 2 ] 4TB IRONWOLF ZDHBZV3N zfs tank pool mirror /mnt/tank | +————————————————————————-+ | [ BAY 1 ] 4TB IRONWOLF ZDHBZSWZ zfs tank pool mirror /mnt/tank | +————————————————————————-+