Блог Антона Репушко

Ubuntu и nvidia-container-toolkit

Из неочевидного: для того, чтобы в Docker-контейнерах заработал доступ к GPU, нужно использовать docker-ce, а не docker из Snap. Это связано с тем, что пакеты из snap’a работают в песочнице snap’a и не имеют прямого доступа к системе.

Вот тут описание проблемы.

Cons Cells в Lisp

Если вам (как и мне) поначалу было тяжеловато понять концепт Cons Cells в Lisp, то на Stack Overflow есть емкое и краткое объяснение:

Cons cells in general hold two pointers that can point to anything. General usage of course is to point to a «value» with the left one, and to another Cons cell (or nil) with the «right» one.

car и cdr соответственно вернут первый элемент или второй.

Formula E

Сходил на финал сезона Formula E в Берлине. Это как F1, только полностью на электрических машинах, без ДВС. У них больше крутящий момент, они быстрее разгоняются, а максимальная скорость доходит до 280 км/ч. Особенно понравился звук электрического мотора.

newprojectname.dev

https://newprojectname.dev

Есть забавная традиция называть проекты/библиотеки именами различных мифических существ и божеств. И у меня давно лежала идея хелпера по подбору таких названий, но реализовал её только сейчас.

Я напарсил самый большой список названий божеств из 43 пантеонов, что дало 4096 уникальных имён (и 9000 если считать все алиасы). Ну а чтобы избежать коллизий, проект на лету ищет эти имена в названиях репозиториев на Гитхабе и показывает топ-результаты.

Из интересной инженерии: проект на Svelte, имеются исходники. Внутри есть база на 1Мб сырого json’a, которая затаскивается в общий бандл приложения и ужимается до 150кб. И из-за этого хака всё успешно хостится как статика на Digital Ocean’e за 0.00$ в месяц. Дизайн тоже корявенько делал я. Запросы к Гитхабу — клиентские, лимиты запросов — тоже на клиенте. Легчайшая поддержка.

Rejection sampling и Reservoir sampling

Разобрался на днях с двумя интересными алгоритмами про выборки.

Rejection sampling находил в задачах вроде «с помощью функции, которая гарантирует равновероятное выпадение целого числа в интервале [1...7], создайте функцию, которая делает тоже самое, но в интервале от [1...10]». Ещё такая же задача была однажды у меня на собесе в Яндексе: дана монетка с вероятностью выпадения орла/решки ½. С помощью этой монетки нужно смоделировать вероятность ⅓. Я интуитивно дошёл до решения и доказал, что это работает, но конкретно названия группы алгоритмов не знал.

Reservoir sampling про то, как смоделировать равновероятный выбор элемента при неизвестной конечной размерности множества вариантов.

[Идея] Voice-control для RPG-игр

Современные технологии уже позволяют реализовать самую клёвую штуку, которую можно придумать в RPG-играх — открытые диалоги.

Вместо того, чтобы выбирать колёсиком (как в MassEffect или Fallout) вариант ответа в диалоге, можно настроить возможность произносить его голосом в микрофон. Система бы матчила семантику сказанного к максимально близком варианту ответа в сценарии и запускала скрипт реакции на этот вариант ответа. Было бы интересно попробовать.

А вообще игры с голосовой механикой не новость.

Scream Go Hero

Чьи-то зарисовки

На берлинской барахолке полгода назад получилось бесплатно взять виниловый проигрыватель и аудиосистему к нему. Ещё в придачу отдавался набор старых пластинок: в основном латинской музыки и пара классических произведений.

В куче этих пластинок был блокнот с зарисовками интерьеров и какими-то записями (непонятно какого срока давности). Я так рисовать не умею, поэтому кажется очень красивым.

Интерьеры
Ранее Ctrl + ↓