top of page

Alexa, Write Me
Some Music

December 2021
Meanjin/Brisbane, Australia

Commissioned by Dots+Loops (Meanjin/Brisbane) to compose a 6-10 minute work for solo cello & electronics, to be performed by Nick Photinos (Eighth Blackbird). Part of the 2020-2021 Dots+Loops Composition Fellowship.


Alexa premiered on 12th December 2021 at the NONSTOP Festival in Meanjin. 

The work was performed by K-MAK (Kathryn McKee).

The official recording from the performance is still being edited, however Flora Wong (Co-Director, Dots+Loops) was kind enough to record the footage below as placeholder documentation.


INDICATIVE EXCERPTS (with respect to "demo" video): 0:00-2:15; 4:55-7:30 (end) 

FORMAT: chamber/concert work 
DURATION: c. 8 mins
SCORE: staved score with semi-randomly generated pitch, duration & accidentals
PERSONNEL: solo cellist
ORCHESTRATION: solo cello & generative/interactive electronics


- programmed in JavaScript & p5.js/Processing

- generative notation

- machine-learned pitch detection (ML5)

- real-time speech synthesis & recognition (p5.Speech)

- use of Google Web APIs (for speech functionality)

- browser-compatibility (via GitHub Pages)


Click here or navigate to:

To begin:

1. Type "s" (for "start").

2. Enable microphone access if required.

3. Say, "Alexa, Write Me Some Music."

Please note that the current version does not support a custom name - Alexa will refer to you as "Nick" or "K-Mak" (the cellists who the piece was commissioned for and premiered by, respectively).

An upcoming version will allow you to type in your own name!

Override keys:

- Use "p" (for "progress") to progress to the next note in a bar if you do not have a cello or piano on-hand.

- Use "q" (for "quit current event") to move to the next event if the speech recognition (or any other function) fails to recognise your words.


- This program has only been tested in Google Chrome. Please be aware that other browsers may not run the program successfully.

- Speak loudly and clearly, especially if (like me) you have a non-American accent.

To download the source repository, please see the links in the "Documentation" section at the bottom of this page.


Alexa, Write Me Some Music, written for solo cello and electronics, is a work which operates across a series of inversions: performance and rehearsal; human and machine; private solitude and bombastic external commercialism; instrumental virtuosity and verbal conversation. The work spans the narrative trajectory of a cellist completing their daily rehearsal, which comprises a series of sight-reading passages randomly-generated by their mobile-phone AI assistant (Alexa). Yet as the passages get more rapid and increasingly complex, Alexa also begins interrupting the rehearsal more frequently with advertisements. To continue practicing after each commercial, the cellist cannot sit back and wait for the ad to finish, nor click a “skip ad” button. Rather, the cellist must verbalise a phrase chosen by the advertiser; once this is recognised, the next passage is made available. The advertisements become progressively more frequent, longer, and more suspiciously targeted to insult the cellist and induce them to give up their rehearsal. Eventually, Alexa suggests to the cellist that they should “simply quit,” before instructing herself to “play some music from a cellist who didn’t skip their practices.” Yo-Yo Ma’s rendition of Bach’s Cello Suite No. 1 then begins to play, and the piece concludes. Beyond its technical proficiency, Alexa foregrounds a typically private ritual – solo instrument rehearsal – and articulates the coincident practicality and frustration of everyday technologies. The work also satirises the incorporation of surveillance technologies into our daily lives, adopting a sardonic gaze to illuminate “smart” devices’ increasingly insidious ability to capture and interpret data for commercial purposes.  

Program Notes

It’s perhaps 2021’s most ubiquitous frustration: you load up a hilarious video to show a friend, or queue a tune on your favourite streaming service…and you’re bombarded with pre-emptive ads, a mocking timer counting down the seconds until you can continue. Often, to rub salt into this commercially-induced wound, you’re snidely reminded that you’ve only yourself to blame – if you weren’t such a spendthrift, if you'd just bought a subscription to the service, there’d be no ads at all! Not long ago, I read about a patent filed by a certain television manufacturer, who are designing interactive commercials wherein viewers not only have to sit through an ad, or even actively click past it, but must actually verbalise a key phrase to continue. For example, a blaring fast-food plug might be skipped by yelling “cheeseburger” at the screen (see diagram from the patent documents below). Advertisers are, after all, concerned that modern consumers have learned to tune out the aural assaults of media laden with interminable promotional content - how tragic. The articles discussing the technology imply it to be somewhat outlandish, somewhat futuristic – but it doesn’t really seem all that far away.

I began contemplating how this idea might translate into the musical context: Alexa, Write Me Some Music is the result. Composed for solo cello & electronics, the work was commissioned for performance by Nick Photinos (Eighth Blackbird) as part of my Composition Fellowship with Dots+Loops (2020-2021, Meanjin/Brisbane, Australia). Nick instructs Alexa, his trusty mobile-phone AI assistant, to compose him some sight-reading for a regular practice session. Alexa complies, supplying a randomly-generated series of increasingly difficult passages…and punctuating said passages with suspiciously targeted advertisements. As the ads get progressively longer, the passages of sight-reading get proportionally shorter; in the final passage, only one note is played before the system fires up its commercial content. After each advertisement, Nick is prompted to repeat a specific key-phrase in order to continue onto his next cello passage. At this point, Alexa insults Nick for his lack of practice diligence, and suggests that he give up altogether. She then commands herself to play some music “from a cellist who didn’t quit their practices early,” and begins streaming Yo-Yo Ma playing Bach’s Cello Suite No. 1.

Alexa, Write Me Some Music lies at the intersection of contemporary instrumental practice and performance-art; the solo cellist is required to act out the narrative scenario which structures the work while also proceeding through a series of increasingly convoluted instrumental passages. Alexa problematises distinctions between public and private experiences of music. The rehearsal space is typically one encountered alone or perhaps with an instructor – the same is true of the innumerable interactions we each have on a daily basis with our personal smart-devices. This inversion of the social context in which music is practiced (quite literally) is extended to a dialogue around the nature of virtuosity: for the cellist performing Alexa, the theatrical aspect is that rehearsed in advance, whereas the notes themselves become the unprepared element, the unknown quantity. This tension between performance and rehearsal is then itself juxtaposed against the unwelcome injunctions of the incessant advertisements, each of which works successively more overtly to disconcert the performer’s own musicality. Constant commercial incursion is an overwhelmingly familiar aspect of twenty-first century experience; here even an informal musical ritual is thus commodified. The advertisements are self-evidently satirical. Or are they? Their impertinent undertones and unscrupulous methods of persuasion could plausibly have been borrowed from the world of the “real” Alexa. The piece converges at the moment when Alexa wrests control altogether from the cellist. Demarcations between the real and the imaginary; the public and the private; the human and the humanoid; have become uncomfortably porous. But that’s ok – it’s just make-believe, right? Right?

Alexa, Write Me Some Music is programmed entirely in JavaScript, using the p5.js framework (the JavaScript fork of the Processing language) and its affiliated p5.Sound, p5.Speech and ML5 (machine-learning) libraries. The speech recognition and speech synthesis rely heavily on the Google Web API for speech. Credits for specific code and examples are given in the source code, available at the bottom of this page. A browser-hosted version of the project is currently being developed (watch this space!), however recent updates to Google’s Web API have complicated this implementation. All multimedia material used in Alexa is either my own, taken from Creative Commons 0 libraries, or is credited in the code.


Click here to download the information on this page in PDF format.

For the in-browser version of this work (i.e. no downloads required), please see the link and instructions in the red section near the top of this page.

To download the full repositories of source code, assets and library files:

- via GitHub (recommended)

- via Google Drive

Please note you will need a current version of Google Chrome and an active internet connection to compile/run the programme.

Note also that Google's Web APIs make autoplay very difficult, which is great for our online security, but not so great for composers writing interactive speech-recognition pieces (that's me). Please ensure you have enabled autoplay in your Chrome settings

bottom of page