Jan. 29, 2018

DSC_0413.JPG

Secret project.

Oct. 17, 2017

Hand drawn technological artifact in the style of Scott Robertson

In the style of this guy in the style of Scott Robertson space ship sketches.

Oct. 11, 2017

A non-exhaustive list of technologies that I used this year which happen to be built by women:

I feel grateful to these people for enriching technology with their contributions.

July 6, 2017

Screenshot

There are times in life when you need to keep track of periodic events as they happen. For example when you have a new baby it is sometimes useful to keep track of when they feed, nappy changes, etc. Another example might be tracking how often you eat chocolate or drink beer.

Clerk is a simple self-hosted web application that I built which you can install to the home screen of your device (by doing "add to home screen" in your browser) or load up on your tablet or laptop. You can then keep track of simple events with two taps on your device - once to open the app and once to record the event.

Screenshot 2

For every event logged the event type, timestamp, and comment are stored in CSV files. Events are stored in individual CSV files - one file per event type. You can also download all CSVs stiched together with an extra column for the event name.

Features

  • Web based.
  • Easy to deploy.
  • Self-hosted & FLOSS.
  • Simple text based CSV format.
  • Allows multiple people to log events.
  • Mobile friendly - "Add to Home Screen" web-app.

Install

To require authentication, first create a password file:

htpasswd -c /path/to/.htpasswd username

Then copy ./example.htaccess to .htaccess and edit it.

Enjoy!

May 31, 2017

watch-make is a script that rebuilds your project only when make detects it needs a rebuild, for example when source files change.

Features:

  • Works with any existing Makefile based project.
  • No dependencies apart from make.
  • Passes any arguments to make (such as -C mydir).
  • Silent if there is nothing to build and does not swallow output when there is.

I wrote it in response to this Stack Overflow question.

The source code is hosted on GitHub.

Install it

curl -s https://raw.githubusercontent.com/chr15m/watch-make/master/watch-make > ~/bin/watch-make
chmod 755 ~/bin/watch-make

Full source code

#!/bin/sh

while true;
do
  if ! make -q "$@";
  then
    echo "#-> Starting build: `date`"
    make "$@";
    echo "#-> Build complete."
  fi
  sleep 0.5;
done