What is your current programming and musical life?
For the past (almost) 3 years I’ve lived in Melbourne, Australia, where I’m a senior full-stack engineer at Envato using mostly Ruby on Rails and React. The people I work with know me as a good generalist with expert knowledge on Ruby on Rails, TDD, and technical writing.
I’m not performing or even playing classical music anymore, but just before the first lockdown in March of 2020 I bought an acoustic guitar and have been singing older country/western music as well as folk music in English and Italian. I no longer practise, per se, or try to get better – it was the brutal culture of perfection and competition that made me leave classical music in the first place. Now I just enjoy playing music and occasionally perform informally.
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?
My primary instrument was operatic voice. I was a Rossini mezzo-soprano, although my favourite music to sing – if I had to pick – was Italian opera of the Rococo/High Baroque period. I started taking voice lessons at age 15, wanting to learn to sing rock and pop music, but quickly taking a liking to the classical pieces the teacher had me sing to develop technique. I had already taken piano lessons starting around age 11 or 12 and violin/Irish fiddle lessons from age 12 to 15 or so. I was also a pretty good lead guitarist in high school.
What was your experience of learning a musical instrument, and how did it differ from your experience in learning to program?
It’s hard to compare because of how much I changed as a person between the time I started studying music and the time that I started learning programming. As a teenager and young adult I was a die-hard perfectionist and was very hard on myself, which got in my way a lot. I felt that I could simply never be good enough. The fact that the classical music world idealises talents like Mozart’s or Chopin’s only made it that much harder to feel good about the work I was doing. By the time I started programming, I was still a perfectionist but was a lot more accepting of works-in-progress. It helped that I learned programming guided by my partner at the time, a sysadmin, who made sure I knew that this work was very difficult for almost everyone and that frustration and not getting it were essential stages of learning. He sat me down one day when I was particularly frustrated and told me, “Everyone feels this way. Everyone feels like they aren’t cut out for this sometimes.” His encouragement has inured me against imposter syndrome to this day.
How old were you when you started programming? Why did you start programming?
Starting an opera career, as you may know, is terribly expensive. Most of the singers I knew had parents who were able to help out with lessons, young artist programs, master classes, and other professional development opportunities required to become a professional singer. My parents were not able to help that way. I needed to find a career that would pay for all that while also providing the time and location flexibility I’d need to travel for auditions and performances. That’s one of the reasons my ex encouraged me to get into tech, as well as the fact he thought I’d be suited for this work and fit in well in the industry. So, despite having no interest in computers, I started learning Ruby in 2013 at age 26.After I got into the tech world, though, I saw how much more supportive it was than the opera world. Instead of being met with “Why should we listen to you when there are so many talented singers out there?”, the mentality was more “What are you working on? That sounds really cool! Tell me more!” In tech I found an appreciation and gratitude for all the talented people doing amazing things that was just absent from the classical music world. I wonder how different my life would be if the abundance of talented and creative musicians were celebrated instead of being used to cut people down.
Do you have any specialisms in your musical performance?
I specialised in Italian operas of the High Baroque. I especially enjoyed singing Hasse, Porpora, and other Rococo composers, as well as Vivaldi. I specialised in castrato roles specifically.
Do you have any specialisms in your programming?
I’m a crack shot at Ruby on Rails as well as having spoken at conferences internationally on TDD and technical writing. I’m also on the Cucumber core team, although I consider myself an honorary member since my actual contributions over the past few years have been minimal.
Do you hold degrees in music, computer science, or something else?
I actually studied finance back in the days when you could get a job in investment banking with a 6-figure salary right after graduation. Unfortunately, the bottom fell out of the finance industry right before I graduated so I was forced to look for a Plan B.
What influence, if any, does your musical background have on your programming, and vice versa?
The influence of my musical background on my programming is probably mainly reflected in the way music trains you to think, but I’m not conscious of the specific ways that happens. I am aware of a body of research indicating people with musical training do better in STEM. Things would be different, I think, if I started musical training now. I’m more comfortable with failure as a way to gather information and learn, and with incremental, iterative improvement.
Aside from music and software, what other hobbies or pursuits do you have?
I’m really interested in foreign languages and math. I’m pretty fluent in Italian, despite never having been to Italy, and used to speak German, French, and Latin as well. I also taught myself three semesters’ worth of university-level calculus. Because I have ADHD, it can be tough to focus on a single thing over a long period of time, which has prevented me from keeping up my three other languages or getting to the level of math I would’ve wanted.
What would you say to a musician considering a career change into programming?
I feel like that’s really unique to the person. For somebody whose experience with the classical music world was as negative as mine was, I’d say do it and don’t look back. As far as general advice I’d give anyone, I’d recommend self-teaching or bootcamps over a university program. Both those approaches are more likely to give you the skills you need to actually hit the ground running in a career in programming, particularly if you’re going in a web development direction (whether front- or back-end). I’ve known a lot of people who have graduated from university CS programs only to find out that the things they’ve learnt don’t get them very far looking for their first jobs.
And finally, what advice would you give your younger self when you started programming?
I honestly feel like, with my ex’s guidance, I was able to take an optimal approach to learning. With the help of his colleagues, he put together a collection of quality sources for me to self-teach. Those sources helped me learn both good programming skills and practices as well as how to talk the talk to come off as the fabled “good culture fit” at good companies. Looking back, it could not have turned out better and, even though we’re not together anymore, I’m eternally grateful for Daniel’s support and encouragement.
– Dana’s Twitter