Hi. My name's Lee Reid. I am the creator of the free music notation software Musink, which was written under incredibly unusual circumstances. Here is how and why it happened.
Cakeburger.com have created a fantastic illustrated/cartoon version of this story. You can read it here.
After finishing my Masters in Medical Science at The University of Auckland, I took a year off - or what was meant to be a year off - and worked as a medical writer. After a few months of work I developed a pain disorder: first in one arm, then the other. It got to the point where I could no longer work. Then it got worse. I saw a series of doctors, physiotherapists, neurologists, and other specialists but no-one could diagnose or otherwise understand it.
Soon, I reached the point where I was too sick to work, drive, or play my instruments. At its peak I could not even leave the house, as the minute vibrations from walking or being a passenger in a car would cause intense pain. My arms withered. It was pretty awful.
Being unable to do almost everything is inexplicably frustrating, especially as a musician. I couldn't play instruments, but I still had ideas for music composition. Seeing as I couldn't even use a pen and paper at the time, this wasn't much use. I joked with my sister that if decent music notation software existed, I'd be able to write music with my feet.
I'd been frustrated with conventional music writing applications for over a decade. They are extremely clunky to write music in - if you haven't used one, it's akin to writing a word document by dragging and dropping letters, one by one, across the screen and onto the paper. Of course, you can always use a MIDI sequencer, but a giant grid of squares is really no substitute for sheet music.
Given my excessive spare time, I rethought the whole writing process. If you were to redesign it from scratch, how would you do it? How do you write music when you write it by hand? The idea I came up with seemed to be so incredibly simple and efficient that I decided to give writing it a go, if only for something to do.
How to code with just your voice and feet in just ten easy lessons
I had a basic understanding of programming and plenty of time on my hands. I bought two 800 page textbooks and read them in a week each. (Reading a book without holding it - no hands! - is a bit difficult.) Got writing.
I couldn't use my arms, so I learned how to use the mouse with my foot, and initially started programming by clicking the on-screen keyboard. It was gruelling to say the least. A couple of lines of code an hour at the best. But I had time. So. Much. Time.
After a few weeks my mouse movement was still jerky, but I had nailed the art of left-, right-, and double-clicking using my toes. My options were to sit and watch daytime TV, or hack away at my new project. I never really liked TV.
After a few months of this, I penny-pinched enough to purchase voice-recognition software. Of course, programming languages don't use real words, so I had to spell everything letter-by-letter.
“'f' 'o' 'r' 'open-bracket' 'i' 'n' 't' 'spacebar' 'i' 'equals-sign'...”
It was still gruelling, but possibly more gruelling for everyone else in the house, who had to listen to me 'semi colon' again and again... (In c-based languages, each line of code ends with a semicolon).
My illness wasn't going anywhere. At this point i was taking 13 pills a day, having my food cut up for me, and couldn't so much as pour a bottle of milk or tie shoelaces. Without using my limbs, my muscles also wasted away: I have a strong recollection of being trapped in my bedroom, one morning, for about an hour because I couldn't turn the door handle. As such, I was completely unemployable (I couldn't even get to work, let alone be productive). ACC refused to help me, and the local disability/work group told me to get lost because I wasn't an amputee.
After around a year, a basic program had been written. My foot-mouse skills now rivaled most people's hand-mouse skills and I had progressed from several lines of code an hour to several lines of code a minute.
First Working Version
One thing about writing code letter-by-letter is that you don't make mistakes: even very simple functions can take quite a while to spell out, so you think things through thoroughly. A horrible side effect was that I kept dreaming about semicolons, “for” loops, and how to pronounce the letter 'r' so that the American-designed voice software didn't trip up on my Kiwi accent.
I was surprised to find that the simple notation editor I had written as a way to keep me sane was seriously impressing my musical friends. My illness still had no end in sight, and my employment opportunities were still zero. Thought: “If I could spruce this application up for public use, I could potentially make a living despite my disabled state.” So I kept writing... and writing...
First UI, still relying on text-input, produces tuplets
World-first use of guide notes
Things get a bit better
After two years of illness, some risky treatment options began to pay off and I started to improve to the point I could use a keyboard again, initially for a few minutes at a time, eventually for a few hours at a time. By this point I had already written 35,000 lines of code, spelled out letter-by-letter, and the project was 90% complete.
I was desperate to go back to University and work on my PhD, but you don't spend two years creating the world's fastest way to write music, only to stop metres from the finish line. Getting into a PhD program is also not particularly easy when you have nothing official to show for the last 2 years.
I finished and tested the remainder of the notation editor during 2012 and released it, free, to the world.
First released version of Musink Lite
I managed to restart my career in neuroscience in mid-2013, and am now located in Brisbane, Australia.
I still suffer from chronic pain, and I still can't use a mouse.
I still refuse to let it stop me.