Парочка постов от команды crates.io.
A tale of broken badges and 23,000 features, или как отсутствие лимитов немного сломало сторонний сервис.
crates.io: Dropping support for non-canonical downloads — о планах отказаться от возможности скачивать одно и то же по разным именам вроде serde-derive, serde_derive и SerDE_DErive.
A tale of broken badges and 23,000 features, или как отсутствие лимитов немного сломало сторонний сервис.
crates.io: Dropping support for non-canonical downloads — о планах отказаться от возможности скачивать одно и то же по разным именам вроде serde-derive, serde_derive и SerDE_DErive.
blog.rust-lang.org
A tale of broken badges and 23,000 features | Rust Blog
Empowering everyone to build reliable and efficient software.
👍4🤯1
#prog #article
Читатели моего блога, скорее всего, знакомы с понятием Boolean blindness. Если коротко: это обозначение ситуации, когда использование булевых значений приводит к проблемам из-за того, что семантика true и false в значительной степени зависит от контекста.
Несколько менее очевидно (по крайней мере, до ознакомления), что подобная проблема не специфична для булевских значений. Похожие неприятности могут возникнуть и с другими недостаточно доменно-специфичными сумм-типами. Подробнее об этом рассказывается в статье Algebraic blindness.
Читатели моего блога, скорее всего, знакомы с понятием Boolean blindness. Если коротко: это обозначение ситуации, когда использование булевых значений приводит к проблемам из-за того, что семантика true и false в значительной степени зависит от контекста.
Несколько менее очевидно (по крайней мере, до ознакомления), что подобная проблема не специфична для булевских значений. Похожие неприятности могут возникнуть и с другими недостаточно доменно-специфичными сумм-типами. Подробнее об этом рассказывается в статье Algebraic blindness.
The Lumber Room
Boolean blindness
(Just digesting the first page of Google search results.) One of the lessons from functional programming is to encode as much information as possible into the types. Almost all programmers understa…
👍6
∏ρ؃uñçτØρ Øπτµç∑ | 👁🗨››››
Photo
Кстати, я в своё время на своей работе понял довольно простую вещь: если существующий код мешает решить задачу — его можно и поменять.
Принцип, конечно, не универсальный: я работаю над довольно небольшим и изолированным компонентом, который с остальными общается по gRPC. Для чего-то более крупного и более связного этот принцип наверняка применим хуже
Принцип, конечно, не универсальный: я работаю над довольно небольшим и изолированным компонентом, который с остальными общается по gRPC. Для чего-то более крупного и более связного этот принцип наверняка применим хуже
👍3
#prog
TIL что в Github есть возможность склонировать отдельно вики репозитория.
https://docs.github.com/en/communities/documenting-your-project-with-wikis/adding-or-editing-wiki-pages#cloning-wikis-to-your-computer
TIL что в Github есть возможность склонировать отдельно вики репозитория.
https://docs.github.com/en/communities/documenting-your-project-with-wikis/adding-or-editing-wiki-pages#cloning-wikis-to-your-computer
GitHub Docs
Adding or editing wiki pages - GitHub Docs
You can add and edit wiki pages directly on GitHub or locally using the command line.
🤔3😱2👍1🤯1💩1
Блог*
#music Занятный трек, который пытается органично совместить Doom-версию метала с симфоническим оркестром — и, на мой взгляд, делает это хорошо. https://geoffplaysguitar.bandcamp.com/track/crown-of-oris-fight-between-realms-4-of-4 А вот видео про создание…
#music
А вообще почему это четвёртый трек? Потому что он, кхм, четвёртый из набора оригинальных треков, каждый из которых сочетает стилистику Doom Eternal с другими темами.
Providence — Doom + киберпанк (не сразу, но зашло)
Maker's hand — Doom + постапокалиптичные пустоши в духе Mad Max
Livitica Void — Doom + sci-fi
Crown of Oris — Doom + симфонический орекстр
И, разумеется, есть видео о том, как эти треки создавались:
What if the Doom Eternal OST was made for fighting cyborgs instead of demons?
What if the Doom Eternal OST was made for fighting psychos and bandits?
What if Control had Doom Eternal style music instead?
I put a 56-piece orchestra into a Doom Eternal style song and it crashed my computer
А, и ещё есть ремикс Providence от Audiofreq. Доля Doom в этом варианте сильно меньше и куда больше, прости г-споди, дабстепа, но звучит тоже хорошо.
А вообще почему это четвёртый трек? Потому что он, кхм, четвёртый из набора оригинальных треков, каждый из которых сочетает стилистику Doom Eternal с другими темами.
Providence — Doom + киберпанк (не сразу, но зашло)
Maker's hand — Doom + постапокалиптичные пустоши в духе Mad Max
Livitica Void — Doom + sci-fi
Crown of Oris — Doom + симфонический орекстр
И, разумеется, есть видео о том, как эти треки создавались:
What if the Doom Eternal OST was made for fighting cyborgs instead of demons?
What if the Doom Eternal OST was made for fighting psychos and bandits?
What if Control had Doom Eternal style music instead?
I put a 56-piece orchestra into a Doom Eternal style song and it crashed my computer
А, и ещё есть ремикс Providence от Audiofreq. Доля Doom в этом варианте сильно меньше и куда больше, прости г-споди, дабстепа, но звучит тоже хорошо.
YouTube
Providence [HQ] from Fight Between Realms by Geoffrey Day | Doom-Inspired Video Game Music
Read the story "Fight Between Realms": https://www.geoffreydaymusic.com/fight-between-realms-pdf
Become a patron: https://www.patreon.com/geoffplaysguitar
Spotify: https://open.spotify.com/track/2tjUD60we0Dg6JwQ7ZBNaP
Apple Music: https://music.apple.co…
Become a patron: https://www.patreon.com/geoffplaysguitar
Spotify: https://open.spotify.com/track/2tjUD60we0Dg6JwQ7ZBNaP
Apple Music: https://music.apple.co…
#prog
Bloaty — инструмент для оценки размеров различных составляющих исполняемого файла.
Показывает размеры на диске и после погрузки в память. Поддерживает разбиение по секциям, сегментам, единицам компиляции, с достаточным количеством отладочной информации — и по отдельным функциям. Позволяет сравнивать файлы по размерам частей.
Поддерживает ELF и Mach-O. Поддержка PE и Wasm заявлена как экспериментальная.
Bloaty — инструмент для оценки размеров различных составляющих исполняемого файла.
Показывает размеры на диске и после погрузки в память. Поддерживает разбиение по секциям, сегментам, единицам компиляции, с достаточным количеством отладочной информации — и по отдельным функциям. Позволяет сравнивать файлы по размерам частей.
Поддерживает ELF и Mach-O. Поддержка PE и Wasm заявлена как экспериментальная.
GitHub
GitHub - google/bloaty: Bloaty: a size profiler for binaries
Bloaty: a size profiler for binaries. Contribute to google/bloaty development by creating an account on GitHub.
🤔2
#prog #лингво
The Korean Writing System
Взгляд на хангыль — корейскую слоговую систему письменности — с сугубо технической точки зрения.
Система письма на удивление стройная и логичная. Каждый иероглиф обозначает отдельный слог, состоящий из начальной согласной (которая может отсутствовать), гласной и конечной согласной (которая также может отсутствовать). Для обозначения каждого из этих элементов есть набор элементов, называемых чамо. Иероглиф, обозначающий конкретный слог, составляется из трёх чамо, соответствующим составляющим слога. При этом способ сборки иероглифа зависит от того, является ли чамо для гласной вытянутым по горизонтали или по вертикали.
Парочка примеров из статьи:
녹 (NOG) = ㄴ(N) + ㅗ(O) + ㄱ(G)
냇 (NAES) = ㄴ(N) +ㅐ(AE) + ㅅ(S)
(да, некоторые чамо являются диграфами/триграфами/дифтонгами, так что это не столь стройная система, какой она могла бы быть)
Какое это имеет отношение к Unicode? Не смотря на то, что технически тексты на хангыле можно записывать исключительно из комбинирующихся чамо, это расточительно по памяти + многие системы рендера текста это не осиливают (напоминаю, что статья в основном предназначена для веб-дизайнеров). Поэтому помимо чамо (коих, кстати, весьма немного) в Unicode есть code point-ы для уже составленных символов хангыля. Каждый из этих символов кодируется тремя байтами в UTF-8 (как и каждый чамо). Конкретные коды при этом выбраны не наобум: код для иероглифа хангыля можно вычислить через линейную комбинацию кодов составляющих его чамо. Соответственно, из кода для иероглифа можно вычислить коды составляющих его чамо.
В статье также представлена информация о романизации хангыля и интерактивный инструмент на локально исполняемом JavaScript, позволяющий переводить комбинации чамо в иероглифы хангыля и наоборот.
The Korean Writing System
Взгляд на хангыль — корейскую слоговую систему письменности — с сугубо технической точки зрения.
Система письма на удивление стройная и логичная. Каждый иероглиф обозначает отдельный слог, состоящий из начальной согласной (которая может отсутствовать), гласной и конечной согласной (которая также может отсутствовать). Для обозначения каждого из этих элементов есть набор элементов, называемых чамо. Иероглиф, обозначающий конкретный слог, составляется из трёх чамо, соответствующим составляющим слога. При этом способ сборки иероглифа зависит от того, является ли чамо для гласной вытянутым по горизонтали или по вертикали.
Парочка примеров из статьи:
녹 (NOG) = ㄴ(N) + ㅗ(O) + ㄱ(G)
냇 (NAES) = ㄴ(N) +ㅐ(AE) + ㅅ(S)
(да, некоторые чамо являются диграфами/триграфами/дифтонгами, так что это не столь стройная система, какой она могла бы быть)
Какое это имеет отношение к Unicode? Не смотря на то, что технически тексты на хангыле можно записывать исключительно из комбинирующихся чамо, это расточительно по памяти + многие системы рендера текста это не осиливают (напоминаю, что статья в основном предназначена для веб-дизайнеров). Поэтому помимо чамо (коих, кстати, весьма немного) в Unicode есть code point-ы для уже составленных символов хангыля. Каждый из этих символов кодируется тремя байтами в UTF-8 (как и каждый чамо). Конкретные коды при этом выбраны не наобум: код для иероглифа хангыля можно вычислить через линейную комбинацию кодов составляющих его чамо. Соответственно, из кода для иероглифа можно вычислить коды составляющих его чамо.
В статье также представлена информация о романизации хангыля и интерактивный инструмент на локально исполняемом JavaScript, позволяющий переводить комбинации чамо в иероглифы хангыля и наоборот.
🤯7👍2🔥1