Apocalyptic folk night, Dec 2018

A recording of the “apocalyptic folk night” that took place in Access Space Sheffield, 11th December 2018 from 8pm until 10:30pm.
Part a:

Part b:

  My contribution was a hastily live coded arrangement of a famous tune that’s used in several songs, in particular the Red Flag, O Christmas Tree, and O Tannenbaum. I gave out lyric sheets with all three versions and asked people to choose which version they sung (based on their politics, nationality etc), or switch between them at random.
We wanted to create a space for an extra-strange open mic night, taking the feel of a folk night but with an open-noise policy. As organisers we didn’t know what to expect, but the room was full and the music was amazing. Even in 2018 it felt like apocalypse was around the corner, but lets keep hoping for a bright future where folk from all backgrounds can come together for music and cheer.
If you were one of the performers, please go to archive.org and comment with part (a or b) you’re in and the time in the recording you started performing thanks very much!
The event blurb:

“An undisciplined night of folk noises from the past and future.

Bring your instruments, voices, laptops, handmade electronics, other noisemakers and your friends.

The idea is to run this like a folk club, with people taking turns to play short pieces, but not subscribing to any particular definition of what ‘folk music’ might be. Non-western, improvised and generally strange music is very welcome.

Acoustic music is also welcome. A PA will be available for laptops etc but to be inclusive to all folk, we don’t expect things to get super loud.

Donations on the door are welcome. Drinks will be available from the bar.”

Compassion through algorithms – vol ii

Very happy to be part of this compilation fundraiser in solidarity with Black Lives Matter, with many algorithmic greats from the more northerly parts of England:

Compassion through algorithms volume II

It’s inspired by the first compassion through algorithms compilation, created by Algorave Tokyo.

Here’s my contribution, ‘prelock’:

I wrote this blurb describing how I made the track:

This track is mainly made by adding numbers together and messing with time, using the free/open source TidalCycles system I made. The main melody is made from the numbers 4, 3, 2, 1, 0 and -1, with the numbers 2, -2, 3, 5 and 7 played between them, set to the notes of a minor scale. Because there are six numbers in the first list, and five in the second, they rotate around each other to create a long melody. Then another ‘voice’ comes in which jumps up by 12 notes (an octave) and is shifted forward and backward in time. The whole thing is 5 beats to the bar, including a sliced up breakbeat which is going on its own journey. There’s also a dirty kick underneath with a steady timeline, changing to the 12 beat African standard pattern right at the end, which frees everything up as it slows down.

Here’s the mess of tranklements that I made it with:

The compilation is Pay As You Feel – all donations very appreciated by the Young Minds Together group of Black girls doing performing arts in Rotherham, looking to rebuild post-pandemic.

Upcoming projects

A few choice projects coming up!

  • Tidal new moon – an online stream of 72 x 20 minute performances with Tidal, to celebrate the new moon 18/19 August 2020, organised by the Tidal Club community. [More details]
  • Call and response commission – an online listening workshop exploring algorithmic interference patterns (22nd August, free, book here), followed by a solo multichannel performance in October. Other commissioned artists are Hannah Catherine Jones, Robyn Steward, Beatrice Dillon, and Shabaka Hutchings. [More details]
  • No Bounds Festival Sheffield, collaborating with Iris Saladino & Munshkr from Colectivo de Live Coders (CLiC) of Buenos Aires, and CNDSD of Mexico City, using the Flok web-based collaborative live coding system to create a multichannel improvised performance in a factory in Sheffield (14/15 Nov, details to follow)
  • Off-site residence with Iklectik London, developing new work with Eimear O’Donovan exploring live coding and the voice, September/October

Looking forward ..

How to withdraw from Facebook

Facebook is a problem.. They happily show political adverts, heavily targeted and very under-regulated, as well as being slow to act against white nationalism and so on.The worst thing for me it was facebook turns us into. It privileges easy controversy, so your feed will be full of people getting angry at other groups but often not dealing with difficult issues in a reasonable and thoughtful way. If by some chance an interesting discussion does start up on facebook, it’s not properly shared or archived. There’s a lot to like, and there’s a lot of hidden facebook mechanics which we don’t know enough about to dislike. Anyway, I’ve recently moved towards participating on smaller, semi-private social groups off facebook and it’s much more enjoyable and productive.

Still, you might not be ready to leave it, wanting to keep in touch with friends and family, promote events and so on.. Using facebook’s own tools to step away can cause a lot of upset, as it will appear to your friends that you’ve blocked them.

A good alternative is to unfollow everyone and every page. If you’re like me that would normally involve 1000’s of clicks to remove all the weird and local pages and random people you’ve somehow friended over a decade or so. Here’s a way to do that automatically, although it takes a while (one unfollow per 2 seconds, to avoid facebook detecting and stopping your plan..), it is hands-off.

Here’s how, in e.g. firefox or chrome:

* Click the Arrow in upper right
* Select “News feed preferences”
* Click “Unfollow people and groups to hide their posts”

Now the tricky bit – to open the “javascript console”. This is what facebook doesn’t want you to do, as getting access to the javascript running in your facebook window is exactly what scammers want to do. (I’m not a scammer, but don’t take my word for it!)

This might be slightly different on your computer/browser version, but.. In firefox, It’s under the ‘burger’ menu in the top right (click the three horizontal lines), then “Web Developer” (that’s you!), and then “Web console” (not browser console). Under chrome, it’s a similar menu but three dots, then “more tools”, “developer tools”, then in the new frame that opens up select ‘console’ in the menu along the top.

At this point you should see a healthy warning telling you not to paste in code. If you decide to trust me and go ahead anyway, click the commandline area (it should have a ‘>’ or ‘>>’ in front) and paste in the following:

var unfollowButtons =document.querySelectorAll('div[aria-pressed="false"]'); unfollowed = 0;for(var i=0;i<unfollowButtons.length;i++) {setTimeout(function(element){ element.click(); unfollowed ++;console.log('Total unfollowed ' + unfollowed + ' out of ' +unfollowButtons.length) }, i*2000, unfollowButtons[i]) }

The browser might get you to do something like type “allow pasting” first, to make doubly sure that you aren’t being scammed. If you do type something like that, you’ll need to delete those words again otherwise it’ll be part of the code and nothing will work..

You should see the displayed people and pages get unfollowed before you, one by one. It won’t do all of them though, just a couple of dozen that have loaded in that page.. To unfollow everyone and everything, you have to scroll down in the ‘unfollow people’ box until they’re all loaded up. Then run the code again.

Then you’ll have a nice calm facebook experience and hopefully will enjoy some improved mental health.

NIME – algorithmic pattern

I gave a paper and performance for the New Interfaces for Musical Expression conferece last week. It was to be hosted in Birmingham UK, but went online. It seems to have been a big success and the organisers are talking about making future conferences online too, irrespective of pandemic emergencies, in the interests of making the conference more accessible and reducing damage to the planet.

My paper “Algorithmic Pattern” is here, and here is a 10 minute demo of some of the ideas in it:

Here’s my performance, demonstrating my prototype ‘feedforward’ editor. The NIME audience seemed to enjoy that I left a crash in..

Hybrid live coding workshop

I’ve been working on the hybrid live coding interfaces research workshop with Shelly Knotts and Jack Armitage, happening online 28-29th July 2020. It was originally going to be colocated with NIME, but we decided to hold it a week later, and twice as long (six hours, spread over two days) so that we could include more people and make registration free.

The abstracts will be up soon, but you can already see the schedule and list of speakers on the website. There’s a really nice mix of talks, should be ace!

With all the responsibilities and stress of lockdown, we made it as quick and easy to propose something as possible. There’s no publication attached, but with it being a free event, and low-barrier to entry, we got loads of proposals. We’re using the very promising pubpub.org system from MIT to collect abstracts, which I highly recommend as a multi-user publishing tool supporting peer review and comments.

hellocatfood x yaxu

I’m really happy with this set with hellocatfood:

You can find some kind words about it over on the mighty CDM, including an exclusive talk-through of the performance between the two of us.

Accessible online courses

Warning – hurried, disorganised thoughts. I will very likely add to and tidy this up later!

I’ve started running a TidalCycles online course. I’m not a trained pedagogue or education researcher, but have run a lot of workshops over the years, and it seems to be going OK, with around 300 people signed up, as accessible as I could make it, while being financially sustainable for me. It’s felt a lot like setting up a space for a community – lots of micro-decisions that add up to the whole. Here’s what I’ve done, from a technical, financial and community perspective.

Firstly, I got people to register interest via this google form. To start with, this was just to collect information, to help me make the course as accessible as possible, work out how to structure it, and decide how much to charge.

I asked about barriers to entry, and the biggies were:

  • (Human) language barrier – lots of people not fluent in English, worrying about that. In response I’ve edited subtitles for all my videos, as many people find reading easier than listening, and (as opposed to automatic transcription) the automatic translation seems usable if people want to read in their own language. I also set up automatic translation in the course forum.
  • Time (working/caring responsibilities, formal education, timezone) – the amount of time commitment really varies, and people have joined from all around the world.. So a ‘live’ course wouldn’t work. Instead I’m making pre-prepared videos (which again allows decent subtitling), worksheets, and asking questions on the forum. I will have live q+a sessions, at different times to reach across timezones.
  • Internet speed – A few worried about this and I haven’t thought enough about it. Probably trimming Tidal’s large library of default samples would make it accessible (actually someone also gave lack of disk space as a barrier). It’s also probably another argument for not relying on live video.
  • Money – I live in the UK, which puts a large part of the world at a huge disadvantage in terms of exchange rate. I do need to get paid, though. Rather than a paywall, I settled on a Pay(-as-you-feel-)wall. I could have made it a student discount etc, or cheaper for certain countries, but there’s no real way to codify people’s ability to pay.. So I left it up to them, with the following guide, for a four week block of lessons:
    • £0 – for those who wouldn’t be able to participate otherwise
    • £12 (£3 per week) – standard
    • £24 (£6 per week) – those with extra cash to spare
    • £40+ (£10 per week) – those with institutional backing
  • Installation worries – Tidal installation can go wrong in a way that is difficult to recover from. I allowed myself plenty time to walk people through the process on the forum. This has worked fairly well, and we now have a forum full of problems and solutions, that I need to organise for greater good!

It was a struggle to find a pay-as-you-feel system that let people name their own price. Crowdfunding platforms like patreon are really geared towards squeezing as much money as possible out of people, with tiers etc. I needed to give everyone the same access but leave it up to them to decide how much to pay, from £0 up. Eventually I used wordpress, with the woocommerce plugin to take payments (via paypal and stripe), “product open pricing” to add pay-as-you-feel functionality (including support for £0), and “advanced order export” to allow export of orders into a csv for import into the course forum. WordPress plugins either seem to be free, or super expensive with a recurring charge.. I’m doing just fine with the free functionality of these. I have my own virtual server for hosting them.

I looked around for e-courseware that could help host the course, but couldn’t find anything suitable. I’ve had nightmares with things like Moodle in the past, and have the feeling that they’re all based around assessment more than anything. Instead I went for a general purpose discourse forum, which I’ve grown to love. It’s free/open source, widely used, has loads of plugins etc available, and is thoughtfully designed around healthy community discussion. Again, I’m self-hosting it.

Having a PAYFwall has some unexpected results. I hardly had to promote it at all to fill it up. Actually with the PAYFwall I feel motivated not to promote it, because it creates a really delicate balance. I’ve noticed this before, with the (in-person) tidal “summer school” weekend course we’ve also run on a PAYF basis. The more I promote, the more ‘semi-interested’ people I seem to reach, and the average payment goes down.. Therefore making the whole thing less viable. At the same time, I’m really happy that people who can’t spare £3 a week (I’ve been there) don’t miss out on the course, or on essentials for them or their families. As things stand, the kind people who are able to pay extra mostly cover those who can’t pay, and it all works out. I’m not going to ‘repay’ the years of work I’ve put into Tidal, but that’s not my aim.. It does look like a serious contribution towards properly funding my ongoing work on Tidal though, maybe its development but definitely its documentation.

Because I don’t know how long it’ll take to get through everything, I’ve just done PAYF for the first four weeks. I think it’ll probably be around twelve weeks in total. I’m expecting some drop-off in participation and PAYF income later four-week cycles, it’ll be interesting to see what happens.. I’ll survey people at four weeks to see how things are going, anyway.

The forum seems to be working well. I’m aware that as ever there is strong “presence privilege” at hand.. For example overall participants seem fairly gender balanced, but men seem to be posting a lot more than others. This is a familiar story with online forums, I’ll have to think about how to keep the culture healthy (ideas welcome!). I also need to work out how to make the course materials easier to find. Currently they might be getting a bit lost in the threads – I think this is just a case of getting around the discourse software, which is nicely configurable.

I have absolute beginners in mind, but a lot of people have joined who have already being self-teaching themselves Tidal. I think they’re happy asking more advanced questions, and picking up on previously under-documented features as I get everyone up to speed.

In terms of the videos, I did have in mind to edit them down with youtuber-style ‘jump cuts’, maybe paying a pro to edit hem. Through feedback I’ve decided not to bother – people seem to like “ums” and “ahs”, giving them time to take in information. So I’m just recording them ‘as live’ with OBS, uploading to youtube, then hand-editing youtube’s automatic transcription.. Then adding a worksheet to match the video for people to go through hands-on. I’ll be working on reference material too. The videos are fairly unscripted, I might write out what I want to say, to think it through, but I don’t then read from that as a script. I’ve found that recording once to get things straight in my head, and re-recording it from scratch makes the result snappier and more logical.. and for a 6-10 minute video, doing a couple of ‘takes’ is a time-efficient way to do things, rather than agonising over a script. I also use a green screen I bought on ebay a while ago, so I can superimpose myself in the corner of my screen.

To give you an idea, here’s a general “intro to live coding” video I did for the Sheffield creative guild, just before starting work on the course videos:

I think an important thing at some point will be involving more instructors, to give different perspectives on using Tidal. I’ve been talking to Lucy Cheesman (aka Heavy Lifting) about this, we worked on the last Tidal Summerschool together and from the post-workshop survey the participants clearly appreciated her teaching skills (as someone who, unlike me, has actually learned Tidal herself!) and alternative point of view.

The final question I have to think about is what happens after. My default position is releasing everything as creative commons, and I certainly want everyone on the course to always have access to the material.. But this is something I have to think about. I will likely either re-run the course, or let people go through in their own time. I’ll probably make everything creative commons (cc-by), but keeping the PAYFwall up, to help sustain documentation and development into the future.. and eventually turn the material into a reference book.

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.