2023 >

macOS

Google Drive keeps trash bin stocked: A note to myself for when I see this again

December 14th, 2023 • Read…

macOS

Hostile software: In this case, Apple Preview

November 8th, 2023 • Read…

Rust Petnames

rust-petname 2.0.0-beta.2

September 28th, 2023 • Read…

allenap.me Rust JavaScript Parcel

Experimenting with Parcel for allenap.me

August 27th, 2023 • Read…

allenap.me SQLite

ISO-8601 and DATETIME in SQLite: Or: how SQLite silently treats them differently

August 21st, 2023 • Read…

allenap.me SQLite

Adding a column with REFERENCES in SQLite 3: Trickier than it could be; error messages appear contradictory

August 21st, 2023 • Read…

Embedded CPU

«Putting the “You” in CPU»: What exactly happens when you run a program on your computer?

August 14th, 2023 • Read…

Embedded Rust

RAM is mapped into the address space

August 14th, 2023 • Read…

Rust Elm allenap.me

The 2023 revamp of allenap.me: Looks like nothing has happened in 5 years

August 12th, 2023 • Read…

2018 >

allenap.me Elm

Rewriting allenap.me in Elm

May 12th, 2018 • Read…

2017 >

macOS Linux

flock(2) behaviour on macOS and Linux: Note to self: flock is simple, but not as simple as you think

July 3rd, 2017 • Read…

Rust Petnames

Petname library in Rust

June 20th, 2017 • Read…

MAAS Python Testing

The way to run tests quickly (in MAAS): Go parallel and deal with the mess for big wins

April 18th, 2017 • Read…

MAAS Python Testing

The importance of running tests quickly: Here, MAAS, and everywhere

February 23rd, 2017 • Read…

2016 >

MAAS Python

Bazaar repositories for fun/profit/shenanigans: Save time and disk with Bazaar’s shared repositories

December 9th, 2016 • Read…

Python

sets versus lists: In Python, sets are faster than lists

April 21st, 2016 • Read…

MAAS Python

Porting MAAS to Python 3: The (More) Technical Bits

February 16th, 2016 • Read…

MAAS Python

Porting MAAS to Python 3

February 16th, 2016 • Read…

2015 >

MAAS Python

Post-commit hooks in MAAS: How to not change the world from inside a transaction

August 31st, 2015 • Read…

MAAS Python

Transactions in MAAS: … and how Django gets it so wrong

August 23rd, 2015 • Read…

MAAS Python

Introduction to blocking and non-blocking code in MAAS

August 16th, 2015 • Read…

Dart JavaScript

WTF is Dart?: Article for Norfolk Tech Journal, 2015-01-12

July 29th, 2015 • Read…

Django MAAS

South, South 2, and Django Migrations

May 12th, 2015 • Read…

2014 >

Shell Ubuntu

Fewer sudo password prompts

August 7th, 2014 • Read…

2013 >

MAAS Python Ubuntu

Preparing for Python 3 in MAAS

November 20th, 2013 • Read…

Shell

Even Google can’t write shell scripts

November 7th, 2013 • Read…

Python

python-liblockfile

November 2nd, 2013 • Read…

Linux Logging MAAS

Protocol buffers for logging

November 1st, 2013 • Read…

Linux

fsync the parent directory when fsyncing a new file

November 1st, 2013 • Read…

Golang Shell

Change directory to a Go package, with tab completion: In bash

August 13th, 2013 • Read…

~Untagged~

Lagrange points: A video by Sixty Symbols

June 15th, 2013 • Read…

MAAS

Workaround for uploading files to MAAS

June 5th, 2013 • Read…

2010 >

Python

Tagging installed Python libraries: A short script to alleviate the pain

October 5th, 2010 • Read…

Launchpad Ubuntu

Reply to “Downstream bug reports – fail!”

April 30th, 2010 • Read…