Спросите у разработчика, сколько символов в строке «café🇷🇺», и есть шанс услышать три разных ответа, причём каждый будет обоснован. Python скажет одно число, длина в байтах на диске — другое, а человек, который просто посмотрит на экран, насчитает третье. Это не баг конкретного языка, а фундаментальное свойство того, как устроен текст в компьютере — и оно тихо ломает лимиты полей в базах, обрезку строк в UI и валидацию на бэкенде каждый раз, когда кто-то забывает, какое именно число он на самом деле мерит.
Подробнее →