Slow Growth of Mastodon

I used to use twitter quite a bit, but now it’s run by a hard-right weirdo who wants to defeat the “woke mind virus” and pays awful people including Andrew Tate large amounts of money to use the platform now known as X, it’s untenable. If you’re part of an organisation that still uses X as a primary mouthpiece, please do something about that – it’s a terrible reflection on you. You’re forcing people to log in to a toxic website just to stay up-to-date with your news or access your customer service. A lot of big and small organisations, including the EU Commmission, the BBC, and of course Then Try This are building a mastodon presence, which is great.

Anyway, I’ve been really enjoying Mastodon/fediverse for a while now and my experience has been really great, and getting better all the time. For sure there are downsides, but the federated (i.e., kind of e-mail-like) model is like a return to the old-style Internet and feels like home. You can find me at:

If you don’t already have a mastodon account, just like with choosing an e-mail host, there are a lot of servers to choose from. The server I’m on is not accepting new users currently, but you can follow me from just about any other server. It’s can be nice to join a smaller, well maintained server with a local community that you can immediately engage with (you can usually see a timeline of posts local to the server separately from the people you’re following). Here’s a few servers which some of the people I follow use:

  • – “for people interested in thinking creatively and critically about technology, in the broadest sense”
  • – “for musicians, sound-artists, producers of any kind of aural noise, songwriters, bedroom producers, sonic manglers and algorave livecoders”
  • – “instance for all the ravers in the universe. Anyone who listens to electronic music (or not) is welcome.”
  • – “open to anyone who is interested in technology; particularly free & open source software”
  • – “for Human-computer Interaction researchers and practitioners”
  • – “a safe space, LGBTQIA+ and BLM, primarily comprised of tech industry professionals world wide”
  • – “all things creative, all on a platform that is community-owned and ad-free. NO AI OR NFTs ALLOWED.”
  • – “an instance for artists, researchers, and activists interested in exploring the intersections of technology, culture, and politics”

You can also join one of the really big instances like

If you join one, but decide to move to another, you can take your followers etc with you, so it’s not a decision for life. Be sure to introduce yourself with a post adding an #introduction tag.

My publications list – updated

My publications list was missing some entries and many of the PDFs. I started uploading everything to Zenodo, but although they archive things well, it’s not ideal as a publications list, for example you can’t browse by publication date. So now I’ve switched to keeping my zotero publications list up to date. It’s really perfect for this, and it was quick to add PDFs to as much as possible – it does its best to convert any URLs/DOIs to PDF attachments. It still took a little while to tidy up, but considering how long it took to write, it is worth the little extra time and effort to make it easy to find and read!

The list is viewable here on, but probably best to view directly on Please let me know if you spot something missing.

Tidal 2.0 beatMode (TidalCycles vs TidalBeats?)

I’ve been rewriting Tidal again for a while but resisting actually using it, mostly out of a weird sense of delayed gratification.. Ideas expressed as code can get fixed once they become instrumentalised in a end-user interface..

But I’m finally starting to get a feel for Tidal 2.0. It’ll have two sides to it, the existing cycle-oriented pattern transformations, and a new realm of beat-oriented transformations. I wasn’t sure how both could be contained in the same interface, but just by renaming a function from toCycle to beatMode, I can start to get a feel for it. Here’s a tech test (not intended to sound nice!):

In ‘beat mode’, most things will look the same, but act differently. E.g. when you reverse a pattern in beatmode, the whole sequence gets reversed, rather than every cycle reversed independently. Even the mini-notation works, but becomes beat-oriented.

There’s a lot of reworking that’s gone into this. There’s now a Signal type which is like the old Pattern type, as well as a new Sequence type. Both Signals and Sequences are instances of a new Pattern typeclass. The nice thing is that the Signal and Sequences definitions are becoming mostly concerned with how to align and combine things of their type, most of the pattern operations can then be defined in terms of the more abstract Pattern typeclass.

This is only just starting to work, and already it’s fun to play with beatMode with its very strong polymetric affordance. It reminds me of early days of Tidal, when it was only beat-oriented. I love polymeter, and although the mininotation has always made it fairly easy to play with, it feels good to be able to do that outside of the mininotation without having to calculate ratios by hand.

Really though the payoffs for all this work are still to come. Coming up with a nice code interface for doing Carnatic-style addition/subtraction/manipulation of beats fluidly, following Aravind’s work. Also exciting are the possibilities of formalising alignment of sequences before combining them – I’ve been feeling my way around alignment of patterns for a while, including some prototyping in Strudel, and the possibilities feel limitless at the moment..

Of course beat representation is normally the very first thing you would implement in a music tech, using lists/2d arrays etc. It’s fun though to push against the usual grid-based approach, which tends towards score-like representations that are very much geared towards recording/transcribing, and not manipulating or indeed live coding with.. I continue to feel that staff notation, piano roll and all those DAW music interfaces that have flowed from them have really limited music, wherever they dominate. Lets see how it goes.

How to start a movement / love is the message

I’ve been thinking a bit about leadership over the past year or so, especially since being awarded a ‘future leader fellowship’ to explore algorithmic patterns.

Here’s a fun 3 minute talk from Derek Sivers that gives an interesting perspective on this:

His take-home is that leadership is over-rated, it’s really the second and third person who starts turning a lone weirdo doing something strange, into something with real momentum. I can definitely see this with the movements I’ve been involved with (e.g. dorkbot meetings, Placard headphone festivals, TOPLAP, Algorave, TidalCycles and the fledgling Pattern Club). A big part of their success has been in a) folks coming along and taking on an idea, and pushing it forward in their own way and b) co-founders being happy about that, not centering themselves too much or constraining things, letting the movement have its own life as it spreads. An Algorave in Mexico City will feel different from one in the UK. Good !

I think there is another message in this video though. There’s a clear sweet spot in this ‘movement’, about 1m45s in. The people are having a wild time, getting to know each other, expressing themselves together. After that it quickly gets swamped, and by the end it’s completely lost. People are standing around looking confused, probably not even knowing why they’re there, they just went towards the crowd. The movement was not only created inside 3 minutes, but also extinguished itself. By the end it’s just a very conventional crowd vaguely waving their hands in the air.

That’s not necessarily a bad thing, of course it’s totally fine for a movement to have its time. The Dorkbot meetings of ‘people doing strange things with electricity’ spread from New York City to dozens of places around the world in the ’00s, but there are very few active dorkbot events happening now. If a movement persists for a long time, then it’s not leaving space for new movements to grow and flourish. (This is why institutionalised movements, e.g. electroacoustic music, can sometimes feel ‘stuck’, and as if they’re punching down).

Maybe part of the problem is that we’re living in cultures with a really unhealthy attitude towards growth, and in particular wilful ignorance of the consequences of overgrowth. Perhaps you can see it in the “how to start a movement” video, but you can surely see it in our increasingly polarised economic system.

I’ve been enjoying the ‘Love is the message‘ podcast a lot, where two cultural theory professors and soundsystem enthusiasts chat about radical musical movements from the 1960s onwards. David Mancuso’s parties in NYC Loft are a clear obsession, and it’s pretty fascinating how someone like Mancuso instigated counter-cultural change by making space for things to happen, basically putting parties on in his house that challenged the social (and financial) rules that constrained conventional commercial venues, to instigate change in the world ‘one lounge at a time’.

So maybe doing something weird, inviting people to join you en mass (a reasonable prospect if we can find the right balance of controversy and relatability to make a social media post or TEDx talk go viral), and quickly getting swamped by your own meme isn’t the best approach to leadership. Instead, it could be better to focus on doing things on a small, local scale, while embracing the out-of-control nature of ideas.. A collective approach where you make space for ideas to be explored, in a way that they can spread without a centre. Love is the message, indeed!

Performing openness in academic publishing

I was unsure about writing this blog post, but today I was turned away from signing up for the openly-advertised University of Sheffield’s Open Research initiative’s inaugural annual Open Research lecture for not being a current member of the institution. So urged on by a deep sense of irony, here I am with a rant about trying to publish a book open access.

After much collaborative work over many years, I’m really happy that the Live Coding book came out a couple of weeks ago, on MIT Press. A fresh editorial team at MIT were really helpful and responsive in taking it over the line, with copy-editing helping iron over the different voices in the book into what I think is a great text that I hope people will enjoy.

Between four of our institutions – the Deutsches Museum, London South Bank University, Nottingham Trent University, and University of Sussex, we raised the $15k subvention necessary from European and UK public funds to make the book open access under a Creative Commons Attribution-Sharealike license. As I understand it, this $15k was required to cover the loss in sales revenue due to the ebook/pdfs being made freely available. Given the live coding topic, it’s great that this means that not only is the book free to read in ‘digital’ form, it can in theory be modified while it’s being read.

In practice though the road was a bit bumpy. Although all copies of the book are openly licensed into the creative commons, some are nonetheless paywalled. Indeed, the ebook is has wide digitally distribution to the kindle, apple, google, kobo etc ebook stores where you can buy access to this creative commons license for $25.99. Unfortunately, the digital rights management (DRM) imposed by the store makes it difficult to benefit from the freedom to share and modify the text that the open license grants you. So really, you are paying $25.99 to lose benefits. No wonder creative commons are against this kind of DRM.

Worse, the MIT Press website steers you towards these digitally-rights-managed, $25.99 paywalls and away from the otherwise identical free-to-download ebook that we paid the subvention for. If you click the big ‘ebook’ button, which tantilisingly has no price next to it (screen shot below), you are directed to the Penguin Random House commercial distribution of it:

To access the ebook for free, you have to instead click on the ‘resources’ tab, and find a link to the epub or mobi ebook download there. Of course, this isn’t a mere resource for the book, but the actual book, so that’s a bit like hiding the free download behind a door that says ‘beware of the leopard’. I did negotiate putting some text on the bottom of the page pointing to this badly named tab, but unfortunately the tab could not be changed and the ebook links couldn’t be added to the front page. It also took MIT over a week after publication to make this resource tab appear, the non-paywalled ebooks weren’t available at all via MIT until that point. [Edit: To clarify, this was due to technical issue with MIT’s service provider which I now understand was causing serious problems across MIT’s site. I didn’t mean to imply that there was anything nefarious in this delay.]

You can also click on the ‘open access’ tab. After a couple of clicks this takes you to a different website, where the book is freely downloadable, but as fifteen separate PDF files. Many people (myself included) would find reading a book as separate PDFs awkward to download/sync to an e-reader, and difficult to read – the layouts are designed for print. So for most people, they’d want to click that ‘resources’ tab.

Actually, although ‘open access’ is a familiar term for academics, according to my (unscientific) poll on mastodon, unless you have an academic background, you probably don’t know what it means. So ironically, ‘open access’ is academic jargon, which acts here to guide the user away from itself.

MIT were happy to discuss all these issues, and to some extent agreed that the situation isn’t ideal, but nothing could really be done. They were open about the fact that they relied upon these ebook paywalls for ‘open access’ books to make the them financially tenable, even with a $15k subvention. They said that ‘epub’ ebook files will in the future appear on the ‘open access’ site alongside the per-chapter pdfs, which is good news. They also suggested we made our own website where the ebook can be downloaded, which we’ve done at, but really, promoting and distributing a book is the job of its publisher.

I believe that MIT Press are a non-profit themselves, so this isn’t about profiteering, but about the pragmatics of publishing research products in a financially sustainable way. The end result though is that authors can raise funds to make their books open access, but the publishers are still motivated to make people pay for them anyway. Actually for this kind of book, authors get some royalties too, so have some motivation to increase commercial distribution of open access books as well. That seems particularly unethical – authors personally paid to subvert the open license that they’ve used public funds to pay for.. When they were salaried via public funds to write the book in the first place! (I hearby pledge to donate my cut to an open source project.)

So I guess open access can be a kind of performance done to placate the funding requirements that come with public funding, and not a genuine effort to make publicly funded work readable by everyone. If you are considering publishing open access, my advice is to think and negotiate hard before signing the contract, to be clear about what versions will be creative commons, which of those will be open access, and how they will be promoted together. The best thing to do is retain copyright, then I believe according to the creative commons licenses, you have control over DRM.

All that aside, it is a lovely book, and it is especially nice to be able to hold a physical copy in my hands, and read it afresh.

Live Coding: A User’s Manual

Live Coding: A User’s Manual is the first comprehensive introduction to the practice and a broader cultural commentary on the potential for live coding to open up deeper questions about contemporary cultural production and computational culture. This multiauthored book—by artists and musicians, software designers, and researchers—provides a practice-focused account of the origins, aspirations, and evolution of live coding, including expositions from a wide range of live coding practitioners. In a more conceptual register, the authors consider liveness, temporality, and knowledge in relation to live coding, alongside speculating on the practice’s future forms.”

A book written over a period of many years, together with the lovely Alan Blackwell, Emma Cocker, Geoff Cox and Thor Magnusson, and many more contributors. Read it here!

Talk abstract: Pattern and groove in live coding

I’m happy to have a talk accepted for the first groove workshop happening in Jan 2023, “an online meeting seeking to bring together researchers from a wide range of domains and with differing research questions and approaches, all centered around the topic of musical groove.” Here’s my abstract:

Live coding is a performing arts practice, prevalent in computer music, where people write and manipulate code to make live music (Collins et al, 2014). It is an umbrella term for a varied range of approaches, but this paper addresses improvised live coding, where performers begin with a blank page, and write code to make music ‘from scratch’. This often take place in nightclub and festival contexts, where people dance to live coded music at events known as ‘algoraves’.

The concept of groove (Duman et al, 2021) offers a challenging viewpoint on live coding. On one hand, groove is an unspecifiable and embodied experience, whereas code is clearly an explicit, formal specification and therefore seen as disembodied. How can groove find a place for itself in code-based music?

The concept of tacit knowledge throws light on this situation by offering the idea that we “know more than we can tell”, the classic example being knowing a face of a friend so that we can spot them in a large crowd, despite not being able to describe their face in words to any level of detail (Polanyi, 1966). Groove is tacit, as something we know without being able to articulate. Accordingly in Polanyi’s terms, we say that groove is proximal – close yet inexplicable, whereas code is distal – distant and therefore explainable.

A key property of tacit knowledge is that proximal knowledge can be used to structure distal knowledge. Applied to live coding, this suggests that although code generates music, from a human perspective, it is rather the close experience of music that structures our understanding of code. We can say then that code is meaningless until we run it and experience its output – only then can we read that code from the perspective of the music. To use another metaphor, the code is the map, the music is the territory, and we can’t read the map until we know the territory.

Through this talk, I will explore the practicalities of this tacit relationship between computation and experience, and generalise it from live coding to heritage pattern-based craft practices.

Interview with Benjamin Tassie

Here’s a nice interview I did with lovely fellow Sheffield-resident Benjamin Tassie, for his Future Classical show on Resonance FM. It was a fun chat and the 64th episode, you should definitely check out all the others – so many good people!

Chat with Kate Sicchio about Algorithms, Patterns, Robots and Errors

Kate Sicchio and I had a nice chat about our interest in patterns as part of this year’s International Conference on Live Interfaces, organised by Adriana Sa. I really enjoyed this format, the informal nature of it somehow got a bit deeper as an interdisciplinary exchange than a usual overloaded powerpoint-style conference talk.

Appearance on ZINE podcast

I had a great time chatting to Axel, Okkie and Ziphoid for the ZINE podcast, which is all about the demoscene – a really nice movement which has it’s own kind of live coding..