Thoughts

Link based "commentary" style posts, commenting on a web link

905 posts latest post 2026-09-24 simple view
Publishing rhythm
Sep 2026 | 10 posts
GitHub - numtide/treefmt: the formatter multiplexer [maintainers=@zimbatm,@brianmcgee] the formatter multiplexer [maintainers=@zimbatm,@brianmcgee] - numtide/treefmt GitHub · github.com This looks like a very useful formatting tool to keep in the back of my mind. I do a lot of python and our tool tends to be pre-commit, named after the git hook pre-commit. It specifies a bunch of tools to run, you can run them in ci, manually, and opt into doing it before commit. I like the simplicity of this one not needing a whole ecosystem, but rather just leveraging the cli commands from those tools. This would probably be something that would get in the way of setup for new devs and not something I would throw on one project by itself, its another thing for everyone to figure out how to install and run on every platform, I’m sure its not hard, but being on python teams pre-commit just fits in.
Focus on the joy, not the suck. Nothing you do in life will be absolute pure joy with no downsides forever, life does not work that way, your brain does not look that way. Look at anyone who ever got massive billion dollar payouts for something like minecraft and how much their life is not glorious when they have nothing to really look forward to. Prime talks about it in almost a cliche way, every boring ass task is an opportunity to grow. This is so real though, if you look at every task ask a shit you gotta do to check that jira ticket off and make bossy lady not scream at you its going to be a hell. If you rather look at it as opportunities to implement new features in new ways or learn something to better yourself and watch yourself grow you are going to take a big dopamine hit. I think prime talks about this in the sense of larger projects. He as talked about his experience being much less of a daily standup, but more of a ok we got three months to figure this out lets go boys. When you are stuck in that daily jira grind it’s harder to see that larger picture of the learning and growing you are doing over the course of 3 or 6 months. Timestamped to the part of the video that r…
Should I go to college? Was my education worth it? Should I keep going. A question that comes in all too often accross most industries that require some level of education. DHH has such great takes on it, some I had never fully thought about. He starts out with should we have people study niche topics (using Russian Poetry as an example). Yes the world deserves people who can make their life works out of something that brings them and many other so much joy, but no you probably shouldn’t go 100k’s into debt to do it. Should I get a software engineering degree, or become a doctor also have similar answers, it needs to be somewhat justified and not outrageous as has become the norm. We used to listen in to Dave Ramsey on long car rides and he would have people call in and say, they went half a million dollars into debt to become a dentist, only to discover they did not want to do dentistry. At this point it’s too bad, you gotta suck it up and pay that off with something that makes some serious cash, and the only skill you probably got that can bring in that level of cash is … dentistry. They dive into the college experience, learning to have adult debates with classmates about which…
WebTUI Modular CSS Library that brings the beauty of Terminal UIs to the browser webtui.ironclad.sh webtui, looks like a pretty sick design aesthetic. I like the keyboard driven nature of it, the look and feel is on point to a terminal interface, sadly it looks like it is not a 2 way street, you don’t automatically get a tui our of your website, just one that looks the part in the browser.
I’ve never heard of niri, or a scrolling window manager, it looks quite interesting. I think tiling window manager misses out on named sessions and hotkey straight to tmux sessions, Brodi mentions not using tmux right before this segment. Niri looks quite interesting, but looks like it suffers specificity. maybe there are other tools that allow me to jump straight to something like brave, or steam, but I don’t see how I could jump to a specific terminal.
Backups interrupted by full disk usage | Nic Payne I just got a message from HCIO that my primary backup script is late... This happens every now and then but I decided to check on it... Quickly `ssh` in and I n pype.dev I’m way behind on my notification game and need to pick it up. maybe I’ll look into hcio as well. maybe I’ll look into something that goes straight to signal or just get things working on ntfy. An 80GB log file is massive and the kind of thing id like to see notifications more.
Queso Notes | Nic Payne It occured to me that this is my blog... I can write about whatever the heck I want! May 2025 Made 2 quesos very similar - they consisted of: 1.5 lbs ground bee pype.dev Taking this as inspiration to do more non-tech on my blog, I’ve branched out into Posts tagged: gaming, but need take it to the next step. excited to watch pype.dev evolve as well.
The ethics of README ads I’ve been considering accepting sponsorship again for my projects. Will McGugan · willmcgugan.github.io I’ve long avoided running ads on my blog for the same reason. For a few months I ran an ad above the fold. It was a “Your Ad Here” kind of thing, and in the messaging I was looking for content relevant to my content, not google driven ads. This resulted in nothing, no hits, not a one. I’m kinda with Will on this one beer money is not worth degrading the project for. I seriously thought some of the big projects with a moderate level of success got a good cut for these sponsorships. Some of the companies are big companies, like how do they even go through meetings and decide who gets beer money without spending more than that in decision making resources. Maybe they have a guy with more autonomy than I would expect.
External Link hub.docker.com Browsing for the minio tag that I have running right now I discovered that you can do and you get the same version that matches the docker tag, this is super convenient and helpful. I also notice that they use timestamped version numbers. I kinda dont mind this. It feels easy to understand how far behind it is. I really appreciate that the version in the container matches the version inside the container. It’s not as pretty or flexible as semver, it does not communicate trees of majors and minors, but how often do we continue supporting/patching older majors and minors, in my experience only really big teams or teams with sufficient motivation are doing this. food for thought.
I am going to start trying to employ this rhythm to my writing. I’m not very sure how I feel about it, there is something almost too assertive about it. It’s giving me a (i’m great and you should too) kind of vibe. I want to become more assertive in my writing. I’m giving this a shot and see what I learn, you might notice in my tils.
This talk about live store really made me think about database transactions in a new way. They are talking about live-store, and the complexity of distributed applications like a notes app with the ability to go offline and continue working. The complexity of resyncing each instance is not simple, conflict resolution accross all the possible installs that may or may not even be online is a really hard problem. They go deep on discussing an event driven paradigm that is driven off of a log of events and how this changes how we deal with databases. Using the event log as the source of truth we can do things like forget about database migrations, we can replay all of the events onto a new database. Its very interesting to rethink in terms of a log system that speaks in terms of understandable events (not table operations) as the source of truth for an application.
DHH (@dhh) on X You don't need a mentor. There's no secret sauce left inside anyone's head any more. It's all been tapped, bottled, tweeted, and shared a million times. Sample some of that, but also guard your ign... X (formerly Twitter) · x.com I need to find this podcast, was DHH this animated through the whole thing? You don’t need a mentor. There’s no secret sauce left inside anyone’s head any more. It’s all been tapped, bottled, tweeted, and shared a million times. Sample some of that, but also guard your ignorance. You’ll lose it soon enough. It takes work, one on one hand holding is a shortcut. Sometimes one that we need. Sometimes we need to level up quick, hence why your job might pair you up with someone for the first few months, but it is not something you need, you can figure shit out on your own with hard work. These days we have things like gippity to bounce ideas off, and you can generally get the sense of the direction the average of the internet it was trained on. Always add your own experience and make a choice for yourself.
Self-Host Weekly (30 May 2025) Self-hosted news, updates, launches, and content for the week ending Friday, May 30, 2025 selfh.st · selfh.st The object storage (S3-compatible) platform MinIO created a bit of a stir this week I had not heard about this before it came in through selfh.st. I use minio a lot, and did not know there are so many great alternatives out there for it. I might be looking into some of these options such as garage. Its hard to tell from this article what mino dropped, but luckily for me it seems to be all ui related. I use the UI for debugging/feedback/sometimes learning, but at this point I’ve got good flows for setting up new access keys, buckets, and everything with the cli.
DHH (@dhh) on X NIH: Not Invented Here Syndrome might come from a good place, but almost everything that's good in this world came from people who ignored it. Virtually everything is a variation of something else.... X (formerly Twitter) · x.com I suffer hard from NIH, I’m cheap, I like building things, I hate reading the docs, the perfect recipe for some bad NIH. I really like DHH’s take here. If no one builds anything new we get stuck with the same old shit. I think theres a lot of things that as far as my use case is concerned feature complete and needs no more. I would just build with it or on it, but not re-invent. It’s a slippery slope.
External Link hn.algolia.com this post by Jim Nielsen, lead me to this commit where I found that he was including posts of his that wound up on hackernews. I really like this idea and might take it, even though i have very few HN linked posts.
Links - Jim Nielsen’s Blog Writing about the big beautiful mess that is making things for the world wide web. blog.jim-nielsen.com I really like the idea of Jim’s Eternal Links, and really want to take it for myself. To expand here I want to be able to look for common places for rss feeds, and be able to scrape out rss feeds for sites that I tend to link to often. Also if they have something like a /blogroll it might be a good place to find new great people to follow.
Could I Have Some More Friction in My Life, Please? A clip from “Buy Now! The Shopping Conspiracy” features a former executive of an online retailer explaining how motivated they were to make buying easy. Like… blog.jim-nielsen.com Maybe we need a little more friction in the world. More things that merit our time. Less things that don’t. I can resonate with this post, less friction feels like it leads me to thinking less, having less skin in the game, understanding less, feeling less fulfilled. Vibe coding is a new trend of 2025, it feels like the future, but it does not quite feel like the present yet. It’s riddled with errors and I only get frustrated when it doesn’t work. I like having some friction that leads me to think and pay attention. There might be a future where this is not required for some things like coding up crud apps, but that does not feel like today.
A Gentle Intro to RSS A guide to RSS for the less tech savvy. Derek Kedziora · derekkedziora.com Some of the best things from the old internet are still preserved with RSS. Content is shared via simple files, which means the slow-loading, ad-stuffed and tracker-filled clutter of the modern internet are mostly absent. There aren’t any algorithms. RSS readers are wonderfully dumb. There’s no AI sifting through content to find whatever will outrage you the most. You just get new posts and mark them as read. It’s a calmer world. With RSS I follow lots of people writing about normal people things. People blog about getting back into playing the drums, a fun book they just read, a tough problem they’re working through and the other day to day things of life. This type of content tends to get buried on social media — it doesn’t get the clicks and sell ads like fear and outrage do. I feel like a curmudgeon, but i feel all of these things. I dont think that the new web is completely terrible, what is terrible is that the options of an algorithm ran by companies with differing goals is seemingly the only option. RSS still works, its fantastic, I personally love it, but theres only a small fr…
Command Line | gitignore.io / docs To run gitignore.io from your command line you need an active internet connection and an environment function. You need to add a function to your environment that lets you access the gitignore.io API. docs.gitignore.io This is a very interesting cli, its so simple. I stumbled accross the command awhile back and was like pfft, I dont want to install something for that. Didn’t even realize that you don’t install it, its just http. Their install instructions lead you to putting a curl funtion in your bashrc. This now has me wondering “What else can build like this?”
linkarzu has a way to navigate his entire mac using a hyper key. Everything looks so tight and polished, also a lot to remember! Lucky he has a system of mnemonics that make it easy to remember. His setup is very Mac focused using mac only apps, so this would not work for me, though I’m sure I could get something similar on linux. He did mention Kanata which is cross platform. What I do # I use a far different system that is fast loose and easy. On every system I run I have 9 workspaces that let me put 9 applications, I can easily move apps to different workspaces and have a side by side if I need. The core of what I do is terminal, web browser, and chat. Those go on workspaces 4,5,6, whch are home-row keys. If I’m running obs, that is on 8, steam goes on 1. but I have some freedom to move. Sometimes 2 will be an image editor or a video editor, sometimes something else all together, but I can quickly go to each app. What I like from Linkazru # I do like his layered approach. I run a 42 key keyboard so things can get a bit cramped quickly. And when thinking in mnemonics you only get 26 letters in the alphabet, but prefixing these with another layer this number goes up exponentially.…
Forrest Knight (@ForrestPKnight) on X you're not allowed to write comments in your code anymore, because if you do everyone will just think it's ai generated. X (formerly Twitter) · x.com Oh, I feel this. I go through the effort of removing dum ai comments so the ai looks less ai. you’re not allowed to write comments in your code anymore, because if you do everyone will just think it’s ai generated.
The adapter pattern in python The Adapter pattern is a design pattern that allows objects with incompatible interfaces to work together. It provides a way to convert the interface of an object into another interface that client... Rob Parsons · robp.dev This has me wondering if I need to really learn more patterns, data structures, and algorithms. This looks particularly useful when trying to combine several objects that you dont have full control over and make them behave similarly.
Adding a Dynamic Now Page in Jekyll Make an auto-updating now page on a static site like Jekyll, Hugo, 11ty or Gatsby Derek Kedziora · derekkedziora.com wow looking at how this is done kinda draws me towards jekyll a little bit, I did not realize some of the similarities that it has with markata.
css if() just landed, I’m struggling to understand what I an do with this that I can’t do with something as old as classes. I can get it if I don’t have control over html creation or js to add classes. The example that Una shows includes data that could directly be a classname with a set of styles in css rather than this crazy css variable unpacking out of a data attribute and an if statement.
wants Personal website. Webby personsite. Amateur hour round the clock. maya.land · maya.land Allen Carr1 on quitting smoking: [Carr] recommends working to really notice and internalise that disconnect [between what we want and what we enjoy]. He tells smokers to pay attention to their next cigarette. It’s like mindfulness but for noticing the unpleasantness. I can appreciate the restraint here, theres something about the mindfulness behind it all.
Blogroll Blogroll - a collection of awesome people I follow online Waylon Walker · reader.waylonwalker.com I rolled out the blogroll today, nothing pretty, but is one single page of the rss feeds I follow.
Markata got a shout out part way through the latest episode of LNL, I will go back, re-listen and take some of the feedback. His thoughts on Markata were interesting. On one hand it really is a thing for me that works for me, and as a person with too many side projects I don’t have the focus to really give it polish. On the other hand it really confirms why listen to podcasts, news, finger on the pulse, opinions and how often these guys are wrong, they are not the expert they probably look at 6 things like this a week. He said that it was some sort of javascript thing, that maybe he could fix or customize with javascript if he wanted, kinda shocking, I thought maybe I accidentally added node modules or something dumb, nope, I have a whopping 1.4% js. So most of the comments were plain wrong. I get it he probably peeked at it for 30s and realized it wasn’t the thing for his problem. At the same time I should probably do a better job at marketing what it really is, cleaning up the docs and demo.
Such a great message right now. I feel like everywhere I turn is negativity, especially social media. It feels like so many things are trying to divide and create hate. “This” is what we should be doing with social media. There are a lot of elements of “there are two ways to have the biggest building in town, tear down all the bigger buildings, or just build the biggest fucking building”, If you want to be successful in X then surround yourself with others successful in X. This is a catalytic skill that everyone needs to have in their belt.
Great conversation with Billy Basso the creator of Animal Well on the code architecture of Animal well. It’s all hand crafted C++. He talks about early games he tried to build being heavy in oop, and really got lost in oop. Animal well is very flat, there is no inheritance, just lists of entities that all implement similar methods in their own way. Layering and order of entities becomes very important. Its crazy how much he had to think about hardware and MS build being very helpful with this, but needing to know all of the console apis.
Just fucking code. justfuckingcode.com This is great, beautifully captures a modern backend view of https://motherfuckingwebsite.com/. I honestly resonate with almost all of this. I have found myself in more trouble than help when trying to fully vibe out a project. It never refactors, it leaves it shit everywhere, it mostly does what you say, until you get to something that seems easy, so you try to do it yourself, but you break its brittle piece of shit into pieces any time you try to touch it. AI coding help is great, mcp seems like it really has some game changing abilities, but hands of vibe coded crap aint there yet for me.
No docs, no bugs If your library doesn't have any documentation, it can't have any bugs. Documentation specifies what your code is supposed to do. Your tests specify what it actually does. Bugs exist … Simon Willison’s Weblog · simonwillison.net Bugs exist when your test-enforced implementation fails to match the behavior described in your documentation. Without documentation a bug is just undefined behavior. This is quite an interesting thought, so does this mean that, none of my undocumented side projects have bugs? no I think there is still some implied behavior that naming things covers. a function implies doing something wtih s3, getting stuff from your local filesystem or crashing would be considered a bug. I think the argument here is that if I start mining bitcoin when you call and I have not documented it that this is a feature not a bug. If I were to take this a step further, now do I need to document that this does not also start a bitcoin miner? maybe this is more of an unwanted feature than a bug, I’m convincing myself more and more.
External Link christopherbiscardi.com Interesting take on kubernetes from a front end perspective. All valid arguments to me, and really the answer to any do you need to any specific implementation of tech is probably no. We got along just fine before k8s ever existed and you still can, but its really nice in a lot of cases. If your skills lean toward backend or infrastructure I encourage you to give it a try. k8s distros # There are a lot of beginner friendly k8s distros that you can setup with relative ease, kind and k0s are great for single node, If you want multi-node k3s is what I generally use. If you want a very lightweight OS that you only interact with through an api, and has a very small attack surface talos is an amazing product. When else might you want k8s # Internal, on-prem, self hosted. If you are trying to avoid the cloud for cost, rules, regulations, red tape, kubernetes is a great option to manage your container workflows yourself without needing to have a cloud budget, get approvals and sign offs on running workflows in a public cloud.
Just listened to this as I am really starting to get into grafana and feel like there isn’t a mountain of setup this time around realizing how much of my stack is brand new. Drill Down and Alloy are both new and key to my setup. The Ai integrations at the end sound wicked good, I will be interested if you can do similar things with an MCP vs how much proprietary stuff needs grafana cloud.
Textual - The future of Textualize Textual is a TUI framework for Python, inspired by modern web development. Textual Documentation · textual.textualize.io Ultimately though a business needs a product. Textual has always been a solution in search of a problem. And while there are plenty of problems to which Textual is a fantastic solution, we weren’t able to find a shared problem or pain-point to build a viable business around. I can totally see this. Finding a marketable business idea is not easy, working in the developer space where everyone wants to do it themselves is no better. Textual specifically I could see, I really wanted to build things on it as it came out, I had ideas, it was hard to use at the time and changing, so I took a break, got busy with far too many other things, and really I ’m good with rich most of the time. I daily use k9s, its absolutely amazing at what it does and appreciate that I could build something like it in python, its just hard to justify the time investment for the things I tend to work on. Which is why Textualize, the company, will be wrapping up in the next few weeks. Damn, that hit hard, its been an adventure watching textual get built, thing…
What’s next? Some years ago I had the opportunity to work fulltime on project of mine. This was at a time where I fully intended to take a year off, but being able to make a living off a project of your own cre... Will McGugan · willmcgugan.github.io So it’s back to plan A: taking a year off. I plan on using this time to focus on my health–something I haven’t prioritized while working as a CEO / Founder of a startup. Wish you the best Will, you have given us textual and rich, and from what I can tell left it in some great hands. All I can say for certain is that I would like to write more. Writing scratches many of the same itches as software development, and it is a skill I’d like to nurture. Go get em Will, write to your hearts desire, and resist the urge to make an SSG company this time.
Too much magic A common criticisms of frameworks like Textual is that they have “too much magic”. Will McGugan · willmcgugan.github.io Now “too much magic” is not the same thing as “bad magic”, although they are often conflated. Bad magic is when the implementation details leak out from the level below. This can manifest itself as cryptic errors that reference the magic’s implementation.
Dang Strong takes against markdown here with a strong push for bespoke content models/structures. This idea is completely foreign and wild to me. I get it that markdown has its issues with flavors, add ons and what not, but overall its mostly transportable, its a skill that works most content sites and writing tools. I am so far on the other side that I seek out tools with markdown as an option and lean away from wsiwyg tools with specialized data formats on the backend. I’ll end with, I’m also a dev that creates very simplified content and maybe seeing the backend of a site with lots of custom fields would be very eye opening for me.
Week Links №2: April 2025 Last year I attempted to do some newsletter-style link aggregation… that good intention imploded spectacularly. But I switched to Obsidian this month and now I have a better system for aggregatin... daverupert.com · daverupert.com Last year I attempted to do some newsletter-style link aggregation… that good intention imploded spectacularly. But I switched to Obsidian this month and now I have a better system for aggregating links (post on that coming later). Inside this issue you’ll find some games, some homelab server hardware, some AI discourse™, some musical instruments, and more. This hits so close to home, I even went through the effort of making a weeknotes script, one weeknote post. I also was inspired by obsidian but it didn’t work out for me, so my script uses data from markata.
What ChatGPT is NOT - Tech Raven Blog There is a lot of excitement about ChatGPT and how it allows us to interact with information and technology. I am actually excited that it now exists and still, I think it is being way overhyped. I... Tech Raven Blog - · blog.techravenconsulting.com Do you remember regression models from college: given some data, you find a best fit line that allows you to predict Y given X. At the end of the day, ChatGPT, and LLMs in general, are the same thing as the regression model – it’s just that ChatGPT is the largest and fanciest model we currently have to model language and information. I really am coming to the idea of calling it a “word calculator”, this seems to be the most succinct description of llms that the lay person can comprehend and relate to. ChatGPT does not hallucinate or become unhinged I think Steve goes much deeper on this in his intervew on fafo.fm. They describe it more as a pleaser or “yes man” essentially all the companies that are building these models want to give the “best” answer, better than their competitors. With this comes the risk of it being completely wrong, they are designed to always give an answer. On that episode the…
“I’d rather read the prompt” Clayton Ramsey grades student assignments and gets papers that are just obviously ChatGPT output. I think any of us can spot it by now: awkward repetitive prose, heavy on bullet points with bold in… Chris Coyier · chriscoyier.net I’ll triple down on the link-blog chain here, see this one going around all over this week and finally had time to read through when it hit my rss reader via Chris. It should come as no surprise that nearly every vibe-coded app on the Internet struggles with security issues; look no further than the vibe-coded recipe app that leaks its OpenAI keys. Every time one generates code by prompt, they create a new stillborn program; vibe coding is the art of stitching together their corpses into Frankenstein’s monster. Damn, that is a strong statement, stitching together the corpses, strong statement here. The OpenAI key thing feels kind of obvious to me, every set of docs, blogs and examples on the internet need to be runnable for people to learn and try out new tech easy, putting secrets in the wrong place is easy, putting them somewhere that you can decode them without sharing them is hard team specific, app specific, and so nuanced…
Under 2000 everything is happy, green field. Any decision you have made is relatively easy to back out of (barring you making a library with downstream users), but as you go, regret kicks in. Regret we didn’t make that pydantic 2 upgrade earlier, as new features become more apealing. Regret that we chose sqlite for simplicity, speed, agility, and now we might need robust and distributed. Regret that you chose a front end framework, or to have a front end at all to a backend problem. Regret that you put 6 layers of abstraction on your db early on and now that you understand the problem you want different abstractions, but all of your endpoints deeply depend on the current one. Vibe coding will not save you, it will only make these wrong decisions for you without the context that you have. You will hate it’s decisions more because you had no input into some of them.
“Gradually roll out your releases to a small group of people” ~ roughly what prime said (I’m listening live) This really hit home with me, tests can be so good at making sure that we dont repeat bugs and that laser focused things work, tests are generally small and focused, but this does not replace some sort of integration testing. These days very few things are written as a monolith, and hence there are a lot of interactions that really need to play well together accross various systems. They call out Crowdstrike here, which took down the world blue screening critical windows systems everywhere in 2024. It was revealed that a small changed was rushed through and skipped critical rollout paths since it seemed like a small change. Crowdstrike also runs at a super low kernel level of access and a small memory bug can kill the system.
Waylon Walker Waylon Walker's personal blog waylonwalker.com I’m trying to level up my sre game. I’m trying to set up grafana dashboards for everything and it is such a wide surface area. It’s never just one thing you have to have 3 or more things hooked together in order for the data to flow. I’m really getting not invented here vibes, and thoughts that I can just build this myself. Not grafana and it’s scalability necessarily, but small components of observability.
Kubernetes Monitoring Helm tutorial | Grafana Loki documentation Grafana Labs · grafana.com This is a really great guide to setting up kubernetes monitoring with helm, it uses loki as a log datasource and alloy as a collector of kubernetes logs, events, and nodes. The charts are setup really well to start collecting logs from all your kubernetes pods.