<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Davetown</title>
    <link>https://www.dvshkn.com/</link>
    <description>Recent content on Davetown</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Wed, 08 Apr 2026 17:00:00 -0700</lastBuildDate>
    <atom:link href="https://www.dvshkn.com/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>New Site Theme for 2026</title>
      <link>https://www.dvshkn.com/blog/2026-04-08-new-theme-for-2026/</link>
      <pubDate>Wed, 08 Apr 2026 17:00:00 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2026-04-08-new-theme-for-2026/</guid>
      <description>&lt;p&gt;Over the last couple weeks I&amp;rsquo;ve had the urge to fiddle with some CSS, and I&amp;rsquo;ve&#xA;managed to channel that into a somewhat productive direction. Today I&amp;rsquo;m rolling&#xA;out a new site theme that I&amp;rsquo;ve dubbed Coho Technical. Many of the colors&#xA;are borrowed from or inspired by the timeless&#xA;&#xA;&#xA;&lt;a href=&#34;https://ethanschoonover.com/solarized/&#34; target=&#34;_blank&#34;&gt;Solarized&lt;/a&gt; color scheme.&lt;/p&gt;&#xA;&lt;p&gt;Just to be curmudgeonly with this theme I aimed for border radius zero. I wanted&#xA;clear lines and sharp corners, but I also wanted to include some softer&#xA;contrasts. Hopefully people find it legible. For now it&amp;rsquo;s locked to dark mode,&#xA;but I&amp;rsquo;m not against adding a light mode in the future.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Limiting Access for Coding Agents the Unix Way</title>
      <link>https://www.dvshkn.com/blog/2026-02-09-limiting-access-for-coding-agents-the-unix-way/</link>
      <pubDate>Mon, 09 Feb 2026 12:00:00 -0800</pubDate>
      <guid>https://www.dvshkn.com/blog/2026-02-09-limiting-access-for-coding-agents-the-unix-way/</guid>
      <description>&lt;p&gt;My most immediate fear with coding agents, like Claude Code or OpenCode, has been the potential for accidentally running damaging shell commands, and then beyond mere accidents there&amp;rsquo;s a whole other world of nefarious possibilities like the &#xA;&#xA;&lt;a href=&#34;https://simonwillison.net/2025/Jun/16/the-lethal-trifecta/&#34; target=&#34;_blank&#34;&gt;potential for data exfiltration&lt;/a&gt;. It sure would be nice to impose some restrictions around the agent!&lt;/p&gt;&#xA;&lt;p&gt;Naturally, the first solution I&amp;rsquo;ve seen people gravitate towards is throwing the agent into a container. I suspect that this is one of those things that everyone suggests and few people do. Wouldn&amp;rsquo;t it be nice if there was a lighter weight solution?&lt;/p&gt;</description>
    </item>
    <item>
      <title>On AI and the Industrialization of Software</title>
      <link>https://www.dvshkn.com/blog/2026-01-09-on-ai-and-the-industrialization-of-software/</link>
      <pubDate>Fri, 09 Jan 2026 13:00:00 -0800</pubDate>
      <guid>https://www.dvshkn.com/blog/2026-01-09-on-ai-and-the-industrialization-of-software/</guid>
      <description>&lt;p&gt;There is a well worn analogy in software that writing code is like wood working. We&amp;rsquo;ve all been crafting these chairs by hand for decades. This analogy predates generative AI, and it&amp;rsquo;s been a cliche that software developers retire and inevitably pick up wood working as a hobby, but I digress.&lt;/p&gt;&#xA;&lt;p&gt;With the advent of AI coding agents there is now lots of chatter about how it&amp;rsquo;s industrializing software development. Far faster and cheaper than an artisinal chair, one can now go out and buy one of the millions of IKEA Poäng chairs that whiz out of the factory every year! The analogy is comfortable and feels familiar, but the problem is that it is wrong&amp;hellip; sort of. It&amp;rsquo;s right, but it&amp;rsquo;s also wrong.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tracking Tasks with Planfile</title>
      <link>https://www.dvshkn.com/blog/2025-09-24-tracking-tasks-with-planfile/</link>
      <pubDate>Wed, 24 Sep 2025 20:00:00 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2025-09-24-tracking-tasks-with-planfile/</guid>
      <description>&lt;p&gt;Last weekend I pushed up code for a TOP SECRET todo program I&amp;rsquo;ve been using for a couple years called Planfile:&lt;/p&gt;&#xA;&lt;p&gt;&#xA;&#xA;&lt;a href=&#34;https://sr.ht/~dvshkn/planfile&#34; target=&#34;_blank&#34;&gt;https://sr.ht/~dvshkn/planfile&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;It&amp;rsquo;s a simple TUI program written in Rust for recording each day&amp;rsquo;s tasks that need doing into plain-text &lt;code&gt;.plan&lt;/code&gt; files. And okay okay, it wasn&amp;rsquo;t exactly top secret, but being a Rust amateur I thought the code was too sloppy to put out there publicly. That kind of fear tends to be a paper tiger, though, especially when said program proves itself useful in real life. So here it is!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Side Project Unwrapped: Anvilope!</title>
      <link>https://www.dvshkn.com/blog/2025-05-30-side-project-unwrapped-anvilope/</link>
      <pubDate>Fri, 30 May 2025 07:00:00 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2025-05-30-side-project-unwrapped-anvilope/</guid>
      <description>&lt;p&gt;I&amp;rsquo;m certainly past due for blogging about this side project I&amp;rsquo;ve been working on. I keep vague-posting about it on Mastodon, but people probably have no clue wtf I&amp;rsquo;m talking about. So let&amp;rsquo;s remedy that!&lt;/p&gt;&#xA;&lt;h2 id=&#34;enter-anvilope&#34;&gt;Enter Anvilope&lt;/h2&gt;&#xA;&lt;p&gt;Anvilope is a simple email daemon. It sits around listening on an IMAP connection and categorizes incoming messages using a self-hosted LLM. Using a LLM allows for categories to be defined using natural languge, and it will hopefully be complementary to, and not a replacement for, existing tools like traditional spam filters and regex rules.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Hare Cheat Sheet</title>
      <link>https://www.dvshkn.com/blog/2025-03-28-hare-cheat-sheet/</link>
      <pubDate>Fri, 28 Mar 2025 18:00:00 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2025-03-28-hare-cheat-sheet/</guid>
      <description>&lt;p&gt;So I wrote a Hare cheat sheet. Why? For starters, I&amp;rsquo;ve long known that I&amp;rsquo;m the kind of person that learns well through examples. And why now? Well, it&amp;rsquo;s been over a year since I last wrote any Hare, and my grasp of the syntax has dulled after such a hiatus. It seemed like a good deal to create a reference for myself that would also give me a refresher in the process.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Running KDE Plasma on OpenBSD</title>
      <link>https://www.dvshkn.com/blog/2024-11-29-running-kde-plasma-on-openbsd/</link>
      <pubDate>Fri, 29 Nov 2024 17:00:00 -0800</pubDate>
      <guid>https://www.dvshkn.com/blog/2024-11-29-running-kde-plasma-on-openbsd/</guid>
      <description>&lt;p&gt;I had never run a BSD before until last weekend. Curiosity and &#xA;&#xA;&lt;a href=&#34;https://lemmy.sdf.org/c/unix_surrealism&#34; target=&#34;_blank&#34;&gt;unix_surrealism&lt;/a&gt; propaganda finally took hold, catapulting me through the installation of OpenBSD 7.6 onto a Thinkpad X1 Carbon.&lt;/p&gt;&#xA;&lt;p&gt;The core OpenBSD experience has been smooth, and the OS is well thought out. The Plasma experience on the other hand has some sharp edges that must be dealt with before the desktop environment is usable. It&amp;rsquo;s worth noting that Plasma and KDE are recent arrivals in the ports tree, and I would expect this process to get more streamlined in the future.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Porting Llama2.ha: Machine Learning Notes</title>
      <link>https://www.dvshkn.com/blog/2024-06-23-porting-llama2-ha-machine-learning-notes/</link>
      <pubDate>Sun, 23 Jun 2024 09:00:00 -0800</pubDate>
      <guid>https://www.dvshkn.com/blog/2024-06-23-porting-llama2-ha-machine-learning-notes/</guid>
      <description>&lt;p&gt;Earlier this year I finished &#xA;&#xA;&lt;a href=&#34;https://sr.ht/~dvshkn/llama2.ha&#34; target=&#34;_blank&#34;&gt;llama2.ha&lt;/a&gt;, which is a port of Andrej Karpathy&amp;rsquo;s &#xA;&#xA;&lt;a href=&#34;https://github.com/karpathy/llama2.c&#34; target=&#34;_blank&#34;&gt;llama2.c&lt;/a&gt; project to the &#xA;&#xA;&lt;a href=&#34;https://harelang.org&#34; target=&#34;_blank&#34;&gt;Hare programming language&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In casual terms both of these programs can &amp;ldquo;run&amp;rdquo; a large language model (LLM) to generate text that continues a user&amp;rsquo;s input prompt:&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://www.dvshkn.com/media/porting-llama2-ha-machine-learning-notes/screenshot.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;More formally, these programs are both small inference engines capable of doing text generation when provided with a set of LLM weights, and as the names suggest they are built for models based on Meta&amp;rsquo;s Llama 2 family.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Migrating From Authy to Aegis</title>
      <link>https://www.dvshkn.com/blog/2024-02-16-migrating-from-authy-to-aegis/</link>
      <pubDate>Fri, 16 Feb 2024 20:00:00 -0800</pubDate>
      <guid>https://www.dvshkn.com/blog/2024-02-16-migrating-from-authy-to-aegis/</guid>
      <description>&lt;p&gt;The smell of enshittification is in the air. Twilio announced that the desktop version of Authy is getting the axe on March 19, and this comes after a significant round of layoffs that Twilio performed at the end of 2023. For this reason it seemed like a ripe time to get my authenticator data out of Authy and into something more stable like Aegis. Based on a pick up in activity on GitHub it seems like I&amp;rsquo;m not alone in my thinking.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Managing Git Personas</title>
      <link>https://www.dvshkn.com/blog/2021-01-24-managing-git-personas/</link>
      <pubDate>Sun, 24 Jan 2021 12:52:40 -0800</pubDate>
      <guid>https://www.dvshkn.com/blog/2021-01-24-managing-git-personas/</guid>
      <description>&lt;p&gt;Last year I started using a split Git configuration that specifies different &amp;ldquo;personas&amp;rdquo; for different sets of repositories. What I&amp;rsquo;m calling a persona here comprises the author name and email information that gets put into Git commits, and sometimes it also involves different auth credentials. This system works well, but I always forget how to set it up. So this post is basically documentation for myself.&lt;/p&gt;&#xA;&lt;p&gt;Our example config here will be for a person, Alice, that wants to add a special config for accessing some personal, self-hosted repositories from her work laptop. We&amp;rsquo;ll configure Git to automatically use work commit info for all repositories within a &lt;code&gt;~/gitwork/&lt;/code&gt; directory and personal commit info for all repositories within a &lt;code&gt;~/githome/&lt;/code&gt; directory. Alice also uses a separate SSH key for her home repositories, so we&amp;rsquo;ll set that up to automatically get used for &lt;code&gt;~/githome/&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>New Year, New Look</title>
      <link>https://www.dvshkn.com/blog/2021-01-14-new-year-new-look/</link>
      <pubDate>Thu, 14 Jan 2021 18:35:05 -0800</pubDate>
      <guid>https://www.dvshkn.com/blog/2021-01-14-new-year-new-look/</guid>
      <description>&lt;p&gt;2021 is here, and it&amp;rsquo;s time to shake things up with a design refresh. While last year&amp;rsquo;s design was simpler than my now ancient Octopress site there was still a lot of excess. Visually I&amp;rsquo;m happy with how this refresh turned out, and under the hood there&amp;rsquo;s less clutter. No more special fonts. Way fewer divs. More semantic HTML. There&amp;rsquo;s just fewer lines of code. Good!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Notes on &#34;The Long-Tail Problem in AI, and How Autonomous Markets Can Solve It&#34;</title>
      <link>https://www.dvshkn.com/blog/2020-07-27-notes-on-the-long-tail-problem-in-ai/</link>
      <pubDate>Mon, 27 Jul 2020 21:00:00 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2020-07-27-notes-on-the-long-tail-problem-in-ai/</guid>
      <description>&lt;p&gt;For my own mental health I try to limit my VC Twitter exposure, but &#xA;&#xA;&lt;a href=&#34;https://a16z.com/2020/07/24/long-tail-problem-in-a-i/&#34; target=&#34;_blank&#34;&gt;this article&lt;/a&gt; on decentralizing AI by Ali Yaha at Andreessen Horowitz has been making some wider rounds.&lt;/p&gt;&#xA;&lt;p&gt;Broadly speaking these are subjects I care about as I watch both the moral hypotheticals in AI grow more real and the decentralization tech improve with each passing year. I&amp;rsquo;ve accepted that this technology is not going away because it&amp;rsquo;s just too darn useful to nation states and all their various apparatuses. To distill my anxiety down into one sentence, we&amp;rsquo;ve passed the point where the genie is out of Pandora&amp;rsquo;s box. It seems like our only course of action is to direct the energy into exploring peaceful and safe uses of the technology that benefits everyone.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Experiment: CIFAR-10 Training Order</title>
      <link>https://www.dvshkn.com/blog/2020-06-06-experiment-cifar10-training-order/</link>
      <pubDate>Sat, 06 Jun 2020 21:00:00 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2020-06-06-experiment-cifar10-training-order/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been thinking about machine learning training order on and off for a little while now. Sometimes these thoughts bubble up while playing Switch. Sometimes it&amp;rsquo;s while pulling into the parking lot of some big-box store, but I digress.&lt;/p&gt;&#xA;&lt;p&gt;Let&amp;rsquo;s consider some sort of supervised learning system (like the Not Hotdog image classifier from &lt;em&gt;Silicon Valley&lt;/em&gt;). As best as I remember I was always taught to feed in training data in random order. This strategy sounds reasonable enough, but is random order actually the best strategy or is it simply an easy strategy? Or maybe training order doesn&amp;rsquo;t matter much at all?&lt;/p&gt;</description>
    </item>
    <item>
      <title>Folding@Home Setup Notes</title>
      <link>https://www.dvshkn.com/blog/2020-04-25-folding-at-home-setup-notes/</link>
      <pubDate>Sat, 25 Apr 2020 14:32:57 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2020-04-25-folding-at-home-setup-notes/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ll start by saying that Folding@Home is an old project, but it&amp;rsquo;s seen a resurgence of activity due to COVID. The project anounced at the end of March that the combined computing power had broken the exaflop barrier! For reference, F@H is a distributed computing project where participants donate compute cycles to run protein folding simulations. It sure would be nice to know more about corona&amp;rsquo;s nasty protein spikes, wouldn&amp;rsquo;t it?&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Return</title>
      <link>https://www.dvshkn.com/blog/2020-04-12-the-return/</link>
      <pubDate>Sun, 12 Apr 2020 20:54:04 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2020-04-12-the-return/</guid>
      <description>&lt;p&gt;Well, well, well! After literally SEVEN years I finally flipped the switch and pushed a new version of this site. It&amp;rsquo;s pretty impossible to look all the way back to 2013 in a single post, so I&amp;rsquo;ll break some parts out into a small series of posts. There should be plenty of time to write since we&amp;rsquo;re all locked down due to The Covid.&lt;/p&gt;&#xA;&lt;p&gt;But enough of that. What&amp;rsquo;s changed on this site? The big one is that it&amp;rsquo;s now using Hugo instead of Octopress. I ditched the GitHub Pages hosting and am now running it directly on a DO droplet with NGINX. The theme is built from scratch but isn&amp;rsquo;t very reusable yet. The source for this site is on srht, though, if anybody wants to peek.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Windows 8 Impressions</title>
      <link>https://www.dvshkn.com/blog/2013-03-03-windows-8-impressions/</link>
      <pubDate>Sun, 03 Mar 2013 12:39:00 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2013-03-03-windows-8-impressions/</guid>
      <description>&lt;p&gt;Considering that I now spend the majority of my computing time on a laptop, I&#xA;figured that it would be fun to put Redmond&amp;rsquo;s latest and greatest OS on my&#xA;primarily gaming-oriented desktop. After using this machine on and off for a few months, some opinions have finally gelled as far as what works and what doesn&amp;rsquo;t.&lt;/p&gt;&#xA;&lt;p&gt;Going into this process, I was pretty enthusiastic about Windows 8 and was&#xA;actively trying to keep an open mind despite a lot of online vitriol flowing&#xA;about Metro UI (or whatever name Microsoft is calling it now). I&amp;rsquo;m actually a&#xA;pretty big fan of the Metro aesthetic due to the heavy use of clean lines and&#xA;its emphasis on simple typography. Those who know me personally might say that I&#xA;have an obsession with skinny fonts.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Third Post</title>
      <link>https://www.dvshkn.com/blog/2013-02-13-third-post/</link>
      <pubDate>Wed, 13 Feb 2013 20:05:00 -0700</pubDate>
      <guid>https://www.dvshkn.com/blog/2013-02-13-third-post/</guid>
      <description>&lt;p&gt;My name is David Knight, and I&amp;rsquo;m a software engineer at the Jet Propulsion&#xA;Laboratory in Pasadena, California.&lt;/p&gt;&#xA;&lt;p&gt;This is actually the third version of the first post that I&amp;rsquo;ve written, where&#xA;each revision is a little less long-winded than the previous one. I&amp;rsquo;ll try to&#xA;keep this one short and sweet. This blog is a place for me to write down my&#xA;thoughts on programming and technology in addition to writing about some more&#xA;general interests like food, space exploration, environmentalism, philosophy,&#xA;college football, etc.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
