About InB♭InPython
What is this?
It's a web-based art installation: a musical score, written in Python, that performs itself in the browser.
Why in B♭?
In 1964 the American composer Terry Riley (non-SSL homepage) wrote "In C": fifty-three short musical phrases on a single page, to be played by any number of musicians, each repeating each phrase as many times as they please before moving on to the next. This isn't so much a composition as a set of instructions for wonderful community music-making.
It was also the birth of musical minimalism.
Here's a wonderfully mesmerising version by Africa Express; performed in Mali, played on a mix of western, traditional African and modern electronic instruments:
Inspired by "In C", in 2009 Darren Solomon invited musicians to video themselves playing in the key of B♭ and upload the results, so that any of the videos, started at any time and in any combination, would harmonise together. The result, In Bb 2.0, is a quietly wonderful and hopeful corner of the pre-enshittification web, and its FAQ warmly invites remixing - a contemporary form of community music-making.
InB♭InPython is such a remix.
It combines the essence of "In Bb 2.0" with a focus on playful creative coding as a means of musical expression and experimentation. It's open source, and the code is the score, so you can modify it, and share your changes with others; yet another form of community music-making (through community coding).
How?
Your Python code, in effect the musical score, makes
you the conductor. Press Play and the performers enter
the virtual stage, until the piece plays itself out; press
Stop to return to the code. Randomness is a fun aspect of this,
and defining the seed makes chance repeatable: the same
seed is the same sequence of randomness every time. It guarantees that
the same score will always produce the same performance so you can
share your own remix with others.
One performer speaks rather than plays: Information, a beautifully thoughtful poem written and read by Daniel Donahoo. If the poem emerges, its words rise across the stage as it speaks.
There is no JavaScript at all: MicroPython runs your score in the browser via Browser Friendly Python, which also builds the stage, seats the performers, and listens for each one to finish. The editor is CodeMirror.
View the source; it is all there.
You have a lot of creative freedom: read the docs, see what you can do, and make something enriching to share with others.
InB♭InPython was created as a contribution to 2026's PyLadies Conference. PyLadies is an international mentorship group with a focus on helping more women become active participants and leaders in the Python open-source community. Please consider supporting their efforts.
Peace,