In particular, I think everyone would agree that it's it's much harder for beginners to hunt and peck sheet music in modern staff notation than it is for a novice typist to type words on a QWERTY keyboard. (At least when the sheet music is written in any key except C major, since the configuration of black/white piano keys corresponds to C major.)
This prompts beginners to ask, "why is this unnecessarily hard?"
The general advice I see (especially in the comment thread here) is to just spend years practicing and then you'll "get it;" you won't just learn how to play, but you'll understand why staff notation is awesome.
Can the beginner's question be answered, except by saying, "uh, trust me, it's great, just keep practicing"?
Hunt-and-peck is always going to be hard on an instrument that supports multiple modes, because each mode only uses some of the modes. At my school music classes were taught on the xylophone/glockenspiel, which you configure for your piece at the start (putting the correct bars on for the mode/key you're working in), which is probably easier for beginners, but it's not a popular instrument (and nor is the harp, which is the only other example I can think of of that approach).
Chord structure just isn't even touched in most of these instruments, at least in classical performance, because they aren't capable of polyphony! That only becomes a topic as one starts moving into, e.g., jazz improvisation, where knowing how to recognize and play around a root is critical. Piano is exceptional here, since finger independence and chording practically define that instrument.
On the other hand, guitar tabs are a Big Thing in part because guitar chords transpose very well, so you don't have to learn too many unique fingerings to start accessing the others - and then if the song is defined as a sung melody plus rhythmic chord backing, as a lot of popular songs are, you don't need more than a tab and hearing the tune once to have a shot at covering it competently.
Guitar's 2D layout favors isomorphism - this is what gives it this extra power to transpose. Guitar is conventionally not tuned isomorphically, but some forms of accordion like bayan, and alternative keyboard layouts such as Wicki-Hayden, Harmonic Table or Janko, are fully isomorphic. In that case, you don't have to mode set or learn any unique scales or chord fingering per key: Learn any set of intervals(chords or scales) and you can reuse them in every key by moving your fingers over. This is wonderful for learning theory and doing composition, but it doesn't make the instruments a 1-to-1 replacement for similar instruments as in performance the distances are usually much smaller, fingerings can get tangled, it can be harder to find your place or maintain tempo, etc.
Basically: not really.
Musical notation... notates a bunch of stuff, not only pitches.
Unless you have a basic understanding of all the factors involved in reading and writing music, you won't be able to understand the choices fully, and you'll have to accept them.
TLDR: music notation needs to express the five qualities of sound: pitch, duration, loudness, intention and timbre. You can't just look at pitch.
Each mode is a diatonic scale (https://en.wikipedia.org/wiki/Diatonic_scale). Each mode has a particular combination of whole steps and half steps. Each mode has a "natural" key which can be represented in modern staff notation by all white keys.
In Gregorian chant, there are rarely any accidentals. Even by the Baroque era, while there are more accidentals, I would say the music is still very diatonic in nature.
Early music was more oriented towards just intonation (the whole integer ratio harmony mentioned in the article, which is what I would consider the more "natural" way of harmony). With just intonation, however, you can't just shift to any random key on the fly. Some keys sound nice and related. Some keys sound awful and horrible.
The article author made a statement: "If your music mostly relies on the seven notes from a particular scale, then it’s more compact to only have room for seven notes in your sheet music, and adjust the meaning of those notes when necessary… right?" I think that's an absolutely a correct way of framing early Western classical music, yes.
What makes staff notation harder probably is the corresponding rise in chromatic music.
The rise of 12TET instruments (equal temperament) like the piano, and the corresponding development of chromatic instruments (compare: the natural horn used in the Baroque era vs. the modern valved horn) allows for this sort of modulation at the cost of some chords being slightly out of tune. Modulating key signature all over the place is now possible. Yes, the author should realize that some composers do change the key in the middle of a song to change the mood. (For a nice pop example, here's the Temptations' "My Girl", which changes keys midway through -- https://www.youtube.com/watch?v=6IUG-9jZD-g)
Incidentally, the diatonic nature of pre-19th century classical music is the answer to the author's sharp / flat question as well. (http://jtauber.com/blog/2006/11/17/why_a-sharp_is_not_b-flat...)
This shift to chromaticism really isn't reflected in staff notation. In fact, I'm aware that some 20th century composers abandoned the use of key notation, ledger lines, etc. altogether, perhaps in part for this sort of reason.
But from his point of view (as any beginner) this is very confusing. They sound the same and they use the same physical keys on the keyboard, so what's the difference? There is no good answer to that except it satisfies the theory (the musical "rules") of western music.
The only things that were hard were forgetting to write semicolons after statements in C (I have previously mostly written Pascal), and C declarators — but even the latter were easy after I learned that "declaration reflects use".
The oldest programming languages are only 50 years old, whereas the oldest music notation is at least 4000 years old.
Most programming lanuguages haven't crossed any spoken languages, but modern music notation & terminology has been heavily developed by countries all over Asia and Europe.
This is a big reason why musical notation seems so weird at first, especially to engineers, because it is a legacy that comes from a different time, a different context, in a different language. The people who developed musical notation had different math, different logic and different musical motivations than we have now.
Think about this for a while and it starts to feel like a miracle that musical notation works at all, not to mention how well it works.
Programming languages were developed by people nearer to us in every way, and made to be logical and simple, so it makes sense that they're easier to grasp quickly.
A beginner can't grasp the motivations behind the design of musical notation, and I don't expect a beginner to grasp the motivations behind the design of any complex system. That does not make the system absurd.
I mean, it's generally agreed that English as a language has accrued so much historical baggage that it's shed any elegance or coherence it may or may not have once had. It would honestly be surprising to me if the same thing didn't happen to musical language.
Buy people who know nothing about how languages and linguistics work, I can only assume.
Most musical notation is meant for non-beginners, right? And a lot of the beginner confusion is from features that are useful for advanced users. So there's a tradeoff.
There might, of course, be changes to be had. But a lot of beginner confusion is because the higher-level abstractions are needed.
A good example in mathematical notation is order of operations. Why not just do left to right? Or just going with Polish Notation?
Standard order of operations work well for people working with large formula, because they allow you to write many common things without many parentheses. But mandatory parentheses + left-to-right only would be easier for beginners.
a) hard (it takes more than a day to understand the complexities)
b) incredibly old
the community should declare it obsolete and immediately begin work on a replacement (preferably based on JavaScript).
This text is what it claims to be: music theory for nerds (just not necessarily music nerds!)
I tell them that, if they are using assembly, then it is fair game.
Emulating a multi-level break statement and error handlers come to mind as examples.