• «Й» вам не «и» краткое! О важности нормализации Unicode

      й

      За последние полгода интернет просто наводнила «буква» «й». Я встречал ее на новостных сайтах, в мессенджерах, на хабрахабре и geektimes. «О чем вообще речь?» — спросите вы — «Я вижу обычную букву й!». Вам повезло. Я вижу ее так:
      image
      image
      image
      image
      image
      Если вы из тех счастливчиков, у кого буква «й» выглядит так же, как и «настоящая» «й», вот вам фокус: скопируйте ее (букву «й») в блокнот, поставьте курсор в конец буквы и нажмите backspace. Магия, отвал башки просто!
      Как же так получается?

      Графемы, глифы, code points, компоновка и байты

      Очень краткое введение:
      Графема — то, что мы привыкли называть буквой в смысле единицы текста. Глиф является единицей графики, и может графически представлять саму графему или же ее часть (например, различные диакритические знаки: ударения, умляуты, надстрочное двоеточие у буквы ё и т.д.).
      Code Point — то, как записывается текст в представлении Unicode. Одна графема может записываться разными code points.
      Code Points кодируются различным байтовым представлением в зависимости от стандарта: UTF-8, UTF-16, UTF-32, BE, LE…
      Языки программирования, как правило, работают с code points; для нас, людей, привычно мыслить глифами.

      Давайте же наконец разберемся с нашей буквой й. Что же в ней такого особенного?
      Эта буква представляет из себя одну графему («и» краткое), но записана она двумя code points:
      U+000438 CYRILLIC SMALL LETTER I
      U+000306 COMBINING BREVE

      Если вы проделали фокус с нажатием backspace, вы как раз и стерли COMBINING BREVE, или, говоря полиграфическим языком, значок краткости над гласной.

      Обычная буква «и» краткое, которую мы все с вами привыкли набирать клавиатурой, представляет из себя композитный символ, который записывается одним code point:
      U+000439 CYRILLIC SMALL LETTER SHORT I
      Читать дальше →
    • С камерой в облака. Часть 2

      • Tutorial
      Тренировки

      Спасибо каждому, кто читал и комментировал первую часть. Благодаря вам, продолжение будет еще интереснее. Если еще не читали — рекомендую это сделать. Там мало текста, и есть классные видео.

      Изначально планировалось, что эта часть будет завершающей. Но, для удобства попадания в скролл, сейчас остановимся лишь на этих вопросах:

      • Тренировки. Вырабатывание летных навыков.
      • Выбор модели: самолет, вертолет или мультикоптер?
      • Выбор конкретной конструкции и размера
      • Моторы и ESC
      • Полетный контроллер


      Как обычно, сразу к делу.
      Читать дальше →