How might we...
Democratise music creation through human-guided procedural
Description Bulbul is a procedural music application that
generates expressive pieces of music using interactive
The project's most recent iteration is deployed on the web
The application is essentially an instrument that
plays an instrument, the musician controls the
meta-instrument which in turn plays different kinds of
melodies on the synths built into the code.
Bulbul won the 'Best Design' prize at PrincetonHack.
User Research Prototype 01: Paper Prototype
Prototype one was a paper prototype. Testing was done on
two different ideas: a digital cave for secular meditation
and the procedural music generation interface.
Key Insight: Procedural music generation is more within
scope. With an interesting interface, the project will be
Prototype 02: Digital Prototype
Prototype two was my first digital prototype. It was a
quick program made with Java in the Processing library.
The objective was to compare and contrast the paper
prototype with the new digital interface.
Key Insight: More playful interface & seek collaborators
Prototype 03: Exploring the field
This round of prototyping was more informal. I wanted to test out
existing music projects and see what parts resonated with people the
Key Insights: Find the sweetspot between avant-gard & familiar in
user interface design. Give simplified explainaition of back-end.
Prototype 04: Execution
After testing previous prototypes, I started experimenting
with the viability of different generation methods. The
main method I explored were Markov chains to generate
sequences of chords, and binary transition matrices.
Prototype 05: Minimum Viable Prototype
This is a full implementation of the generation procedure with a functional UI along with curated samples. Check out the project here.
To create this project I collaborated with Abhishek Cherath
a physics student at Stony Brook University. We executed
this project by setting goals and conducting three 36 hour
development sprints over a semester with user testing
between them to properly orient the development process.
Creative Director, Co-developer & User Researcher.