I am wondering why standard US keyboards allow you to type - by simply hitting the key, but the + button right next to it needs the Shift key. The default for that key is = and not a minus symbol. + and - are similar operations, which has led me to wonder why they are reversed in their dependence on shift. Is there any reason I am not thinking of which would have lead to this choice?
Well, you are, obviously, talking about the section of the keyboard whose main function is to write letters for words and sentences, because on the right side of the keyboard, both signs can be used without the shift key.
Going back to your question, the difference is related to the different uses that the dash symbol has on normal writing and the lack of use of the plus sign on the same circumstances.
You can read more about that on the dash page on wikipedia.
The early typewriters were actually setup differently: the Remington no 2 had an entirely different layout:
The earliest typewriter with the + on shift-= that I could find was the IBM Model A from 1949 (and maybe the 01 from 1939, but I cannot find a keyboard layout for that). by that time, the first programmable computers were around, which were programmed in assembly. it's possible that there has been some cross-pollination between keyboard layouts and those first programming languages (and the ideas of Von Neumann and other pioneers).
FORTRAN, which is one of the earliest programming languages, was also developed by IBM. It's possible that these early keyboards designed by IBM were optimized for development of programs in the IBM language Fortran. Later creators of keyboards likely used the same layout.
Computer keyboards are based on typewriters (since you wanted to make typewriters (people) write on your new awesome computer thingy). Which of course moves this question to the typewriter "keyboard" design - but since there were quite a few competing layouts at the same time, it seems that this one won because it simply was the most convenient in practice. PatomaS answer gives some incentives for that.
Also, my keyboard (czech) does have a + without holding shift - it's where 1 is in english layout. Yes, numbers in the alphanumeric part are used through Shift - why not, you've got the numeric keyboard for when you're writing numbers (which wasn't there on the typewriter) :)
The numeric keyboard is, on the other hand, designed precisely for entering numbers and calculations - there's jobs where you use the numeric keyboard 80%+ of the time.
In fact, some other keys mentioned here are available without Shift on the czech layout - including = and, strangely, §. Even more weird, the umlaut (¨, as in eg. ü) is also there. This is probably because the basic czech layout is based on the german qwertz layout.
And of course, the layouts do get better with time. For example, I'm using the
Czech (QWERTY) layout, which is very handy for programmers, because:
- I have the usual czech layout, handy for doing czech UI, and I don't have to switch layouts in my mind when switching from programming to eg. chat.
- I get the english Shift'd keyboard by holding Alt-Gr, thus having easy access to the other characters commonly used in programming, like % or even worse, [, which is missing in the czech layout altogether.
So layouts improve, even if by small steps (you don't want to alienate your users - Dvorak layout suffers from this, because it's completely different, rathen than being an incremental improvement).
On the numeric area of the keyboard, plus does not need a shift key, and neither does / or *. In fact, it often is quite a big key there. So, when focused on entering numeric data, you have all the relevant keys readily available.
When focused on entering text, the + symbol is not as important as the - symbol, as the - symbol is also used in running text as a punctuation mark. While technically the - is not an hyphen or a dash, it is most often used as such by anyone who is not a professional type setter. You' ll notice that Microsoft Word will often replace the minus with the appropriate symbol as an autocorrect feature.
Best I could see for which there is alternative and where
= could be used in "common" language was for tone.
The equals sign is also used as a grammatical tone letter in the orthographies of Budu in the Congo-Kinshasa, in Krumen, Mwan and Dan in the Ivory Coast. The Unicode character used for the tone letter (U+A78A) is different from the mathematical symbol (U+003D).
This still isn't adequate for the keyboard placement phenomena you described.
Sidenote: I cannot unsee this, each time I look there, I'm like WHY.
If you are on a standard computer keyboard, move your right-hand over to the number pad. Both the plus and minus (also a dash) are available without using the shift key.
If you are writing words with dash in-them the dash is available on the alpha section.
If you are writing (or doing) math 2+3-1 they are both available in the number area.