Music
Music has two (at least) ties to computing. One is that it is a great background for preparing future computing people. A second is the merger of computing and music.
A successful music student develops two skills that are very useful for future software developers:
- Practice
- Creativity
To be successful in software design/programming one must practice a lot. Basics must come to you as if in muscle memory (the way playing certain things comes to a musician). A successful student of music has accepted that countless hours of practice are necessary. More importantly, they also invest thise hours.
Practice can produce an excellent, skilled instrument player. Clearly this is good. Cleary it is an important goal. But a student of music must do more than just faithfully reproduce the past. They must introduce newness into music. They must be able to produce new sequences that are pleasing. This creative piece separates the instrumentalist (capable instrument player) from the composer (creator of new compositions). The same is true in computing. Programmers merely produce code based on algorithms provided to them. Software developers, engineers, analysts, ... differ in that they produce algorithms.
Music and Computing
Under the merger of computing and music, here are a few interesting links:- Communications: O'Reilly OSCON 2014 Keynote - Andrew Sorenson (more on Andrew Sorenson).
- Sonic Pi by Sam Aaron is a free creation similar to the software Andrew used. Sam Aaron did a TED Talk - Programming as Performance
- For more info:
- Sonic Pi
- Wikipedia
- Official Website
- Live Example
- OSCON Sonic Pi - Sam Aaron
- Sam Aaron - Get Ready to Rock with Sonic Pi
- Tidal - Live coding music with Algorithmic patterns
- Sonic Pi