On Twitter
- Some insanely cool visual live coding by @h3xl3r : https://vimeo.com/51993089
- RT @katjazorina - Sam @samaaron does live music hacking with Overtone (musical library in Clojure) at @tmpgoesagile http://vimeo.com/60534305 . Awesome.
- @ctford Why would Emacs need to kill germs? It has no bugs...
- Truly amazing storytelling delivering a powerful message. Larry Smith - Why you will fail to have a great career http://www.youtube.com/watch?v=iKHTawgyKWQ&feature=youtu.be
- RT @meta_ex - We just ignited our new website featuring our first demo sample: http://meta-ex.com
- Watch this joyful and approachable introduction to monoids by my awesome office-mate @dorchard: https://www.youtube.com/watch?v=2nkMUr1YC-M
- Profoundly wise and important words by @cemerick: "100% time" http://cemerick.com/2013/02/15/100-time/
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.