Growing Your Inner Developer

As some of you know, I play piano and still have been taking lessons. Lately in my daily practice routine, I have taken up the habit of taking a few minutes to practice the art of sight-reading.

For the non musicians that’s the ability to read and perform music from sheet music having never seen it before.

Sight-reading a single line instrument, like oboe or saxophone, is pretty easy. But reading multiple lines, like piano and organ, not as much. There’s a lot to concentrate on, the melody, the harmony.
If you’re sight-reading a Bach invention or fugue, then you might have 2 or 3 melodic lines happening at once and they travel and bounce between your right and left hands.

So how do you practice sight-reading for piano? Well, the trick is to find work that’s a little bit easier than the serious pieces you’re working on. For me, I picked up a book that collects popular Disney songs. And you devote a little bit of your practice session each day to sight-reading a song from it. You play at a slow reasonable tempo, but you fight reading through it from the beginning to the end. If keep stopping, then the tempo is too fast and you need to take it at a slower pace.

What shocked me, is that after doing this for a few months I got much better. So much improvement over a short short amount of time. There’s this connection between my eyes and my hands that seems to get stronger every time I practice. I see a G Major in the sheet music, not only do my hands play the G Major chord, but my brain recognizes that G Major is traveling to a C minor chord instinctively. You can’t get that without practicing, the connection between my brain, eyes, and hands gets stronger each time I force myself through sight-reading.

Does this make me a musical genius? No. It just means I’ve practiced for it. I earned this ability. No one gave it to me.

I see this idea working in other areas of my life as well. My wife is a middle school math teacher. I’m always amazed how she can add, subtract, divide, and multiply long chains of numbers in her head without a calculator and without paper or pencil. She calls this Practical math. When I first met her, it was her first year of teaching and she didn’t have this ability. What made her start practicing was when she would teach a lesson and have her students up at the whiteboard doing problems. She didn’t like breaking the flow of her instruction to stop to grab a calculator or look things up in the teacher’s answer book. Plus, she didn’t like the example she was presenting to her students when she did that, a teacher dependent on her calculator or teacher manual. That this was normal.
Like my sight-reading, her Practical Math skills don’t equate a genius level mathematician. She worked for this ability.

In software development, the idea of practicing can also be applied. Some developers like to regularly practice a coding kata. They try to solve the same problem over and over again in different ways to improve their way of thinking.

Personally, I’ve recently started reading the Spring MVC source code and was amazed how much easier it is to read and understand the developer’s intention, when compared to the home-grown MVC frameworks I’ve worked with in my career. Just like the way I like to practice. I like to read the source code to open source projects and try to glean ideas and perspectives outside of myself. And what I learn from my reading, I take and plant them into my own coding projects and at work. I enjoy reading the works of others, it’s how I learn what other developers are doing outside my job.

By regularly “practicing” I can get just a little bit better.

This entry was posted in Learning to Code, piano and tagged , . Bookmark the permalink.

Leave a Reply

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

You are commenting using your 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 )

Google+ photo

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

Connecting to %s