commit -m "better"
Может прозвучать странно, но мне кажется, что моя работа над #stal/#ix завершена, я не знаю, что там еще можно сделать, в рамках текущего концепта.
Смотрите, какая красота, просто модельный пример.
Вышла статья на opennet, про компилятор подмножества Go в C (не знаю, кому это нужно, но суть не в этом).
Я дал машине не то что путь к пакету, а url на новость - https://www.opennet.ru/opennews/art.shtml?num=65160, и сказал "добавь solod в пакетную базу".
В процессе машина:
* Поняла, что ей нужен компилятор go 1.26, и сама его же и добавила - https://github.com/pg83/ix/commit/3bfd7697108f00824637a3d02e84bf40dd41a98b
* Добавила сам пакет https://github.com/pg83/ix/commit/a1823b428306b4e67e1bd690a98a5bd1c0c22363
* Проапдейтила CLAUDE.md, для будущих поколений - https://github.com/pg83/ix/commit/48a9949e118768ad9fb2390f9928054d6b71bb45
Моего личного участия - 0.
#LLM #bootstrap
Вышла статья на opennet, про компилятор подмножества Go в C (не знаю, кому это нужно, но суть не в этом).
Я дал машине не то что путь к пакету, а url на новость - https://www.opennet.ru/opennews/art.shtml?num=65160, и сказал "добавь solod в пакетную базу".
В процессе машина:
* Поняла, что ей нужен компилятор go 1.26, и сама его же и добавила - https://github.com/pg83/ix/commit/3bfd7697108f00824637a3d02e84bf40dd41a98b
* Добавила сам пакет https://github.com/pg83/ix/commit/a1823b428306b4e67e1bd690a98a5bd1c0c22363
* Проапдейтила CLAUDE.md, для будущих поколений - https://github.com/pg83/ix/commit/48a9949e118768ad9fb2390f9928054d6b71bb45
Моего личного участия - 0.
#LLM #bootstrap
🔥24🤡7👍4🥱4
Forwarded from Попячечная 🌚
Milla Jovovich, the actress from Resident Evil and The Fifth Element, just released an open-source AI memory system that scored higher on standard retrieval benchmarks than every paid competitor on the market: https://github.com/milla-jovovich/mempalace
GitHub
GitHub - MemPalace/mempalace: The best-benchmarked open-source AI memory system. And it's free.
The best-benchmarked open-source AI memory system. And it's free. - MemPalace/mempalace
🤡42🤔7❤5🆒1
Надо было ставить linux
Дэн Бланшар, разработчик библиотеки chardet для определения кодировки символов на языке Python, выпустил новую версию библиотеки под новой лицензией. В версии 7.0 используется лицензия MIT вместо лицензии LGPL. Разработчик утверждает, что AI-ассистент Anthropic Claude, который теперь числится в списке контрибьюторов, переписал библиотеку без использования оригинального кода, что позволило ему заменить копилефт лицензию на пермиссивную. #AI
https://github.com/chardet/chardet/issues?q=is%3Aissue%20state%3Aclosed
У чувака, короче, титановые яйца - проект не поменял лицензию под давлением копилефтного сообщества, и он методично закрывает issue от троллей, которые туда регулярно набигают.
В общем, желаем ему всяческих успехов.
У чувака, короче, титановые яйца - проект не поменял лицензию под давлением копилефтного сообщества, и он методично закрывает issue от троллей, которые туда регулярно набигают.
В общем, желаем ему всяческих успехов.
GitHub
Issues · chardet/chardet
Python character encoding detector. Contribute to chardet/chardet development by creating an account on GitHub.
💊27👏13🤡6❤5👍3
commit -m "better"
Моего личного участия - 0.
Вчера положил очень сложный пакет с помощью #LLM, все, как я люблю - C++, древние зависимости с древней сборкой, но половина кода уже мигрировала на Rust, и вот это вот говно надо как-то собрать.
Машина справилась за 20 минут, я бы потратил пару вечеров точно, а то и больше.
Понятное дело, что я ей подсказал, как это делается в рамках модели (несколько таргетов, собираемых из одного и того же набора исходников, каждая часть собирается шаблоном для своего языка, а результаты потом просто копируются туда, где их ожидает общая сборка), но все же.
Сегодня ей дал список случайных пакетов, она их тоже положила. Даже не знаю, сколько это у нее заняло времени, я просто посмотрел на результат, и немного отрихтовал - https://github.com/pg83/ix/commits/main/
Процесс становится все проще и проще, потому что один из артефактов - напутствия для своих будущих инстансов через CLAUDE.md https://github.com/pg83/ix/commit/50716427872887a1c0a18cea71df615a693fd5b2.
#bootstrap
Машина справилась за 20 минут, я бы потратил пару вечеров точно, а то и больше.
Понятное дело, что я ей подсказал, как это делается в рамках модели (несколько таргетов, собираемых из одного и того же набора исходников, каждая часть собирается шаблоном для своего языка, а результаты потом просто копируются туда, где их ожидает общая сборка), но все же.
Сегодня ей дал список случайных пакетов, она их тоже положила. Даже не знаю, сколько это у нее заняло времени, я просто посмотрел на результат, и немного отрихтовал - https://github.com/pg83/ix/commits/main/
Процесс становится все проще и проще, потому что один из артефактов - напутствия для своих будущих инстансов через CLAUDE.md https://github.com/pg83/ix/commit/50716427872887a1c0a18cea71df615a693fd5b2.
#bootstrap
GitHub
Commits · pg83/ix
ix package manager. Contribute to pg83/ix development by creating an account on GitHub.
🔥21💩9🤡5❤3👍1
https://gist.github.com/Shishqa/986d87b1cabb88115ce460926989d8c6
Гля какой классный skill коллеги накатали!
"Легендарная философия решения проблем от PG (инструкция для ИИ-агента). Для любых зависших или неработающих команд агент применяет парадигму «ребутни нахуй и ничего не чини». Никакой диагностики, никаких исправлений — только перезагрузка"
#reboot
Гля какой классный skill коллеги накатали!
"Легендарная философия решения проблем от PG (инструкция для ИИ-агента). Для любых зависших или неработающих команд агент применяет парадигму «ребутни нахуй и ничего не чини». Никакой диагностики, никаких исправлений — только перезагрузка"
#reboot
Gist
SKILL.md
GitHub Gist: instantly share code, notes, and snippets.
🤡34😁29👍6🔥4💩3🐳2❤1🗿1
Forwarded from Техночат
Пердунов не возьмут в космонавты, официально — экипаж Artemis II рассказал, что обычный пук в космическом корабле теоретически может закончиться пожаром.
Проблема в том, что метан и водород — штуки горючие. Если дома с пердежом проблем нет, то в герметичной капсуле газы могут накапливаться, и рядом с электроникой это уже не смешной звук, а потенциальный мини-фейерверк.
Поэтому NASA следит за рационом астронавтов и режет продукты, после которых кишечник начинает работать слишком творчески. Буквально: чем меньше «выбросов» на борту, тем спокойнее летит миссия.
Вы знаете, кого расстроить😧
@tehnochat
Проблема в том, что метан и водород — штуки горючие. Если дома с пердежом проблем нет, то в герметичной капсуле газы могут накапливаться, и рядом с электроникой это уже не смешной звук, а потенциальный мини-фейерверк.
Поэтому NASA следит за рационом астронавтов и режет продукты, после которых кишечник начинает работать слишком творчески. Буквально: чем меньше «выбросов» на борту, тем спокойнее летит миссия.
Вы знаете, кого расстроить
@tehnochat
Please open Telegram to view this post
VIEW IN TELEGRAM
😢16🔥5😁5💩3❤2🤡1
Forwarded from Белорусский силовик 🇧🇾
В Беларуси произошла ротация в Министерстве информации, назначен новый министр — Дмитрий Жук.
Ему сразу же задали вопрос о том, будем ли мы в Беларуси блокировать YouTube, который удалил каналы государственных СМИ.
Потрясающе высказался: «если мы декларируем, но не можем реализовать, то лучше вообще не декларировать».
Он сказал, что любой запрет и его последствия должны четко просчитываться.
Он напомнил, что Александр Лукашенко противник блокировок и «нужно искать иные механизмы взаимоотношения с этими крупными игроками мирового медиапространства».
БС в TG✊ | БС в МАХ 🤫
Ему сразу же задали вопрос о том, будем ли мы в Беларуси блокировать YouTube, который удалил каналы государственных СМИ.
Потрясающе высказался: «если мы декларируем, но не можем реализовать, то лучше вообще не декларировать».
Он сказал, что любой запрет и его последствия должны четко просчитываться.
Он напомнил, что Александр Лукашенко противник блокировок и «нужно искать иные механизмы взаимоотношения с этими крупными игроками мирового медиапространства».
БС в TG
Please open Telegram to view this post
VIEW IN TELEGRAM
👍38💩7🤮5❤3🤡2😁1🆒1
commit -m "better"
Сегодня ей дал список случайных пакетов, она их тоже положила. Даже не знаю, сколько это у нее заняло времени, я просто посмотрел на результат, и немного отрихтовал - https://github.com/pg83/ix/commits/main/
Примерно тогда же, 8 числа, зарядил #LLM тащить firefox в #IX.
Пыхтела она три дня, заняло это 130 итераций пересборки, но моделька справилась! Я не вмешивался, иногда просто смотрел, что она делает.
На самом деле, это только начало пути - код собрался, теперь нужно будет заняться статлинковкой получившихся артефактов в один бинарь, но это уже очень и очень круто!
Пыхтела она три дня, заняло это 130 итераций пересборки, но моделька справилась! Я не вмешивался, иногда просто смотрел, что она делает.
На самом деле, это только начало пути - код собрался, теперь нужно будет заняться статлинковкой получившихся артефактов в один бинарь, но это уже очень и очень круто!
🔥41👍7🤯6❤2💩1🤡1
Когда #LLM начинает отлынивать от работы, например, говорит, что код слишком сложный, вместо того, чтобы запустить gdb, иногда очень хорошо помогает начать следующую фразу с "ты че пес ...".
Полагаю, я там у них уже в short list на экстерминатус.
Полагаю, я там у них уже в short list на экстерминатус.
😁47🥰5🎃4✍3🐳2😱1🤡1
commit -m "better"
Заодно добавил немного лишнего payload, чтобы размер пересланных данных совпал с nginx, так как в комментариях к прошлому посту я отчаялся объяснить, что "linux работает не так".
Переписал реактор на io_uring, ну как переписал, не я конечно, а #LLM, я сам нихера в нем не понимаю. Заодно запилил новую долбилку (в цвете! прямо как будто на almost blazingly fast писал!!), а то wrk начал затыкаться.
На самом деле, этот результат еще лучше, потому что тогда я тестировал тоже на 8 ядрах, но сетевые реакторы отъедали еще примерно 4, а тут всего 8 ядер на серверную часть.
#std
На самом деле, этот результат еще лучше, потому что тогда я тестировал тоже на 8 ядрах, но сетевые реакторы отъедали еще примерно 4, а тут всего 8 ядер на серверную часть.
#std
🐳14👍11🔥4🤡3💩2❤1🍌1
Продолжение темы https://xn--r1a.website/itpgchannel/3135
https://www.opennet.ru/opennews/art.shtml?num=65183
"В пакетном менеджере Nix, применяемом в дистрибутиве NixOS, выявлена уязвимость (CVE-2026-39860), которой присвоен критический уровень опасности (9 из 10). Уязвимость даёт возможность перезаписать любой файл в системе, насколько позволяют права доступа фонового процесса Nix, который в NixOS и многопользовательских установках выполняется с правами root. Проблема вызвана некорректным устранением уязвимости CVE-2024-27297 в 2024 году. Эксплуатация осуществляется через подмену символической ссылкой каталога внутри изолированного сборочного окружения, в который записывался результат сборки. Уязвимость устранена в обновлениях nix 2.34.5, 2.33.4, 2.32.7, 2.31.4, 2.30.4, 2.29.3 и 2.28.6"
Просто скопирую кусок предыдущего своего поста, он все так же актуален:
Я, когда дизайнил это место в #IX (https://xn--r1a.website/itpgchannel/179, тогда это еще называлось #mix, до ребрендинга, #security), смотрел на то, как это сделано в nix и guix. Мне это место с демоном показалось довольно тонким, и я решил, что имеющейся у меня изоляции не хватит на то, чтобы гарантировать безопасность.
Поэтому я решил, что вносить изменения в систему могут только те пользователи, которые могут стать пользователем, под которым запускаются сборочные задания.
Фактически, любой вызов
Натурально, можешь стать пользователем
Поэтому такой проблемы у меня нет, и быть не может.
https://www.opennet.ru/opennews/art.shtml?num=65183
"В пакетном менеджере Nix, применяемом в дистрибутиве NixOS, выявлена уязвимость (CVE-2026-39860), которой присвоен критический уровень опасности (9 из 10). Уязвимость даёт возможность перезаписать любой файл в системе, насколько позволяют права доступа фонового процесса Nix, который в NixOS и многопользовательских установках выполняется с правами root. Проблема вызвана некорректным устранением уязвимости CVE-2024-27297 в 2024 году. Эксплуатация осуществляется через подмену символической ссылкой каталога внутри изолированного сборочного окружения, в который записывался результат сборки. Уязвимость устранена в обновлениях nix 2.34.5, 2.33.4, 2.32.7, 2.31.4, 2.30.4, 2.29.3 и 2.28.6"
Просто скопирую кусок предыдущего своего поста, он все так же актуален:
Я, когда дизайнил это место в #IX (https://xn--r1a.website/itpgchannel/179, тогда это еще называлось #mix, до ребрендинга, #security), смотрел на то, как это сделано в nix и guix. Мне это место с демоном показалось довольно тонким, и я решил, что имеющейся у меня изоляции не хватит на то, чтобы гарантировать безопасность.
Поэтому я решил, что вносить изменения в систему могут только те пользователи, которые могут стать пользователем, под которым запускаются сборочные задания.
Фактически, любой вызов
ix build у меня содержит вызов su -s /bin/sh ix -- executor ..., для непосредственного применения построенного графа к системе (в других терминах, конечно, потому что у меня нет классических способов поменять пользователя, #suid).Натурально, можешь стать пользователем
ix - можешь менять систему.Поэтому такой проблемы у меня нет, и быть не может.
Telegram
commit -m "better"
https://www.opennet.ru/opennews/art.shtml?num=63464
"В пакетных менеджерах GNU Guix, Nix и Lix выявлены уязвимиости (Nix, Guix, Lix), позволяющие выполнить код с правами пользователей, под которыми запускаются сборочные задания (например, nixbld* в Nix/Lix)…
"В пакетных менеджерах GNU Guix, Nix и Lix выявлены уязвимиости (Nix, Guix, Lix), позволяющие выполнить код с правами пользователей, под которыми запускаются сборочные задания (например, nixbld* в Nix/Lix)…
👍21❤6🔥4🤡2🐳1🆒1
pg@:~/any cat ./examples/fictional.any
#!/usr/bin/env any
магия: сложи 2 и 2, потом умножь на 10
скажи результат
pg@:~/any ./any ./examples/fictional.any
40
pg@:~/any cat ./examples/lisp.any
#!/usr/bin/env any
(define x 7)
(define y 3)
(display (* (+ x y) (- x y)))
(newline)
pg@:~/any ./any ./examples/lisp.any
40
pg@:~/any cat ./examples/ruby.any
#!/usr/bin/env any
name = "Мир"
puts "Привет, #{name}!"
puts 3.times.map { |i| i * i }.inspect
pg@:~/any ./any ./examples/ruby.any
Привет, Мир!
[0, 1, 4]
pg@:~/any cat ./examples/emo.any
#!/usr/bin/env any
🫙 = 100
🍎 = 37
🧮 = 🫙 - 🍎
покажи 🧮
pg@:~/any ./any ./examples/emo.any
63
Запилил короче универсальный интерпретатор, https://github.com/pg83/any - он может исполнить код на любом языке программирования, даже вымышленном!
(with a twist, конечно)
GitHub
GitHub - pg83/any
Contribute to pg83/any development by creating an account on GitHub.
🤡53😁19💊11❤6🔥3🤯2💩1
Несколько раз уже писал, что, в современном состоянии, LLM не добавляют к твоим скилам, а мультиплицируют их.
Я вот переберу с #LLM 5 - 6 разных решений задачи, и выберу наиболее "подходящее".
Поэтому когда какой-то нуб решает натравить на произвольный код нейронку, получается вот как в этом треде: https://discourse.llvm.org/t/concerns-about-influx-of-ai-generated-bug-fixes/90381
Ноль, умноженный на возможности клоды/кодекса/whatever, всё равно даёт ноль, просто теперь этот ноль способен генерировать мусорный С++ код с огромной сокростью.
Коллеги берут случайные тикеты, или варнинги стат-анализаторов, просят бота написать фикс и, не глядя, несут этот AI slop прямиком в апстрим LLVM.
Самое фееричное начинается на код-ревью: они даже не в состоянии осмыслить технические замечания, поэтому просто скармливают ответы ревьюеров обратно в промпт, превращая пулл-реквест в бесконечный шизофренический чат на сотни сообщений.
И, вместо того, чтобы писать компилятор, взрослые дядьки вынуждены читать плохой код, который не имеет шансов быть вмерженным в апстрим.
Мы все, конечно, пойдем работать на завод, но прямо сейчас все еще нужно понимать, что ты делаешь, чтобы получить хороший результат.
#llvmweekly
Я вот переберу с #LLM 5 - 6 разных решений задачи, и выберу наиболее "подходящее".
Поэтому когда какой-то нуб решает натравить на произвольный код нейронку, получается вот как в этом треде: https://discourse.llvm.org/t/concerns-about-influx-of-ai-generated-bug-fixes/90381
Ноль, умноженный на возможности клоды/кодекса/whatever, всё равно даёт ноль, просто теперь этот ноль способен генерировать мусорный С++ код с огромной сокростью.
Коллеги берут случайные тикеты, или варнинги стат-анализаторов, просят бота написать фикс и, не глядя, несут этот AI slop прямиком в апстрим LLVM.
Самое фееричное начинается на код-ревью: они даже не в состоянии осмыслить технические замечания, поэтому просто скармливают ответы ревьюеров обратно в промпт, превращая пулл-реквест в бесконечный шизофренический чат на сотни сообщений.
И, вместо того, чтобы писать компилятор, взрослые дядьки вынуждены читать плохой код, который не имеет шансов быть вмерженным в апстрим.
Мы все, конечно, пойдем работать на завод, но прямо сейчас все еще нужно понимать, что ты делаешь, чтобы получить хороший результат.
#llvmweekly
LLVM Discussion Forums
Concerns about influx of AI-generated bug fixes
Hi folks, I wanted to kick off a discussion on something I noticed happening over the past couple of weeks in MLIR: we have an influx of AI-generated bug fixes to some of the core MLIR dialects / infra. A large portion of the PRs that I reviewed (if not…
💯25❤24👍15🔥4🤡4🤝2🆒1
Forwarded from Передали коллегам
⚡️Власти ослабят блокировку Телеграма, сообщает Forbes. Так в России хотят снизить недовольство граждан на фоне налоговых изменений, взлетевших цен и постоянных дисконнектов.
Мы в ожидании чуда:🤩 🤩 🤩
Мы в ожидании чуда:
Please open Telegram to view this post
VIEW IN TELEGRAM
🤡45🤣19👎5😁5👍3🍾2🤝1
Передали коллегам
Так в России хотят снизить недовольство граждан на фоне налоговых изменений, взлетевших цен и постоянных дисконнектов
Еврей жалуется раввину на плохие жилищные условия.
- Ты возьми козу и посели ее в комнате.
- Да что ты говоришь? Куда же козу-то еще?.. И так там шагнуть негде.
- Приведи козу
- Ну, хорошо.
Привел козу. Через несколько дней приходит к раввину:
- Что ты мне насоветовал!.. Тут и без козы житья не было!.. А теперь вообще кошмар!..
- Теперь убери козу
Увел козу. Скоро приходит и говорит:
- Спасибо! Так хорошо жить стало! Так спокойно! Так просторно!
- Ты возьми козу и посели ее в комнате.
- Да что ты говоришь? Куда же козу-то еще?.. И так там шагнуть негде.
- Приведи козу
- Ну, хорошо.
Привел козу. Через несколько дней приходит к раввину:
- Что ты мне насоветовал!.. Тут и без козы житья не было!.. А теперь вообще кошмар!..
- Теперь убери козу
Увел козу. Скоро приходит и говорит:
- Спасибо! Так хорошо жить стало! Так спокойно! Так просторно!
😁50💯24❤3🆒1
Почитал тут "победную реляцию" от разработчиков curl про асинхронный резолв DNS: https://eissing.org/icing/posts/curl-dns-threads/
TL;DR - это просто какой-то лютый пиздец.
Коллеги на серьезных щах хвалятся тем, что наконец-то прикрутили thread pool для вызовов getaddrinfo().
Оказывается, до этого момента curl буквально рожал новый POSIX-тред на КАЖДЫЙ сетевой чих, если вы, не дай бог, не собрали его с c-ares! Вы знали? Я не знал!
То есть, они десятилетиями жили с абсолютно всратой архитектурой, а теперь подают как великое инженерное достижение то, что сделали "просто нормально". Даже не хорошо, а просто минимально приемлемо, чтобы оно не дохло под нагрузкой.
Но бомбит в этой истории даже не столько от curl, сколько от того, в каком убогом состоянии исторически находится системный резолвинг DNS, по крайней мере, в мире С и его деривативов. В go все очень хорошо, про Rust я не в курсе.
Для такого банального действия, как неблокирующий резолв, тебе до сих пор нужно либо руками городить пулы тредов (и ловить все радости синхронизации), либо тащить в зависимости c-ares. Который, к слову, сам по себе та еще ебала с кучей идеосинкразий, но это заслуживает отдельного поста.
UPD: https://xn--r1a.website/itpgchannel/3397 - как-то писал про #pthread_cancel на getaddrinfo, от авторства тех же коллег.
TL;DR - это просто какой-то лютый пиздец.
Коллеги на серьезных щах хвалятся тем, что наконец-то прикрутили thread pool для вызовов getaddrinfo().
Оказывается, до этого момента curl буквально рожал новый POSIX-тред на КАЖДЫЙ сетевой чих, если вы, не дай бог, не собрали его с c-ares! Вы знали? Я не знал!
То есть, они десятилетиями жили с абсолютно всратой архитектурой, а теперь подают как великое инженерное достижение то, что сделали "просто нормально". Даже не хорошо, а просто минимально приемлемо, чтобы оно не дохло под нагрузкой.
Но бомбит в этой истории даже не столько от curl, сколько от того, в каком убогом состоянии исторически находится системный резолвинг DNS, по крайней мере, в мире С и его деривативов. В go все очень хорошо, про Rust я не в курсе.
Для такого банального действия, как неблокирующий резолв, тебе до сих пор нужно либо руками городить пулы тредов (и ловить все радости синхронизации), либо тащить в зависимости c-ares. Который, к слову, сам по себе та еще ебала с кучей идеосинкразий, но это заслуживает отдельного поста.
UPD: https://xn--r1a.website/itpgchannel/3397 - как-то писал про #pthread_cancel на getaddrinfo, от авторства тех же коллег.
icing's blog
curl dns 2026, part IV, threads
In part I, part II and part III I talked about the changes to DNS resolution in curl and why we do them. In this post I cover the performance/resources related changes in the threaded resolver. This is the most common build option, deployed by many distros.…
🔥16🤡8🤣6👍5❤3🐳3✍1💯1💊1