Alexandre Martins On Agile Software Development

12Aug/082

…From Musician to Software Developer…

Before start working as a software developer on 2002, I spent three years being a musician. I played drums in a handful of bands from pop to contemporary jazz, and of course, also a lot of rock and roll!
I had great time doing this, I met most of my friends during this period, and it taught me quite a few lessons that I can use in other areas than music, especially in software development.

Mastering music (drums), and software development require a lot of dedication, both on reading and practicing.

In music, the first thing I did when I decided to take it seriously was to look for a music school to learn how to read and interpret music. Then I read most of the books related to drum techniques and rhythms, attended workshops, spent nights and weekends practicing to improve my ability and velocity. Practicing is very important! It’s when you give yourself the chance to commit mistakes and to let all the ugliness to happen; after all, no one is watching you. The intention is not to sound good, but to stretch your limits, so that you can perform perfectly on the stage.

In software development, it’s pretty much the same, you have to read a lot (books, blogs, articles, magazines), learn programming languages (choose two or three to specialise, and get a higher overview of others), attend workshops, meet people, practice by trying and evaluating different technologies, creating a blog to post your experiences, joining open-source projects, registering for coding competitions, solving some of the CodeKata challenges, preferably pairing with someone else, in summary, stretch your limits!!!! (Have you seen this before? ☺) Doing so will give you more self-confidence for you to perform well during your show, at client site.

Share and Enjoy:
  • Digg
  • del.icio.us
  • Reddit
  • Twitter
Comments (2) Trackbacks (0)
  1. Cool analogy…a colleague I worked with when I first started at ThoughtWorks would often talk about the idea of being on client site as being the big event and your time outside that as being the time to practice etc.

    I think working on open source gives you the opportunity to learn things in a safer environment than a client site, not that I do it!

    We never agreed on whether it was acceptable to use a technology at work that you didn’t know inside out. My opinion was that it’s ok to do that and learning as you go is part of software development whereas he argued that since the client was paying $$$ for you most of the learning should be in your own time.

  2. Both should be creative

    When you mature as either musician or dev you learn when not to play or when not to write code.

    I always played a lot of notes and wrote a lot of code. Now I’m a PM.


Leave a comment


Comment moderation is enabled. Your comment may take some time to appear.

No trackbacks yet.