Blog
Blog
zeptocore
creating a sample player machine from scratch.
May 3, 2024
THX theme in SuperCollider
An epic sound in just a few lines of code.
(Mar 24, 2024)
For the Theatre of the Flat Imagination
three pieces for live shows.
(Mar 23, 2024)
go and zig
amazing incantations for easily using CGo by leveraging zig.
Jan 26, 2024
sd cards
Not all sd cards are the same.
Jan 3, 2024
gno -> go
Making things in web3 with a new programming language, gno.
Dec 2, 2023
habitus
habitus, a music technology workshop, is coming to Europe this summer, 2023.
(Jun 26, 2023)
Ube
Unpredictable binaural experimentations.
(Feb 26, 2023)
Producing multichannel audio synthesis with norns
A continuation of using multichannel audio, but with the norns.
(Jan 2, 2023)
Producing multichannel synthesis with Linux.
Its surprisingly easy to utilize SuperCollider's multichannel output with …
(Dec 31, 2022)
Gridding images for painting on the command-line
There are a few simple commands to easily create grids on images for painting.
(Dec 24, 2022)
My 2022 in code
A lookback at my publicly available code from 2022.
(Dec 23, 2022)
Setting up wireguard+pihole with Ubuntu and other devices
The simplest+cheapest way I found to get a personal Wireguard VPN with Pihole.
(Dec 20, 2022)
Calculating the CPU usage of any process in Linux
The proc sytem gives all the information you need to calculate CPU usage at any …
(Dec 2, 2022)
How the free energy principle may imply a feedback mechanism for learning
The free energy principle may guide feedback mechanisms for learning behaviors …
(Dec 1, 2022)
Tinting an image with `imagemagick`
Tinting an image into a specific color can be done with a single command using …
(Nov 30, 2022)
Generating automatically tuned drums for OP-Z and OP-1
A bank of drum samples can be tuned and spliced and turned into a TE device …
(Nov 15, 2022)
Faking ambisonics with SuperCollider
There is a simple trick to make audio float around binaural headphones by using …
(Nov 6, 2022)
Emulating a JP-8000 supersaw in SuperCollider
Reverse-engineering a non-linear response curve for detuning multiple …
(Nov 3, 2022)
Running norns without the shield
Instructions for using a Raspberry Pi to run the norns sound system.
(Oct 7, 2022)
Paracosms
A 100-song album generated from random pre-recorded samples.
(Jul 2, 2022)
One-line drawings
Creating software to reconstruct one-line drawings.
(Apr 9, 2022)
Random music videos
A tutorial on making random videos using a neural network.
(Mar 26, 2022)
Stream your audio
Personal audio streaming made really easy.
(Mar 17, 2022)
sampswap
Generative breakbeats with SuperCollider and sox.
(Mar 15, 2022)
Generations
a sound-on-sound technique for generative music.
(Feb 23, 2022)
pianos.pub
A website to find every public piano.
(Dec 19, 2021)
CZ-101
Emulating an 80's synth in SuperCollider.
(Aug 21, 2021)
PO-32 hack
Soldering switches to a little drum machine.
(Aug 20, 2021)
SuperCollider sample playback
Making a crossfading sampler engine.
(May 5, 2021)
Fixing a SVE in croc
RedRocket found a vulnerability in croc and helped me to find a solution.
(Apr 23, 2021)
Waveforms on the web
Drop-in replacement for an audio tag for stylized audio playback.
(Apr 13, 2021)
Banana peel
(Apr 12, 2021)
Become the cube
(Apr 12, 2021)
Cowbell
(Apr 12, 2021)
Diamond
(Apr 12, 2021)
Dog walking
(Apr 12, 2021)
Eating
(Apr 12, 2021)
Hourly
(Apr 12, 2021)
Juliard
(Apr 12, 2021)
Makeshift
(Apr 12, 2021)
Origami
(Apr 12, 2021)
Pitch
(Apr 12, 2021)
Plants
(Apr 12, 2021)
Rock paper
(Apr 12, 2021)
Symphony
(Apr 12, 2021)
Trainer
(Apr 12, 2021)
Trick
(Apr 12, 2021)
You call that
(Apr 12, 2021)
Monotron hack
Easily turn the Korg Monotron into a drone.
(Feb 3, 2021)
SuperCollider synthesis
Tutorial to make evolving drones in a musical programming language.
(Feb 1, 2021)
whowillmatch.com
Find charities that double your donation.
(Nov 28, 2020)
Raspberry Pi as MIDI to CV device.
I programmed the Raspberry Pi to control voltage and respond to MIDI so I can …
(Sep 8, 2020)
Every chord
A website with the probability of every chord progression.
(Aug 1, 2020)
Text-based MIDI sequencer
I coded a new MIDI sequencer that has a high-level syntax for simultaneously …
(Aug 1, 2020)
How to install portmidi
A simple way to get MIDI and Golang work together using portmidi.
(Jul 16, 2020)
Making a mellotron from a cassette player.
Instructions on converting an old walkman-style cassette player into a …
(Jun 27, 2020)
Heartbeat metronome.
Using my heart beat to control the tempo.
(Jun 12, 2020)
op1z.com
Create patches for OP-1 and OP-Z instruments.
(May 16, 2020)
hostyoself.com
Host websites in your browser.
(May 13, 2020)
Worker pools in Golang
A simple pattern to get started using worker pools with Golang.
(Feb 19, 2020)
ALSEP12
a soundtrack to the Apollo 12 moon landing.
(Feb 18, 2020)
Programming a registration bot
I keep missing registration for a pottery class so I wrote some code to help me.
(Feb 18, 2020)
Share
A website for sharing files.
(Jan 22, 2020)
Books I read (2019)
My favorite book this year was Shadow Divers by Robert Kurson.
(Jan 19, 2020)
Websockets
A simple pattern to get started using websockets with Go.
(Jan 9, 2020)
Radio Transmissions
a sound track to random radio samples of 2019.
(Dec 31, 2019)
Art
(Dec 30, 2019)
Cruise
(Dec 30, 2019)
Disruption
(Dec 30, 2019)
Hannukah
(Dec 30, 2019)
Long walks
(Dec 30, 2019)
Santa
(Dec 30, 2019)
Shoe
(Dec 30, 2019)
Photos I took
Photo narrative from 2019.
(Dec 29, 2019)
Javascript for MIDI multiplexing.
A simple website for sending midi from one device to another.
(Dec 18, 2019)
findabooktoread.com
Using AI to find new books.
(Aug 25, 2019)
How to tunnel with SSH
A quick tip for using SSH to tunnel into your local network for easily binding …
(Aug 23, 2019)
Car
(Jul 8, 2019)
Eat and run
(Jul 8, 2019)
Netflix
(Jul 8, 2019)
Performance art
(Jul 8, 2019)
Dockerfile for Golang apps
A lightweight Dockerfile for Golang apps.
(Jul 5, 2019)
offlinenotepad.com
Browser-based offline-first secure notepad.
(May 26, 2019)
Using vim with Golang
(May 9, 2019)
croc
Fast, simple, and secure file transfer between any two computers.
(May 2, 2019)
FIND
A framework for internal navigation and discovery.
(Mar 17, 2019)
FAAS
Make any (Go) function into an API with one HTTP request.
(Mar 11, 2019)
Download songs from a Spotify playlist
Download Spotify playlists into mp3 files using YouTube and a simple …
(Jan 11, 2019)
Books I read (2018)
My favorite book this year was Stories of your Life and Others by Ted Chiang.
(Dec 15, 2018)
Photos I took
Photo narrative from 2018.
(Dec 15, 2018)
Podcasts I heard
One of my favorite podcasts from this last year was The Impact.
(Dec 15, 2018)
Achievement
(Nov 11, 2018)
Corn maze
(Nov 11, 2018)
Crocheting
(Nov 11, 2018)
HOV lane
(Nov 11, 2018)
My other bike
(Nov 11, 2018)
Neti pot
(Nov 11, 2018)
A website for jotting notes.
A minimalistic website for making notes.
(Oct 12, 2018)
🐊 croc - secure and easy data transfer
croc is a tool I built to easily and securely transfer stuff from one computer …
(Oct 10, 2018)
Raspberry Pi as a chicken cam
A Raspberry Pi automated camera in which I can watch and listen to my chickens …
(Oct 2, 2018)
My Github graveyard
Some projects that didn't meet expectations and I expect not to work on again.
(Oct 2, 2018)
Ingredients
Turn any recipe into structured data.
(Jul 16, 2018)
Self-hosting VCS with fossil
(Jun 10, 2018)
IPFS enabled personal internet archive
A simple way to make an archive of a website using IPFS and wget.
(Jun 4, 2018)
Installing Keybase on Chromebook
Instructions on how to get Keybase working on your arm computer.
May 28, 2018
My .vimrc
Here's my very simple Vim setup that I like to use for writing.
(May 28, 2018)
Shallow `go get`
(May 6, 2018)
Peer discovery
Go library for cross-platform local peer discovery.
(Apr 23, 2018)
10 years of marathons
An analysis of all the marathons I've done in the last 10 years.
(Mar 23, 2018)
Consensus cookery
(Mar 20, 2018)
Sending a file in 2017
Dec 23, 2017
Podcasts I heard
One of my favorite podcasts from this last year was Science Vs.
(Dec 15, 2017)
Books I read (2017)
My most memorable books from 2017.
(Dec 10, 2017)
Painting from primitives
I try a technique for painting that involves starting from simple shapes.
(Dec 3, 2017)
makemydrivefun.com
A website that finds road trip stops.
(Nov 17, 2017)
Nesting templates in Golang
A small snippet for making nested templates in Golang.
(Nov 10, 2017)
Progress bar
A simple thread-safe Go library progress bar.
(Oct 26, 2017)
A tool for web scraping.
A simple and powerful web scraper backed by Redis.
Oct 11, 2017
Calculating how to cool coffee
Lets use physics to find the exact number of ice cubes to drop into a scalding …
(Sep 24, 2017)
Raspberry Pi as piano accompaniment.
I made my own Raspberry Pi-powered AI to accompany me on piano.
(Sep 4, 2017)
Raspberry Pi as an aurora alarm.
I make a Raspberry Pi powered alarm clock for alerting about auroras.
(Sep 3, 2017)
Recursive recipes
Calculate time and cost for generating many recipes from scratch.
(Jun 23, 2017)
Watercoloring with neural networks
Can a neural network help me improve my art? Could I take a photo, paint it, and …
(Jun 14, 2017)
Autological words and quines
Exploring meta-behaviors.
(Jun 4, 2017)
Better book suggestions
Making a book recommendation service from scratch.
(May 2, 2017)
How to use Wordpress with Docker
A concise method for initiating a Wordpress instance through Docker.
(Jan 11, 2017)
cowyo.com
The best pastebin for markdown notes.
(Feb 15, 2016)
My poetry generator passed the Turing Test
A simple poetry generator I wrote was good enough to get published in a literary …
(Apr 25, 2015)
Raspberry Pi AI
I create a fully functional AI out of a Raspberry Pi - including voice …
(Feb 5, 2014)
Books I read (2008)
Dec 31, 2008
Ten commandments for a scientist.
A list of ten things every scientist should do.
(Jun 3, 2008)
Scientific perspective on genesis.
In the beginning, there was a big bang.
(Jun 2, 2008)
Jan 1, 0001