Code page 437, the original character set for the IBM PC, includes a small house character (⌂) because it was intended for general business use, not just programming. Inspired by the pre-existing PETSCII character set, IBM included symbols useful for forms, diagrams, and even simple games. The house, specifically, was likely included to represent "home" in directory structures or for drawing simple diagrams, similar to how other box-drawing characters are utilized. This practicality over pure programming focus explains many of 437's seemingly unusual choices.
The blog post "Why is there a “small house” in IBM's Code page 437?" delves into the seemingly peculiar inclusion of a house glyph, specifically a small, simple depiction of a house, within the character set of IBM's Code Page 437, the original character encoding for the IBM PC. The author expresses initial bewilderment at the presence of such a seemingly out-of-place character amidst more conventional symbols like letters, numbers, punctuation marks, and box-drawing characters. This curiosity sparks an investigation into the historical context surrounding the development and purpose of Code Page 437.
The author initially posits several hypotheses, including the possibility that the house glyph was intended for representing real estate data or perhaps for some early form of graphical user interface involving home automation. However, further research reveals a more pragmatic and less esoteric explanation.
The core of the mystery's resolution lies in the influence of the Teletext system, a pre-internet information delivery system popular in Europe, particularly the UK, during the late 1970s and early 1980s. Teletext utilized a character set that included various pictorial glyphs for representing different categories of information, including news, weather, finance, and, importantly, subtitling. This Teletext character set served as a significant inspiration for Code Page 437.
Within the Teletext system, the house symbol specifically denoted "programme subtitles" or closed captions. Therefore, the inclusion of the house glyph in Code Page 437 was a direct carryover from the Teletext character set, inheriting its original intended purpose of indicating the presence of subtitles. Although this functionality never truly materialized on the IBM PC in the way envisioned for Teletext, the house glyph remained as a vestige of this early influence.
The author concludes that the seemingly arbitrary presence of the house character in Code Page 437 is not a random quirk, but rather a historical artifact reflecting the design choices influenced by pre-existing character encoding systems and the technological landscape of the time. The house symbol serves as a reminder of the interconnectedness of technological development and the sometimes unexpected origins of seemingly mundane details. The post ultimately highlights how exploring these seemingly minor curiosities can uncover fascinating insights into the history of computing.
Summary of Comments ( 43 )
https://news.ycombinator.com/item?id=43667010
HN commenters discuss various aspects of Code Page 437. Some recall using it in early PC gaming and the limitations it imposed on game design. Others delve into the history of character sets and code pages, including the inclusion of box-drawing characters for creating UI elements in text-based environments. Several speculate about the specific inclusion of the "house" character (⌂), suggesting it might be a remnant of a planned but never implemented feature, potentially related to home banking or smart home technologies nascent at the time. A few commenters point out its resemblance to Japanese family crests (kamon) or stylized depictions of Shinto shrines. The impracticality of representing a real house address with a single character is also mentioned.
The Hacker News post "Why is there a “small house” in IBM's Code page 437?" has generated several comments exploring the rationale behind the inclusion of seemingly unusual characters in early character sets.
Several commenters delve into the practical constraints and design decisions of the era. One commenter highlights the limited space available in the 8-bit character encoding (256 characters), necessitating careful selection of included glyphs. They explain that the "house" character, along with others like card suits and music notes, likely stemmed from the need to represent common elements used in business and personal computing at the time. This is further corroborated by another comment mentioning early computer games and text-based interfaces, which could utilize these symbols for simple graphics. The house, in particular, is suggested to have been potentially useful for diagrams or simple representations of data hierarchies.
Another thread of discussion revolves around the influence of Teletext on character set design. A commenter notes the similarity between some Code Page 437 characters and those used in Teletext systems, which were popular in Europe at the time. This suggests a potential borrowing or cross-pollination of ideas between these systems. The limited graphical capabilities of early computer displays meant that these simple symbols provided a rudimentary way to convey visual information.
The idea of representing concrete objects is also discussed. One commenter speculates that the inclusion of concrete objects like the house symbolized the potential of computers to represent and interact with the real world, a concept quite forward-thinking for the time.
A few commenters share personal anecdotes about using these characters in early programming and text-based adventures, emphasizing their practical application in the pre-GUI era.
Finally, the discussion touches on the broader history of character encoding and the evolution from these simpler sets to the more complex and expansive Unicode standard. Commenters acknowledge the limitations of Code Page 437 and its contemporaries while appreciating their historical significance in the development of computing.