На канал, кажется, был рейд — на всех постах с 15 октября по 6 ноября включительно понаставили "😢", в количестве обычно от 12 до 17 штук. Зачем?
😢66🤔6😁5🤡1
Forwarded from brain_leakage_etc
Записал эту проблемку c OpenMTP и Samsung в свой gripe file. Об этой штуке я узнал из данного интервью:
https://lobste.rs/s/terwiu/lobsters_interview_with_technomancy — вообще рекомендую к прочтению, вдохновляющее. Technomancy, если что, это автор Leiningen для Clojure, а сейчас разрабатывает Fennel (Lisp поверх Lua). Очень крутой чел, достоин подражания.
Собсно, про gripe file в интервью было сказано следующее:
Мне идея понравилась, начал свой вести.
https://lobste.rs/s/terwiu/lobsters_interview_with_technomancy — вообще рекомендую к прочтению, вдохновляющее. Technomancy, если что, это автор Leiningen для Clojure, а сейчас разрабатывает Fennel (Lisp поверх Lua). Очень крутой чел, достоин подражания.
Собсно, про gripe file в интервью было сказано следующее:
In my home directory, I have the gripe file. A friend in IRC gave me the idea. You just collect all the problems, complaints you have. How could the programs I use on a regular basis be better? Sometimes you see something can added or improved and you can delete this line from the gripe file. I love it. For example, SSH wouldn’t let you specify a directory for your config files. But a few years later, I went back and saw they had! So I deleted it from the gripe file, which is a really cool feeling. I recommend you keep a gripes file.
Мне идея понравилась, начал свой вести.
Lobsters
Lobsters Interview with Technomancy
11 comments
🤔4👍2😢1
Random Rust Dev
Я на новой работе с 14 годиками опыта.
Просто Rust на себя слишком много берёт, никакого опыта не наработаешь /s
🌚12
#prog #article (и #rust, но многое в статье от Rust не зависит)
SocketAddrV6 is not roundtrip serializable
SocketAddrV6 is not roundtrip serializable
😱5💩1
Forwarded from Too Long, Did Read
Как правильно мешать карты
Недавно моя жена и ее брат запустили в продажу на амазоне свою карточную игру Vinto - игра безумно крутая, первые несколько месяцев мы в нее играли по 4-6 часов каждый день :)
Можно посмотреть подробнее тут: @vinto_game
Так вот, в vinto (как и наверное во всех карточных играх) очень важно хорошо перемешивать карты между раундами, тк из-за механики игры в сброс почти всегда подряд идут 2+ одинаковые карты.
Пока мы играли раунд за раундом (тотал наверное 100-200), часто оказывалось, что 3-4 игрока тянут одинаковую карту (например, шестерку) подряд, в рамках одного круга.
Мы шутили, что это {имя} так замечательно мешает карты, но в реальности это происходило примерно с одинаковой частотой вне зависимости от текущего крупье-мешателя.
Вот я и заинтересовался: может быть, мы просто плохо карты мешаем?
Если коротко: да!
Видели, как в фильмах / видео на ютубе разные профессиональные картежники мешают карты «веером», - делят на две равные стопки и как бы скрещивают их, сделав из каждой половины гармошку?
Так вот, оказывается, что это не понты!
После непродолжительного поиска статей / книжек на тему, я обнаружил, что техника перемешивания карт - супер популярная тема среди математиков: статей про сравнение эффективности разных видов перемешки больше 50 штук, все из разных универов, но с похожими выводами.
Не буду грузить подробностями расчетов - там всякие цепи маркова и довольно нетривиальная математика (мне пришлось посмотреть 3 лекции, чтобы вспомнить и заново въехать в тему).
Если все же хочется какой-то первоисточник - вот очень хорошая и понятная презентация с картинками.
Так вот, для того, чтобы приблизиться к равномерному распределения раскладок (такого, при котором вероятность
каждой последовательности карт → 1/52!):
- перемешивая «круто» (гармошкой, в оригинале - riffle shuffle, вот видео на всякий), для достижения почти равномерного распределения нужно 8 итераций (перемешиваний)
- перемешивая «обычно», как все (top to random, то есть перекладывая верхние сколько-то карт вниз) нужно 278 итераций!
Теперь понятно, почему всякие крупье в казино, фокусники и выпендрежники не мешают карты «обычно» - пришлось бы очень долго мешать.
И вот еще в тему прикольная статья 1999 года , если интересно: в ней довольно понятно рассказывается о том, как несколько разработчиков нашли уязвимость в алгоритме перемешивания карт в популярном в то время онлайн покере, с помощью которой можно было предсказывать (с немаленькой вероятностью), какие карты выпадут после перемешивания.
Кстати, так как никто из нас мешать карты riffle’ом не умеет, а на турнирах по Vinto вроде бы надо, ребята купили мешалки на алике за ~10$, которые имитируют riffle shuffle.
Интересно было бы посчитать, насколько эта имитация хуже «true» riffle shuffle.
Как-то так!
Мораль: мешайте свои карты карты правильно и покупайте Vinto, если можете и хотите :)
Недавно моя жена и ее брат запустили в продажу на амазоне свою карточную игру Vinto - игра безумно крутая, первые несколько месяцев мы в нее играли по 4-6 часов каждый день :)
Можно посмотреть подробнее тут: @vinto_game
Так вот, в vinto (как и наверное во всех карточных играх) очень важно хорошо перемешивать карты между раундами, тк из-за механики игры в сброс почти всегда подряд идут 2+ одинаковые карты.
Пока мы играли раунд за раундом (тотал наверное 100-200), часто оказывалось, что 3-4 игрока тянут одинаковую карту (например, шестерку) подряд, в рамках одного круга.
Мы шутили, что это {имя} так замечательно мешает карты, но в реальности это происходило примерно с одинаковой частотой вне зависимости от текущего крупье-мешателя.
Вот я и заинтересовался: может быть, мы просто плохо карты мешаем?
Если коротко: да!
Видели, как в фильмах / видео на ютубе разные профессиональные картежники мешают карты «веером», - делят на две равные стопки и как бы скрещивают их, сделав из каждой половины гармошку?
Так вот, оказывается, что это не понты!
После непродолжительного поиска статей / книжек на тему, я обнаружил, что техника перемешивания карт - супер популярная тема среди математиков: статей про сравнение эффективности разных видов перемешки больше 50 штук, все из разных универов, но с похожими выводами.
Не буду грузить подробностями расчетов - там всякие цепи маркова и довольно нетривиальная математика (мне пришлось посмотреть 3 лекции, чтобы вспомнить и заново въехать в тему).
Если все же хочется какой-то первоисточник - вот очень хорошая и понятная презентация с картинками.
Так вот, для того, чтобы приблизиться к равномерному распределения раскладок (такого, при котором вероятность
каждой последовательности карт → 1/52!):
- перемешивая «круто» (гармошкой, в оригинале - riffle shuffle, вот видео на всякий), для достижения почти равномерного распределения нужно 8 итераций (перемешиваний)
- перемешивая «обычно», как все (top to random, то есть перекладывая верхние сколько-то карт вниз) нужно 278 итераций!
Теперь понятно, почему всякие крупье в казино, фокусники и выпендрежники не мешают карты «обычно» - пришлось бы очень долго мешать.
И вот еще в тему прикольная статья 1999 года , если интересно: в ней довольно понятно рассказывается о том, как несколько разработчиков нашли уязвимость в алгоритме перемешивания карт в популярном в то время онлайн покере, с помощью которой можно было предсказывать (с немаленькой вероятностью), какие карты выпадут после перемешивания.
Кстати, так как никто из нас мешать карты riffle’ом не умеет, а на турнирах по Vinto вроде бы надо, ребята купили мешалки на алике за ~10$, которые имитируют riffle shuffle.
Интересно было бы посчитать, насколько эта имитация хуже «true» riffle shuffle.
Как-то так!
Мораль: мешайте свои карты карты правильно и покупайте Vinto, если можете и хотите :)
🔥7🤯4❤1👍1😁1