February 2026
February brought six more weeks of winter and a significant increase of bot traffic to this site, almost a 500% increase. I'm getting "visitors" from all over the world and all kinds of "browsers". Currently the Netherlands is in first place with a significant lead! I'm seeing some browsers I didn't know existed, some operating systems I haven't seen for years and some companies I wish I didn't know existed, like dataprovider[dot]com.
Work continues to be busy and demand a lot of energy. This has the unfortunate side effect of leaving less energy for other things. On the bright side, the days are starting to get longer and we've had some incredibly warm days. Of course, the days went right back to being cold. That's the way February rolls.
I've spent some time this month tweaking this site's code and trying to decide what to do about all the robots. Do I let AI train on my info or do I stop them? Does it really matter? I haven't quite decided what to do about it.
One of the things about the internet I appreciate is the vast amount of knowledge shared and how accessible it is. I can easily find an answer to my questions. It's one of the reasons why I'm hesitant to block bot traffic; bots help surface content.
I'm not in a rush to solve the problem. Right now the bots aren't consuming that many resources and have brought some humorous "what-the?" moments. From my initial reading, it doesn't sound like a battle I'll be able to win.
I've picked up some new development tricks and started learning the Gosu language for my work. Gosu is used by Guidewire and is a JVM-based language. I'm not super excited to be going back to Java after working in .NET for nearly 20 years but Gosu does seem to help the transition. Some of my favorite tricks/reads this month have been:
- How turbopuffer built a distributed queue and how they solved latency issues with a group commit. A commenter on the article shared some example source code that demonstrates how group commits can work. I found this article and source code interesting as I'm working on a system that makes many writes to a browser's IndexedDB that are then replicated to Mongo.
- A demonstration of the "parse, don't validate" technique. Even though the demonstration was done in C, the article is applicable to any language. Parsing the input at the highest level and then ensuring the lower level code can only accept parsed input makes a lot of sense to me. I've been using opaque types in my codebases but always as a way to help developers know what kind of string to pass into a method. I like the idea of extending that technique to ensure parsed values. It was also neat to see how opaque types are done in C.
- How to create sprites on the web. This was another great article by Josh Comeau! Josh's articles are always fun reads and really show what the modern web can do. I'm not sure when I'll create sprite based animations but when the time comes, I'll be ready. The article and commentary reminded me of the things we did on the early web for performance. To only make one http request, we combined all site icons onto a single sprite sheet and used CSS background positioning for showing the desired icon. I found an old one of mine on the Internet Archive. I've been using Font Awesome or single icon graphics for such a long time that the technique had faded away. It was great to be reminded of an old tool in my toolkit.
I didn't discover any new earworms in February. My music listening has been restricted to my tried and true songs. There was also no new-to-me truck purchases. 😉 BUT, I have been enjoying my new truck and learning how 4-wheel high, low, and a locking differential works.
I've been making a list of some of the modifications I want to make to my truck and started some of them; my youngest helped me install a pair of bed lights. It's been a little too cold to get any significant garage time. I wish with the cold we would get dumped on with some snow so I can get a sense of how my truck handles in winter.
Basketball season has officially come to a close and we're getting ready for baseball. We had another tournament and my son's team took third place. It was a fun weekend and a great way to end the season. I enjoy basketball. Basketball is a lot of fun, but baseball... baseball is where it is at. Spring Training is underway for both the MLB and our house. March is just about to start and brings warmer weather, hopefully some time outside in the garage working on a truck and time in the yard playing catch.
- Ben