@hipsterelectron reminds me of this piece by the guy who wrote slate.js, it is a fun trip https://lord.io/text-editing-hates-you-too/