Category: misc

Owning an electric vehicle

It looks a little bit like this

Recently I bought a fully electric powered car, second hand. It’s a 24kwh, Nissan Leaf Tekna with a 2015 number plate approaching 28k mileage, bought from a dealer for £9.5k (plus an ‘admin fee’, which I later found out was optional, bah!).

It was £700 off in a clearance sale which seemed genuine – it looks like it had been sitting around in the dealer for 8 months. This is a concern as if a electric car battery is on high charge, having it sitting around unused can be a bad thing, and general car dealers might well not know this.

The car was listed as having an onboard 3.3kw charger, but it has the expensive option of a 6.6kw charger, which allows it to be charged twice as fast on middling kinds of chargers. It’s apparently quite common for dealers to not know what they’re selling, and in this case I think it made the car a reasonable deal.

There are scare stories of having to replace the main car battery every five years, I think thanks to rumours spread by Top Gear (a UK entertainment show that pretends to be about cars). The battery on this one is completely fine, with the dash showing the maximum of 12 bars of battery health, despite approaching its fifth birthday. It is possible for dealers to reset this so you have to be careful, but it’s stayed at 12 so I think it’s good. You can get more detailed information by plugging in an ‘OBD-II dongle’ and reading data off the battery management system using an Android app. However despite buying two different dongles (a wifi and a bluetooth one) I still haven’t got this working..

[Update: I got the bluetooth dongle working finally, not sure what was wrong.. It’s showing 91.4% state of health, not bad!]

Driving range is heavily dependent on driving style and weather – you get to drive further on a single charge in summer, but it seems I can comfortably get 60 miles at the moment and still have 10-20 miles range on reserve for peace of mind. You need this because sometimes public chargers are out of action, or “ICEd” – occupied by a fossil fuel-driven car (ICE = internal combustion engine) using a charging spot as a parking space. There’s a lot of discussion about the people who do this (sometimes known as ICEholes) on the forums.

There’s also a lot of misinformation on the forums. If you do get a OBD-II dongle working you can get an accurate-looking percentage about battery state of health, and this goes up if you do a ‘rapid charge’. But in truth, the state of health number is a guess, and it seems that doing too many rapid charges are actually bad for your battery health. At least this article seems fairly evidence based, and instead says that resting your battery on low charge seems to help it recover.

So what does it feel like to drive? After my old ford fiesta, it’s absolutely amazing. It’s super quiet, which means it’s really great for listening to music (on the bose 2.1 system). It has heated seats and steering wheel (this is amazing, and also much more efficient than the main heating system, which shaves some miles off the range). Plus 360 camera for parking (top-down, early grand theft auto style), and so on.. I learned to drive late in life, but hired a lot of cars in the past and have never really enjoyed driving at all before. I’d still much prefer a nice train journey for longer distance, but this is actually not bad.

EV drivers talk about ‘range anxiety’, and it is real. The longest drive I did so far was to the arcade club in Leeds, which happened to have free vend EV charge spaces. Thanks to the 6.6kw charger it was fully charged during our 2-3 hour visit, ready for the return journey. That was a ‘destination charger’ on ‘fast charge’. At home I’ve been using trickle charge off a standard 3 pin plug, which takes longer but charges fully overnight (I’ve ordered a podpoint which will allow the full 6.6kw charge at home). We’re planning a longer trip to the south coast which will need a few charges on the way.. This is where those rapid charges come in, in my old 24kwh model (newer Leafs are up to 64kwh) this means stopping around every 50-60 miles to charge up for 20 minutes or so. You basically have to stop for X minutes in order to go X miles, so it doesn’t really take you any longer to stop more often, as long as the chargers are all on your route. For battery chemistry reasons you can only rapid charge up to 80%, then it goes slow enough to not be worth waiting around for.. Which means your first leg from 100% can be a bit longer, and you can probably get back up to 100% over lunch.. Lets see how that goes.

[Update: just did a drive from Sheffield to Manchester, didn’t quite have the charge for the return journey, and had a stressful half hour or so finding a spare place to charge.. Took a few attempts in city centre traffic, but got a (free!) charge in the end. Not convenient though, I should have just parked up anywhere and got a rapid charge on the motorway on the way home, or just taken the train..]

Running costs are super low. Without an ICE, there’s not much to go wrong, and these cars have proved reliable. ‘Fuel’ is often free, or at worst several times cheaper than petrol/diesel. There’s no vehicle tax (for now), and on-street parking and all the council car parks in Sheffield is free (you have to register first). If/when EV sales take off, this is all subject to change.. But electricity will always be cheaper than petrol.

In terms of local air pollution, they’re great. Brake pads are hardly used (the energy goes back into the battery via a generator), cutting down on airborne fine particulates. You tend to drive more smoothly to conserve energy, which I naively guess means less tyre wear in the air. Plus of course, there’s no exhaust. We use green energy at home (good energy), and the chargers tend to run off green energy too. (I realise it all comes via the national grid, but please save me that argument..)

In terms of impact on the climate, things are less clear. The impact of manufacturing a car and battery is very high. Probably better than a ‘conventional’ ICE, and they seem to be lasting longer too, but hey. EVs are not The Answer. But still, at least when you drive them you’re not contributing to illegal and extremely dangerous levels of local air pollution.

That said, electricity companies are currently experimenting with using EVs for energy storage. All those batteries could really help solve how to smooth out renewable but intermittent energy from wind and solar. They’re testing whether they can do this without causing early battery degradation. Definitely plausible.

In privacy terms it’s a bit of a disaster.. I didn’t have to sign up with Nissan, but now I have, they seem to know where my car is at all times. On the plus side so do I, and I can check its charge remotely, and get loads of stats and stuff.

Anyway, it seems good overall. Eventually the battery will show degradation, but nonetheless I have a feeling now is a good time to buy second hand. Electric motors don’t wear like combustion engines, and third parties are starting to replace EV batteries with new ones of higher capacity than the originals. EV batteries are currently made with limited materials such as cobalt, so it’s not guaranteed that they’ll get cheaper.. But maybe technology will soon advance to the point where we work around these dependencies, and I’ll be able to swap in a new one for relatively little. That glosses over the conflict and pollution around battery manufacture, but again, that probably works out considerably better than oil..

Pattern and decoration

I finally took some time to watch the video recordings of the AlgoMech Symposium on Dancing and Braiding, which I co-organised but couldn’t attend, because I was running around co-organising the rest of the Algomech festival at the time. I was struck by Berit Greinke asking the question “What more can repeat patterns do?” in the second talk in this panel shared with the Kate Sicchio and chaired by Victoria Mitchell. Later in response to a perceptive point from an unseen audience member (please shout if it’s you!) Berit points out that repeat patterns haven’t been in favour in textile design, being dismissed as “decorative” (see 53m30s). As an outsider, I found this surprising, isn’t textiles all about pattern? But it’s also the case in classical music, where music and pattern seem synonymous, but accusing a composer of making patterns would be extremely insulting. In a fantastic blog post Andrew Hugill notes that it “.. implies that you have nothing original to say and fall back on mechanical formulae.” It’s super interesting to me to see “mechanical formulae” as pejorative, which I can feel even though I run a whole festival celebrating algorithmic and mechanical movement!

Both Berit and Andrew are making the same point – that the word pattern means different things in different fields. But in a way it seems it isn’t taken seriously by the highbrow in any field. Andrew points out that designers talk about “depatterning” as important – you start with a pattern in order to get away from it. Berit is implying that once you link meanings of pattern across two or more fields, you get to see how it is misunderstood. You then see pattern as active structure, that is, after all, all around us.

I’m also reminded of Dave Griffiths demonstrating his incredible Fluxus live coding environment many years ago at an event in Rotterdam, with a recursive unfolding form of a fern-like structure, a standard Fluxus demo that just takes a couple of lines. A media design theorist in the audience gave a withering response by pointing out that the animated visual results were ‘decorative’. I suppose he partly meant that this technical demo wasn’t high minded conceptual art (which shouldn’t be surprising, introductory, technical demos rarely are), but I think there is something here about the rejection of fractals and other patterns because they come from an identifiable procedure. It’s as though if you can tell how something was made, then it is worthless. Running counter to this view, Dave’s work always has the principles of openness in its foundations..

I think that from the outside, almost anyone would argue that the fields of textiles and music are all about pattern. But from the inside, composers, textile design academics and media theorists alike reject pattern as decorative, and therefore besides the point and theoretically worthless. This is a disciplinary blindness. We have to rise above these fields to really see pattern for what it is – active structures of making, that allow us to reach beyond our imaginations.

Time spirals

I’ve long thought about time in Tidal as a spiral – where cycles develop over time. I don’t think I’ve really made the connection to vinyl before though. Alexandra posted a DJ battle between D-Styles and Qbert to fb, which lead me to watch this from D-Styles:

The whole thing is great but the one-step back two-steps forward bit from around 1m15s reminded me a lot of shifting patterns in Tidal. I think seeing this repeated gliding happening on a slower scale has really opened up the complexities of turntablism as a whole for me.

It’s also inspiring because it helps me see Tidal’s limitations. Tidal has a spiral timeline which you can manipulate, but not in the same way. When I’ve tried scratching in the past it’s super difficult, I don’t know anything about it really but it feels like you’re constantly managing the state of the record.. It’s one thing to scratch the record and totally another to recover from the needle ending up in a different point in the timeline. I could never work it out by myself.

Tidal doesn’t suffer from this problem because there is no state – you don’t move time, you jump between different manipulations of time. For example if you reverse time, it’s not like moving backwards from where you are. Instead you jump to a different reality when time was always reversed. This is clearer with e.g. slowing down time. If you halve time you might play half a cycle, but then if you double time Tidal won’t continue from halfway through the cycle.. It’ll act as if time always was doubled, and therefore continue from the start of a cycle some way into the future. In terms of a turntable, if you add slow 2 to a pattern, you’re not doing something like moving the pitch slider down, you’re doing something more like swapping the record with another one with the music recorded slower, and putting the needle on the same place as the original.. It’ll sound slower, but you’ll have jumped to a different part of the track. It’s hard to imagine DJing under these circumstances..

Watching this video it’s clear this ‘problem’ of state isn’t a problem at all, but fundamental to the music. It would be amazing if you could do something like this in Tidal – not slow down a pattern, but slow down the timeline.. I.e. add the ability to pattern changes to time, rather than jump around the timeline. I’ll have to think about this, it could be something easy to implement that I just have never thought about..


I’ve been making a video every day this month as part of ‘#jamuary’, got as far of the 12th so far, hoping to get the full set. The youtube playlist is above, and I’m also uploading to the Internet Archive.

Mini tour

I’m off on a minitour this week, linking up Bilbao, Barcelona and Paris by train:

Weds 6th Nov Bilbao – Concert at Azkuna Zentroa
Thurs 7th Nov Barcelona – Algorave @ Hangar (free!)
Thurs 7th+ Fri 8th Nov Barcelona – TidalCycles workshop @ Hangar

Looking forward !

Ojack in the lab

I was happy to host Olivia Jack in the slaboratory (my studio in Sheffield) a couple of weeks ago, between the Live Code Summerschool and workshops at Diversityfest in Rotherham Show. Olivia is the creator of Hydra, a web-based system taking over a good portion of the live coding VJ world with feedback patterns heavily inspired by analogue video synthesis techniques. We had some time for collaboration, and recorded a couple of the things we made. Olivia worked some of her experiments in reading pixel data into kind of pattern generating machines, which she send to my laptop over the OSC protocol so I could sonify them:

There’s also some subtle audio input into the above patch, creating a feedback loop. This felt like a really nice a/v collaboration. I’ve worked with a lot of VJs and other visual artists, and this was the first time I was really looking at visual work while still focused on the code and sound. We tried a range of things but found the above minimalism approach worked great, getting to the point where it was hardly possible to edit code any more because it was so trance-inducing.

We used a HDMI capture card to combine the a/v on my laptop for the recording, which meant I had a window showing Olivia’s desktop on my screen, next to my code. This simple technological tweak helped a surprising amount. Before this I didn’t know it was possible to collaborate with a visualist on this level, because my usual focussed code+sound feedback loop is so damn engrossing. Lots to think about.

The above collab was a bit less minimal, but we tried a lot of things along the way including sampling pixels in circles, and came back to good ol’ sixteen step sequencing on three levels, mapping from brightness to audio filtering in quite a direct way. A lot of fun and the possibilities really open up when Olivia starts mixing in some Hydra patterns to mess with video.

One experiment we didn’t manage to film was using tidal.pegjs by Charlie Roberts and Mariana Pachon Puentes. It’s an implementation of Tidal’s mini-notation for polyrhythmic sequences, and although it’s still a little bit buggy (if not matching with Tidal’s behaviour is a bug) but I think has loads of potential for enabling collaboration through shared metre.

By this I mean sharing underlying a single pattern or sequence between live coders, where anyone can edit it at any time. Rather than playing the sequence directly, each person could use it as a base for pattern transformation, shifting it, doubling it up, making it interfere with other sequences / patterns and so on.. But underlying everything would be this metrical structure. The magic would then come when someone changes that underlying pattern – everything would change at once, hopefully with a perceivable relationship in terms of changing complexity, tactus/tatum and so on. A super simple idea but I think it’d be a lot of fun..

Anyway it was great to find some time to collaborate with Olivia on this, and hopefully will have some outcomes in performance when we’re next in the same city..

This is also something I want to do a lot more of. In this past I’ve organised a lot of algoraves etc where friends have travelled to perform but when I’ve hardly had a chance to talk to them let alone collaborate. So let me know if you’re passing through!

Hack Circus podcast

I had a nice chat with the amazing Leila Johnston recently, and she put it on the internet ! We talked about live coding, weaving and building communities. You can listen on the Hack Circus podcast website or on Apple iplayer, Spotify or playerFM, where you should definitely click subscribe.

Leila’s things are always amazing by the way, check out the Daily Leila, and all the other things. She’ll be talking about some of her AI projects in Sheffield on 12th October, at an event I’m putting together as part of No Bounds festival, more on that very soon..

Summer school performances

The livecode summerschool a few weeks back was a huge success I thought. We had around 40 people in Sheffield, learning Foxdot and Hydra from their creators Ryan and Olivia, and learning Tidal from me and Lucy Cheesman, with the students smashing it with really great performances at the end, far beyond my expectations.

Judging by the feedback, the Tidal workshop went really well (well, all three did), with Lucy reportedly being a better teacher but backed up by my viewpoints as Tidal creator. We spent some time working up a modular worksheet-based approach, with focus on how to perform as well as the technical side of language learning, which I think went really well, and has started me thinking again about the possibility about building them up into something like a Tidal ‘book’. Lets see!

The bit of the summer school that made it out to the evening Peak District excursion!

Ten years of TidalCycles

I started working on musical patterns in Haskell in 2006 (see this old blog post).

But only really shared work on what was to become TidalCycles in 2009 (see Patterns in Haskell and Haskell Hack

So I guess TidalCycles is now 10 years old. Happy birthday!

So it’s nice that I’ve just posted a fresh insight I just had into the way Tidal combines patterns, over on the PENELOPE blog. Pure functional pattern is the gift that keeps giving, looking forward to many more years of insights with this thing.


It was so great working with hmurd + getting two rooms of corsica filled with amazing a/v + great audience! We proved it’s possible to fill a two-roomed event in a top-notch venue with this live coding stuff, and pay everyone almost half-decently (including ourselves!).

It was also time consuming and stressful, and left no time to develop the CCAIFOOD link-up between CCAI and hellocatfood. I also feel I need to explore new ideas and in the process get some forever projects completed.

So I’m going to try to take a moratorium on algorave organisation for a while. Will still be organising some other activities – running the live code summer school, working with no bounds fest on algorave stuff (but with artist development and more diffused through their programme), and hopefully working with a Roma girls group on bringing live coding to a festival in Rotherham.. But focused on artistic development and community building rather than big algoraves (although starting advanced planning for algomech #4 already..).

I have a kind of addiction to event organisation but now I just feel I need more time to focus on my own arts research. If anyone else wants to do algoraves in Sheffield (or elsewhere) then I’m very happy to share tips + resources though! I’ll have some new projects that I could propose too :)