~ / Post-Code Scarcity

March 13, 2026

The new paradigm of AI and agentic processes means more code has become meaningless to write. Endless amount of code can easily be generated providing you have the tokens to burn. Here are some baseline principles I have moved towards without noticing.

Suckless and the UNIX Philosophy

Whilst I don't subscribe to the extreme version of suckless, no I am not interested in using dwm and st (primarily because I have moved to wayland), the basic principles of reduced lines of code if possible is desirable.

A piece of software should do one thing and do it well. What will separate real power users and the benefactors of the AI age is defferance to this central age old wisdom. Complexity has always existed, it was just a logistical problem now basically everyone has the capability to implement incredibly complex systems that was once only available to a large organisations.

TUI First

The web browser induces latency where there is none in the command line. This latency can compound over time, the browser is there for things that terminal is less capable of. Mainly mouse input and interfacing with "users".

Self-hosting Over SaaS and Run Code in SystemD

Self-host as much as you can. When a SaaS changes its API or pricing, that is a form of technical debt imposed on you. Find primitives and easy ways to deploy your own code for one but more importantly there are incredible open source projects that will probaly suit your use case already.

Here is my NixOS homelab structure for just a snippet of all the systemd processes I have:

emil@melangit /etc/nixos/systemd master* ❯ ls -t
default.nix       gotagger.nix        belief.nix       syncthing.nix
miniflux.nix      jellyfin.nix        halideforms.nix  matrix-synapse.nix
moneymoney.nix    navidrome.nix       newtab.nix       ntfy-sh.nix
hledger.nix       blog.nix            photos.nix       prometheus.nix
slskd.nix         emilrajidotcom.nix  tahlia.nix       vaultwarden.nix
sonarr.nix        govimdiary.nix      goinvoicer.nix   processes.nix
flask-spotdl.nix  mailnotif.nix       immich.nix

Here is a snippet of my immich "deployment" just 10 lines of code. This list of services continues to grow but managing the box or thinking of switch boxes does not scare me.

emil@melangit /etc/nixos/systemd master* ❯ cat immich.nix 
{ config, lib, pkgs, ... }:

{
  services.immich = {
    enable = true;
    port = 2283;
    host = "0.0.0.0";
    mediaLocation = "/mnt/LIB/immich";
  };
}

Reduced Dependancies

The common denominator of all systems now are the AI chatbots used to generated code. Your AI is the threat surface towards the infrastructure you own. If possible make the AI rewrite some large tertiary libaries. Look up Slopsquatting, malicious packages are so easilly made. Do not implement features you do not need. Code is cheap, trust is not.

Compiled Languages and Memory Safety

Golang is my first choice for many of the websservice I run. The AIs are relatively good at it and the code is performant and human readable. It compiles to binary reducing the chance for remote code injection. Chances are your system will not get 11 million concurrent users, design for the scope on hand.