I'm Brett Slatkin and this is where I write about programming and related topics. You can contact me here or view my projects.

13 October 2015

Learning new skills after a decade

This week is my 10 year anniversary of working as a professional software engineer. The advice I've followed is "always be the worst player in the band". But over time the meaning of that statement has changed for me. I've realized that there's a lot more to making music than playing the notes.

It sounds odd, but what I'm most excited about right now is learning to play the piano. Specifically: I'd like to play Jazz standards using a Fake Book. I can't remember the last time I learned a hard skill that required physical repetition and muscle memory. Maybe it was learning to drive a stick shift? Or do a kick flip? Or maybe Emacs key bindings?

Here are some of my favorite piano moments over the past 3 months of practicing:

  • Being able to read treble clef notes without making mistakes in this app
  • Learning enough music theory from this book to understand why chords work
  • Being able to play dominant, major, minor, diminished, and many other chord variations quickly
  • Learning about the cycle of fifths and using it to practice
  • Practicing scales enough that I can do it (poorly) with my eyes closed
  • Writing down my own ideal fingering for a sequence of notes
  • Learning the importance of proper sustain pedal usage
  • Playing a bunch of songs that I know

Here are things that I can't do yet:

  • Play the rhythm correctly
  • Know all chord inversions and be able to use them quickly
  • Play songs without looking at the keys, especially chords
  • Sing and play at the same time (I actually don't want to do this, but it seems like a good exercise)
  • Play classical music with a real bass clef
  • Make meaningful progress on Mark Levine's Jazz Theory book

Speaking of that Jazz book: I asked a musician I know for some advice on how to learn. He said, "I know just the book for you". He showed me "Jazz Theory" and I asked, "This looks great, but are there any other books I should read?" The musician's answer was, "No. If you wanted to learn about Jesus, you'd read the Bible. If you want to learn about Jazz, this is the book."

Why isn't there such an obvious go-to book in the realm of programming? I wonder who would disagree with my musician friend, why, and what book they'd recommend instead. Perhaps it's just the nature of learning: While you're inexperienced, people have amazing, definitive advice; once you know, everything is murky.
© 2009-2024 Brett Slatkin