TC Electronic Alter Ego X4: Unbelievable Addition To Music Making

Creativity and functionality, these two ingredients feed music creation with synthesisers. The Alter Ego has bags of both.

'Fantasia on the theme of sanity' [right] is a fairly simple piece of synthesis driven to a strange and constantly shifting place with the Alter Ego. I had an idea of shifting delayed sounds being stimulated from groups of notes with one bar gaps between them. However, that was just an idea. Making it happen in another thing all together.

The Alter Ego helped me make it happen by offering enough modulation options to the delay but not just a blanket 'you can do anything'. Using the tone print editor I had to play with settings and listen and play and listen. The restrictions of the pedal keep all the sounds musical so it is hard to get completely lost. Rather, one can wonder around in a garden of sonic possibilities but never stray beyond the fence into the wider world of just noise.

But there is something else, something that is simply missing with a stand alone audio processor or even most software. Making sounds with the Alter Ego is done in three steps.:

1) Create a setting (chorus, depeth, vibrato, flanger, delay filters, delay saturation etc)
2) Map key aspects of the effect to the three control knobs on the pedal.
3) Tweak those knobs to fine tune the sound for your piece of music.

The Alter Ego X4

Going from 1 to 3 is a lot less musical than going through step 2. That is the genius of this process, the careful mapping of several modulation parameters to the knobs turns a software processing experience into a musical instrument experience and allows an exact matching of the sound to what one hears in one's own head.

It was a lot of fun - Thanks TC Electronics.

Java/JVM POD Part II : It's the economy stupid

The days of sitting around reading about
performance coding are go. We don't
have time to sit around, we need to do it!

Software performance matters now in a way it has not for decades; We really do live in a different world.

In response to my previous post I was asked "does any one care?" i.e. does anyone in the Java community, or any regular day job Java coder, actually care about high performance features like POD and serialisation?

It is a good question but I think one from yesteryear. Things have changed over the last decade a great deal. One way they have changed has been in the quantifiable cost of compute power. Once upon a time, servers were quite underused; often machines would be 10% loaded. Further, a website, payment system or data warehouse would run off a computer (yes - a single computer). Big systems might have had two or even four servers and a hot standby. The cost of the hardware was granular and only considered once every two of three years. A 10% performance gain in the software made no measurable impact on cost. If a system needed a Sun E1600 (or what ever) and then the system was made 10% faster, it still needed an E1600 so the hardware cost did not change.

"You cannot manage what you cannot measure"

Now all the above systems will be running on a cluster, grid or cloud. Reducing a web site from 100 nodes to 90 nodes has an instant, quantifiable financial benefit (your bill reduces instantly). Suddenly the cost of inefficient programs is just that - a cost.

Probably the single best example of a system which would turn POD into saved dollars (or Euros or whatever) is distributed caching. Memory caching is the very life blood of large websites and big data processing. Writing stuff too and from disk is intolerably slow so we cache query results in RAM. But - we cannot cache all the results on one machine because that would form a huge bottleneck; we distribute the caching across a mesh of nodes and the data in the cache is shared out much like a modern NUMA hardware architecture but on a data centre scale. So, we have caches distributed over many nodes and clients moving data in and out of these caches.

Do you see the pattern yet?

Yes, distributed caching necessitates serialisation. Suddenly POD turns to gold.

Here are a few more real world cash benefits to POD and direct off heap access for all POD types:

1) Compute grids for the inter-node communication of queries and results.
2) Pumping database objects over JNI for JDBC drivers.
3) Distributed column based databases.
Photons to the chip will utterly transform the way
we think about node interconnect.
4) Mathematical computing using large off heap stores.
5) Map/Reduce data mining.

Consider this, eventually DMA and other fast interconnect technologies will revolutionise inter node communications in clouds. Fibre to the chip (see Silicon Photonics) will fundamentally reduce latency and hugely increase throughput between the off heap memory of individual processes distributed across grids and in the cloud. As this happens, the current cost of moving data on and off heap for Java will change form a quantifiable cost to a game changing barrier. Nothing in the current JVM road map is preparing this powerful, yet increasingly old fashioned, technology for the onslaught of serialisation demands which are coming.




The Ultimate Expression Of Me

In a small suburban bedroom 33 years ago a nerdy boy played his tune using a computer.


Hand written machine code forced a music from a tinny speaker one bit at a time. Somehow, that moment was never lost.

All these years later, married for 25 years to the most amazing person anyone could wish to meet and with three fantastic children, the adult manifestation of this young boy sat down and made music with another computer. A machine thousands of times more powerful than that with which he played as a child turned the cryptic messages of a beautifully encoded midi into this rendition of JS Bach's Passacaglia And Fugue in C minor. 

Every fibre of my soul soars at this sound. The size, the passion, the beauty. Every note, every vibration, created from nothing but mathematics in the cold sterile brain of a computer. Yet, somehow, the fusion of this great master some 300 years ago and my tiny input on my Mac' have come together to create something which, for me at least, symbolises the human need to create.