MusiCoders Profile: Adam Spiers, cellist & senior architect

What is your current programming and musical life?
Current programming life is as Senior Architect for Panther Protocol, which is a project to bring privacy and trust to the world of blockchain and DeFi (decentralised finance). This involves a lot of research and design, plus some coding in TypeScript, Solidity, and Circom which is a DSL for writing Zero Knowledge Proofs. Musical life is relatively quiet currently due to the pandemic, but recent/upcoming gigs include playing with the London Tango Orchestra, Classico Latino, and the Monika Lidke Band (jazz/folk crossover).

What is your primary instrument and what age did you start learning it? Did you study any other instruments, either as a child or an adult?
Primary instrument is cello, and I started around 7 years old. I probably started tinkering with the piano around 4 or 5, since my mum is a piano teacher.

How old were you when you started programming? Why did you start programming?

I also started coding at 7, in BASIC on a Commodore Pet 4000 at my friend’s house. I was immediately obsessed – difficult to know exactly why, but I guess it was the satisfaction of creating something new and seeing it immediately come to life, combined with the extremely rational mental models involved. Learning music felt very different at the beginning, and it probably wasn’t until I experienced ensemble playing that I felt a strong attraction to it.

Do you have any specialisms in your musical performance?

Music specialisms include being a multi-genre cellist (jazztango, Latin, folk, classical etc.) and having an excessively nerdy obsession with various aspects of music theory (especially harmony).

Do you have any specialisms in your programming?

Specialisms in programming include Free/Open Source, Linux/UNIX, shell, Python, Ruby, infrastructure software, virtualisation, orchestration, high availability, cloud, automation, git, Trusted Execution Environments, blockchain, digital asset custody, and Zero Knowledge Proofs.

Do you hold degrees in music, computer science, or something else?
I have a degree in Maths & Computation from Oxford, and a postgraduate in performance from RAM in London.

What influence, if any, does your musical background have on your programming, and vice versa?
My musical background probably infuses my tech career with playfulness, (probably an unhealthy degree of) perfectionism, and emphasis on collaboration.

My tech career arguably brings a more analytical and methodical approach to my music-making, or maybe I would have been that nerdy even if I only did music.

Aside from music and software, what other hobbies or pursuits do you have?
Other hobbies include tango dancing (hope to resume post-pandemic), running, cycling, swimming, yoga, meditation, travel.

What would you say to a musician considering a career change into programming?
To those considering a career change I would say, you can (and probably should!) take up programming without giving up your music! Both are incredibly creative pursuits which complement and enhance each other wonderfully.

And finally, what advice would you give your younger self when you started programming?
To my childhood self, I wouldn’t say much since I had so much fun programming! To my undergraduate self I’d say to ease off the video games, go deeper into computer science studies, especially the really juicy stuff like algorithm design, cryptography, protocol security… oh, and that social network website thing we built in 1996 or so? Definitely think about putting some more effort into that, it might attract a bit more interest some day…

More Info

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s