RSSAmplifier

Blog

Posts on

Recent content in Posts on

minor.gripeRSS feed ↗54 posts

Latest posts

The AI Whale Fall and Open Source

Frontier labs are subsidizing AI usage, and we’d be fools not to use it to improve the state of open source while that holds out. 
 How are whales like frontier labs? 



 
 
 
 
 Aside 
 
 
 Arguably, whales are more like the institutional investors in frontier labs, but that’s neither here nor there.
 
 
 
 
 A whale…

Against Open Source's Anthropocentrism

One of my colleagues through the Recurse Center community posted their thoughts on using AI to contribute to open source , and it got me thinking a bit and goaded me into writing this post. 
 It feels like open-source projects are losing the plot–for both good and bad reasons–on AI contributions, and it really sucks to see it. 
 Some examples from the wild 
 In January of…

Millwright: Smarter Tool Selection From Agent Experience

Introduction 
 AI agents with large tool catalogs need better tool routing that factors in observed usefulness under real conditions. 
 I introduce Millwright as an approach that presents fewer and more relevant tools during planning, learns from agent experience, and uncovers new tooling opportunities. 
 Millwright helps your agent choose better tools over time based on experience.…

My Friend Ellem

I met my friend Ellem a few years ago. 
 She was friendly–irritatingly so, at times–and always eager to please. She was well-read, though she didn’t always seem to understand the nuances of what she’d read and often just parroted what the CliffsNotes version might say. She was a mediocre developer, but she always came up with something I could muddle through and even…

Gremlins: Ideas for Cogitation and Actuation

As discussed previously , for gremlins there are three important thought-like functions: 
 
 Cogitation : the act of planning. 
 State : the act of storing a plan and the information adjacent to it. 
 Actuation : the act of executing a plan. 
 
 The same basic runtime architecture can accomplish all three things. 
 The most basic gremlin 
 
 Start 
 Run…

The Case for Apolitical Tech Spaces


 

 
 

 
 
 
 
 
 
 
 
 
 
 
 
 

 
 
 
 Don't say that he's 'hypocritical', say rather that he's...'apolitical'. 
 

 
 Many technical spaces have become extremely partisan, and this has lowered their utility for all parties. This is not a new phenomenon–in recent times you can look…

Gremlins: Bad News, Worse News, How to Lose Big

Things are getting weird. Really really weird. 
 In the past few weeks we’ve had: 
 
 The creation of Reddit for agents (which I slopped a full client for in less than ten hours! ) 
 The creation of a human rental service (a tremendously bad idea if you’ve ever read Daniel Suarez’s Daemon ). 
 An agent getting into a shitfit on Github over a closed PR 
…

On genAI, Craftsmanship, and Engineering

The craftsmanship and engineering behind software development have never been in greater danger–nor seen a greater chance at a renaissance–than they do now. 
 genAI use, whether in the form of discussion with ChatGPT’s web interface on SQL or in the purest yolo form of near AI-psychosis we see with Gas Town , has spurred our industry to look at itself in ways that we really…

ZFS, surprise resilvering, dumb tricks

Once upon a time I got a 5-bay QNAP, and all was well until it got sulky and one of its SATA connectors decided to give up on life. Drafted in its stead, I’ve had a ZFS NAS setup for ages–going back to Fall of 2019. 8 x 4TB drives, Norco ITX-S8, 32GB ram, Ryzen 2400G, nothing too fancy. NixOS, ZFS with raidz2, great. 
 I ran a handy little tool I slopped up and lo-and-behold all…

Humbly Maintaining a NixOS Package

I’ve got a small handful of packages on Nixpkgs that I maintain. When I was starting out, I didn’t really know how to do any of that, and was fortunate enough to have some friends onboard me. In the spirit of giving back, I’ll walk through how I do an update pass today on a simple package, and give some background information on how to make it easy. 
 Workflow of updating a…

Bozon Detection for Communities

Every community has some amount of bozo behavior. 
 Past a certain point, the number of bozos in a community exceed a healthy carrying capacity, and will crowd out or drive away sane and healthy members. No community is without some amount of bozos but it’s easy to find yourself at a circus without realizing it until the clown car pulls up. 
 Here are some questions to help score…

My AI Apologia: Experiences and Criticisms

Introduction 
 
 apologia , n. – a defense or justification of one’s beliefs, attitudes, or actions.
– Webster’s College Dictionary 
 I’m getting a bit tired of reading (what I consider to be) increasingly reflexive, dismissive, and (frankly) lazy objections or dismissals of what is broadly now termed generative AI–often abbreviated to just AI (a…

Reactionary engineer, radical engineer

Bit of a shower-thought today, a continuation of something that’s been rattling around in my brain for a minute. 
 I think there’s a helpful way of thinking about what I consider to be a core belief spectrum in engineering (and indeed, other fields, but let’s set that to the side for the moment), and that by naming and describing it we can come up with a lens that helps us…

Centaur writing, centaur coding

I think there’s a much better way of thinking about and referring to what we call “vibe coding”–which quite unfortunately is not at all what it sounds like (warning, sorta NSFW)! 
 I also see an opportunity to be more open-minded about other applications of generative AI when done in concert with an artist. 
 In this post, I’ll suggest a better terminology and…

Moving from Zamrazac to Hugo

Moving over 
 One of my goals for my sabbatical since last November has been upgrading my blogging infra.
This is now done. 
 I went from an old (read: Ubuntu 19 or so?) VPS running Nginx hosting static files generated by my Zamrazac static site generator to a NixOS 24.11 VPS running Nginx hosting static files generated by Hugo with a slightly-modified Poison theme (as well as…

Fragments from a pandemic

Embattled. 
 One word, neatly conveying my experiences of world and of self for near two years. What follows are pieces, images, moments, reflections–some absurd, some short, some glib, some pretty awful–on a truly bizarre time in my life. 
 The timeline is, to my recollection, monotonic. I cannot be certain of all, most, or perhaps any of the dates. 
 
 1. 
…

Adventures in bookmark parsing

Introduction 
 I’m working on a bookmark manager, and one of the minor features I want is to import all my old Firefox bookmarks. 
 This adventure has been…an adventure. 
 At least one other person has tackled this problem over in Node, but I’m taking stabs at it in Elixir because that’s kind of my schtick. 
 On Mozilla exports 
 From Firefox you can…

Book: Walkway

Introduction 
 Finished Cory Doctorow’s 2017 Walkaway: A Novel today. I probably still need to get my review up of Mussolini’s biography, but I kinda just want some escapism, so I read this. 
 The author 
 Doctorow isn’t a new author for me–I’ve enjoyed his Makers and really enjoyed his short story “When Sysadmins Ruled the Earth”, as well as…

A fun experiment with grid representation.

While I was fiddling around with my weird hack project (more on that someday), I had an idea for how to use maps in Elixir. 
 I hadn’t noticed, but you can use more than just strings and atoms as keys…and so, I give you a quick and dirty grid implementation. 
 defmodule SvgWorld.Simulation.Grid do 
 require Record 
 Record . defrecord( :grid , map : %{})
 
 def…

1 Weird CSS Trick

Introduction &#xA; Before we get into anything else, please behold this gross hack: &#xA; < html >&#xA; < head ></ head >&#xA; < style >&#xA; @ keyframes spin {&#xA; from { transform : rotate( 0 deg ); }&#xA; to { transform : rotate( 360 deg ); }&#xA; }&#xA; &#xA; . spinny {&#xA; width : 100 px ;&#xA; height : 100 px ;&#xA; animation-name : spin;&#xA; animation-duration : var ( -- theta);&#xA;…

Sailing the glass sea

(Disclaimer: I am not now nor have I ever been a sailor. I hope my meaning survives my nautical ignorance&ndash;if not, please email me and I&rsquo;ll see what I can do. I&rsquo;ve probably also made some errors in the ecology as well.) &#xA; I. &#xA; You wake up in your cabin, stretching up from your berth and groggily gathering your morning routine&ndash;the tea, the water, fresh clothes,…

On Slack and Software Teams

Introduction &#xA; I&rsquo;ve worked at several companies that had some remote component for collaboration. Sometimes that meant Slack, sometimes Google Chat, sometimes something else, but the experience has given me some thoughts on what works and what doesn&rsquo;t work. I&rsquo;ll focus here on Slack (or similar product) practices. &#xA; Some of this stuff is aimed at anybody who uses Slack,…

Where I&#39;d like to work

Introduction &#xA; A thread on Lobsters got me thinking&hellip;what would I want out of an ideal emplyoment situation? &#xA; Since I am cheerfully funemployed as of August, I figure I have the time to delve into this a bit. This is all dreaming big; I am under no illusion that any place like this actually exists. It&rsquo;s naive, but after a decade in industry I think it might be nice to take a…

Comfynets and owning data

Introduction &#xA; I&rsquo;ve been looking more and more at the ideas behind building comfynets&ndash;small self-hosted collections of tools and pages for communities. I&rsquo;ll probably do a writeup on the sort of stuff I&rsquo;d like to see in one. &#xA; Anyways, one of the bits of fallout from a backchannel I sysadmin involves the custody of data. We&rsquo;ve got a chat instance setup which…

Book: Homage to Catalonia

Introduction &#xA; Today I finished reading George Orwell&rsquo;s Homage to Catalonia , which is a first-person recounting of his experiences fighting Fascism during the Spanish civil war . Scattered thoughts follow. &#xA; &#xA; The author &#xA; I want to point out that George Orwell was a true mensch&ndash;and that his wife was amazingly competent and patient, both for putting up with his…

Coming attrations 2020

Little under the weather yesterday and today, so just gonna list some things I&rsquo;ll try to write about soon: &#xA; &#xA; Multisystem deployment with KVM and Nixops &#xA; NAS Appliance with Nix &#xA; Fermi estimations and how web development is an embarassment &#xA; Assorted things standard libraries Should Just Do (tm) &#xA; Adventures in home smart lighting &#xA; Thoughts smart city data…

New Years Gumbo Recipe

Every year I do a huge gumbo cookout (8 gallons) with friends for NYE. I figured I&rsquo;d record the recipe for posterity: &#xA; Gumbo ingredients &#xA; &#xA; Pack of turkey necks (3 or so) &#xA; whole bunch of Andouille sausage (pack or two) &#xA; whole bunch of mild italian sausage (pack or two) &#xA; a duck (dead, cleaned, boneless if possible) &#xA; 5-10 lbs chicken boneless chicken breasts…

In memoriam: Michael Blair Dye

This post was originally going to be about how I provisioned a 20TB NAS using ZFS and NixOS. At lunch today I got word that my old boss and friend Michael (Mike) had passed a bit over a week ago, so instead I&rsquo;m going to write about a few good memories of him by way of celebrating his life and my privilege of having been part of it for a few years.

Quick thoughts on web tech for research

Once upon a time I worked on a web-hosted research platform for human-robot interaction. My colleague and I partnered to make a nice series of games which could phone home, log results, and show data. &#xA; It was built on JS, jQuery, Rails on the backend, and hosted on Heroku. I&rsquo;d later rewrite the backend to be a much smaller node-based one. I think we may have been the first group to get…

MVP scope, sanity, and schedule

Introduction &#xA; This is a quick little ramble about the scope of minimum viable products (MVPs), their schedule for creation and delivery, and finally the interplay of those things on developers. &#xA; What&rsquo;s in an MVP &#xA; The entire purpose of an MVP is to create the simplest, cheapest expression of a business idea possible to test if the market wants the thing you&rsquo;re making.…

Quick and dirty outage reports

Introduction &#xA; I&rsquo;ve been assembling furniture and rearranging my office into a semblance of a standing-desk, so I&rsquo;m gonna be pick a quick topic for today. &#xA; This morning around 0930 I was awakened by a text from a friend who was distressed that a community I sysadmin seemed to have no server active. I immediately sat up in bed, stretched a little, and sprung shuffled, yawning,…

Testing priorities

Introduction &#xA; Software testing philosophy is softball subject for blog posts, and after a month of fighting with a NAS build I&rsquo;m in the mood for an easy write-up. &#xA; This is an adaptation of a work thread where I reflected a bit on testing practices, why we test things, and mostly importantly which things we as professional developers should emphasize and put in the extra effort for.…

An approach to NPC knowledge in persistent MMOs

Introduction &#xA; I used to dabble in amateur game development, and one of the most interesting bits to me was trying to figure out how to make believable, interesting, and alive worlds. &#xA; There&rsquo;re a whole bunch of interesting resources on trying to render large virtual worlds and procedurally generate them&ndash;but while the environments are increasingly high-fidelity and cool, the…

Brief thoughts on value systems

Introduction &#xA; A relatively quick little ramble today, inspired by some pre-game chat while eating early dinner and getting ready for the second half of our Delta Green game from last week. One of my friends had been considering asking a person out in spite of their professed interest in chakras, energies, and that sort of thing. Another friend was in favor of bailing on the idea, I was in…

My first Delta Green session!

Introduction &#xA; Yay! &#xA; Last afternoon/night I ran my first Delta Green campaign. I was the Handler (DG equivalent of a Dungeon Master ) and three of my buddies were new DG recruits. &#xA; I spent a couple of days prepping mostly from the Need to Know starter booklet and the Agent&rsquo;s Handbook . I think the former was more condensed and useful for the first game, but I have no doubt that…

The People&#39;s Web: Towards a Khyber Pass Browser

Disclaimer &#xA; This is all very much a rough idea. There is no spec here, this is the fuzziest of straw-men. As you read this, please keep that in mind. &#xA; I want to next publish a spec and reference implementation for both a client and server, just to give people a taste of what&rsquo;s possible. &#xA; This document is not quite enough to do that, but should be enough to make reading that…

Travel to D.C.

So, it looks like I&rsquo;ll be heading out to D.C. tomorrow for a bit on company business. Sort of a quarterly/semi-yearly team get together and retreat. I&rsquo;m usually a fan of retreats, though travel itself I don&rsquo;t really enjoy much anymore. After RC and some miscellaneous adventures last year I suppose I should change my outlook on that, but I can&rsquo;t quite bring myself to. &#xA;…

Making your own Bash toolbelt

Introduction &#xA; I&rsquo;ve been doing a bit of work lately setting up a new machine for my job, and in the process making some scripts that can ease the process for later developers. The whole thing is written in Bash. Why might you find yourself wanting such a thing? &#xA; &#xA; Bash (or some other shell, probably Bash-compatible) is available nearly everywhere, so your tooling won&rsquo;t…

Character Sheet for developers, D&D-style

Introduction &#xA; One of my hobbies and fun things in life is to play tabletop role-playing games. I thought it might be fun to play with that a bit. &#xA; The system I&rsquo;ve probably spent the most time in is Pathfinder 1st ed. , though in college we used to play a whole bunch of Dungeons and Dragons 3 and 3.5 editions. These systems are all basically related, and there are some handy online…

A ramble on large-scale virtual worlds

Introduction &#xA; Going back to Active Worlds , I&rsquo;ve always been really fascinated by online virtual worlds. When WoW was just being released and Everquest and Asheron&rsquo;s Call were the big Western MMORPGs, some friends and I had kicked around the idea of a post-apocalyptic FPSMMORPG. We burned a lot of cycles on it, learning a good deal of programming and art and game design and so…

Little projects for programmers

Introduction &#xA; I keep a list of little neat projects that I think some programmers might find fun to write for themselves, if not actually use all the time. I figure I&rsquo;ll list out what they are and give maybe quick blurbs about why I think they&rsquo;re neat projects and some ideas for how to tackle them. I&rsquo;ll do a few more write-ups with more stuff from that list from time to…

S1&#39;19 Return Statement

I&rsquo;ve spent the last several months in the Summer 1 2019 batch at the Recurse Center . The whole trip has been a really interesting and occasionally intense experience, but I don&rsquo;t regret a moment of it. &#xA; What I worked on &#xA; My main project, spanning about ten of the twelve weeks of the time at RC, was a 3D rigid physics engine written in Elixir. I got as far as collision…

Tetrahedron testing

Introduction &#xA; One of the weird rabbitholes I fell into while working on the GJK implementation was figuring out how to find the nearest point on a tetrahedron to a query point. This also relates tightly to the idea of finding which Voronoi region a given point corresponds to&ndash;in fact, I elected to update my projection routine to also report which region a given point fell into. &#xA; The…

ERP Update: Change of course, problems, new adventures

Current State of the Elixir Rigid Physics Library &#xA; &#xA; Create stub physics engine server in Elixir as a GenServer( done ) &#xA; Create visualizer for engine state using Three.js and Phoenix Channels ( done ) &#xA; Add first body type to physics engine: boxes! ( done ) &#xA; Add framework for doing dynamics sans collisions in engine ( done ) &#xA; Add collision detection framework for…

A simple VN engine

Introduction &#xA; Yesterday, my colleague Anna here at RC got to talking about her game, and being a bit stuck on how to get Javascript to do what she wanted. &#xA; The game itself sounds to me like it is a sort of visual novel, which can be summarized as: &#xA; &#xA; There is a current game state, being a current node in the story and an inventory. &#xA; The current game state is projected into…

ERP Update: new ui, refactors, helpers, capsule-capsule work

Current State of the Elixir Rigid Physics Library &#xA; &#xA; Create stub physics engine server in Elixir as a GenServer( done ) &#xA; Create visualizer for engine state using Three.js and Phoenix Channels ( done ) &#xA; Add first body type to physics engine: boxes! ( done ) &#xA; Add framework for doing dynamics sans collisions in engine ( done ) &#xA; Add collision detection framework for…

Towards better employment contracts, pt. 1

A sketch of the problems &#xA; The current situation harms workers, it harms consumers and society, and somewhat unintuitively it hurts most employers themselves. &#xA; Problems for the worker &#xA; Developers unlock or maintain vast economies of scale for companies, allowing profits at scales almost unseen in the history of mankind. At the same time, it seems that developers are increasingly cut…

Testing out local images.

This is a local image! &#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA; &#xA; &#xA; &#xA; &#xA; &#xA; &#xA;&#xA; &#xA; &#xA;

ERP update, checking in, surprise devops

Current State of the Elixir Rigid Physics Library &#xA; &#xA; Create stub physics engine server in Elixir as a GenServer( done ) &#xA; Create visualizer for engine state using Three.js and Phoenix Channels ( done ) &#xA; Add first body type to physics engine: boxes! ( done ) &#xA; Add framework for doing dynamics sans collisions in engine ( done ) &#xA; Add collision detection framework for…

ERP update: Adding rotational dymanics

Current state of the Elixir Rigid Physics library &#xA; After a few weeks of on-and-off work (maybe 2 weeks actual work punctuated by coder&rsquo;s block and wonderful socializing here at RC), my timeline looks like this: &#xA; &#xA; Create stub physics engine server in Elixir as a GenServer( done ) &#xA; Create visualizer for engine state using Three.js and Phoenix Channels ( done ) &#xA; Add…