Innovation as Easy as Raspberry Pi

One use of the information radiator displays the Hindsight rapid board view. This board has a column to show features branches (issues) that need to be merged back to master and we conduct peer code reviews at this stage (using pull requests) and the non-assignee will perform the merge and close the issue. We use JIRA workflow rules to enforce this with the help of the visual workflow designer.

Hindsight, a startup in the London Silicon Roundabout, are a great example of how Atlassian software has helped companies get productive quickly. Our GreenHopper and JIRA software help Hindsight manage their work and focus on the most valuable activities to gauge how much return they are getting from the investment they put into their ideas.

Read More

EuroClojure - Developers Get Musical With Overtone

Sam Aaron and Jeff Rose gave a whirlwind tour of creating music with Overtone, an open source music generator written in Clojure.

You can define your own instruments, map keyboards and other synthesiser hardware, all to make some funky sounds - although you probably want to have headphones on when experimenting!

@samaaron with overtone you can sit on a train and make musicI had fun creating my first overtone project from scratch at the last Overtone Hackday. Have a look at how I set up my environment.

The Design of Overtone

Music is not a very easy concept to define in software. Typically you start with a synthesiser and work your way up to notes and chords. Eventually you may get to a music piece, but this is often driven by a hardware keyboard and recorded.

The difficulty is that everyone has a different idea of how to describe music.

Overtone comes in two parts. The Super-Collider generates all the sounds from over 500 midi building blocks, essentially you create a directed graph that returns values to represent those sounds. The clojure project part allows you to define instruments (synthesisers) and orchestrate these instruments together.

Basic approach to making music

Overtone generally works on the principle of subtractive synthesis. You create a number of different sounds by defining individual instruments and by adjusting the time and frequency of the sound wave to vary the sounds produced.

Once you have some instruments, then adding an envelope generator will give you a changing sound through time by, essentially multiplying the sound by the envelope.

Join sounds together by creating a player function that takes a time and plays the instruments - adding durations to the sound.

To spice up your sounds you can then experiment with playing two different frequencies at the same time, referred to as multi-channel expansion. A resident low pass filter is also fun to experiment with.

Sam and Geoff showed off what they call the stepinator, which seems to emulate a square wave form which steps through a series of values over time. This created some Buck Rogers style music.

Eventually you will want to use an external keyboard or some hardware device to pay your music as calling functions over and over again from within the REPL will only get you so far. If you map functions, frequencies, etc to the external player controls then you can play your clojure code..

Getting Visual

To make the music come alive even more, you can use the Java processing framework. Instead of calling processing directly, you can use the clojure project Quil to visualise the overtone sounds, creating a sphere and controlling the size of the sphere with the different frequencies of the sounds.

Get collaborative

Sam and Geoff are trying out different ways of sharing the REPL so they can jam together. Many people are sharing their sounds on freesound.org, a collaborative database of Creative Commons Licensed sounds. Browse, download and share sounds

Get started

Read the Overtone documentation to get started or have a look at my setup on Ubuntu. Dont forget to experiment.

Thank you.
@jr0cket


This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License, including custom images & stylesheets. Permissions beyond the scope of this license may be available at @jr0cket
Creative Commons License

Dibi Conference Aftermath - Designers Get Coding, Developers Get Creative

Some conferences are huge, some are very social, some are highly technical. DesignIt, BuildIt was the most creative and moving of experiences I’ve had in a long while. It has really inspired me to add so much more creativity to my coding projects.

There were some amazing speakers at this years DiBi, split into Developer and Design tracks. I took the opportunity to delve into the design track and learnt so much more than I can capture in one blog. So here is the first highlight from what I felt were the most passionate speakers.

@seb_ly - Hybridify yourself

Seb Lee-Delisle opened the day by making is all think about the possibilities when you combine creative design with technology.

JavaScript has really evolved to be a highly productive tool, when coupled with graphics tools like Processing and WebGL some amazing games and animations can be created really easily. For examples, take a peak at creativejs.com, creativecodeingprodcast.com and OpenProcessing.org.

With these kinds of tools at hand, there is no reason designers and coders shouldn’t code their own creative works. Althought there is still a big gap between these two disciplines, even at the DiBi conference there was The valley of incomprehension, with most people defining themselves as either designers or developers. Seb encourages us all to be a bit more of a creative coder!

coder + designer == creative coder

Seb also reminded us how easy it is to code something creative, with just one line of code on a commodore 64 emulator. Taking this further with code.seb.ly and 10 minutes of live creative coding in JavaScript, Seb created an eye-catching visuals that responded to mouse control and gravity.

Most coders get into it because they want to play games they create. Its much easier to create games than you think. When you get designers and coders working together it improves the communication and helps share skills. Designers discover much more when they learn to code. More importantly, working together helps share ideas; if designers and coders work together they can implement ideas in the easiest possible way.

Developers find the creative process hard, as many are too used to thinking literally. The more developers are part of the creative process, the more appreciation they will gain for it.

Developers should take the time to play with visuals more, start with small ideas and playing with tutorials to learn how to draw with code. By looking at the examples at communities like OpenProcessing it will help inspire coding towards more creative goals and help give software an experience that people have real affinity for.

In the next blog about DiBi12 I’ll cover Dan Ruben (Moo) and Cameron Moll. Both inspired in very different ways.

Thank you.
@jr0cket


This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License, including custom images & stylesheets. Permissions beyond the scope of this license may be available at @jr0cket
Creative Commons License