The One Thing Programmers and Musicians Have In Common

I started playing guitar and programming the same year, so I’d say there’s some truth to this (I was 10). I’m still playing (and programming, obviously) and have been in some great bands.

Karl Sanford on January 21, 2009 07:37 AM wrote: Also, I always liked to think of programming languages as ‘instruments’, simply because if you’ve ever switched musical instruments, it is extremely similar to switching languages. Simply because the underlying concepts are greatly similar (notes, keys, reading music… loops, conditions, variables), you just have to learn the syntax of the the new instrument (fingerings, embrechure… key words, compilers). I have always aproached all new ‘instruments’ with this in mind, drawing on experience from both worlds, with great success.

With that in mind, going from imperative to functional programming is like going from a kazoo to a thermin…

there’s another profession that programmers are like…prostitutes.

  1. We work weird (night) shifts…
    Just like prostitutes.

  2. They pay you to make the client happy…
    Just like a prostitute.

  3. The client pays a lot of money, but your employer keeps almost every penny…
    Just like a prostitute.

  4. You are rewarded for fulfilling the client’s dreams…
    Just like a prostitute.

  5. Your friends fall apart and you end up hanging out with people in the same profession as you…
    Just like a prostitute.

  6. When you have to meet the client you always have to be perfectly
    groomed…
    Just like a prostitute.

  7. But when you go back home it seems like you are coming back from hell…
    Just like a prostitute.

  8. The client always wants to pay less but expects incredible things from you…
    Just like a prostitute.

  9. When people ask you about your job, you have difficulties to explain it…
    Just like a prostitute.

  10. Everyday when you wake up, you say: I’m not going to spent the rest of my life doing this.
    Just like a prostitute …

I’m a musician, of sorts. I guess that if there is a connection, it is indirect - both music and programming having maths/logic/patterns in common. Oh, and playing piano definitely helped me learning to touch type!

You want other examples of famous programmer/musician?
The comment that provoked this post mentioned Alan Kay. Apparently Donald Knuth has a pipe organ in his house. And there’s Zed Shaw of course… :slight_smile:

Every professional (including programmer) who sees his job as an art naturally performs better.

In Steven Levy’s Hackers, he talks about how many of the earliest computer scientists also dabbled in telephone system tinkering or model railroads. (They even hacked the system of the local Chinese restaurant!)

It’s pretty clear that many programmers share some kind of love of logical systems, and I think music falls into that category for many of us. Understanding which combinations of melodies and rhythms are nice to hear, or fun to play, or stir up different emotions is just another system for our analytical minds to hack.

Music is also a fascinating combination of technical/analytical and emotional/artistic thinking, which can be a great outlet for someone working on mostly technical challenges all day. As Jeff implies, music is a safer place to express onesself than code!

There is a strong connection between math and music. There is also a strong connection between programming (computer science) and math.
I just blogged about that.
http://blog.jtbworld.com/2009/01/carol-bartz-essay-from-1997.html

On the topic you may find these links interesting as well:
http://tones.wolfram.com/
http://boris.reitman.name/math_music_hist.pdf
The link between numbers and music was observed by Pythagoras.

By the way. I love math, I’m a pianist and programmer. Not sure in what order.
Another link:
http://arts.ucsc.edu/faculty/cope/

music is a safer place to express onesself than code!

Hmmm… I’m not sure anyone who’s performed an original composition in front of an audience would agree =).

I would say you’d be hard pressed to find very many people in any field who don’t have a love of music. At least a little, anyway. And most people who have the opportunity and the technical skill will at least dabble in music a little.

Personally I find music easier because it comes more naturally to me. I already know what (in my opinion) sounds good or does not. The hardest part is turning the one into the other. It gets a lot more complicated than that, of course, but it’s something you can begin, unlike programing, without any real learning curve.

I’m also a painter, sculptor, writer, and practitioner of most of the arts. One thing I am not is a competent programmer (though I used to be pretty good with some varieties of BASIC). But I enjoy it sometimes because of its beautiful simplicity and daunting complexity.

Ultimately I think correlations with the arts have a high probability in general, partly because such pursuits are based on aesthetics, which everyone has in some capacity, and because their definition is so subjective.

Programmers seem to have way too much time on their hands because we keep coming up with silly analogies and spurious connections and wasting time and ascii blogging and rambling on about them.

I think one of the most important qualities of programmers is their ability to see connections and recognize patterns quickly and efficiently, it’s a skill that is invaluable for a software developer, unfortunately it becomes a little over developed and becomes a detriment when it’s taken outside the cold clear logic of writing software. :slight_smile:

It’s very easy for programmers to fall into the trap of taking a small example of a tenuous pattern or connection and extrapolating it beyond the breaking point.

Of course if you ask any group of non hearing impaired people they are going to say they love music and every group of any reasonable size knows someone in that group who plays in a band or plays an instrument or sings.

I’ve never heard of any culture on earth that doesn’t play and enjoy music.

I’ve hung around programming discussion forums since the early days of 300 baud modems and bulletin board system and relay mail and there is nothing I’ve ever noticed about programmers that makes them any unique from anyone else other than the fact that they write code.

And… you can even make music by programming, see the great audio programming language Chuck : http://chuck.cs.princeton.edu/

I’m a flutist (since 18 years) and a programmer (since 22 years). I’ve always thought that the answer is really simple: both music and programming are arts.

As another programmer/musician, I’ll throw my two cents in.

I’ve found that my processes for attacking both software composition and music composition have many similarities.

  • In both, there is a definite need for a delicate balance of concrete planning and keeping a creative, flexible open mind.

  • It is easy to get bogged down in details of syntax and lose sight of the end product. I can’t tell you how many songs I’ve left unfinished and how many snippets of code have suffered a similar fate just from losing that big picture.

  • New ideas/solutions sometimes seemingly come from nowhere, and other times from brute force.

  • Subconsciously or not, we are influenced greatly by the music and code we’ve heard and seen before.

  • There are patterns that I’ve developed that work for me, both in writing a song and writing code - which also means I sometimes have to fight to break those patterns when necessary.

But the biggest similarity to me is the universal struggle with translating the mind’s vision (a feature implementation or site design - or on the flip side, the initial inspiration for a song) with my weaknesses as a coder/songwriter and the delicacy of the translation technique (language syntax, IDE quirks, the sounds my instruments are capable of making, and even my skills as a musician, etc)

Great topic!
-Andy

(Please forgive the poor grammar)
I think the analogy is a valid one. I consider Programming to be an art and a science. Their are the technical aspects, the habits of method, and the artistic elements, the habits of mind. Much like cooking one follows instructions of a recipe but one also improvises and makes changes using imprecise measurements. Like music, one must follow the instructions and interpret them, much as one does with code (albeit in reverse), but when playing in a group or in an orchestra you have to make slight variations (or larger ones) to stay with the rest of the other players. It’s ultimately a search for balance between the scientific aspects and the artistic aspects of the skills.

could it be true that all programmers are human?
No way, no how. You’re pushing it! :wink:

I’ve always considered code to be a form of art. Visually, it’s beautiful to look at, and code styles often reflect the personalities of those that write it. As a programmer, I have a strong creative side that appreciates music, paintings, and code, all as an expression of the individual that creates it. And the number one reason I love music - it allows me to get into the zone so I can write more code.

Nothing like writing code to Metallica, or any metal band for that matter.

OK, so I am just going to chime in. I was introduced to computers at the age of 4. That is also about the time I started playing music. Programming is has been my day job for about 15 years now. Music has been my release for about 20 years now. I have generally worked for companies with strict guidelines on coding. Strict to the point of removing my ability to be creative. I would argue this is probably a good thing.

Music lets me be creative in ways that I can’t in code. Sure there is a lot of math to music. And if played that way it will suck ballz.

Music and other art forms require you to use a part of your brain that goes beyond your everyday thinking process. You have to synthesize the fundamentals and create something where nothing existed before. So, it’s no suprise that musician’s (the real kind not the hack jobs that are in the mainstream today) tend to be smart. Look at a majority (not all) of the students graduating with high GPA’s and you will find a strong correlation between the grades and particiaption in some sort of art form…

Thanks Jeff - now I can’t get the chorus out of my head…

Little green roseta…