Today I Learned

Short TIL posts

1852 posts latest post 2026-05-13
Publishing rhythm
Apr 2026 | 23 posts
I needed to display some hover text in a web app that I am using tailwind and jinja on. It has no js, and no build other than the tailwind. I want this to remain simple. Turns out that you can use a span with a title attribute to get hover text in HTML [1]. <p> I needed to display some hover text in a web app that I am using tailwind and jinja on. It has no js, and no build other than the tailwind. I want this to remain <span style='cursor: help; color:yellow;' title='respective to the python developer I am and the team it is used for'>simple</span>. </p> References: [1]: /html/
- 3d-printing is so freaking cool. I love the idea that someone could get a hyperspecific tool to their needs for super cheap. Whether it works permanently or to try out one that you want to spend thousands of dollars on to have well done from some high end materials this is a great application. 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/
A New Chapter In a recent turn of events, I find myself at a bit of a crossroads with an exciting new job on the horizon! In this post, I introduce myself and discuss my vision for the new blog. Jesse Leite Ā· jesseleite.com [1] Sub to this man. I met Jesse long ago as we both spoke at the same remote vim conf. He is into vim, weird keyboards, and medroid what more could you ask for. Now react and exlixer. I only know https://statamic.com/ through Jesse, they have the sickest branding ever. Now I will need to see what this savvycal [2] is about. https://jesseleite.com/feed 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://jesseleite.com/2025/a-new-chapter [2]: https://x.com/savvycal [3]: /thoughts/
"Pacman is currently in use, please wait." / Pacman & Package Upgrade Issues / Arch Linux Forums bbs.archlinux.org [1] I ran into this issue today, never have I ever before though. Omarchy looking a bit sus on me. This was even after a fresh boot, no pacman process running. just realized I forgot to check yay which it has installed for me. I had to force it in. sudo rm /var/lib/pacman/db.lck 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://bbs.archlinux.org/viewtopic.php?id=67729 [2]: /thoughts/
Today I learned how to use tar over ssh to save hours in file transfers. I keep all of my projects in ~/git [1] (very creative I know, I’ve done it for years and haven’t changed). I just swapped out my main desktop from bazzite to hyprland, and wanted to get all of my projects back. Before killing my bazzite install I moved everything over (16GB of many small files), it took over 14 hours, maybe longer. I had started in the morning and just let it churn. This was not going to happen for re-seeding all of my projects on my new system, I knew there had to be a better way, I looked at rsync, but for seeding I ran into this tar over ssh technique and it only took me 6m51s to pull all of my projects off of my remote server. ssh [email protected] 'tar -C /tank/git -cpf - .' \ | tar -C "$HOME/git" -xpf - References: [1]: /glossary/git/
mmulet [1] has done a fantastic job with term.everything [2]. Highly recommend taking a look. Run any GUI app in the terminalā— References: [1]: https://github.com/mmulet [2]: https://github.com/mmulet/term.everything
- When you fill all of your time with a bunch of other things, it becomes really hard to become a friendly person. Prime talked about trying to learn how to drop the hurry in his life, and how to not always be in a frenzy of going from one thing to the next. It’s something that puts us in a state that its hard to remember to be friendly. Hard to remember that theres always time for coffee [1]. I do my best to always leave time for coffee, whether at home with my wife and kids, as well as at work. I am in a very unique place at work where I have a rare set of skills for the industry I am in. This comes with a lot of people insterested in how to do things like running data pipelines or managing server infrastructure. I always take time for these conversations, I find them interesting, and useful. Sometimes you end up with someone who asks the same questions every 6 months, other times, you have someone flourish from these conversations. I’m not saying to take on work from every other team in the org, but giving 30 minutes to help mentor others can go a long ways. I’m still not the best, I still get wrapped up in my own stuff just like prime calls out. I sometimes get frustrated...
I’ve been leaning on lazy-self-installing-python-scripts [1] more and more, but I did not realize how much tooling that uv [2] gives you to help manage your scripts. uv init --script up uv add --script up typer rich uv remove --script up rich sed -i '1i #!/usr/bin/env -S uv run --script' up chmod +x up ./up The result is a script that looks like this, its executable as what looks like regular command in your shell. #!/usr/bin/env -S uv run --script # /// script # requires-python = ">=3.13" # dependencies = [ # "typer", # ] # /// def main() -> None: print("Hello from up!") if __name__ == "__main__": main() References: [1]: https://treyhunner.com/2024/12/lazy-self-installing-python-scripts-with-uv/ [2]: https://docs.astral.sh/uv/getting-started/installation/
Hollow Knight: Silksong is breaking Steam, Nintendo’s eShop Valve's usually stable platform struggles thanks in part to lack of pre-loading options. Ars Technica Ā· arstechnica.com [1] Only 1 hour into the release of silksong, and it’s taken down all of the eshops, and steamdb dows 100K concurrent players. The Humble store ran out of steam keys for silksong already. You guys better not break this thing before I get off work and My son gets home cause we are playing this tonight!! I just Check steamDB [2], and they have 441K concurrent players right now. An Indie game! This shows when you treat your fans right and make something incredible they stand behind you. 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://arstechnica.com/gaming/2025/09/hollow-knight-silksong-is-breaking-steam/ [2]: https://steamdb.info/app/1030300/charts/ [3]: /thoughts/
Trump says: With this order, I am announcing ā€œAmerica by Design,ā€ a national initiative to improve experiences for Americans, starting by breathing new life into the design of sites where peopl... Chris Coyier Ā· chriscoyier.net [1] Everything is becoming political these days! I hate it. I regularly hear a friend say these podcasts need to set the politics to the side, but you know what its fukin hard when the gov is upending every corner of life and rebranding it with their own new twist. The billionaire class is winning and it looks like there ain’t a thing we can do about it. Here’s another example of someone taking head of an office they have no business being in. An entire set of working class folks let go for this guy to take over. And what does he want to do, make govt services as satisfying as apple. Apple is cutting edge, it is not something that is one bit sustainable. Their launch sites are generally super heavy, hard to scroll, slow, over animated, but damn they are satisfying the first time you scroll through them, after that just let me through. Note This post is a thought [2]. It’s a short note that I make about someone else’s content online #thoughts Referenc...
Home Free online tools for people creating pixel art and other low-spec art. Lospec Ā· lospec.com [1] My son introduced me to lospec.com, It has a great set of color palettes and amazing pixel art inspiration. I particularly liked royal armoury [2] and of course I’m a bit partial to hollow [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://lospec.com/ [2]: https://lospec.com/palette-list/royal-armoury [3]: https://lospec.com/palette-list/hollow [4]: /thoughts/
Justin Searls @searls GPT-5 + Codex is so fast that when I expressed suspicion that a script was returning too few results (via | wc -l), Codex corrected me that I should have passed --count instead. Sure enough, t… justin․searls․co Ā· justin.searls.co [1] This is hilarious, the llm shames him for not utilizing the --count flag, THAT DIDN’T EXIST WHEN HE RAN THE CLI! 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://justin.searls.co/takes/2025-09-03-14h21m54s/ [2]: /thoughts/
Vibe code is legacy code Updates and articles from the Val Town team blog.val.town [1] Brilliantly said. Vibe coding [2] is legacy code. It’s code that we forget exists. Code that no one touches, you replace it. If you touch it you are more likely to break it. The worst possible situation is to have a non-programmer vibe code a large project that they intend to maintain. This would be the equivalent of giving a credit card to a child without first explaining the concept of debt. As you can imagine, the first phase is ecstatic. I can wave this little piece of plastic in stores and take whatever I want! … Read more in the full post [1] 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.val.town/vibe-code [2]: /vibe-coding/ [3]: /thoughts/
Rich Pixels Neat Python library by Darren Burns adding pixel image support to the Rich terminal library, using tricks to render an image using full or half-height colored blocks. Here's the key … Simon Willison’s Weblog Ā· simonwillison.net [1] I saw this post from Simon and I had to give it a go and got some pretty good results. His script is a small cli wrapper around Darren Burns’s Rich Pixels [2]. It works well even through tmux, since there is no terminal magic, just unicode blocks. [3] [4] [5] Some not so good, and needed the terminal font size cranked up. [6] [7] Note This post is a thought [8]. It’s a short note that I make about someone else’s content online #thoughts References: [1]: https://simonwillison.net/2025/Sep/2/rich-pixels/#atom-everything [2]: https://github.com/darrenburns/rich-pixels [3]: https://dropper.waylonwalker.com/api/file/024bf3e0-9c38-4c1e-ad5c-ed0156c9a99b.png [4]: https://dropper.waylonwalker.com/api/file/4bf522eb-4207-4a23-b5d0-626cefc8bdca.png [5]: https://dropper.waylonwalker.com/api/file/d061e85f-98cf-4b3c-871c-e01611022b44.png [6]: https://dropper.waylonwalker.com/api/file/a532f113-185e-44ef-bcf8-30eed7e3f62a.png [7]: https:/...
This one is one that I’ve been using quite often, I did’t have a hotkey for it, I just used the rm shell command. !!rm %<TAB><CR> When you type !! from normal mode it will automatically put you in command mode with .! pre-filled, then you just type rm and <TAB> to auto-complete the current file name, and <CR> to execute the command. :.!rm %<TAB><CR> Making it better # [1] The one quirk that I don’t like about this is that the buffer remains open after deleting, and sometimes I forget to close it and end up re-creating it by mistake when running :wall or :xall. Create a DeleteFile command with vim command. :command! DeleteFile execute "!rm %" | bdelete! Create a DeleteFile command with lua. vim.api.nvim_create_user_command( 'DeleteFile', function() -- Delete the current file from disk vim.cmd('!rm %') -- Close the buffer without saving vim.cmd('bdelete!') end, {} ) References: [1]: #making-it-better
Learn to use email with git! git-send-email.io [1] This site gives us a glimpse into the development workflow using git [2] over email, without remote centralized servers. I found it interesting how patches can be sent with an optional cover letter nearly like a pr would be made. 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://git-send-email.io/ [2]: /glossary/git/ [3]: /thoughts/
Vim :noa is a command that runs what you call without autocommands on. This is typically used when you have some BufWritePre commands for formatting, most auto formatters are implemented this way in vim. It can be super useful if you have something like a yaml/json file that you have crafted perfectly how you want it, maybe it has some source code for a small script or sql embeded and your formatter wants to turn it into one line. You could get a better formatter, but for these one off cases that aren’t a big bother to me I run :noa w. :noa w
vim
Repository Mirrors | Forgejo – Beyond coding. We forge. forgejo.org [1] Forgejo supports repository mirrors, I think this is how I am going to handle migrating all of my github repos into forgejo. over time I’ll probably go through and delete a bunch of unnecessary one from github, ones that might have a user or two I might keep on github. I have such small scale projects with almost no users I am not sure that It really matters for me or not. 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://forgejo.org/docs/latest/user/repo-mirror/ [2]: /thoughts/