Size: a a a

2021 August 15
Блог*
​​​​Пошел купить лук, была очередь а касса самообслуживания зависла. От нечего делать полазил по сервисному меню, вышел в шелл. Все работает под админом. Тачскрин пашет. Дайте мне это развидеть.

In IoT S is for security. Но я человек честный, просто бутнул.
источник
2021 August 16
Блог*
источник
Блог*
Передовые разработки автоматизации
источник
Блог*
источник
2021 August 17
Блог*
У меня сегодня забавный паттерн получился.

&mut &[x, ref xs @ ..]

Пояснение: это был матч на &mut &[T]. x — копия первого элемента (T), xs — ссылка на последующие элементы (&[T]).
источник
Блог*
источник
Блог*
#rust

Там Вафелька собирает клёвые штуки раста, помогите ему, пожалуйста.
источник
2021 August 18
Блог*
#prog #article

Статья (перевод, от PatientZero, офигенный переводчик) о неожиданных причинах медленного поведения программных систем. Вы вот, например, знали, что работу макбука можно ускорить,  заряжая его портом с правой стороны, а не с левой?
источник
Блог*
#prog #csharp #article

Тут вот на Хабре недавно была статья про тестовое задание, суть которого сводилось к тому, чтобы распарсить расписание в cron-подобном формате и потом иметь возможность делать к нему запросы на ближайший описываемый расписанием момент времени относительно заданного аргумента, причём как в будущее, так и в прошлое. Аффтар Автор негодовал из-за того, что он это тестовое задание выполнил, но его решение завернули без внятного фидбека, поэтому он выложил свой вариант на всеобщее обозрение. Зрелище, мягко говоря, не для слабонервных: практически нулевая декомпозиция, куча сложной логики с копипастой и if-ы с семикратной (!) вложенностью. Вдобавок, автор почему-то оптимизировал парсинг, а не получение моментов времени.

Сама задачка, однако, всё же застряла у меня в голове, и у меня были идеи, как можно красиво сделать как минимум парсинг формата расписания. К сожалению, у меня так и не дошли руки до написания кода. А вот у PsyHaste, известного в телеге, как @Psilon — дошли. Используя тот же язык, что и у автора оригинальной статьи — C# — он написал своё решение, с монатками монадками и, внезапно, обоснованным goto (который, впрочем, потребовался исключительно в силу отсутствия в C# оператора continue по метке). Вышло на редкость понятно и читаемо. Об этом он написал свою статью, которую я вас и приглашаю прочитать — и не только в силу технических решений, но и потому, что у Алекса довольно приятный слог.

(тут должна быть рекомендация блога Алекса, но его нету)
источник
Блог*
#prog #rust #article

Почему-то в блоге не было ссылки на доходчивую статью про реализацию парсер-комбинаторов на Rust с нуля. Исправляюсь: оригинал, перевод на хабре.
источник
Блог*
#prog #rust #gamedev

Движок Bevy отмечает свой первый юбилей. Для тех, кто не в курсе — это движок, который изначально разрабатывался с фокусом на производительность и быстрые итерации разработки при помощи замены кода сцен на ходу (thanks @lomain за исправление). Когда Bevy только появился, он произвёл небывалый фурор в расто-геймдево кругах, и за год оброс крутыми фичами (о которых рассказано в посте) и сменил версии с 0.1 до 0.5 — и при этом скоро выходит 0.6! Всё во имя святого Грааля игровых движков, так сказать.

Из нетехнического — автор также упоминает о том, как разросся поток информации, с которым ему пришлось иметь дело, и о том, как он немного выгорел и теперь постепенно отпускает бразды правления.
источник
Блог*
источник
Блог*
#prog #rust #amazingopensource

Один человек попытался реализовать некоторые из стандартных коллекций при помощи GhostCell. Получилось вроде даже неплохо.

github.com/matthieu-m/ghost-collections
источник
2021 August 19
Блог*
Окей, гугл, как перестать эмоционально привязываться к малознакомым людям
источник
Блог*
#prog #soc #ml

Антон разобрался в теме лучше меня, тормоза, и весьма внятно расписал ситуацию. Спасибо, Антон.
источник
Блог*
источник
Блог*
Недавно некоторые СМИ писали и перевсполошились, что Apple теперь будет искать снимки и видео с насилием над детьми автоматически и сообщать куда надо. Но нас интересует не эта этически-правовая сторона вопроса, а техническая реализация.

Чтобы снимки никуда не отправлялись (представьте заголовки “Apple решила собрать самую большую библиотеку медиа насилия над детьми”), это будет происходить на устройстве. Для каждой фотографии будет считаться NeuralHash. И это такой вот алгоритм (Neural как бы уже говорит про ML), который умеет не обращать внимания на кропы/шумы/вотермарки и возвращать одинаковый хеш для двух одинаковых по контенту фотографий. Работает он на удивление хорошо. В идеале: помечаешь один раз непотребство, а потом оно само начинает мониториться по хешу. Но есть проблема.

Hash в названии алгоритма отвечает, как можно догадаться, за собственно хеш изображения/контента на фотографии/называйте как хотите. Мораль истории в том, что одна из самых прекрасных вещей в хеш-функциях (даже если они Neural) — коллизии.

Умные люди поковырялись и выяснили, что оказывается для NeuralHash существует два типа коллизий: естественные и искусственные.

С искусственными все просто: есть картинка и мы на нее таким образом накладываем шум, чтобы ее хеш был равен хешу необходимой картинки. В общем это все очень старо и применялось еще в безопасности, когда зараженные файлы пытались прикинуться здоровыми, добавляя себе такие байты, чтобы хеш был равен исходному, и антивирус считал, что с файлом все хорошо. Ну и все современные Adversarial Attacks создаются таким же механизмом.

Другое дело естественные коллизии. Только в ImageNet’e их нашлось аж 2 пары: топор-нематода и гвоздь-горная лыжа. Есть даже репозиторий с обновляемым списком найденных коллизий.

Интересно, когда уже Adversarial Attacks перестанут быть маргинальными игрушками (прости, Свят) и станут серьезной дыркой в безопасности крупных корпораций. Еще интереснее, как с этим будут бороться, потому что сейчас собираются затыкать человеком с другой стороны, который глазками отсмотрит всю непотребщину, что вызывает такие же этические вопросы, как и модераторы Facebook, страдающие от депрессии и шутящие над пришедшим на модерацию суицидом.
источник
2021 August 21
Блог*
В СМЫСЛЕ УЖЕ СЕНТЯ а не, рано
источник
Блог*
#video #music

Эт самое, тут мой подписчик @pavlus_0 сделал круто.
источник
2021 August 22
Блог*
xxx: Как приятно, когда пайплайны проходят 🙂
yyy: Если ваши пайплайны проходят, это значит что мало тестов написано 8))

#трудовыебудни
источник