CLOSED: [2020-01-03 Fri 13:48] SCHEDULED: <2020-01-03 Fri> :PROPERTIES: :CREATED: [2020-01-03 Fri 13:30] :ID: 2020-01-03-complexity :END: :LOGBOOK: - State "DONE" from "NEXT" [2020-01-03 Fri 13:48] :END: I'd like to recommend you two articles: [[https://gankra.github.io/blah/text-hates-you/][Text Rendering Hates You]] and [[https://lord.io/blog/2019/text-editing-hates-you-too/][Text Editing Hates You Too]]. The first one is explaining some aspects on implementing text rendering for a general purpose software. The second one extends the topic to text input. Both topics do seem to be simple and straight-forward. Reading them will remind you that the devil is in the details. I had a similar effect with [[https://www.youtube.com/watch?v=-5wpm-gesOY][The Problem with Time & Timezones]] by Tom Scott where he explains implementation implications on time and time zones. TL;DR: avoid contact with any topic mentioned. ;-)