Live data from Hacker News

What every software developer must know about Unicode in 2023

tonsky.me

211–220 of 572 posts

Re: What every software developer must know about Unicode in 2023

#211

Earlier quoted context omitted.

Anytime tonsky's site gets posted here, I'm reminded by how awful it is, which is ironic given his UI/UX background. The site's lightmode is a blinding saturated yellow, and if you switch into darkmode, it's an even less readable "cute" flashlight js trick. I don't know why he thought this was a good idea. Thank god for Firefox reader mode.

I don't think he added moving cursors all over the page because he thought it was good UI/UX, he knows what he is doing.

He appears (if his logos are anything to go by) to be a flat UI guy. I doubt any of these people know what they're doing.

Re: What every software developer must know about Unicode in 2023

#212
post #191

Earlier quoted context omitted.

I don't think he added moving cursors all over the page because he thought it was good UI/UX, he knows what he is doing.

This is seemingly self-contradictory. Perhaps you could explain your reasoning further?

It lets you hold hands with strangers

Re: What every software developer must know about Unicode in 2023

#214
post #77

Unicode is a total mess. In a sane system, "extended grapheme clusters" would equal "codepoints" and it wouldn't make a difference for 99% of languages. Now we ended up with grapheme clusters, normalization, decomposition, composition, Zalgo text, etc. But instead of deprecating this nonsense, Unicode doubled down with composed Emojis.

> Unicode doubled down with composed Emojis. Not just emojis, in general I believe Unicode has just said they're not going to add new pre-composed characters and that using combining characters is the Right Way™ to do things (well, the only way for newer scripts). One of the downsides of writing down specifications is that they tend to attract people with Very Strong Opinions on the One And Only Right Way and will ar…

The first time I heard that Unicode would support emoji, I knew it would be a recipe for disaster. And I definitely was not disappointed.

Re: What every software developer must know about Unicode in 2023

#215
post #160

Earlier quoted context omitted.

Speaking of third party keyboards, I’m still upset about what happened to Nintype[0]. I’ve never ever been able to type faster on mobile than with it’s intuitive hybrid input style of sliding and tapping, paired with AI that was actually good. It used to be quite performant, fully customizable, and it worked beautifully as a replacement for default on jailbroken iOS. Today, it’s buggy $5 abandonware that only makes m…

Nintype was absolutely incredible. I still open it every now and then after an iOS update in the vain hope some system change made it less buggy.

I’m really considering repurchasing (I definitely owned it previously, no idea what happened), can you describe specifically what the main bugs are for you? I’d be happy if I could use it solely for occasionally writing long notes, not as a replacement for all text inputs.

Really not looking to burn another $5, I’d greatly appreciate any thoughts/concerns at all.

Re: What every software developer must know about Unicode in 2023

#216
post #162

> The minimum every software developer must know about Unicode Just a nitpick... Once more, as it is typical on HN, web programming is confused with the entire universe of software development. There are plenty of software realms where ASCII not only is enough, but it actually MUST be enough.

This kind of assertiveness leads to garbage like C++ still not supporting UTF8 properly in 2023. My name contains diacritics. I am so, so, so tired of trying to work around information systems - not just web frontends - designed by people who don't care or worse, don't want to care. "Web" programmers can care all they want about Unicode, but if the backend people didn't deal properly with text encoding, then somethin…

> This kind of assertiveness leads to garbage like C++ still not supporting UTF8 properly in 2023. My name contains diacritics.

UTF8 encoded diacritics work just fine in C++.

Re: What every software developer must know about Unicode in 2023

#217
post #195
post #152

Earlier quoted context omitted.

> An extended grapheme cluster is largely defined on "this visually displays as a single unit", which isn't necessarily correct for things like "display size in a monospace font" or "thing that gets deleted when you hit backspace." I'm sorry, but I fail to see how "This visually displays as a single unit" could ever differ from "Display size in a monospace font" or "Thing that gets deleted when you hit backspace".

If you type "a", combine it with "´", then change your mind and hit backspace, you probably want to end up with "a" even through "á" was a thing "visually displayed as a single unit".

Most European keyboard layouts have it the other way around: first press a "dead key" for the diacritic mark and then the letter to apply it to.

Where some layouts may require this method for some characters, another keyboard layout may have the same character on a dedicated key.

The program receives the combined character as one unit, and does not need to be aware of different keyboard layouts.

Re: What every software developer must know about Unicode in 2023

#218

> People are not limited to a single locale. For example, I can read and write English (USA), English (UK), German, and Russian. Which locale should I set my computer to? Ideally - the "English-World" locale is supposedly meant for us, cosmopolitans. It's included with Windows 10 and 11. Practically, as "English-World" was not available in the past (and still wasn't available on platforms other than Windows the last…

> I have always been setting the locale to En-US even though I have never been to America. This leads to a number of annoyances though. E.g. LibreOffice always creates new documents for the Letter paper format and I have to switch it to A4 manually every time

> I doubt many English speakers (let alone those who don't live in a particular anglophone country) care to distinguish between English dialects. To us presence of a huge number of these (don't forget en-AU, en-TT, en-ZW etc - there are more!) in the options lists brings only annoyance, especially when one chooses some non-US one and this opens another can of worms.

Well, you just explained what this plethora of options is about. It's not just about how you spell flavor/flavour. It's a lot of different defaults for how you expect your OS to present information to you. Default paper size, but also how to write date and time, does the week start on Monday, Sunday, or something else, etc.

Re: What every software developer must know about Unicode in 2023

#219

Earlier quoted context omitted.

It's hard for me to imagine how Unicode normalization could crash your application unless you have very convoluted memory management code. What on earth are you doing that it's leading to crashes? Are you not validating the result?

iMessage has had several vulnerabilities related to this. Whatever the difficulties are, even Apple can't handle them sometimes.

I'm very skeptical, but willing to be proven wrong. What's the CVE?
Post reply on HN