On Twitter
- About to head to London to start the Overtone tour of the bay area with @rosejn - our main gig being the glorious Clojure/West conference.
- Really looking forward to giving a talk on Live Programming, Music and Overtone at Wolfson College this afternoon.
- RT fyuryu Shoutouts to @samaaron for giving clj-processing that special touch. Now it's called Quil: http://bit.ly/wiQpMx
- RT ktcoders Tired of compiling!? Live Code Processing w/ Clojure http://kitchentablecoders.com/2012/03/10/001...
- RT avsm I don't often cry with joy, but when I do, it's because of 3000 new cycle spaces in the train station! http://www.cambridgefirst.co.uk/news/3_000_bik...
- @stevelosh Try walking before you run :-)
- @stevelosh Doesn't the README already give you enough to get started?
- @stevelosh Quil version 1.0.0 hasn't been released - it's still in SNAPSHOT. No formal announcement has been made. Doc patches accepted :-)
- @stevelosh Do you want the moon on a stick? Every fn has a docstring, the API is explorable and look: examples galore! https://github.com/quil/quil/tree...
- RT cassieldotcom @otfrom @samaaron Meanwhile: teaser for tonight: youtu.be/YW-0MU7U3JY
- @otfrom @cassieldotcom Quil is a complete overhaul of clj-processing with the original author's blessing :-)

Welcome
I am a researcher, software architect and computational thinker with a deep fascination surrounding the notion of communicative programming. I see programming as one of the many communication channels for descriptions of formalised process of any kind, be it a business process, a compiler strategy or even a musical composition.
My Research & Work
My Ph.D. research focussed upon the design of Domain Specific Languages in order to allow domain concepts to be communicated and transposed more effectively and efficiently. I am actively involved in applying these techniques within academia and industry, empowering project collaborators to have greater insight into the software being built. The impact of this work has led to both clarity and greater focus within collaborative project teams by eroding many of the language barriers that exist across domains.
My Approach
-
I treat my work as a craft.
-
I strongly believe that the pursuit of conceptual efficiency is more important than that of computational efficiency.
-
I am passionate about working in small teams of smart, motivated people and continually seek opportunities to learn, develop and share skills and knowledge with others.
-
I believe in the value of open source software, and aim to make significant contributions to such projects.
-
I see software primarily as a form of communication that is not just limited to a conversation between a programmer and the computer but between many participants all of whom have an interest in understanding parts of the software.
-
I’m inspired to improve our ability to communicate, providing people with greater freedom to express themselves in order to collaborate and share their ideas.

Improcess
I lead Improcess, a collaborative research project within the Computer Laboratory at the University of Cambridge. Improcess is an effort to combine powerful programming languages with tactile and linguistic user interfaces to build new forms of musical device with a high capacity for improvisation.

Overtone
I am a core contributor to Overtone, an expressive Clojure front-end to the state-of-the-art, realtime sound synthesis server SuperCollider. Overtone facilitates a very high level exploration of musical ideas ranging from synthesis and sampling to live-coding and instrument construction.

Monome
I’m very interested in communicating intent through the manipulation of tactile interfaces in order to explore and manipulate the internal state of live software processes.
My main avenue of exploration is using a monome - a grid of backlit buttons capable of bi-directional communication. In addition to this I’m also experimenting with a selection of other devices such as a 3D Mouse, a rotary knob, touch devices such as the iPhone and iPad and home-made arduino powered interfaces.