Back to Home
The Meaning of Community I’ve been thinking a lot recently about the meaning of community. This is in no small part a response from me to the Bad Thing That Happened, but I want to think my thoughts in a way that is durable to Bad Things Happening. Over the past three weeks, I’ve sought safety through isolation, and (acknowledging my privilege in being able to do so), it’s time to come out into the light, and do something.
A look back at feature releases We’ve come a long way since I last wrote about Precis (my open-source AI-enabled RSS Reader).
A couple highlights of new features that we’ve introduced:
v0.3.3: a hybrid LMDB storage handler that stores content in the filesystem to help keep the database size manageable, and a nix flake for developers. v0.3.0: the ability to fully delete feeds, including their feed entries and feed content, from the database.
It started with virtualization, but I regret to announce that I am now running NixOS on bare metal.
Over the past week, I installed NixOS on one of my laptops, a Lenovo ThinkPad T14 Gen 2. It’s relatively modern, so there was never a doubt that it could run NixOS. However, I decided to install it on the laptop (which was previously running PopOS) because I wanted to try a tiling window manager, and in particular Hyprland - running on the Wayland display server.
Over the past week, I’ve been playing around virtualization. Over the course of things, I’ve learned a lot about virtualization, and a little about myself, too.
Let’s start on the setup. I install Proxmox VE on what’s theoretically my gaming PC - a Lenovo Thinkstation P520 with a 6-core, 12-thread Intel Xeon W-2135 workstation CPU and 64gb of DDR4 ECC RAM. Typical of enterprise workstation hardware, it’s a bit more powerful than your average PC and memory-dense, but less so than a rack-mounted generalist server.
This post is about an idea that’s been rattling around in my head lately.
I find that it helps my creative process to write about partially formed ideas. That way, I can flesh them out and see if there’s anything there. So - how about this one?
The Main Thought What if, instead of having LLM-based agents call tools directly, you instead provided them a registry of tools that they could use?
Leetcode doesn’t actually assess skill I’ve been thinking a lot about the state of skills evaluation in the tech industry. Usually, when you apply for a job, you meet with a recruiter, then the hiring manager, then you do a technical screen, and then a panel screen. Sometimes the technical screen comes before the hiring manager screen (which is a bad idea - it’s not a good use of time for the candidate, because mission/vision fit should be the most important thing to look for in the market).
And now for something completely different - a recipe blog without measurements or highly structured instructions. But also, no irrelevant padding to make room for ad space, because this blog doesn’t serve ads (and never will). Just to put my money where my mouth is, I’ll start with the recipe, and then proceed to the yapping about it afterwards.
Chicken with Couscous and Mushrooms Ingredients chicken thighs mushrooms garlic powder kosher salt black pepper onion dried rosemary crimini mushrooms pearled couscous parsley neutral oil water Recommended cookware - a large pan with tall sides, such as a dutch oven or saute pan.
The term “Marginalia” refers to notes, diagrams, and decoration in the margins of the written page. Not necessarily of the same substance as the writing itself, but rather a reflection of the reader’s impression and engagement with the text. Since I’m unlikely to write more substantially and meaningfully than a professional sports writer about a game, this piece has more to do with my impression and context of the games that I attended.
I recently upgraded my phone to the Samsung Galaxy Z Fold 6, and I have some feelings about its design, the design and promise of foldables in general, and some of its quirks and eccentricities.
Upgrade Logic I upgraded to the Z Fold 6 from the Galaxy S21 Ultra, and I considered a few different phones in making that choice.
I like the fun and size of the Z Flip 6, and it’s not as expensive as the Fold, but I didn’t like that it had only 8 GB of RAM.
This past weekend, I had the opportunity to try Streamlit - the previously buzzy, now acquired by Snowflake framework for building dashboards and simple (or not so simple) data applications.
In short, I had a great time, and it’s gotten me thinking about the state of business intelligence (BI) applications, and why many engineers (myself included) find working with and integrating BI applications into the software data stack to be frustrating and unenjoyable.
I’ve had the HHKB Studio for about a month now. I’ve been using it as the main keyboard for my Mac Mini, which I primarily use for coding personal projects, such as this website. Indeed, over the course of the month I used the keyboard to build the first iteration of the backend for venmo-calculator as well as the redesign of the theme for my blog (more details on that coming soon).
It occured to me the other day that now that the application model for modern computing has largely shifted to the web, and therefore browsers, I find that I often don’t know what to call the silly, just-for-fun one-off projects that I build sometimes.
Take, for example, venmo-calculator - Is this an app? It is a program? It’s technically a compiled golang executable for the backend and a static html+js website that’s compiled in the sense that vue turned a vue component into javascript, but that javascript is itself interpreted?
On my recent trip to japan I had the opportunity to visit one of the few places that sells HHKB products in-store.
While I’d previously had experience with the HHKB, it had been quite some time since I was actively engaged with mechanical keyboards as a hobby. For the most part, I had coalesced on the HHKB Pro 2 as my keyboard of choice, the layout worked well for me, and the Topre switches were enjoyable, but I no longer was as discerning when it cames to switches as I used to be.
If you haven’t played Venba, I highly recommend it. It’s a story-forward mechanically simple game, and you can finish the main story in under two hours. I recently did just that, and boy do I have some feeling about the story that it tells about immigration and assimilation and its intersection with food. There are several scenes in the game that directly mirrored my own experience, and I want to share that.
I recently got back from a 12 day, 10 night trip to Japan. The itinerary was as follows:
LAX -> HND Four days in Tokyo, including two tours, a free day, and a partial travel day Three days in Kyoto, including a single tour, and a partial travel day Three days in Osaka, undirected KIX -> HND -> LAX First - a mini review of Exoticca We found a package deal from Exoticca (this is not an affiliate link - nor would I ever do such a thing) (also - a somewhat unfortunate name) for $2600 per person that included flights, hotels, tours, and ground transportation, for 5/31 -> 6/11.
Precis (properly Précis, pronounced “pray-see”) is a extensibility-oriented RSS reader that can use LLMs to summarize and synthesize information from numerous different sources, with an emphasis on timely delivery of information via notifications.
Get it here.
Technical Details Precis is a FastAPI monolith that serves fully static pages styled by Tailwind CSS using DaisyUI components. It uses some query-parameter and redirect chicanery to fake interactivity. We’ll probably add actual interactivity at some point.
I like video games, but I don’t consider myself to be an enthusiastic or avid gamer. Instead, I find that I gravitate towards a few high-comfort games that I play at casual pace for a looooong time. Oddly enough, the shared theme for these high-comfort games seems to be that they are primarily sports simulations. I’m sort of a sports fan, I guess, but I have always had the most fun playing these games by myself, not online.
The purpose of this post is to explain how I like to Do Work and the principles underlying those decisions. This not meant to say that I consider the way I work to be the only correct one, nor that I am unwilling to try other ways of working. However - the impression that I would like readers to come away with is that the way I work is principled, considered, and intentional.
Most of the posts on this blog are my opinion. The same can be said of most posts on most blogs. Sometimes, however, I like to write a blog post that does the other thing for which we use the internet: conveying and sharing information. This is one of those blogs (but not the only one)
Homelab 2.0 Historically, my homelab has been a series of NUCs scattered around my house, connected to nodes in my mesh wifi network.
One thing that’s very important to me is maintaining a healthy media diet. While I’m not averse to recommendation algorithms, I find that they optimize for engagement and on-platform time, as is required to produce unending growth in ad revenue. As a result, I find that such algorithms sacrifice quality for quantity, or outrage impact, or speed. At its extreme, in the case of the conservative control of mainstream media, this disregard for quality manifests as disregard for truth.
I regret to inform you that I’ve been playing around with AI art and I’ve been having a great time doing so.
I think it’s accurate to say that I’m an AI skeptic. However, over the past weekend I came down sick and so had some free time on my hands, and so I tried playing around with image-to-text models hosted locally. I have a pretty old (i5-4460) desktop PC that doubles as an occasional gaming PC with a GTX 1070 in it, and I installed Debian on it (for minimum overhead) and played around.
It’s quite easy to find dystopian sci-fi.
I think that this is because our current state and path leads us exactly towards one. However, it is harder to find the opposite; while it’s hard to imagine any fully utopian science fiction that provide the stakes, structure, or depth necessary to also make an entertaining book, I think that there are places to find science-and-speculative fiction that is written with better days in mind.
I’ll say it - AWS Athena is criminally underrated as a platform for processing complex, non-interactive business data workloads.
I think that Athena has a bit of a reputation for being more of a json-wrangling, log-querying tool than one for business-centric workloads. However, I suspect that this is largely because AWS loves to cross-promote its products, so Cloudwatch features prominently in the documentation. It is, in fact, equally proficient for business data if you know what you’re getting yourself into.
Some Stats According to my Storygraph, in 2023 I read 28 books of a total of 8965 pages. 12 books were “adventurous” in mood, and 10 were “reflective” or “emotional”. 80% was nonfiction, and the most popular genres were LGBTQIA+ (13 books), Science Fiction (11 books), and Contemporary (8 books).
A caveat - I only started tracking my reading in mid-August, while I was traveling in Philadelphia, so this recap is not the focus of a complete year.
By any objective measure, I should be super excited about advances in AI and its recent entrance into ubiquity. However, every time I hear about the latest GPT iteration, the latest startup that uses generative LLMs to revolutionize XYZ industry, I just feel bad.
Here’s a bulleted list (in no particular order) of all the reasons why I think AI makes me feel bad:
In a vague science-fictional way I’ve always expected “Artificial Intelligence” to be more neuro-mimetic.
What is this NUC? At the time when I am writing this, there exists on eBay a surfeit of extremely inexpensive NUCs - labelled “NUC5i5MYBE”. I have personally acquired 2 of them, and am using them in my homelab to host, among other things, Gitea, Drone CI, and Uptime Kuma. I could go more into that, but the purpose of this post is to give some details about what exactly these machines are, where they may have come from, and some useful things to know about them.
A Note from the Future I do not recommend that you use this software, because it is not maintained, loved, or thought about with any regularity.
I wrote it at a time when I was deeply disenchanted with ETL tooling after an experience with Pentaho that could only described as brutal. We were told that using Pentaho would expose data transformations transparently without code. What ended up happening? Nothing was really transparent because variable injection is frustratingly opaque, and all the good stuff ended up in code anyway, because it was more performant.
A note from the future In the spirit of full disclosure, about a week after I wrote this review, I stopped using the HHKB and switched (back) to the WASD Code TKL with Cherry MX Clear switches. Acclimating to the layout was hard and if we’re being honest, not having keycap legends really put a damper on my productivity. After that, my next few keyboards were 60% or 70% size with a variety of switches - MX Clears, Matias Tactile, Gateron Brown in that order.
A Note From the Future The first thing I bought with the money I earned from my first Adult Job (tm) was a sage green Klean Kanteen vacuum insulated coffee cup. I bought it at Powell’s on my lunch break about three days into the job, because the product manager who sat across from me had one of her own (in… purple, I think?).
Back in the day, Starbucks would give you 10 cents off your order if you brought your own cup.
A note from the future When I wrote this piece back in 2015, I was living for the first time in a place that had a really nice kitchen and bike commuting to work every day. Really living the Portland dream. I miss it sometimes.
All About Greek Yogurt One of things I do is that every now and then, I become obsessed with perfecting a recipe and make it multiple times for the purpose of achieving its platonic ideal.
A note from the future Wikipedia says that the term “doomscrolling” originated in “the early 2020s” - which is accurate, but also an outrageous way to describe our current decade. I wonder if these numbers perhaps need a revision since I wrote this in 2015.
Notably - 2015 predates TikTok (but not musical.ly), which probably has an outsize effect on how these numbers look now.
How Many Miles Will You Scroll?
A Note from the Future For the span of about two months in 2015, I owned a proper Cycletruck - the Civia Halsted. It was a lovely bike, if susceptible to shimmy in the frontend at speed. I bought it off Craigslist, and looking through my emails from that time, it feels like participating in a golden age for the site. We would just give our addresses out willy nilly, and multiple people I corresponded with would send me updates on their own biking journeys.
A Note from the Future This was far-and-away the most-read piece from the old site. It SEOs extremely well and my biggest regret about it is that comments were enabled. After the first twenty, I just stopped approving them… For this reason, the new site will not have comments.
How Many Murderers Will You Walk Past? Yesterday, as I was browsing Facebook, I saw a picture stating that “The average person walks past a murder 36 times in their life.
A Note from the Future I took a loooooong break from cycling, but have recently gotten back into it. I ended up fixing up this bike to make my return to cycling. The only change is the rear wheel, which was stolen while I was living in Pasadena, and with it the Vittoria Randonneur Hyper 700-35c that I was running. I’ve since switched it out with the same tire in 700-32c that I was running on my Specialized rainy day commuter bike.