useless stuff
150 subscribers
755 photos
12 videos
5 files
224 links
умный шитпост
иногда не шитпост

Я ⭐️НИНИКА⭐️ @dcnick3
Download Telegram
Yes, I am functional programmer

What about it?
🔥3
Forwarded from канал с мемами, аниме девочками и котами (DCNick3 (Nikita) 🦀)
🤡🤡🤡
💩2👍1🤩1
канал с мемами, аниме девочками и котами
🤡🤡🤡
А, да, это всё на бумаге, кстати


НАПИШИТЕ АЛГОРИТМ ОБУЧЕНИЯ НЕЙРОНКИ БЛИН

НА БУМАГЕ

МЫ ОЦЕНИМ ПОГРЕШНОСТЬ

(про оценку людей нейронками даже говорить не буду)
🥰1🤮1👌1
Ох уж эти жалки людишки с mutable aliasing
👍5
useless stuff
Let's goooooo https://security.googleblog.com/2023/01/supporting-use-of-rust-in-chromium.html
Так, а ну убирайте своё гавно, а то всех вычеслу по IP и забаню!11
💩9👍2
За шо((999

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

Как такое вообще фиксить?..
useless stuff
За шо((999 (да я слоупок и зарегался только сейчас)
Пустили-таки в ChatGPT...


На самом выглядит как крутая тема, но ограничений много.

Дал ему задачу для затравки (полная сессия в комментах): "вот тебе выхлоп декомпилятора, функция как-то генерирует рандомные флоты. Как работает?". На что он мне сказал "ну там какая-то битовая магия", объясняя по строчкам что код делает (pic 1)... Ещё сделал какие-то ложные предположения про range float'ов, который якобы подаётся извне (нет)... Нда

Классно, что он смог понять из этого месива что это Mersenne Twister (но сказал только когда спросил в лоб, что там за RNG)

Попросил порефакторить... Тут чота посыпалось ещё сильнее. Имена он дал примерно ничотак (pic 2), но вывод оказался обрезан. Кажется лимиты по токенам.

Спросил "как этот код можно сделать читаемее", на что получил "пиши коменты, давай хорошие имена функциям и упрощай сложные конструкции"... bruh🗿

Попросил посмотреть на конкретный код повнимательнее, (наконец-то) нашёл дублирующуюся часть которую можно выделить в функцию, и ещё кучу всякого скарба выдал (pic3)

Попросил его разделить функции... получилось кринжово (pic4). Тупо две почти одинаковые функции generateMinRandomFloat и generateMaxRandomFloat =_=

Указал ему на это, получилось... Лучше (pic5)

Дальше решил спросить наводящие вопросы чтобы он мне рассказал про loop unrolling, произошедший в функции generateRandomArray. Фейл полный, сказал слова только после почти прямого вопроса (pic6). (loop unrolling - оптимизация компилятора, выполняющая несколько итераций цикла за один "реальный" цикл, потому что "циклиться" (возвращать управление в голову цикла) может быть дорого)

При попытке закатать цикл обратно, посыпалось вообще всё. И цикл не закатал вообще, и в именах начал путаться (видимо в переименованных и оригинальных, см. например ) (pic7)


Кароче... Думаю, что кроме определения "mersenne twister", он вряд ли бы мне здесь помог =(
(а определение алгоритма изи делается гуглением констант, например 0x6c078965). В целом - впечатляюще, оно что-то может и что-то понимает, но за реверс не шарит особо.
Я сломал(
хороший вопрос, восьмой год пытаюсь понять
👍5