July 31, 2010

I am ridiculously behind on blogging because of the amount of contract work I have going on at the moment (working Saturdays and weeknights until 2am - not fun!) Anyway, I'll stop whining now.

Below is a video of the talk I gave at PyCon AU at the end of June. In it I talk about my time working for London based "reactive music" company, RjDj, and also about my video game Infinite8BitPlatformer.

I haven't posted an Infinite8BitPlatformer update for ages, and I have been meaning to do so since a lot of progress has been made since my last post, but here's a quick update:

  • Multiplayer code: this is going really well. It's almost at the point of beta release.
  • Contributors: another person has started contributing to the codebase. I am hopefully going to be merging his code this weekend. Julian has put basic chat into the multiplayer code, among other tweaks and bugfixes, and a huge amount of very useful information for other people looking to contribute. He's been very patient about my lack of time!

Anyway, back to work.

July 11, 2010

I've started a new album. It is called squeakyshoecore. It is algorithmically generated acid using some software I wrote. I am going to release it online bit by bit, as I finish each track. I will announce each new track here on this blog.

squeakyshoecore logo

squeakyshoecore

The software makes two different beats and two complementary melodies using random number generators and some carefully tuned algorithms for using those random numbers. The melody shaping rules involve applying a low dimensional random fractal effect on very basic seed melodies, producing a type of self-similarity which seems to sound interesting to humans. The beats are created using a variety of custom rule sets, much like my previous work with algorithmic hip-hop in CanOfBeats and my algorithmic drum-and-bass generator, GhostWave.

After that I manually control how loud each of the parts are present in the mix, what effects are being applied to the different parts, and the parameter values of those effects. I use a midi controller to mix it in real time and record it.

Soon I will make the latest version of the Pure Data patches ("GarageAcidLab") available online under a Free Software license.

Enjoy the first tracks!

P.S. Some other music I've released on the net previously is Cryptolect, end-of-millenium style chopped-up breakbeats.

July 7, 2010

This is my favorite cafe in Perth, Western Australia, for the following reasons:

  • The coffee tastes really good
  • Free wifi
  • Nice, agreeable, pleasant staff who leave you to your own devices
  • Walking distance from Northbridge, Mount Lawley, and Perth
  • The coffee tastes really good
  • Coffee is slightly cheaper than most other places in Perth ($3.80)
  • Organic, sustainable, fair-trade, and vegan friendly
  • The coffee tastes really good

View Larger Map

I haven't tried their food, but it looks tasty and generally reviews well.

Here are some links:

June 21, 2010

The Robusness Principle is a good principle for writing network server/client software. If you follow it your software is less likely to fail when interfacing with other software. I also find it to be an optimal heuristic when it comes to interacting with other human beings.

Be conservative in what you do; be liberal in what you accept from others.

-- Jon Postell

I wonder if there is a formal proof that it is an optimally efficient algorithm for interacting entities who don't completely know eachother's context/protocol, from the perspective of information theory?

June 18, 2010