Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    J

    Jukka Korpela

    jkorpela.fi · Personal blog · on HN since 2018

    Finnish web specialist Jukka Korpela writes reference pages on HTML, Unicode, character sets, Usenet etiquette, and Finnish grammar, many in English.

    Visit blogHN submissions
    Web DevelopmentWriting & ThinkingHistory
    What HN says

    HN commenters call it a treasure trove and cite it for Unicode space widths, Usenet laws, Altavista search behavior, and Finnish grammar answers.

    Stats for nerds
    31HN people shared it
    13linked in comments
    107story points
    Aug 2024last shared
    2018people per year2024

    Top posts on HN

    1. 1
      Margin notes to “HTML 4.0 in Netscape and Explorer” (2000)
      1 person · 53 points · first shared 2022 · 12 comments on HN
    2. 2
      Using accesskey attribute in HTML forms and links (2006)
      1 person · 33 points · first shared 2024 · 12 comments on HN
    3. 3
      All human communication fails, except by accident (2010)
      3 people · 5 points · first shared 2018 · 1 comments on HN
    4. 4
      Unicode Spaces
      4 people · 4 points · first shared 2019 · Discussion on HN
    5. 5
      Soft hyphen (SHY) – a hard problem? (1997–2024)
      2 people · 4 points · first shared 2018 · 2 comments on HN
    6. 6
      What happens in Quirks Mode in web browsers? (2014)
      2 people · 2 points · first shared 2024 · Discussion on HN
    7. 7
      An Introduction to Memes
      1 person · 2 points · first shared 2023 · Discussion on HN
    8. 8
      Full Unicode Input Utility
      1 person · 2 points · first shared 2022 · Discussion on HN
    9. 9
      Character histories – notes on some ASCII code positions
      3 people · 1 points · first shared 2019 · Discussion on HN
    10. 10
      How to use images in communication in general and on the Web in particular
      1 person · 1 points · first shared 2026 · Discussion on HN

    What HN people wrote when they linked it

    • JdeBPApr 2019

      I suggested some falsehoods that programmers believe about telephones a while back (https://news.ycombinator.com/item?id=19215636). There is a case for falsehoods that programmers believe about ASCII, starting with:

      * It's 8-bit. (It's 7-bit.)

      * It is sufficient for English. (Ð ð Þ þ)

      * It is sufficient for Modern English. (zoölogy coöperate £ née resumé)

      * It at least has everything that one could type on a typewriter. (½ ¼ ¢ , and that's just starting with some contemporary 20th century U.S. typewriters from IBM such as the Selectric)

      * It is sufficient for the U.S., at least. (Not for the U.S. Library of Congress in 1969 it wasn't. It needed 174 characters for catalogue cards, per https://link.springer.com/article/10.1007%2FBF02404378 .)

      * It was used by Multics. (Multics used a modified version, padded out with leading zero bits and replacing DEL with PAD. See http://web.mit.edu/saltzer/www/publications/multics/bc-2-01.pdf .)

      * It does not have broken vertical bar. (It was in the 1968 standard at 124, a broken bar because the PL/I language people did not want their unbroken vertical bar to be in the then "national variant" range. https://groups.google.com/d/msg/comp.infosystems.www.authoring.html/L7rD197ldIw/RdAbL31DjAwJ http://jkorpela.fi/latin1/ascii-hist.html#7C )

      * It does have broken vertical bar. (It was replaced in the 1977 standard by an unbroken vertical bar at 124. Then some subsequent 8-bit character sets in the 1980s re-introduced a broken…

    • svatOct 2022

      Yeah you're right and good point, and my earlier comment was partly misleading anyway, because there isn't much difference even among typographers between "apostrophe" and "right single quotation mark".

      A better way of stating it is to start with appearance: people who started with computers where 0x40 ` and 0x27 ' looked symmetric (like ‘ and ’) would likely end up using them as symmetric quotation marks (thus the conventions used in some software like Emacs and TeX), while everyone else, where they were not symmetric (looking slanted and vertical respectively) would likely not be led down that route. It's a bit unfortunate that there was this divergence, and that it wasn't settled early enough.

      An interesting example is The TeXbook itself: the 1979 TeX manual (in the "TeX and METAFONT" book), the precursor to The TeXbook and apparently written with mostly the SAIL environment in mind, simply says (early in Chapter 2):

      > In the first place, there are two kinds of quotation marks in books, but only one kind on the typewriter. Even on your computer terminal, which has more characters than an ordinary typewriter, you probably have only a non-oriented double quote mark (") because the standard “ascii” code for computers was not invented with book publishing in mind. However, your terminal probably does have two flavors of single-quote marks, namely ’ and ’, which you can get by typing ` and ´. The second of these is useful also as an apostrophe.

      While already in 1984, The…

    • hilbert42May 2022

      It seems to me that this commentary on Wiio's laws to the effect that all human communication fails except by accident has merit to it although perhaps overstated but I'll not comment it further as it's likely to get into a protracted and complicated discussion that I've not time to argue.

      I would however like to draw your attention to one of the links in the article titled English - the universal language on the Internet? https://jkorpela.fi/lingua-franca.html.

      This page debates the longterm viability of English as the Internet's lingua franca and discusses alternatives including artificially generated languages that are more suitable to the task.

      The argument goes that English although the current lingua franca for the internet isn't really suitable for a number of reasons including its eclectic nature (loosely: many words have essentially the same meaning and whilst native speakers use them to good effect to impart style to their writing, this is very confusing for non-native speakers). Also, English is not suitable because of its huge number of idioms many of which are culturally specific (a problem that can be leveled at any existing native language).

      There are many points argued on this page many of which are self evident but they are essentially all there in a well-argued, cogent text.

      There are other issues that I'd like to mention but time is of the essence. Instead, I'd recommend you read it.

    • sethammonsOct 2019

      There are full on character encoding introductions. I think an easy to approach one is:

      https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/

      Basically, ascii is encoded as integers. '32' represents a space. However, ascii is quite limited and if you want non-US-centric characters, you need to use other character sets. For a myriad of reasons, once you go into unicode (the Universal Character Set) there are lots more options for characters. For example, there are multiple whitespace characters.

      http://jkorpela.fi/chars/spaces.html

      These exist to give different widths or other adjustments to text that is non-ascii. What likely happened in the post (and what did happen to me) is copy-pasting from some document that changed a normal ascii space (that Ruby would expect and know how to deal with) into a unicode character that Ruby interprets as any other character. It would be like having a stray 'g' in the line, but you, as a developer, don't see it. Fun :)

    • saurikMay 2021

      >> But you cannot write <div id="mydiv" />.

      > Sure you can. And exactly as with <br/> the / is ignored.

      Obviously, the phrase "you cannot write" has the context "as a shorthand for self-closing the tag", and doesn't deserve some pedantic "of course you can do that, it just doesn't do what you hoped it would" response :/.

      To really be pedantic about it: SGML actually had a feature similar to this feature and HTML specified it; however, the syntax "<br/" was a valid way to write that tag (technically an open tag, but due to the DTD it would auto close) and the ">" after would get rendered... not ignored (and in fact might even cause the document to fail if that > was in a disallowed context of a strict document).

      https://jkorpela.fi/html/empty.html

      Ironically, the W3's comment on this is to discourage its usage "until widely deployed", as they have essentially always specified stuff no one implemented correctly (lol).

      https://www.w3.org/MarkUp/html3/HTMLandSGML.html

    • currysausageSep 2021

      Note that em (current point size) and en (½ em) spaces are both wider than the regular space character (typically ¼ em). An espace fine insécable (narrow no-break space) is even smaller, usually as small as a Unicode thin space (⅕ or ⅙ em): https://jkorpela.fi/chars/spaces.html

      Word, in French mode, inserts regular no-break spaces where narrow no-break spaces would be appropriate. I find this style rather irritating, but then again, I don’t read nearly enough French to get accustomed to it.

      However, I do agree strongly with the late Jan Tschichold, who recommended thin spaces before question marks, exclamation marks, colons, and semicolons for other languages, too: https://www.courses.psu.edu/art/art101_jxm22/tschichold.html#:~:text=thin%20spaces%20before%20question%20marks%2C%20exclamation%20marks%2C%20colons%2C%20and%20semicolons

    Related

    Henri Sivonenhsivonen.fi47 people

    String Lengths in Unicode

    Henri Sivonen
    Personal · last shared 2025
    Markus Kuhncl.cam.ac.uk/~mgk25133 people

    UTF-8 history (2003)

    Markus Kuhn
    Personal · last shared 2026
    Pavel Panchekhapavpanchekha.com24 people

    We'd be better off with 9-bit bytes

    Pavel Panchekha
    Personal · last shared 2026
    Sean B. Palmerinamidst.com23 people

    CSS px is an Angular Measurement

    Sean B. Palmer
    Personal · last shared 2026
    Manish Goregaokarmanishearth.github.io97 people

    Picking Apart the Crashing iOS String

    Manish Goregaokar
    Personal · last shared 2026
    Bruce Tognazzininomodes.com17 people

    The Law of Conservation of Complexity

    Bruce Tognazzini
    Personal · last shared 2024
    Mika Tuupolaappelsiini.net19 people

    Reverse Engineering Apple Location Services Protocol

    Mika Tuupola
    Personal · last shared 2024
    VelvetSharkvelvetshark.com24 people

    Why do so many brands change their logos and look like everyone else?

    VelvetShark
    Personal · last shared 2026