Fun fact (not fabricated BECAUSE IT'S APRIL 2ND OVER HERE):
Japanese alphabets (kana) doesn't have a concept of upper/lower cases. There are two different types of kanas (round ones and square ones) but they are kind of equal in terms of strength/stress so they can't be used to express anger.
People on 2-Channel forum (Japan's 4chan, basically) came up with a brilliant idea, which is to insert a space between each letter so that it looks a bit wider and has an extra oomph.
Example:
- normal: 今日はいい天気だね。 (it's a fine day, isn't it.)
- angry: 今 日 は い い 天 気 だ ね 。 (IT'S A F*KING NICE DAY ISN'T IT)
When you land on a site with a delayed paywall, you can copy out the content just before the popup, and then paste it into <body contenteditable> to view at your own leisure.
Writing horizontally the dot would be above, so I'd assume there's support by composition.
It would still be a problem of IME and font support.
On input, there's already so many shortcuts and hacks (e.g. SHIFT/CAPS is already taken to force switch from hiragana to katakana) that it's hard to imagine some natural combination that could be memorized.
On the font side, there's already the battle raging for having proper jp fonts in smarphones instead of the chinese ones, so additional support for marginal features is an uphill battle to say the least.
That's an interesting fact, but I can't help but feel like your comment is a bit too unaware of its own culture. After all, there's nothing that makes capitals inherently shouty, it's just another convention.
Saying "they didn't have capitals so they used spaces" would sound odd to an alien, who would wonder why capitals were necessary in the first place.
But he's not talking to aliens though. We all know what putting stress or emphasis on words means. I'd be surprised if that was an exclusively western phenomenon.
It's fun to hear how it's done in scripts that doesn't support our (as in the average HN reader) default way of doing it (which would be caps or italics/bold).
To assume that an English reader would know what "dots" are in your example seems unreasonable. As the sibling comment said, if you wrote that in japanese it would make perfect sense. The sort of meta statement would be "That other language doesn't have X, which the one I'm using has. It instead uses Y, which has the same approximate meaning.".
The equivalent would be "in Eglish you cannot use special marks for emphasis (as they do not exist) so they different variants of their alphabet".
The comment is premised by how in japanese there are "two" sets of "letters" with slightly different uses but differently from lowercase/uppercase the difference does not translate in emphasis.
Uppercase letters are linguistically related to emphasis independently form net-speak (proper names, I, beginning of sentences), so to me it reads as "the thing that naturally works here is impossible there, so they have a different solution to the problem".
It is fine to take the perspective of your own cultural situation.
Many of the Asian languages do not have the concepts of upper or lower case.
They contain vowels that go beyond the basic 5 "aeiou" of the English language (eg. see [0]). These suffice to let the speaker know how exactly to say the word unlike in English where it has to be learned case by case based on whatever is popular or acceptable pronunciation.
A subset of of these languages are tonal languages which also have special characters to additionally allow the speaker to set the pitch of the word correctly which then changes the meaning of the words [1].
"These suffice to let the speaker know how exactly to say the word unlike in English where it has to be learned case by case based on whatever is popular or acceptable pronunciation."
This is more due to how widespread English is, and how vowels/pronunciation have shifted over time. For example, The Great Vowel Shift. [0]
Korean has exactly the same issues, albeit to a smaller degree. There are plenty of words that aren't pronounced like how they're spelled, due to grammatical rules. 종로 as an example. Or cases where words sound exactly the same and you just need to know the context/spelling- 쫗다, 쫒다, 쫃다, 쫏다, 쫓다.
Then there's regional slang/pronunciation/dialect. Busan dialect is fairly different from 표준어, or the "official" standard language. This phenomenon is not unique to English in any way. Any language scaled up will develop these issues over time.
At least you can try to pronounce "cough" or "종로", instead of not being able to pronounce "願" at all because you don't already know the pronunciation.
> This is more due to how widespread English is, and how vowels/pronunciation have shifted over time.
I'd go so far as to say that english is now spoken by so many people in so many different regions, all of whom can now be heard by each other on a reasonably frequent basis, that it has forced english speakers to become so adept at vowel-reconstruction that one could pronounce words with completely arbitrary vowels and still be understood.
"it has forced english speakers to become so adept at vowel-reconstruction that one could pronounce words with completely arbitrary vowels and still be understood."
This was still occurring before people were able to widely hear other regions' speakers, though.
However things like cough, plough, although, thorough, etc having different, -correct- pronunciations are due to English taking in words from other languages.
> These suffice to let the speaker know how exactly to say the word unlike in English where it has to be learned case by case based on whatever is popular or acceptable pronunciation.
You can have three things:
1. A spoken language that evolves over time.
2. A writing system that accurately describes pronunciation.
3. A writing system that indicates history and etymology.
But you only get to pick two. English went with 1 and 3, which is arguably the optimal choice.
Why do you think #3 is more important than #2? Why is preserving history and etymology more important than ease of learning for new writers? Put another way, why should kids have to struggle with spelling so we can have a writing system that preserves linguistic history?
1. Because it's more important to know what words mean than it is to know how they sound.
My daughter reads a ton and learns a lot of words from reading. Fairly often, she mispronounces them, and that's OK. What's more valuable is that she can often infer the correct meaning of the word both from the surrounding context and from the parts that the word is made of. If we normalize spelling to match pronunciation, much of the latter gets lost.
It's easier to see that "mean" and "meant" are related than "meen" and "ment". "History" and "story" versus "histery" and "story".
2. Because pronunciation changes over time. If we continuously change spelling to match, it means older printed works get harder to read. In the worst case, they can appear to be saying different words than they intended.
3. Because pronunciation isn't uniform across regions.
Should "lawyer" be spelled "loyer" or "lawyer"? Is "crayon" spelled "crayon", "crayawn", "cran", or "crown"? Is it "caramel" or "carmel"?
Probably they mean spoken English, rather than written English. Written languages are traditionally considered secondary to spoken ones in linguistics, perhaps because they tend to be acquired several years later in childhood and several millennia† later in history. English is normally considered to have about 13–15 vowels, if we exclude the rhotics, depending on dialect: TRAP BATH PALM LOT CLOTH THOUGHT KIT DRESS STRUT FOOT FACE GOAT FLEECE GOOSE PRICE CHOICE MOUTH COMMA LETTER HAPPY, in Wells's standard lexical sets.
But, you say, that's 20 lexical sets, not 13–15? Well, no dialect distinguishes all 20. My idiolect (a slight variant of General American) realizes TRAP and BATH as [æ], PALM and LOT as [a], CLOTH and THOUGHT as [ɔ], KIT as [ɪ], DRESS as [ɛ], STRUT as [ʌ], FOOT as [ʊ], FACE as [ei], GOAT as [ʌu], FLEECE and HAPPY as [i], GOOSE as [u], PRICE as [ai], CHOICE as [ɔi], MOUTH as [æu], and COMMA as [ə]. That's 15, or 12 if you leave out PRICE, CHOICE, and MOUTH, which are diphthongs made of vowels that also occur isolated. (GOAT is debatable, usually analyzed as [oʊ] or [ou].)
Different dialects draw the boundaries in different places; for example, dialects with the "trap–bath split", such as RP, famously realize TRAP and BATH differently ([æ] and [a] in RP). Some dialects have fewer vowels; if we consider Indian English to be a single dialect, it may have more speakers than even GA, and most varieties of Indian English have fewer vowels than 12. I haven't found a good phonological analysis, but if you know any Indian English speakers and also know phonology, you know what I mean. https://en.wikipedia.org/wiki/Regional_differences_and_diale... goes into some detail.
______
† The historical gap might be much larger than this.
Sumerian cuneiform and Egyptian hieroglyphs date back about 5300 years, and they provide evidence that spoken language was considered to be universal among humans at the time—there is no suggestion of tribes that lacked language anywhere in the written record. Today there are still peoples without written language, and a few who only acquired written language within the last generation. So we have good evidence that it has taken at least 5300 years.
But Homo sapiens has been around for sixty times that long, over 300 millennia, and stone tools date back 2 million years. It strains credibility to imagine that the authors of the Lascaux cave paintings or the Denisovans who invented sewing were so unlike us as to lack speech; the origin of spoken language is usually dated to before 40kya. Unfortunately, no tape recorders have yet been found from that epoch, so the uncertainty of the antiquity of spoken language ranges over nearly a factor of 100. Maybe spoken language is a million years older than written language, or five million. Probably not ten million, though, or we'd be studying chimpanzee folklore.
I love how explicit some written languages seem to be. It sounds great to be able to reliably pronounce any word perfectly. I suppose it's a trade off of complexity though. Learning these more explicit languages seems really daunting. Maybe it's just bias?
English and French are the oddballs here. In virtually all other European languages you can reliably pronounce any written word of the language. You don't have to go to Asia for this.
I don't know about that. I'm Swedish and there are a lot of words in our language that is impossible to deduce the pronunciation of. I'd assume the same is true for the other scandinavian languages as well since they are very similar. Perhaps we are oddballs as well, but it seems unlikely.
You might find the IPA interesting. With maybe an hour of studying to learn the letters/symbols and mouth movements you can reliably pronounce any word in any language so long as you’ve got the IPA spelling.
I've actually looked in to IPA at one point. It is extremely useful when learning the basics of a new language. It would be very tedious to try to look up every new word you come across though. Alas, the worst part is that you don't know which words are pronounced differently than you assumed until you hear it or someone raises their eyebrows.
I don't understand people that read ALL CAPS as shouty, and in fact, it was ine of my first culture clashes on HN. I find the italicized emphasis mode to be harder to read and recognize.
Maybe it seems so odd to me because there are so many licenses, contracts, or government forms that use ALL CAPS as emphasis. I don't know.
It just doesn't translate to shouty in reading mental voice.
To me (and probably most others), license texts and such absolutely look like they are shouting. I do not understand whence the convention of having them in ALL CAPS, and can only assume it's in itself some sort of a cultural association between ALL CAPS and IMPORTANCE. I have only seen it in English legal texts, anyway – is it even used in other languages? It looks to me like ALL CAPS was originally used to emphasize key points, and then an inevitable race to the bottom happened until EVERYTHING WAS IMPORTANT which really means that nothing is important.
When it comes to typography, nearly every type of emphasis employed in Western text except italics (and sᴍᴀʟʟ ᴄᴀᴘs, which see too little use these days methinks) only exist due to technological limitations, particularly the extremely limited typographic options available to typewriters and, later, 7- or 8-bit text terminals. This includes ALL CAPS, s p a c i n g, and u͟n͟d͟e͟r͟l͟i͟n͟e͟d͟, never mind ASCII crutches like /pseudoitalics/, _pseudounderlined_, and ∗pseudoboldface∗.
I don't tend to read it as shouting unless the contents are clearly angry. I've always seemed to parse it as more of a monotone 80s/90s computer voice. I think growing up using DOS and BASIC made me just associate all-caps with computers.
Honestly I'm a little surprised that people who've likely seen their share of BAD COMMAND OR FILE NAME would still read that as shouting.
There is a similar thing in Korean Hangul (also unicased) where you put full stop between each letter: "알겠습니다." ("I see.") vs. "알.겠.습.니.다." I believe it is an independent invention.
That kind [1] of language-script mismatches mainly for humorous purposes actually exists in Korean and is considered a kind of 한본어 (a portmanteau of 한국어 Korean language and 일본어 Japanese language).
[1] In this case, Japanese そうですね "I see" written in Hangul.
Chinese phonology is a bit restrictive but I have great fun written short messages in other languages (Japanese, French, English) with Chinese characters. Of course the number of friends I can do that why is very limited, which in a way makes it is even nicer.
Every time I'm reading these letter or the mega-wide numbers in Japanese uploads on youtube, I'm having a heart attack thinking my font cache is broken again.
Yes. writing word in kanji or katakana sometimes works as emphasis. In other words, writing word in hiragana works as not to be emphasised.
Writing word in katakana that usually written in kanji is also works as emphasis with a bit different meaning. It tend to be used as stereotype.
For example, 福島(Fukushima) / 広島(Hiroshima) is just a name of prefecture, but sometimes written フクシマ / ヒロシマ that refers nuclear plant accident / nuke bomb event. (I really dislike this usage).
Sometimes all-katakana is used in fiction to indicate foreigner or robotic voices (like the Starmen in Mother 2). Writing a scream as a string of ア's instead of あ's gives it a piercing quality, moreso when you add the dakuten marker (゛), even though it doesn't change the pronunciation in this case.
More of an indication that implications exist, e.g. ガンバる implies it’s supposed to be but not in kanji, ヒロシマ or フクシマ implies nuclear context.
They can be used to convey tones in text similarly to how italics, caps, symbols and other decorations work in general, I think that’s what they meant to say by emphasis.
No concept of case is also true of Chinese, Korean, Arabic, and if I'm not mistaken, most South Asian scripts as well.
There are an incredible amount of other ways to add emphasis in Chinese though, so it's not lacking anything, and I imagine the same is true of the other languages.
Case is a uniquely European script phenomenon, and one that came late in the development of most of the scripts (Cyrillic, because it was the last of the European scripts to be developed has the shortest time between its unicameral origins and the development of upper- and lowercase).
I have a book published in the 1920s with a forward by Stanley Morison, by an author who attempted to enhance the Hebrew alphabet by introducing upper and lower case letterforms to it as well as to bring the letter forms more in line with the styles of the Latin-Greek-Cyrillic alphabets. It's—odd.
> I have a book published in the 1920s with a forward by Stanley Morison, by an author who attempted to enhance the Hebrew alphabet by introducing upper and lower case letterforms to it as well as to bring the letter forms more in line with the styles of the Latin-Greek-Cyrillic alphabets. It's—odd.
Before the eventual standardization of Hangul around early 20th century there were numerous attempts to "linearize" Hangul's characteristic syllabic blocks ("풀어쓰기" [1]). Many of them were influenced by Western alphabets and had two cases, and none were successful. And yes, they are also odd.
When I was an undergrad, I wrote some algorithms for composing Hangul letters into the "ideographs" in Metafont. It was kind of fun to build. The whole east-Asian font project was too ambitious and never got finished though. I was trying to enable algorithmic composition not just of Hangul but also Kanji/Hanzi from radicals but the latter was not as amenable to algorithmic composition.
And it's worth mentioning how relatively recently case was "invented" even for Latin and Greek/Greek-derived scripts (including Cyrillic, and probably Latin itself technically...)
The way we write modern text is more modern than most people realize, I think. The letter 'j' wasn't really used as a separate letter indicating a separate sound until sometime around the 16th century I think! Case is older, but not ancient. I've seen some Greek on 3rd/4th century middle eastern ruins and I struggle to read the "all upper case with no spaces" writing sometimes, but that's just how it was! No "lower case" until much later...
The characters we think of as lower case were starting to take familiar forms around the 3rd century, but they were just the handwritten form of the language. One set of letters with clear sharp lines that can be worked into stone, and another with curves that can be quickly handwritten.
Arabic script has a vaguely similar concept of a given letter having multiple (up to 3) forms. The form depends on what letters precede and/or succeed it (if any).
Neither do uppercase letterforms. Uppercase individual letters aren't emphasized, that's just grammar, much like Hebrew's final letters that are only used at the end of words (I'm guessing these indicated the ends of words to assist reading when spacing wasn't used--I've certainly found it useful as such).
I learned Thai in the last 10 years and they don't have letter cases. I naturally began to use spacings for emphasis in "Chat language". It's so natural to do this.
They do have half width versions though that are used when typing sometimes あ -> ぁ like if you want to indicate stretching vowel sounds out for emphasis.
This is the most brilliant thing I've watched in a long time. I love the various ways Tom took this. His sense of humor, obscure references, and ability to tell a good story are outstanding. I also started watching the other videos and they're just as good.
Tom, if you are reading this, I am curious what a capital smiley face emoji looks like. Or the capitalest. What does nirvana look like in a twittable small yellow circle? Or a lowercase one. Or lowestcase one. What is the graphic depiction of the pit of despair.
You got me thinking. Sure, emojis are in color. But could you make them black and white? Or apply the transform to each color channel independently. I'm convinced there is a way, and if there is anyone who can find it, it is you.
And if you do go this way, why stop at emojis? The world needs to know what a capital Mona Lisa looks like. Or the capitalest.
I think you're on the path to general artificial intelligence here. iA.
If you haven't seen tom7's youtube channel: Every single video at https://www.youtube.com/c/suckerpinch/videos is a treat. Mind-bending, deeply funny, and amazingly work-intensive.
Seconded, thirded, and fourthed. My favorite is "NaN Gates and Flip FLOPS", where he dismisses 0 and 1 as being too ugly to be the foundation of all computation and reinvents computing via the beauty of rational numbers, which is to say, the horror of IEEE754 floating point (along with a working hardware implementation!): https://www.youtube.com/watch?v=5TFDG-y-EHs
Tom7 will probably be the only person ever to bring up strange loops as part of a self-referential narrative for reverse engineering an NES and programming a slideshow presentation with the diagrams of that reverse engineering... on the NES itself.
I love the concept and execution but it really is so sad that the results weren’t more compelling.
I do wonder whether the problem is that training on multiple fonts just doesn’t actually add more data points to the dataset. Fundamentally, you’re going to get a model that knows how to uppercase or lowercase each canonical Latin letter. This model might actually be quite good at generating appropriate lowercase forms for a font given the uppercase glyphs, but it’s not learning an abstract concept of ‘lowercaseness’.
Instead of extending the training set with more fonts, the only real source of additional training data would be more alphabets. Cyrillic and Greek both have case systems so just adding those would have more than doubled the number of training cases - I think the trick would be to start from the Unicode case mapping tables to generate your example data, to give your model more variety of upper/lowercase pairs to get its teeth into and really make it possible to ask it to uppercase an arbitrary letter form.
The approach he used didn't really make sense. I get the impression Tom is so dedicated to his old custom hackedup NN framework that he tailors the approach to what he could easily do in it.
If you asked someone else, "I want to automatically turn characters into 'more uppercase' or 'more lowercase' versions, and it has to involve neural networks; what do?", they would say something like "Easy enough! dump character maps into a standard StyleGAN2-ADA, train for a few days, then find the latent direction corresponding to uppercasing & lowercasing, and edit whatever font you please." (People have been generating fonts with RNNs or GANs for ages.) You could do this over a week or so, the tooling has gotten pretty easy to use.
And if you asked someone on the cutting-edge, they'd suggesting using OA CLIP through Aleph/BigSleep/etc to automatically edit images using a text input prompt of "a lowercase letter" or "an uppercase letter", or one of the hybrids like StyleCLIP https://github.com/orpatashnik/StyleCLIP . This approach might take all of an hour or two (but results probably would be worse).
I still keep Tom's old fonts around on my computer for various purposes. They have a real character that I haven't found in other fonts: http://fonts.tom7.com/
It would be interesting to see if AI could be used to fill in some of the gaps in the fonts - ie: numbers for his Angstrom font (https://www.dafont.com/angstrom.font)
Something like mixup augmentation might work here as well for training - blend two SDFs and say "this is 20% A and 80% B".
Someone could also train a model that given some glyphs of a font predicts the rest of the glyphs. Then we can do weird things like give it glyphs from multiple fonts as input to make a hybrid font.
Personally I'm curious about training a model to predict Cyrillic or Greek letterforms from Latin ones to boost multilingual coverage. I'm sure there are some learnable relationships there like Я <=> R or И <=> H.
Do you mean relationship in terms of appearance or pronunciation?
Я maps to "ya" sound in Russian, И is "ee" and Н is "N" in Russian and "ee" in modern Greek but in ancient Greek it's something like "e" in "bed" in American English.
Appearance. I'm just talking about typefaces - absolutely nothing to do with pronunciation.
Some fonts do not have Cyrillic glyphs. If they could be generated by an adequately trained model based on the other glyphs, then that font's multilingual coverage could expand automatically.
Very interesting! Well, I'm playing with the concept a bit now. Currently writing a skia client to generate glyph SDFs as images so I can just use pytorch.
Okay, based on the introduction of the linked paper, this is brilliant. I have seen few if any texts like this one, which treat a fun + interesting + simple idea with fun language while also presenting it in the form of a research article.
Do give this a chance
EDIT: I forgot what day it is. I really like the idea though and I think with a little more work it could really deliver
This guy is the Terry Pratchett of home-grown deep learning libraries...
So I did that and let it run for a month. Actually I had to start over several times with different parameters and initialization weights because it would get stuck (Figure 11) right away or as soon as I looked away from the computer. I prayed to the dark wizard of hyperparameter tuning until he smiled upon my initial conditions, knowing that some- where he was adding another tick-mark next to my name in a tidy but ultimately terrifying Moleskine notebook that he bought on a whim in the Norman Y. Mineta San Jose International Airport on a business trip, and still feels was overpriced for what it is.
The database is just filled with garbage that is unusable
for this project: Fonts that are completely illegible, fonts
that are missing most of their characters, fonts with millions of control points, Comic Sans MS, fonts where every
glyph is a drawing of a train, fonts where everything is fine
except that just the lowercase r has a width of MAX INT,
and so on.
07:48 “Comic Sands; so called because the letters look like little droppings of sand, or something. And they are kind of aesthetic. We could consider this an improvement.”
The conference "FUN with algorithms" consists mostly if these kind of things. CS done on toy problems or other things making the papers a bit out of the ordinary (but still real science). Not presented in quite the same quirky way, though.
I wonder why we still have capital letters. I understand that Latin had more angular letters to inscribe on marble, compared to the more rounded lower case letters for day-to-day writing. Now that we have the technology to do rounded inscription, why hang on to this outmoded notation? The simplicity of the Latin alphabet is unnecessarily complicated by the presence of capital letters.
This is not as absurd as it sounds. After all, over the centuries, we have introduced punctuation to make it easier to read, unlike classical writing [1]. Why not carry through with remaining reforms?
As far as I know (or as I was taught at school in France) it is Charlemagne who introduced bicameral usage in the latin script with more easily legible "lower case" (which were not actually "lower case" back then of course) letters for most of the script while keeping upper case letters at the beginning of sentences or important words also to improve legibility (serving as cues that help keeping track of where you are in the text). This was basically modern script, only the lower case fonts have evolved somewhat.
Capital letters in modern script are therefore not a remnant of technical limitations, the mix of lowercase/uppercase was actually voluntarily introduced for legibility once these technical limitations were gone.
You can clearly see the letters B, C, D, G, O, P, Q, R, and S graven in bronze with all the same curviness they'd have if they were instead carved in marble. [1] They're carved that way because that is what the letters look like; if they're difficult to carve, that just means the carver has to suck it up.
The letter we commonly render U is V in Latin. That is not due to the needs of the medium; that is what the letter looks like. In Latin, there is no letter U. V is not pointed because it was difficult to carve C, D, O, Q, P, R, and S. V is pointed for the same reason M is -- because that is the shape of a V.
I think you have it backwards, it was technology rendering the difference between the two obsolete that brought capitalization about. Latin just used one script or the other depending on use-case, it was when we had printing presses that we started to start codifying rules for how to mix the two scripts into one large character set.
I don't understand your argument, are you saying that removing capital letters would improve legibility? Note that as far as I know during the antiquity there was no semantic meaning associated with font case, you could use full caps in some settings and full lowercase in others. The image in your linked wikipedia article uses full uppercase for instance.
At any rate it's not at all obvious to me that removing case would improve things. I'm currently reading a book my Valter Hugo Mãe who's an author who (generally) only uses lowercase letters: https://svkt.org/~simias/up/20210402-153754_maquina.jpeg
In both cases I often find myself missing the end of a sentence, I think mainly because ',' and '.' are easy to mix up but normally you expect '.' to be followed by an uppercase. Of course part of the issue might just be lack of familiarity.
I'm not arguing that capitals are vital and we couldn't read and write correctly without them, but as you point out we could say the same of spaces and general punctuation. I can read unaccented French just fine for example, but it does force me to slow down at times and to infer more from context.
I always imagined a writing system that used uppercase/lowercase to be "before and after a decmial point" without an explicit decimal.
Like how some advertising material renders "$499.99" as 499 in a large size, followed by 99 in a smaller, often superscript style, and no discrete decimal.
Well, if we can, are we then now in a situation where the 'step' of 'cases' is no longer an integer sequence? That is to say, that the cases are fractional? Like, if middlecase is 0.5, then can we apply the middlecase operation again and get 0.25/0.75?
As applying cases is then just 'addition', then you can likely get the 'multiplication' and 'divisions' of the cases as applied. 'Exponentials' are just around the corner too.
Is that is the situation, that we can now get transcendental cases. The 'pi' case, or the 'e' case, pick your favorite transcendental.
More interestingly, you can then pull out the imaginary case, using Euler. e^(i*pi) = -1. Maybe that the lower-er case is just the 'e' case to the power of the 'pi' case times the 'i' case. Whatever those operations may mean.
Of course, one you're at the imaginary cases, you might as well step up into derivatives and integrals, it's just curiosity after all. Then you'll be doing partial derivatives and then Lagrangians.
Eigencase-ing comes next, and then Maxwell's equations in case format. 'Del'ing your cases should be a real trip.
After only a bit of puzzling, you're doing quantum mechanics operations with your cases, because why not?
Case-ing operations have a fruitful future for any mathematician, it seems.
Hmmm. I wonder if you can do backprop on exp(f) as efficiently as f? Then once you've learnt exp(f) you can just use exp(tf) to transform smoothly from one to the other.
You see that bit at the start of the video where tom7 presses the capslock key, then types a letter, then presses the capslock key again? I worked with a designer (posessed of two hands and no visible impairments) who actually typed like that. Working alongside him was an excellent lesson in patience.
I did that up until about 5 years ago, and I've been a professional software engineer for 13 years or so, and programming longer than that. I had to remove the caps-lock key from my keyboard to force the behaviour out of my muscle memory.
Now though, I have the opposite bad habit, if I need to write a long string of uppercase letters, I don't turn on caps-lock, I instead keep my left little finger pressed on the shift key.
I chuckled too but then I thought about it and.. it might be slightly slower but will probably be better for your hands long term since hitting shift you have to twist your hand awkwardly
...what? I just checked on three different keyboards to make sure, but...no. Shift overlaps with A for a reason; you shouldn't be twisting your hand if you're using proper typing technique.
My only suggestion for improvement for the modeling is in the part where you tried to find the "ideal" letters for the model.
Instead of sampling generated random bitmaps and ranking those, you could instead initialize the inputs to random continuous values, then optimize the output score for the desired letter with respect to the random input (with your fixed model).
Indeed, this is how people get those trippy dog images you've probably seen.
Out-of-fashion warning: tom7 uses Subversion, not git. How subversive. He really must belong to the institute for computational heresy. I press shift to reduce conflict all the time and I still feel conflicted.
This is a really fun project, no doubt, but I keep seeing stuff about fonts on HN. I was wondering why it is that HN likes fonts? What is it about them that makes them HN-interesting?
> It does genuinely matter that a designer should take trouble and take delight in his choice of typefaces. The trouble and delight are taken not merely "for art's sake" but for the sake of something so subtly and intimitely connected with all that is human that it can be described by no other phrase than "the humanities". If "the tone of voice" of a typeface does not count, then nothing counts that distinguishes man from the other animals. The twinkle that softens a rebuke; the martyr's super-logic and the child's intuition; the fact that a fragment of moss can pull back into the memory a whole forest --- these are proofs that there really is reality in the imponderable, and that not only notation but connotation is part of the proper study of mankind.
- William Zinsser
Zinsser was actually talking about writers here. And it might be a bit hyperbolic, sure. But I think the fact is that people who love to program spend a lot of time staring at words, and given a chance they'll take interest in the clothes that words wear.
Huh. That makes sense from a frequency of exposure sense.
It's just that I'd be interested in the main fonts that make practical sense for projects and not so much on the quest for the holy grail of fonts that makes all men fall to their knees in awe at its aesthetic perfection. Doesn't matter how pretty you write bad content, anyways.
Arguably, lining figures are uppercase numbers and old-style figures are lowercase numbers. Certainly, the former work better in an all-caps setting than the latter, and the latter in mixed-case typesetting than the former. I used to set Canadian and British postcodes, which are mixes of letters and numbers using small caps and old-style figures when I printed mailing labels for the magazine I published in the 90s.
Japanese alphabets (kana) doesn't have a concept of upper/lower cases. There are two different types of kanas (round ones and square ones) but they are kind of equal in terms of strength/stress so they can't be used to express anger.
People on 2-Channel forum (Japan's 4chan, basically) came up with a brilliant idea, which is to insert a space between each letter so that it looks a bit wider and has an extra oomph.
Example:
- normal: 今日はいい天気だね。 (it's a fine day, isn't it.)
- angry: 今 日 は い い 天 気 だ ね 。 (IT'S A F*KING NICE DAY ISN'T IT)