Blog

This is my blog. Sometimes in these posts I’ll talk about research or art projects I’m involved with, sometimes I’ll just ramble about other stuff which is keeping me up at night. If you’re interested in a certain topic, click on a tag to see just the posts with that tag:

If anything here sparks your interest (or your ire!) then get in touch (twitter, email) or discuss on HN.

Congrats Dr. Kieran Browne

Last December Kieran graduated—very exciting for all concerned.

read more...

Handling Square Webhooks in Phoenix

My brother’s cafe donates a dollar to the local community centre for every coffee sold, and over the summer I built him a live “donation counter” which displays a small “thankyou” animation when anyone buys a coffee. It’s a web app which they run on an iPad sitting on the coffee machine.

read more...

rclone: exclude all git repos

For a long time I’ve used rclone for remote backups and it’s awesome. I have a script which syncs all the files I care about on my laptop to cloudstor (which, being on the Australian university network has the benefit that I get 1Gbps upload when I’m on the ANU network). My institution (the ANU)

read more...

A School of Cybernetics strategy meeting with ChatGPT

Back at my desk after a couple of days off I finally got a chance to fire up the OpenAI ChatGPT AI language model that everyone’s talking about.

read more...

AI art installations and livecoding gigs in Nov/Dec

If you follow me on twitter you’ve seen this already, but over the last couple of months I’ve been hard at work on an AI art installation called Panic. This was a collaboration with Adrian Schmidt—I did the software, he did the hardware (including the cool, 6” diameter Panic! button).

read more...

NGA Un-tour: The Hidden Gallery

For the last year or so my team has been collaborating with the good folks at BOHO Interactive and the National Gallery of Australia on something which launches tonight—the NGA Un-Tour.

read more...

So this is how it feels when the robots come for your job: what GitHub's Copilot 'AI assistant' means for coders

I wrote a piece for the Conversation about GitHub’s new Copilot AI programming assistant. You can head over there to read it if you like.

read more...

Redacting craiyon prompts with imagemagick

I’ve been messing around with craiyon (formerly DALL-E mini), because who hasn’t been doing that recently.

read more...

Pulling apart Zoom attendance csv dumps in tidy R

My team ran some Zoom training last week and today I needed to figure out who actually attended across all the days, and for how long.

read more...

Scar trees & living typefaces

Yellow box tree on ANU campus. 📸 ANU Photography, 2016

read more...

Teaching the world to Cybernetics

If you’re the sort of person who lurks on people’s LinkedIn accounts, you may have noticed that I’ve recently become the lead of the Experiences Team at the School of Cybernetics. My team’s mission is:

read more...

Running an AI neural style transfer model under Singularity

I’ve recently been given access to a beefy AI server (6x RTX3090s!) which is managed via SingularityCE, whose homepage boldly asks and then forgets to answer the question: “What is SingularityCE?”

read more...

Cybernetic futures explained (maybe)

One of my current projects at the ANU School of Cybernetics is to develop tools & procedures for futuring. This post is an attempt to get my head around how these things fit together (spoiler: they do!).

read more...

Livecoder-in-the-club as a system

Using cybernetic and systems thinking concepts to answer the question: what’s actually going on in a livecoding gig?

read more...

Cutting ruby CI pipeline times with pre-installed bundles

I (and, increasingly many of my colleagues) are using Jekyll to create open (CC-licenced), hackable, acessible course websites & teaching content for our classes. We use a self-hosted GitLab server for all the websites sources, and then build/deploy them with GitLab CI. It works well, it means I don’t have to fight with our LMS to do interesting things, and it means I can open my learning materials to everyone (not just those who are privileged enough to be able to pay the fees to study at the ANU).

read more...

openconnect setup for institutional VPN access

My institution’s IT policies have recently changed and port 22 is now blocked from off-campus. That’s a real pain if you use ssh to push/pull from our on-prem GitLab servers (which I need to do all the time).

read more...

Feedback in livecoding: cui bono?

Pre-reading (and watching) for fortnight 5 of the School of Cybernetics Master’s program

read more...

Moving to the School of Cybernetics

Some job news—I’ve just accepted a position in the new School of Cybernetics in the ANU College of Engineering, Computing and Cybernetics. I’ll finish out my teaching this semester in the School of Computing then I’ll make the move in July. For those not familiar with the ANU org-chart or acronymicon, there are multiple Schools in each College (so I’m moving Schools but staying within the same College).

read more...

LENS'21 final gig 2pm June 6 @ sideway

LENS '21 final gig poster

read more...

ACMC'21 + Synthmoot: Connections announced for August 26-28

Great news on the local computer music conference front: the Australian Institute of Music is hosting the ACMC conference in Sydney/Melbourne/online at the end of August ‘21. I’ll be there—and if you’re a computers-and-music-adjacent artist then you should think about submitting a paper, artist talk or performance as well.

read more...

github twitter vimeo graduation-cap rss envelope search vial coffee heart creative-commons creative-commons-by creative-commons-nc creative-commons-sa