Thoughts

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

883 posts latest post 2026-08-08 simple view
Publishing rhythm
Jul 2026 | 7 posts
Proper handling of None in WHERE condition · Issue #109 · fastapi/sqlmodel First Check I added a very descriptive title to this issue. I used the GitHub search to find a similar issue and didn't find it. I searched the SQLModel documentation, with the integrated search. I... GitHub · github.com SQLModel models ship with an, and that you can use to compare to None without pesky linters complaining. This comment summed it up quite well. I believe this is concerned entirely with SQLAlchemy, not with SQLModel, and has to do with the required semantics to construct a BinaryExpression object. Hero.age == None evaluates to a BinaryExpression object which is eventually used to construct the SQL query that the SQLAlchemy engine issues to your DBMS. Hero.age is None evaluates to False immediately, and not a BinaryExpression, which short-circuits the query no matter the value of age in a row. From a cursory search, it does not seem that the is operator can be overridden in Python. This could help explain why the only possibility is by using the == operator, which can be overridden. so rather than using we can use which checks for itentity not equality.
Gridfinity Generator gridfinity.perplexinglabs.com Gridfinity generator uses open scad, so you can make rugged boxes, bins and base plates with form input. not fully custom fit to things, but you can custom size square bins, hole cut out sides and all. From what I can tell, no bento box either. so as long as what you are looking for is square this generator has you pretty well covered. I’m definitely using this for simple bins and rugged boxes.
Document how to provide a negative number as an argument · fastapi typer · Discussion #798 First Check I added a very descriptive title here. I used the GitHub search to find a similar question and didn't find it. I searched the Typer documentation, with the integrated search. I already... GitHub · github.com Today I learned that you cannot pass negative integers as values to typer. in this case is required so that the does not look like a flag.
@willmcgugan) on X — New Version of #Textual released! 😎🤓🦾 The demo has been updated. It's not quite finished, expect an update next release, but it is a lot of fun. Press C at any point to see the code powering that page (makes a great learning tool). Video 👇 https://t.co/p2ScsuL7GZ" loading=“lazy”> Will McGugan ( @willmcgugan) on X New Version of #Textual released! 😎🤓🦾 The demo has been updated. It's not quite finished, expect an update next release, but it is a lot of fun. Press C at any point to see the code pow… X (formerly Twitter) · x.com This new demo of textual is wildly awesome, so many widgets and features being added into the main library. The themes and animations are on point and far surpass my expectations of a tui.
Pin versions of dependencies · Issue #2200 · Kozea/WeasyPrint Stack trace: pdf = HTML(file_obj=html, base_url='/').write_pdf() File "/service/venv/lib/python3.9/site-packages/weasyprint/__init__.py", line 252, in write_pdf self.render(font_config, counter_sty... GitHub · github.com weazyprint was throwing me some errors, turns out that it’s currently not compatible with the latest pydyf package. my error I fixed it by locking in pydyf at 0.8.0
add helix · WaylonWalker/devtainer@71b9b29 🐳 (dotfiles) My personal development docker container base image - add helix · WaylonWalker/devtainer@71b9b29 GitHub · github.com Helix officially made it in my devtainer. I am installing the binary right out of the github release with wget and tar. I can’t use installer because their release format does not match what installer is looking for.: I also move the runtime over to /usr/local/share/helix/runtime.: I use /usr/local/bin rather than my home directory as it works better with distrobox.
Support regex substitution command · Issue #2232 · helix-editor/helix Support regex substitution, comparable to vim:s or VSCode search & replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes <space> + /. This could be acc... GitHub · github.com helix multicursor has the ability to do what vims does by using to cycle through cursors, and to discard unwanted cursors.
Support regex substitution command · Issue #2232 · helix-editor/helix Support regex substitution, comparable to vim:s or VSCode search & replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes <space> + /. This could be acc... GitHub · github.com Here is a really good vim substitute with regex capture groups, saving this one for a rainy day.
Support regex substitution command · Issue #2232 · helix-editor/helix Support regex substitution, comparable to vim:s or VSCode search & replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes <space> + /. This could be acc... GitHub · github.com Interesting take on refactoring the whole codebase from your editor. In this thread the-mikedavis suggests multicursor as a replacement for substitute, and later in the thread takes the side that larger workspace wide edits are outside the scope of helix and he would reach for a refactoring tool like fastmod to do the job.
Support regex substitution command · Issue #2232 · helix-editor/helix Support regex substitution, comparable to vim:s or VSCode search & replace. I propose supporting regex replacements for selection s, files/, and the workspace scopes <space> + /. This could be acc... GitHub · github.com I am a heavy user off substitutions in vim, helix does not substitutions built in, rather it leans on multicursor support. to replace every instance of hello with world in vim and in helix you would
Background Image | Wallpaper · Issue #3059 · helix-editor/helix Describe your feature request Hey! It'd be cool to have the ability to set a background-image on supported terminals (like kitty). Like on IntelliJ: Here is an example of what it'd be on helix: GitHub · github.com How to make helix themes transparent. You can make any built-in theme transparent in helix with one line, a few extras and you can make all the pop ups, help menus and status line trransparant as well.
configuring pylsp · helix-editor helix · Discussion #6623 Hi, I'm trying to make some modifications to the default pylsp settings as I do not strictly follow PEP in my personal projects. I googled some examples but I cannot get them to work, so I am wonde... GitHub · github.com How to set your python formatter to black with helix. The following snippet lays out how to set the helix editor to auto-format on save with the black formatter.
Database Remote-Copy Tool For SQLite (draft) Neat new SQLite utilities often show up in branches of the SQLite repository. Here's a new one from last month: sqlite3-rsync, providing tools for efficiently creating and updating copies of … Simon Willison’s Weblog · simonwillison.net Simon shared a really cool new utility tool for sqlite ispired by rsync. It checks hashes of each sqlite page and syncs pages. So if nothing in the database has changed it will only require 0.5% the bandwidth as a copy would.
ticklemykeys (@XTicklemykeys) on X working on a new model. seams less visible hotswap more room for build X (formerly Twitter) · x.com porta-john design update, working on moving the seams to line up with an edge to eliminate long noticable seams. These seams are required because I don’t have a printer big enough to print this in one shot. hotswaps are going in. I’m getting really excited for hotswaps as they will make keebs more repairable, and users can self change out the switches if they want. I can also pre-build them ready to go, and drop in switches at the time of order. I did learn today that these are hyper specific to gateron, damn all these switch manufacturers and their special pinouts. Last thing I gotta make more room for wiring the microcontroller and running wires out to the rows and columns, my first prototype build took waay to long to build.
ticklemykeys (@XTicklemykeys) on X New cap of my own design X (formerly Twitter) · x.com This low profile design almost made it to 9. I think blending together the custom brim to make them all one piece really made the final difference here. The custom brim is two layers thick, only touching on the top layer making it very easy to peel off, but gives better adhesion to the bed, and does not loose one like this print did.
ticklemykeys (@XTicklemykeys) on X Full size MX caps, printing flawlessly with minimal cleanup required. X (formerly Twitter) · x.com really excited for how these caps of my own design are working out. Having the extra control is the first time I’ve been able to print more than one at a time without some hacky gcode. I’ve got a set of nine here that I have printed 4 times without a single failure.
MX keycap stem dimensions. I used these to create my new caps and all these dimensions worked great. The one dimension I had issues with was the outer diameter off the cap stem, not shown here. 5.3mm ended up being a good outer diameter for me. I print them at an angle and the bottom of the stem can get a bit of sag, pressing out on the outer wall of the switch and can actually stick the key.
GitHub - urob/zmk-config: Personal ZMK firmware configuration for various boards (34-keys, Glove80, Planck) Personal ZMK firmware configuration for various boards (34-keys, Glove80, Planck) - urob/zmk-config GitHub · github.com This is a very well thought out zmk config featuring many macros, numword, and timeless homerow mods. The build system to build locally looks on point, I really need to give that a try!
add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da 🐳 (dotfiles) My personal development docker container base image - add init hooks and exported bins · WaylonWalker/devtainer@2e4c6da GitHub · github.com Today I learned that you can use init_hooks to access host machine commands from inside a distrobox container. This is super handy for things that you cannot get to from inside the container and need ran outside (docker, podman, flatpak, xdg-open).
Taildrop · Tailscale Docs Send files between your personal devices on a Tailscale network. Tailscale · tailscale.com Tailscale comes with a feature called taildrop that lets you easily share files between machines on your tailnet. If you have tailscale on ios/android it shows up as a share target when you try to share something, and you can pick the machine to share with. What was not obvious to me was how to receive the file on linux. The linux tailscale service does not automatically receive the file, which can be kinda nice that you can put it where you want, but was not obvious to me at first. Use this command to receive files.
GitHub - triliu/Heawood42: Files for the Heawood42 ortholinear split keyboard Files for the Heawood42 ortholinear split keyboard - triliu/Heawood42 GitHub · github.com The Heawood42 is an interesting diodeless keyboard that is not direct wired. According to the repo this is the only keyboard to be diodeless and not direct wired. It does this through the use of a graph.
This is a wild key cap that uses a lever to convert horizontal key presses to vertically press the switch down. The leveret v2 uses two of these on thumbs, one to press outward, and what appears to be one straight forward which feels like it would have to be a wrist motion, but who am I to judge without having it in person.
External Link printables.com Someone has created a knock off of the ltt screwdriver and made it printable, and it works really well. I have one printed with 6 different bitholders. I popped some labels on them in bambu studio as I printed to mark them for metric/inch and so on. I’ve had mine for about a year now, and I use it quite often. I used to be a dedicated screwdriver kind of guy, but as life has changed I’m not working out of a shop with tools at reach as much, I’m grabbing a couple of items and heading to a job in the house or a neighbors house. It’s not 30s to grab just the right dedicated screwdriver anymore. Also having some setup with hex and torx is a game changer. It’s also super handy that you can just pop the bits right into a drill or impact. Highly recommended print. Sorry for not buying the real deal Linux, I got kids to feed here. I owe you a t-shirt order or something.
Installing and managing Python | uv A guide to using uv to install Python, including requesting specific versions, automatic installation, viewing installed versions, and more. docs.astral.sh now can install python for you. is inspired by rust’s cargo, an all in one fast package and installation manager. is so fast and becoming feature complete, it’s really changing the python packaging ecosystem.
Switching configs in Neovim How to maintain multiple Neovim configurations and switch between them Michael Uloth · michaeluloth.com Switching between nvim configs can be really easy to do since they implemented the Environment Variable. Now config will be loaded from Michael lays out some aliases in the full article.
Hotkey to open link under at the text cursor position while typing in edit mode I find myself not wanting to leave the keyboard for navigation and think a keyboard-only shortcut that could open a link at the text cursor position is at would be really handy for this case. Obsidian Forum · forum.obsidian.md Obsidian has a go to definition like feature, the keybind is alt+enter, I would have never guessed this one.
Very inspiring video Jason, these people faced adversity and crushed it. The market is so hard right now, its not easy to get a job, move around, and recover from a layoff. Everyone in this video just showed that you can make it in this industry right now, you just have to be willing to work harder than the rest. The bar is raising, a lot of great people are already putting in hard work to make it. Community is Key, Theo mentioned that a lot of the companies he works with don’t even post openings, they go to their community first and are often filling spots through lower risk community hires.
Thor always comes in hard with fire takes in his shorts. Especially if you are early in our career take this in. If you dont yet have kids, but plan to, double take this in.
Docker no Docker, what!!! So fly.io uses Dockerfiles to deploy your app, but no docker. They use containerd to download your docker images into firecracker microvms to run your app. Firecracker is the same tech that runs aws lambda functions. Fascinating short post on the beans under the hood at fly.io and how they scale your app globally.
Damn Johnny is always such a positive vibe, just getting steamrolled by this braille shit. WTF are these brand sleeping on. Happy to hear that Andy and Brian are supporting him well. Also kinds shows what shoes are good when he goes to buy shoes cause no one will send him any and he goes with Etnies. Johnny keep it going!