|
So you're saying Python devs are all libertarians? :D <braindump> I agree that coding/development is an art, but I also am hard pressed
to find anything that, when done well, isn't an art. The difference is that music doesn't have any really notion of correctness
or efficiency; sure, there are ideas such as "no parallel fifths" and "tritones must resolve to M3 or m6", but this isn't an issue of
correctness, but rather stylistic guidelines. Schoenberg's compositions
weren't incorrect in any universal sense. Programs, on the other hand, can be incorrect or inefficient. This is because most
programs have a concrete function that they produce. Dynamic types are great for exploring your solution space. I can quickly
whip together a prototype, try out different solutions, etc. I don't need
to design my entire program ahead of time, and this is nice. However this
does not prevent me from reasoning formally about my program. Once I've
muddled around a bit and built up some scaffolding, it very well may behoove
me to try to shore up my design, spend some time reasoning and designing a
formal algorithm/specification/etc, etc. And for the record, as a musician I definitely think formally about my
compositions/pieces I'm playing. Granted, being a guitarist this usually
doesn't involve me writing out my pieces with sheet music, but there is
still a blend of intuition/exploration and brute computation. As an example, I often times have two disparate parts that I need to
connect together, maybe by modulating, maybe by changing registers, or
maybe by altering my time signature. At that point I put the guitar aside
for a moment and think about my formal requirements, and then try to find
some 'convincing' way to get from point A to point B. Maybe I have some
constraints (I have two measures, I need to start in this position and end
in that position, this finger needs to pedal this note, etc). This quickly
becomes a math problem where only a small set of viable solutions exist.
After 'doing the math' I am left to evaluate my solutions aesthetic quality
which, I suppose, is where most people think of the 'artistic' bit comes
into play. But really, I'd say artistry abounds throughout the process. And to be clear, I'm not thinking about this stuff as doing math as I'm
doing it--I have my own system for thinking about this stuff that doesn't
look like math. Anyway, all of this is to say that formalism can be used even in music with
very real benefits. </brain-dump> |