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.
What HN saysHN commenters call it a treasure trove and cite it for Unicode space widths, Usenet laws, Altavista search behavior, and Finnish grammar answers.
31HN people shared it
19linked it in comments
13stories submitted
107story points
5 months agolast shared
2018people per year2026
Most-shared posts
- 1Unicode Spaces4 people · 4 points · first shared 2019 · discussion on HN
- 2All human communication fails, except by accident (2010)3 people · 5 points · first shared 2018 · 1 comments on HN
- 3Character histories – notes on some ASCII code positions3 people · 1 points · first shared 2019 · discussion on HN
- 4Soft hyphen (SHY) – a hard problem? (1997–2024)2 people · 4 points · first shared 2018 · 2 comments on HN
- 5What happens in Quirks Mode in web browsers? (2014)2 people · 2 points · first shared 2024 · discussion on HN
- 6Empty2 people · first shared 2019
- 7Altavista2 people · first shared 2018
- 8Margin notes to “HTML 4.0 in Netscape and Explorer” (2000)1 people · 53 points · first shared 2022 · 12 comments on HN
- 9Using accesskey attribute in HTML forms and links (2006)1 people · 33 points · first shared 2024 · 12 comments on HN
- 10An Introduction to Memes1 people · 2 points · first shared 2023 · discussion on HN
- 11Full Unicode Input Utility1 people · 2 points · first shared 2022 · discussion on HN
- 12How to use images in communication in general and on the Web in particular1 people · 1 points · first shared 2026 · discussion on HN
- 13Lingua franca1 people · first shared 2022
- 14Homepage1 people · first shared 2021
- 15C01 people · first shared 2018
What HN people wrote when they linked it
Ndymium · 2021-05-20
One great one is Jukka Korpela's website https://jkorpela.fi/
It's mostly in Finnish but has some English pages as well. It's a treasure trove of various information, and especially good information on Finnish grammar, I've used it often to find out the answers some more obscure grammar questions.
hathawsh · 2024-05-06
Personally, I liked it when email threads followed the Usenet "laws".
https://jkorpela.fi/usenet/laws.html
Most of the best discussions I've had online followed those rules.
(OTOH, those rules are written tongue-in-cheek and not likely to be understood well by most newcomers.)
dredmorbius · 2022-07-10
... and just because this is still bothering me:
A surprisingly common form of conversational failure is when two (or more) parties are discussing some matter all with different ideas as to what is being discussed or the context of the discussion.
I'd run across a good description of that recently though I can't seem to recall where / find it presently.
It's not included in this discussion of Wiio's Laws, though there's enough other material there that's excellent guidance for communication that I'm linking it regardless:
https://jkorpela.fi/wiio.html
currysausage · 2021-09-15
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=t…
dogecoinbase · 2018-10-16
Maybe a smaller search corpus made it feasible, but this is an accurate description of AV's functionality. From http://jkorpela.fi/altavista/ , which is worth reading in its entirety:
The operator NEAR ensures that both are within ten words of each other in the resulting documents. The operator NEAR binds less tightly than the operator NOT and associates to the left.
bcbrown · 2018-08-24
This seems like a good place to plug one of my favorite pieces of writing on communication and how it can go wrong: http://jkorpela.fi/wiio.html
hilbert42 · 2022-05-30
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.
userbinator · 2024-08-10
%7Elarry? Looks like an old trend ( https://jkorpela.fi/tilde.html ) that is no longer common.
tannhaeuser · 2022-05-31
Interestingly, the same author was the first to create and publish an SGML DTD for WHATWG HTML (aka HTML 5) [1], though I believe mine [2] to be more complete and up-to-date at this point.
[1]: https://jkorpela.fi/html5-dtd.html
[2]: http://sgmljs.net/docs/w3c-html52-dtd.html
ryanwhitney · 2021-04-05
Another fun aspect of non-breaking[1] and other less common spaces that I’ve realized recently…
If you’re ever trying to use a short or previously-used username: many signups will strip out a regular space, but they won’t always catch a ZERO WIDTH SPACE or HAIRLINE SPACE or many of the other options[2]. It usually takes a few tries, but eventually one will get through.
1. https://practicaltypography.com/nonbreaking-spaces.html
2. https://jkorpela.fi/chars/spaces.html
kps · 2020-08-09
I'd switch to DDG in a half second if they supported the full query syntax of altavista.digital.com (see http://jkorpela.fi/altavista/ if you've forgotten). Disclaimer: I work for, um, Google.
JimDabell · 2020-05-18
It (long) predates "falsehoods" style articles, but this article is pretty commonly cited: http://jkorpela.fi/flags.html
leephillips · 2019-11-16
I'd just like to mention that Jukka "Yucca" Korpela had some interesting observations, relevant to the discussion here, about CSS back in 1997. He might have been the first person to write about these issues:
http://jkorpela.fi/styles/harmful.html#pos
rimliu · 2019-06-26
In XHTML. No browsers treat documents (no matter the doctype) as XHTML unless the proper MIME type is used. Without it your XHTML markup is treated as SGML application (which HTML is) and thus <br /> means completely different thing.
See http://jkorpela.fi/html/empty.html for the details.
jamietanna · 2018-06-29
Fun fact is that `C-[` is the same keypress as `<ESC>` due to how ascii control codes work http://jkorpela.fi/chars/c0.html
svat · 2022-10-31
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…
saurik · 2021-05-28
>> 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
sethammons · 2019-10-18
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-s…
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 :)
JdeBP · 2019-04-04
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/L7… 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…