Skip to content

3030 v1.1 — thirteen tracks, with sound

Choose a tag to compare

@sp00nznet sp00nznet released this 09 Sep 07:24
· 2 commits to main since this release

Deltron 3030 is a concept album from 2000 about a mech soldier rap battling
through a corporate dystopia in the year 3030. Half its tracklist describes
technology failing people in ways that turn out to be very easy to render in
a terminal.

So: the album, as command-line programs. One file per track, thirteen of
them, stdlib only.

   2.  y3k         3030                       a Y3K compliance checker
   4.  things      Things You Can Do          a list where nothing is available
   5.  contact     Positive Contact           finds life, files the mineral rights
   7.  virus       Virus                      a threat that cannot be carried out
   8.  upgrade     Upgrade                    a promise kept, meaning nothing
   9.  newcoke     New Coke                   a rebrand ending with two products
  10.  mastermind  Mastermind                 a lock, ten tries
  12.  madness     Madness                    ten thousand cases, none can fail
  14.  slipping    Time Keeps On Slipping     a clock correct for about a minute
  15.  news        The News                   the disclosure outgrows the story
  16.  turbulence  Turbulence                 a route that reaches nothing
  18.  battlesong  Battlesong                 two sorts, six rounds, real timings
  20.  memory      Memory Loss                memory climbs, the work erodes

New in v1.1

Twelve more tracks than v1.0, which shipped virus alone.

Sound on all three platforms. v1.0 used winsound.Beep, which is
Windows-only and plays one note at a time. Audio is now synthesised as a WAV
in memory with stdlib wave and handed to whatever the machine has —
winsound on Windows, aplay/paplay on Linux, afplay on macOS. Thirteen
cues, one per track. No player means silence, not an error. Sound is off
automatically when stdout is not a terminal.

MIDI for every track — python music.py writes midi/*.mid, hand-rolled
struct.pack, no library.

They still do nothing to your computer

No writes outside the repo (one exception: macOS audio writes a temp WAV,
because afplay cannot read stdin, and deletes it). No self-replication, no
network, no persistence. turbulence cannot reach anything: no sockets in the
file, every host on .3030, a TLD that does not exist — and its self-check
asserts it. y3k is the only one that does something real, and it exits 1 on
findings so it works in CI.

Every program self-checks, and the checks assert the jokes, not just the
code: that the ETA gets worse before it gets better, that This will only take a moment is the longest step, that Madness's oracle still cannot fail, that
Positive Contact never grows a reply step.

Run it

deltron              the tracklist
deltron virus        play a track
deltron mastermind   the one you can lose

Linux / macOS: tar xzf deltron-v1.1-*.tar.gz && ./deltron
macOS is arm64 and unsigned — right-click → Open, or
xattr -d com.apple.quarantine deltron.

Windows: run the .exe. SmartScreen will grumble about an unsigned binary
from a repo containing a file called virus.py, which is fair of it.

Or skip all of this. Every track is stdlib-only Python with a shebang:
./deltron.py virus needs no download.


Unofficial, non-commercial homage. Not affiliated with or endorsed by Deltron
3030, Del the Funky Homosapien, Dan the Automator, or Kid Koala. Lyrics quoted
as a short excerpt with attribution; all riffs are original. Code is MIT — the
songs aren't ours to give.

deltron3030.com — they are touring. Better use
of an evening than any of this.