4 ms·
I think we’re mostly in agreement! Except I wasn’t totally clear what I meant by “music theory”, sorry :) You don’t need to know the proper terminology for it
by iainmerrick 5y ago
I think we’re mostly in agreement! Except I wasn’t totally clear what I meant by “music theory”, sorry :)
You don’t need to know the proper terminology for it or be able to do a full formal/Riemannian analysis or something, but you are using and systematising a kind of music theory directly, even if just on your own idiosyncratic terms
Yes, absolutely. Likewise, a self-taught programmer isn’t totally ignorant of complexity and data structures, they just have their own idiosyncratic understanding of them.
I guess when I say “knowing music theory” I really mean “formal music education”. You’re totally right that somebody like McCartney understands music at a deep level -- and in a knowledgeable way, not simply intuitively. But I still think it’s important to note that he doesn’t read music, doesn’t feel the need to, and has still been massively successful.
Similarly, you can be self-taught in software engineering and still be massively successful, even if you’re weak on some of the areas that would be covered in a formal CS degree.
I think the key question is whether there’s some part of formal CS education that’s essential to success at the biggest tech companies. I guess I’m arguing that there’s really nothing essential, although there’s a lot that’s very useful; and that it can be picked up in other ways.
I think that’s similar to what you’re arguing for in music theory -- even if you don’t have formal classical training, you can still “learn music theory” through practice, collaboration and self-reflection.
the idea of ‘natural talent’ - although no doubt people have very different mental furniture/natural aptitude’s - is one of those things that can be very damaging to people progressing/learning about stuff I have found…
Yes, you’re right. I used to think talent was essential in programming -- that there are just people who “get it” and people who don’t. That’s how it seemed to me in the first year of my CS degree, anyway. But I’ve since realised that what I saw as “talent” was simply “did programming for a hobby as a kid”, i.e. had a head start of 5–10 years of self-directed practice.
There’s clearly a cluster of related things. If you practice more you’ll tend to get better; if you enjoy it you’ll tend to practice more; if you have “talent” you’ll tend to enjoy it more; if you have exposure at a young age that can manifest as “talent”; and so on.
- Cybotron5000 5y agoThank you for your thoughtful reply - you’re right, there are some interesting parallels! :) Perhaps the idea is that a greater knowledge of the formal or abstracted aspects of c.s. lends a kind of long-term versatility or adaptability to candidates for large companies/an almost academic rigour in c.s. research for longer term developments... Employees may eventually move between different roles, collaboration may happen between more disparate/diverse areas of the company, or people may move up into managerial positions where they may have to cross-over/communicate many focuses/areas of business or developmental planning - therefore their thinking may eventually become more abstracted from the day-to-day practise? (as a music producer, if you understand how music is put together /psychoacoustics/some physics it certainly helps enormously with all sorts of stuff - although again, as it is an artform rather than a science of efficiency, knowing the accepted solution isn’t always an advantage I suppose - though you can always choose to ignore those rules…). If it became important to be able to document/systematise/migrate/publish a codebase then an ability to break down and communicate what you have done on a formal level would be an obvious advantage I guess? On the other hand, a formalised system, if too rigidly adhered to, might preclude a freshness of approach or openness to different ways of doing things/hacking/combining aspects from other fields/cultures etc... Sometimes the over-specialism that you get in big organisations might kill certain kinds of innovation or the ability to ‘think outside the box’/see a bigger picture? …You could maybe make some sort of a comparison with session musicians who are (/were before the more traditional recording industry kind of died a bit of a techno-death at least! :) often expected to be very versatile, to read notation and pick things up very quickly, work in various sized ensembles/ad hoc groups etc. but were often (sometimes unfairly) criticised for being ‘bland’/sim.? …but then you might have some jazz musicians (…crossing over with many great session players…) who might have a deeper and simultaneously more intuitive understanding of music theory than some amazing classical musicians (who have the edge perhaps in immense attention to detail and consistency of performance…) …I wish I knew more about programming/computer science to be able to better discuss it! :) …I’m fascinated by the parallels between languages and music also - I guess programming languages are another variety of symbolic representation (like maths?) …I just wonder what the parallels really are between evoking emotion/promoting cold efficiency at performing a task, but I guess a lot of modern programming actually comes closer to design in a sense?(/production/library music heheh) …all primarily involve communicating with others/(the ‘other’ as machine?) and problem solving/logical resolution to a greater/lesser extent I suppose… (…even a ‘star’ has a panoply of people collected around them - producers, engineers, promoters, managers, distributors etc. and other musicians - some trained…)