I have personally noticed, along with second-hand observations from others, that there seems to be a correlation between musical ability and computer programming ability. In an admittedly skewed sampling technique, if I draw a circle centered on my desk at work and set its radius just so, it encompasses four developers, three of whom have degrees in music (composition, performance, and education — that last one being yours truly).
One simplistic reason for this might be that there are more career opportunities for software developers than there are for musicians, but then the same might be said for philosophy majors and drama majors. Well, actually, I know some of those in the field, too.
However, I ran across this article from 1999, which seems to corroborate one of my pet theories, namely that musicians and developers both benefit from an ability to perceive relatively complex relationships in their minds. A programmer may need to visualize a data structure of interest while imagining a loop construct that will parse each record and, based on what it finds, do one of a number of possible actions. A musician, whether performing, composing, or listening to music; may be "visualizing" the relationships between melody, harmony, and rhythm as well as the larger structure of the musical piece in question (not to mention phrasing, dynamics, and the subtle little things that contribute to musical expression).