_____                   _                  _____            _____       _ 
  |     |___ _____ ___ _ _| |_ ___ ___ ___   |  _  |___ ___   | __  |___ _| |
  |   --| . |     | . | | |  _| -_|  _|_ -|  |     |  _| -_|  | __ -| .'| . |
  |_____|___|_|_|_|  _|___|_| |___|_| |___|  |__|__|_| |___|  |_____|__,|___|
  a newsletter by |_| j. b. crawford               home archive subscribe rss

>>> 2020-06-18 ASCII

There is an interesting little chapter of computer history involving ASCII and Japan.

ASCII is, of course, the American Standard Code for Information Interchange. I often say that computer science is an academic discipline principally concerned with assigning numbers to things. Of the many things which need numbers assigned to them, the letters of the alphabet are perhaps one of the most common. ASCII is a formal standard, derived from several informal ones, for allocating numbers to all of the characters which were deemed by the computer industry to be important in 1963. It likely requires no explanation that ASCII accounts only for the English language and American currency.

ASCII itself is not especially interesting, besides to note that it is in fact a seven bit code, which leads to the important "computers are bad" theme of what it means for a system to be "eight bit clean" and why some systems are not. That is a topic for a later day, though. Today I will constrain myself to ASCII and Japan.

Japan, of course, principally uses a language which cannot be represented by the 127 code points of ASCII, most of which are English characters and punctuation and the rest of which are control characters no one can be bothered to remember[1]. At the same time, Japan was the first adopter of computer technology in East Asia and, by many metrics, one of the first adopters of computer technology outside of the United States. Considering that nearly all early computers either used ASCII or an even smaller character set, this raises an inherent problem, which was largely resolved by the introduction of various Japan-specific character sets (often called "code pages" by earlier computer systems), which eventually mostly consolidated into SHIFT-JIS.

And yet, in Japan, ASCII was for a time a very big deal. I am talking, of course, not about the US cultural dominance of Japanese industry being forced to at least partially use Roman characters due to the limitations of technology designed in America, but rather to the ASCII Corporation.

The ASCII corporation published ASCII Magazine, which was the preeminent computer technology magazine of Japan. Being published in Japanese, ASCII magazine was, of course, not representable in ASCII. Most interestingly, ASCII Corporation was, for over a decade, the Asian sales division for Microsoft. Microsoft and ASCII collaborated to design an open standard for personal computers called MSX, which was on the market at the same time as the IBM PC and ultimately failed to gain more traction than PC clones. That said, Microsoft's experience with MSX, along with the PC, was no doubt one of the motivators in Microsoft's broader philosophy of decoupling the hardware vendor and software vendor[2].

This is all somewhat aside the curiosity of the name ASCII. I have found limited historical information on ASCII Magazine. In part this is because the original material is in Japanese, but I have noticed a more general trend of historians of computer history being oddly uninterested in the popular publications. The kind of excessively concise summary usually given of ASCII Magazine's history is typical of the US computer hobby magazines as well.

What is fairly well documented is that the key founder of ASCII magazine and the ASCII corporation had recently visited industry events in the US, and of course Japanese computer hobbyists would have been well exposed to ASCII due to the common use of imported American and British computers. It seems likely that the founders simply chose a "computer-ey" term that sounded cool, nearly all such terms being of course divorced from their original meanings when borrowed into Japanese.

The introduction of computer technology into foreign markets is the kind of topic that you could write many books about. The case of Japan is interesting for being perhaps the first major market for American and British computer companies which used characters other than the Roman alphabet, essentially introducing the problem of internationalization which we know and love today. Some time later Arabic lead to a second round of the effect as software had to be made to account for right-to-left layout. Both of these are still very much real problems today, with character encoding confusion and RTL layout failures a common experience for users in these regions.

Character encoding failures are relatively unusual for English speakers. This is mostly because a large portion of character encodings (including, most importantly, Unicode) are derived from ASCII and share the ASCII code points in common---the ASCII code points being pretty much all that's used in American English, and nearly all that's used in British English except for that problematic £. Of course ASCII does not account for certain aspects of English typography such as ligatures and various lengths of dashes, and these are now often viewed as unnecessary flourishes as a result. It's hard to blame any of these problems entirely on computers, though, as the same issues were present (and sometimes more severe) in typewriters.

There is, in general, a large factor of "first-mover advantage" here. Computer technology was largely developed in the US and UK and so it was largely designed around the needs and sensibilities of English-speaking users. On the other hand, there is also a phenomena of "first-mover disadvantage," which is exemplified by the European cable television standard (PAL) having been generally superior to the US standard (NTSC) due to being developed several years later when better electronics were available. But, then, PAL networks ended up delivering a lot of content that had been (crudely) scaled from NTSC, because of the cultural dominance part[3].

The other non-English-speaking country with significant early computer development was Russia. Because most of this development happened behind the iron curtain and under state (and specifically military) purview it is not always as well documented and studied, especially from the US perspective[4]. By the same token, internationalization of English technology to Russian (and vice versa) was relatively uncommon, and Soviet computer history is essentially its own separate but parallel process.

One of the thorniest areas for internationalization is in the tools themselves. Out of the wide world of programming languages, ALGOL is almost unique in having been intended for internationalization. ALGOL was "released" in multiple languages, with not only the documentation but also the keywords translated. There have been occasional "translations" of programming languages out of English but none have ever been successful on any significant scale. If you are truly interested you can, for example, obtain a compiler for C++ but in Spanish. No one who speaks Spanish actually uses such a thing.

The dominance of English in computer tooling is exemplified by Yukihiro Matsumoto's Ruby programming language, which uses keywords in English rather than Matsumoto's native Japanese, even though it was initially little known outside of Japan. English is thought to be the "lingua franca" of programming, a term which is a bit ironic in that one of my most frustrating personal stories of software was my going in to solve a simple problem in some open source software, only to find that the comments and symbols were entirely in French. Quoi?

[1] There's actually kind of a neat trick where if you lay out the ASCII table in four columns it makes a lot of intuitive sense. This is a lot like saying that if you count the letters in every word of the Bible you will hear the true word of God.

[2] At the time this was referred to as an Independent Software Vendor or ISV. Today, the concept of the software being developed by a different firm than the hardware is so normalized that the term ISV is rarely used and comes off as slightly confusing. Where once Microsoft had stood out for being (mostly) an ISV, now Apple stands out for being (mostly) not an ISV.

[3] The poor quality of early NTSC-to-PAL conversions was one of many things lampooned by British satire series "The Day Today," where the segments from their supposed American partner network featured washed-out colors, a headache-inducing yellow tint, and intermittent distortion. This was indeed a common problem with American content broadcast in Britain, prior to the use of digital video. British content broadcast in America seems to not have suffered as much, probably because the BBC made more common use of the "kinescope" technique in which the television recording was exposed onto film, which was then recorded back into television in the US using NTSC equipment.

[3] This is quite unfortunate because a combination of pursuing alternate paths and wartime/economic challenges lead Soviet computer development into some very interesting places. Vacuum tubes were used in the USSR well after their falling out of favor in the USA, which lead to both some amazing late-stage vacuum tube designs as well as Russia being the world's leader in vacuum tube technology today.