I recently found a new way to print formatted strings in Zig. If you’ve spent much time with the language, you’ve probably tried to print something to a console or other output. Here’s an example of what that can look like in Zig 0.16.0: const std = @import ( "std" ); pub fn main ( init : std . process . Init ) ! void { const io = init . io ; const stdout_handle = std . Io . File…
About ten years ago, in early December 2015, I co-created a webring . I’ve been wanting to write a post about Hotline Webring for years now, and the reminder that it’s been a decade gave me the motivation. Origins I don’t remember why Gabe and I had this idea, but we do have a penchant for silly projects and puns . Gabe probably came up with some wordplay about Drake’s…
Workplaces build up a lot of documentation over time; anything from a annual task to this year’s company goals to staff meeting notes. But how often do you find yourself asking: Where was that business plan doc? Was it in the Company/Assets folder? Or was it in Shared/Financials ? Similarly, this information rarely lives in isolation and often needs to be deduplicated and interlinked.…
I don’t like YouTube. There’s lots of great people creating many amazing videos there, but the platform itself doesn’t exist to help me or those creators; it’s there to help Google sell ads. So how can I get to the people and their videos, without using the bad parts of the platform? And can I do it in a way that is just as convenient as clicking a link? The answer turns…
I learn new things all the time and I keep meaning to write them all all up, but then I get in my own way. I’m not going to justify any of this and stop writing the intro now. Easy sudo If you use ZSH, you can map a specific key to output text, and that text can include other commands (or at least line editing actions). One great example of this I saw was adding sudo to command…
I’ve been doing a lot of linux system administration, both at work and as a hobby. This very site is hosted on a server set up by me. I am very proud. The stakes feel high when doing server work. You can easily lock yourself out in a number of different ways, lose data, and destroy all your hard work with the wrong command. I thought it would be nice to have a place to practice so I’ve…
I just bought a new router. It’s one of those fancy ones that lets me playact IT admin in my free time. I’m setting up ad blockers and custom DNS resolutions left and right. I keep toggling options I don’t understand and my internet is 50% less stable. It’s great. Elizabeth (my partner) is less excited. When all of a sudden she can’t read her lemon cookie recipe, it…
I’ve been doing a lot of SQL at work. Some of the queries are quite large (many hundreds of lines) and long-running. If the query has a problem, it can be difficult to break it down to debug. One thing that continues to come in handy is using SELECT by itself. Operations For example, if I want to understand why the string '10–20' isn’t being captured by my [0-9]+-[0-9]+ SIMILAR TO…
There’s a feature I love in the macOS Terminal emulator that very few other emulators offer: marks. The ability to “mark” a line so you can use it later, kind of like a bookmark, is something I use multiple times a day. Scroll back One great thing about marks is I can easily get back to them. As a developer I’m often looking at large logs that contain more information than…
Recently I’ve seen a lot of people expressing their dislike of video tutorials. That they are less polished than a blog post, or that you can’t search or scan through a video to find the one thing you’re after. You’d prefer to learn in written form, and most of the time I’m right there with you. But writing, good writing, is so flipping difficult. Much of my writing…