#diary #программирование #ml #покер
Мой чёртов RL-агент, над которым я тут сижу, наконец-то пробился через первую стену, проверяющую его скиллы.
Iteration 1 Epoch 140: num_players=8
Timing: iteration_elapsed=29400.5s, epoch_elapsed=162.5s; iter model timesteps=7168000, full model timesteps=7168000
ETA to end of 20-epoch block: 0s (2026-02-17 05:02:37)
Eval num_players=2: RivalType5: 756.7, Total: 756.7 BB/100; rl_clusters:
maniac=0.85, aggro_fish=0.68, calling_station=0.60, loose_passive=0.52, lag=0.51, fit_or_fold=0.25, weak_tight=0.18, tag=0.13, reg=0.08, nit=0.00, over_folder=0.00BB/100 estimation exceeded 10 minutes; stopping early.
Eval num_players=4: RivalType1: 91.2, RivalType3: -2.0, RivalType1-1: 73.2, Total: 162.3 BB/100; rl_clusters:
fit_or_fold=0.87, loose_passive=0.77, aggro_fish=0.60, calling_station=0.58, weak_tight=0.58, maniac=0.50, nit=0.46, over_folder=0.33, lag=0.27, tag=0.07, reg=0.00BB/100 estimation exceeded 10 minutes; stopping early.
Eval num_players=6: RivalType2: 7.8, RivalType1: 54.1, RivalType5: -8.7, RivalType1-1: 40.1, RivalType4: 0.7, RivalType4-1: 0.8, RivalType8: 0.9, RivalType7: 1.2, RivalType5-1: 2.0, RivalType3: 1.1, RivalType1-2: 2.3, RivalType6: 3.2, Total: 105.5 BB/100; rl_clusters:
loose_passive=0.81, calling_station=0.76, aggro_fish=0.60, weak_tight=0.59, fit_or_fold=0.58, nit=0.52, over_folder=0.33, maniac=0.25, reg=0.12, tag=0.09, lag=0.00BB/100 estimation exceeded 10 minutes; stopping early.
Eval num_players=8: RivalType1: 31.4, RivalType5: 8.3, RivalType1-1: 28.4, RivalType2: 30.6, RivalType3: 1.5, RivalType4: 1.5, RivalType6: 0.1, RivalType4-1: -0.9, RivalType3-1: -0.9, RivalType5-1: 1.2, RivalType2-1: 2.5, RivalType7: 2.5, RivalType1-2: 0.5, RivalType8: 0.2, Total: 106.9 BB/100; rl_clusters:
loose_passive=0.71, calling_station=0.66, aggro_fish=0.60, fit_or_fold=0.58, weak_tight=0.49, nit=0.34, over_folder=0.33, maniac=0.25, reg=0.24, tag=0.22, lag=0.02Saved poker_model_466780b9_0001.zip/.json/.py
Iteration 1 complete. All modes > 10.0 BB/100
Вижу это так:
Пришлось переписать код загрузчика БД с Питона на C++.
Теперь БД в памяти занимает всего 32 ГБ, а не все 130.
Sanity Level increased
boost::phoenix и boost::metaparse#программирование
Ищу правильное кол-во воркеров для одной длительной задачи.
Мой процессор: AMD Ryzen 9 7950X 16-Core Processor.
График "Время на раунд" (чем меньше, тем лучше).
На 9 воркерах есть проседание времени, но дальше - чем больше воркеров, тем хуже.
Второй график это кол-во воркеров перемножить на полное время. Чем меньше, тем лучше.
Почему на 9 стоит лучшее время, если реальных ядер 16? Как это число вообще получилось? Половина ядер + одно?
у меня ОЗУ очень мало нужно для этой задачи. с диска вообще ничего не читается.
это обсчёт вероятности победы в техаском холдеме через монте-карло
интернет говорит что у вас есть такая штука
github.com/microsoft/perfview?…
Я сам лично больше jvm пердолил.
PerfView is a CPU and memory performance-analysis tool - microsoft/perfviewGitHub
Отправил код коллеги на критический анализ. Там:
Так, и в чём собственно, проблема?
#oom #программирование
#программирование #web
По свежей статистике W3Techs (ноябрь 2025), среди сайтов с известным серверным языком доли такие:
- #PHP – ~73%
- #Ruby – ~6.4%
- #Java – ~5.4%
- #JavaScript (Node.js и др.) – ~5.3%
- #Scala – ~4.8%
- #CSharp – ~4.7%
- #Python – ~1.2%,
- прочие языки – <0.1%
В описании задачи на полном серьёзе без задней мысли использовал вместо слова "роль" слово "класс"
etherscan.io/tx/0x6ed07db1a9fe…
Помните, хороший программист никогда не забывает вести логи в своей программе
habr.com/ru/companies/compo/ar…
В 2025 году люди решили перейти с #PHP на #Java. Ещё раз: на #Java. В 2025 году. Ни на Dart, ни на Rust, ни на Python, а на #Java. Перенести захотели свой Тыртырпрайз. На Java. В 2025 году.
В последний раз Тыртырпрайз на Java — писала компания IBM для компании Qiwi в 2008-2009 годах.
Тыртырпрайз они на Java пишут в 2025 году. Не мобилки, а Тыртырпрайз. И для этого выбрали лучший язык для этого в 2025 году — Java.
И весь гениальный код @nokitakaze такой!
А точно нельзя было URL'ы в один файл и wget в малюсенький другой?
Слышите вой чертей в аду?
Это Nokita Kaze написал алгоритм, который экономит файл и читает построчно из гигабайтного файла.
Потому что он в память не лезет. Лез бы в память, хуй бы вы от меня такое дождались.
АХАХАХАХАХАХАХАХАХ
В #PHP 8.4 завезли Properties с кастомными геттерами и сеттарами на уровне синтаксиса
php.net/releases/8.4/ru.php
Я у мамы #Delphi
Я дал чату гпт проанализировать мой код.
Первое же его предупреждение:
"Утечка памяти при загрузке больших объёмов данных из БД (Критическая). В методе обновления позиций производится выборка логов парсинга всего списка позиций. Из-за этого приложение может вызывать OutOfMemoryException при больших объёмах данных"
Он ещё не знает 😏
Открыл свой код 2017го года на C# (фактически буквально первое, что я на нём написал), а оттуда на меня старый Nokita Kaze смотрит и смеётся диавольским смехом
Если класть очень много пакетов в пакеты пакетов пакетов, то рано или поздно там переполнится стек, и самый нижний пакет начнёт указывать не на ребёнка, а на пакет более высокого уровня.
Deprecated: Using ${var} in strings is deprecated, use {$var} instead in foobar.php on line 1488
Что, серьёзно? Избавились от хорошего синтакса в пользу плохого? Серьёзно?
Легче верблюду пройти через игольное ушко чем программе Никиты — поместиться в 2 метра оперативки
В СиШарповом царстве, в Дотнетовом государстве, недалеко от Мусорной Свалки жили да были три гопника — Лох, Пох и Фох.
господа, не обновляйте #IntelliJ IEDA до версии 2024.1.
Там доигрались с AI Assistant — гуи зависает через каждые 2 минуты на секунд 10 (из-за попыток автодополнения кода)
А если не сопротивляться и подождать, то в итоге он напишет код, который начнёт ядерную войну?
Big-Endian (арабский способ записи чисел) это #коммунизм.
Ведь те, кто слева значат больше чем те, кто справа.
Никто не смог заставить меня писать на #Python.
Ни #Google с #GoogleWave.
Ни ML с #Tensorflow.
.
.
.
Только от маленькой неизвестной компании #OpenAI я затерпел.
Лишь #ChatGPT смог меня кибер-унизить
Если бы Гарри Поттер был бы тестировщиком, его главным заклинанием было бы "Expected Actual".
Ну вот, Никита пошёл на следующую стадию 64 гигов. А стоило всего лишь начать писать оконные приложения :з
Справедливости ради, изначальный костяк программы писал не я, и он не изменился с тех пор
Я только что написал алгоритм, который экономит оперативную память.
Если со дна будут кричать, знайте — они просто замёрзли.
Создатели Argent X судя по всему накидывали все известные им алгоритмы в код. Которые знали, те и юзали. Тут друг за другом PBKDF2 и HMAC. Хотя PBKDF2 уже внутри себя использует HMAC.
Вот это говно
chrome.google.com/webstore/det…
Просто на всякий случай:
github.com/ethers-io/ethers.js…
На одной чаше весов: вылить в паблик самописные элитные, покрытые тестами, куски крипто-кода, которые нужны всем
На второй: Заработать с их помощью $200k
Кхм... Что же выбрать?
Есть у меня парочка знакомых. Два брата. Старший брат — программист. Младший — тестировщик.
То есть... Младший брат убирает говно за старшим и прислуживает ему?
Когда тестировщики напишут своё стихотворение "Никогда мы не будем братьями. Ни по Родине ни по матери"?
Надо отдельный тред для сделок наконец сделать.
Пусть это будет он
#рынок #крипта #crypto #cryptocurrency #криптовалюты
Увеличил позицию по PUT-опционам в два раза. Закупился на #Bybit.
Взял самый дальний доступный день экспирации — 25 сентября 2026:
- BTCUSDT-25SEP26-90000-P 59.8%
- BTCUSDT-25SEP26-70000-P 33.5
- BTCUSDT-25SEP26-50000-P 6.6%
На Bybit огроменнейший спред. Я покупал на 5% выше цены на Deribit, закидывая в стакан ордера на покупку.
Если будете повторять сделку, сначала тут deribit.com/options/BTC/BTC-25… посмотрите Ask-цену и накиньте 5% за вредность.
На покупки ушло шесть часов (включая 3 часа, пока меня не было дома)
На Ethereum нет хороших точек входа.
По эфиру я жду 1600-1800, либо 2000 при самой плохой для медведей🐻 ситуации, #гаугау. ETH-25SEP26-3000-P сейчас стоит 740. При 2000 это всего лишь (3000-2000-740)/740 = 35% супердохода. Не вижу смысла заходить в высоко рисковую сделку ради трети сверху.
По битку я жду 50000. BTCUSDT-25SEP26-90000-P стоит 15000, а это +166% супердохода при цене 50000. Путаки на Strike Price 50000$ (по цене примерно 2000$) я купил как крайне рисковые, если вдруг цена уйдёт вообще до 40000 и профит по нему достигнет +400%.