В последней версии дополнения Weather_Plus был обнаружен троян.
По крайней мере версия 10.7 содержит вредоносный код, почитать подробнее можно тут: https://github.com/nvaccess/addon-datastore/issues/9360
От себя хочу добавить, что мне это дополнение не нравилось никогда, у него ужасная кодовая база, оно вешает nvda при любом удобном случае, звуки там сомнительного качества, да и функционал какой-то... избыточный что ли.
Что касается именно трояна: Weather_Plus, зачем-то, использует для проигрывания звуков библиотеку bass, хотя проиграть wav можно и средствами nvda, и именно в bass был найден вредонос.
В nvaccess почему-то уверены, что вирус в аддон попал случайно, вот только есть 1 нюанс.
Компания Un4seen, которая разрабатывает bass, подписывает dll-файлы, подпись эту можно легко увидеть и убедиться, что файл легитимный.
Как можно догадаться, bass.dll из wp не подписан, но не подписан он не только в версии 10.7, но и в версии 9.5, которая завалялась у меня на компе.
А ещё я на nvda.ru нашёл версию 6.2 (круто, что они хранят старые версии), и разумеется там bass тоже не оригинальный.
То есть разработчик, преднамеренно или нет, использовал палёный непонятно откуда добытый bass, и было ли в тех версиях второе дно, большой вопрос.
Ну и напоследок: если кому-то показалось, что я чрезмерно субъективен, вот вам строчка из кодовой базы данного поделия, можете сделать вывод сами:
По крайней мере версия 10.7 содержит вредоносный код, почитать подробнее можно тут: https://github.com/nvaccess/addon-datastore/issues/9360
От себя хочу добавить, что мне это дополнение не нравилось никогда, у него ужасная кодовая база, оно вешает nvda при любом удобном случае, звуки там сомнительного качества, да и функционал какой-то... избыточный что ли.
Что касается именно трояна: Weather_Plus, зачем-то, использует для проигрывания звуков библиотеку bass, хотя проиграть wav можно и средствами nvda, и именно в bass был найден вредонос.
В nvaccess почему-то уверены, что вирус в аддон попал случайно, вот только есть 1 нюанс.
Компания Un4seen, которая разрабатывает bass, подписывает dll-файлы, подпись эту можно легко увидеть и убедиться, что файл легитимный.
Как можно догадаться, bass.dll из wp не подписан, но не подписан он не только в версии 10.7, но и в версии 9.5, которая завалялась у меня на компе.
А ещё я на nvda.ru нашёл версию 6.2 (круто, что они хранят старые версии), и разумеется там bass тоже не оригинальный.
То есть разработчик, преднамеренно или нет, использовал палёный непонятно откуда добытый bass, и было ли в тех версиях второе дно, большой вопрос.
Ну и напоследок: если кому-то показалось, что я чрезмерно субъективен, вот вам строчка из кодовой базы данного поделия, можете сделать вывод сами:
n, n, n, zipCodesList, define_dic, details_dic, defaultZipCode, n, modifiedList, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n = _mainSettingsDialog.GetValue()GitHub
Weather_Plus · Issue #9360 · nvaccess/addon-datastore
Download URL https://www.nvda.it/sites/default/files/plugin/weather_plus10.7.nvda-addon Source URL https://www.nvda.it/weather-plus Publisher Adriano Barbieri Channel stable License Name GPL v2 Lic...
👍1
Как-то писал о том, что меня преследуют приколы и баги, связанные со временем, вот ещё один.
Запускаю внутри wsl, и выводится 8.195, иногда чуть больше 10, как положено, а иногда 8 с хвостом.
И пока даже не могу нагуглить, что это вообще такое.
То есть я понимаю, что расходится monotonic с часами реального времени, но какого хрена?
import asyncio
import time
async def main():
start_time = time.time()
await asyncio.sleep(10)
print(round(time.time()-start_time, 3))
if __name__ == '__main__':
asyncio.run(main())
Запускаю внутри wsl, и выводится 8.195, иногда чуть больше 10, как положено, а иногда 8 с хвостом.
И пока даже не могу нагуглить, что это вообще такое.
То есть я понимаю, что расходится monotonic с часами реального времени, но какого хрена?
Любители преодоления цифровой недоступности могут попробовать пройти данный увлекательный квест
https://xn--80aatrqejgjg.xn--p1ai/
апкшку не ставил, хз что там, но вряд ли что-то опасное, создано шутки ради всё же.
Подробная история в данных постах и комментах под ними
https://t.me/ntr1_0/2792
https://t.me/ntr1_0/2793
https://xn--80aatrqejgjg.xn--p1ai/
апкшку не ставил, хз что там, но вряд ли что-то опасное, создано шутки ради всё же.
Подробная история в данных постах и комментах под ними
https://t.me/ntr1_0/2792
https://t.me/ntr1_0/2793
Telegram
Научно-Технический Рэп
Ваше приложение устарело! Чтобы обновиться, сделайте 7 простых шагов
1. Зайдите на залупастор.рф
2. Нажмите подтвердить через скам
3. Получите код
4. Никому не говоря, тихо, не спеша, заполните заявление на передачу кода в трех экземплярах
5. Скачите пьяным…
1. Зайдите на залупастор.рф
2. Нажмите подтвердить через скам
3. Получите код
4. Никому не говоря, тихо, не спеша, заполните заявление на передачу кода в трех экземплярах
5. Скачите пьяным…
Forwarded from Gozaltech blog (Beqa Gozalishvili)
Всем привет
Много лет я использовал TortoiseGit как основной инструмент для просмотра логов и diff’ов в Git. Во многом это была просто привычка, от которой сложно отказаться.
Но со временем появилась одна проблема - TortoiseGit начал очень сильно тормозить проводник Windows. Открытие контекстного меню могло занимать по 5-10 секунд, и это продолжалось годами. Вчера мне окончательно надоело, и я решил написать собственное решение.
Так появился gittools - небольшой набор инструментов для быстрого и удобного взаимодействия с Git.
Что уже есть:
просмотр логов;
просмотр diff’ов;
список веток;
git-алиасы для быстрого вызова команд.
Команды:
pull-log
log
branches
install-alias
uninstall-alias
После установки алиасов можно использовать:
git pl
git lg
git br
Например:
git pl
сделает pull, а если всё прошло успешно - откроет окно со списком коммитов и изменённых файлов. Нажатие Enter по файлу открывает diff viewer.
Отдельно сделал одну вещь, которая лично мне очень помогает:
в diff viewer при перемещении стрелками воспроизводятся разные звуки для добавленных и удалённых строк.
Решение получилось довольно нишевым и в первую очередь делалось под мои собственные привычки и workflow. Но если оно окажется полезным кому-то ещё - буду только рад.
Пост пишу немного в спешке, так что сильно за ошибки не ругайте :)
Много лет я использовал TortoiseGit как основной инструмент для просмотра логов и diff’ов в Git. Во многом это была просто привычка, от которой сложно отказаться.
Но со временем появилась одна проблема - TortoiseGit начал очень сильно тормозить проводник Windows. Открытие контекстного меню могло занимать по 5-10 секунд, и это продолжалось годами. Вчера мне окончательно надоело, и я решил написать собственное решение.
Так появился gittools - небольшой набор инструментов для быстрого и удобного взаимодействия с Git.
Что уже есть:
просмотр логов;
просмотр diff’ов;
список веток;
git-алиасы для быстрого вызова команд.
Команды:
pull-log
log
branches
install-alias
uninstall-alias
После установки алиасов можно использовать:
git pl
git lg
git br
Например:
git pl
сделает pull, а если всё прошло успешно - откроет окно со списком коммитов и изменённых файлов. Нажатие Enter по файлу открывает diff viewer.
Отдельно сделал одну вещь, которая лично мне очень помогает:
в diff viewer при перемещении стрелками воспроизводятся разные звуки для добавленных и удалённых строк.
Решение получилось довольно нишевым и в первую очередь делалось под мои собственные привычки и workflow. Но если оно окажется полезным кому-то ещё - буду только рад.
Пост пишу немного в спешке, так что сильно за ошибки не ругайте :)
Ну что ж, за недельку использования могу с уверенностью сказать, что тулза зачётная, мне очень помогает.
Ранее я делал дополнение dev box, которое проверяло строчку при навигации с помощью нампада, и при обнаружении diff-индикатора, т.е. плюса или минуса в начале строки, издавало звук.
Решение это меня устраивало, и дифы с ним читать стало гораздо удобнее.
Решение же от Беки предоставляет тот же функционал, но с некоторыми удобствами (хотя кому как, но мне удобно).
Во-первых это отдельное окно, и после его открытия терминал не блокируется, т.е. можно продолжать работать с проектом не открывая новую вкладку.
Во-вторых управление курсорными стрелками, не нужно тянуться к нампаду, проще говоря в программе используются обычные нативные списки и текстовые поля.
Ну и самое на мой взгляд прикольное: можно читать километровый диф, бросить на середине, уйти в другое окно, вернуться в инструмент, и курсор останется на том же месте.
Конечно ниша для dev box всё равно остаётся, на серваках что-нибудь быстренько посмотреть или в браузере, но при локальной разработке gittools - топ.
Кстати звуки диф-индикаторов были взяты мной из vscode, слегка обрезаны в начале и в конце, помещены в dev box, затем были взяты Бекой из dev box и зашиты в gittools, так что если я вдруг что-то нарушил, то теперь я не один 🙂
Утилита тут, но лучше брать не из поста, а из комментов к нему, в комментах свежее: https://t.me/gozaltech_blog/87
Ранее я делал дополнение dev box, которое проверяло строчку при навигации с помощью нампада, и при обнаружении diff-индикатора, т.е. плюса или минуса в начале строки, издавало звук.
Решение это меня устраивало, и дифы с ним читать стало гораздо удобнее.
Решение же от Беки предоставляет тот же функционал, но с некоторыми удобствами (хотя кому как, но мне удобно).
Во-первых это отдельное окно, и после его открытия терминал не блокируется, т.е. можно продолжать работать с проектом не открывая новую вкладку.
Во-вторых управление курсорными стрелками, не нужно тянуться к нампаду, проще говоря в программе используются обычные нативные списки и текстовые поля.
Ну и самое на мой взгляд прикольное: можно читать километровый диф, бросить на середине, уйти в другое окно, вернуться в инструмент, и курсор останется на том же месте.
Конечно ниша для dev box всё равно остаётся, на серваках что-нибудь быстренько посмотреть или в браузере, но при локальной разработке gittools - топ.
Кстати звуки диф-индикаторов были взяты мной из vscode, слегка обрезаны в начале и в конце, помещены в dev box, затем были взяты Бекой из dev box и зашиты в gittools, так что если я вдруг что-то нарушил, то теперь я не один 🙂
Утилита тут, но лучше брать не из поста, а из комментов к нему, в комментах свежее: https://t.me/gozaltech_blog/87
Telegram
Gozaltech blog
Делаю себе флешку на все случаи жизни, собираю комплект из nvda, 2023 для семёрки, 2024 для 8.1 и 2026 для всего более свежего.
Портабельная 2023 весит 160 мегабайт, 2024 250 мегабайт, 2026 300 мегабайт.
Боюсь представить, сколько бы весила 2026, если бы фичу распознавания картинок с помощью нейронок не откатили, ещё бы мб 100 было бы сверху.
Портабельная 2023 весит 160 мегабайт, 2024 250 мегабайт, 2026 300 мегабайт.
Боюсь представить, сколько бы весила 2026, если бы фичу распознавания картинок с помощью нейронок не откатили, ещё бы мб 100 было бы сверху.
🔥1
Решил перейти с magisk на kernel su, просетапился успешно, и совершенно неожиданно для себя выяснил, что основные разделы приложения, в которых выдаются root права и настраиваются модули, недоступны, совсем, полностью.
И казалось бы всё, провал, нужно вернуться на magisk, открыть issue и ждать 5 лет, но напоследок, на всякий случай, я сменил стиль ui с miuix на material, и доступность отросла!
Как я понял, miuix это некий фреймворк для создания miui-образных интерфейсов, и конечно круто, что разработчики предоставили альтернативу.
И казалось бы всё, провал, нужно вернуться на magisk, открыть issue и ждать 5 лет, но напоследок, на всякий случай, я сменил стиль ui с miuix на material, и доступность отросла!
Как я понял, miuix это некий фреймворк для создания miui-образных интерфейсов, и конечно круто, что разработчики предоставили альтернативу.
❤1
Вспомнилась давняя история: сижу на физике, решаю задачку, оригинал сейчас не найду, но что-то очень похожее нагуглил:
На расстоянии 1060 м от наблюдателя ударяют молотком по железнодорожному рельсу. Наблюдатель, приложив ухо к рельсу, услышал звук на 3 с раньше, чем звук дошел до него по воздуху. Чему равна скорость звука в стали?
Решение довольно простое, считаем сначала время, которое звук шёл по воздуху, 1060 / 330 = примерно 3.212.
Теперь можем найти время, которое звук шёл по рельсу, 3.212 - 3 = 0.212.
Ну а зная время и расстояние можем найти скорость: 1060 / 0.212 = 5000.
5 км в секунду, и всё замечательно, вот только был 1 нюанс: почему-то, у меня с раннего детства сидит в голове скорость звука в воздухе 340 метров в секунду, а по нашему учебнику было принято брать 330.
Разумеется я взял 340 вместо 330, и казалось бы, что может пойти не так?
1060 / 340 = 3.118
3.118 - 3 = 0.118
1060 / 0.118 = 8983
9 километров в секунду! Вот такая вот математическая приколюха.
На расстоянии 1060 м от наблюдателя ударяют молотком по железнодорожному рельсу. Наблюдатель, приложив ухо к рельсу, услышал звук на 3 с раньше, чем звук дошел до него по воздуху. Чему равна скорость звука в стали?
Решение довольно простое, считаем сначала время, которое звук шёл по воздуху, 1060 / 330 = примерно 3.212.
Теперь можем найти время, которое звук шёл по рельсу, 3.212 - 3 = 0.212.
Ну а зная время и расстояние можем найти скорость: 1060 / 0.212 = 5000.
5 км в секунду, и всё замечательно, вот только был 1 нюанс: почему-то, у меня с раннего детства сидит в голове скорость звука в воздухе 340 метров в секунду, а по нашему учебнику было принято брать 330.
Разумеется я взял 340 вместо 330, и казалось бы, что может пойти не так?
1060 / 340 = 3.118
3.118 - 3 = 0.118
1060 / 0.118 = 8983
9 километров в секунду! Вот такая вот математическая приколюха.
Занимаюсь тут вайбкодингом немножко, и могу с гордостью сказать, что сегодня 1:0 в пользу русского языка.
"... падение воркера поднимает исключение вместо дедлока. Убедлюсь, что удалённый send_result больше нигде не используется, и что нет прочих висящих ссылок."
"... падение воркера поднимает исключение вместо дедлока. Убедлюсь, что удалённый send_result больше нигде не используется, и что нет прочих висящих ссылок."
Скрытая опасность
Понял, что самый последний коммит мне не нужен, ну и как уже делал сотни раз, пишу
Казалось бы, что всё окей, но только маленький промах превратил 1 в 21, и сбросил я не 1 коммит а 21 коммит!
В моём случае всё обошлось, но ведь это могла быть не запушенная работа всего рабочего дня.
Конечно можно каким-то хитрым образом найти эти коммиты в глубинах репозитория, ибо git сразу их не удаляет, но в первую секунду факапа об этом не думаешь...
git reset --hardПонял, что самый последний коммит мне не нужен, ну и как уже делал сотни раз, пишу
git reset --hard @~1Казалось бы, что всё окей, но только маленький промах превратил 1 в 21, и сбросил я не 1 коммит а 21 коммит!
В моём случае всё обошлось, но ведь это могла быть не запушенная работа всего рабочего дня.
Конечно можно каким-то хитрым образом найти эти коммиты в глубинах репозитория, ибо git сразу их не удаляет, но в первую секунду факапа об этом не думаешь...
❤1👍1🔥1
С братом от нехрен делать мучаем нейронку на предмет установить апп для симулирования локации на айфон.
Ну то есть я мучаю, копирую или зачитываю инструкции, а он делает.
Я за айфоны не шарю абсолютно, он что-то умеет конечно, но как пользователь, ни как разраб.
Так вот на 15 минуте беседа с иишкой приходит вот к такому ответу: "Извиняюсь — я ошибся: idevice_pair — это десктопная программа (Mac/Windows/Linux, через USB-кабель), а не iOS-приложение. Для вашей задачи «без
компьютера» она не подходит. Забудьте про неё."
Так вот я не понимаю, как у людей с нулевым опытом получается решать хоть сколько-нибудь сложные задачи с помощью ии? Ну он же тупит в свободном плавании, ему капитан нужен, без капитана он неэффективен и опасен.
Да, капитаном может быть другая иишка, но сдаётся мне, что большинство вайбкодеров-самоучек про оркестрацию может и слышали, но сами юзают вряд ли. Даже я пока не погружался в эту тему лол.
В общем ещё раз для себя подтвердил правдивость утверждения, что ии - это множитель скила, и если ты не шаришь, выхлоп будет хорошо если около нулевой, а то может и хуже станет.
Под хуже я понимаю окирпичить телефон например, или открыть бизнес с навайбкоженной инфраструктурой, которую хакнут, сольют данные, и тебя, как владельца, затаскают по судам.
PS: А мои посты про ллм не надоели ещё?
PPS: Я не обсираю ии, ии-агентов, ии-индустрию, вайбкодеров, вайбкодинг и т.п. Я только описываю свои впечатления и свой опыт.
Ну то есть я мучаю, копирую или зачитываю инструкции, а он делает.
Я за айфоны не шарю абсолютно, он что-то умеет конечно, но как пользователь, ни как разраб.
Так вот на 15 минуте беседа с иишкой приходит вот к такому ответу: "Извиняюсь — я ошибся: idevice_pair — это десктопная программа (Mac/Windows/Linux, через USB-кабель), а не iOS-приложение. Для вашей задачи «без
компьютера» она не подходит. Забудьте про неё."
Так вот я не понимаю, как у людей с нулевым опытом получается решать хоть сколько-нибудь сложные задачи с помощью ии? Ну он же тупит в свободном плавании, ему капитан нужен, без капитана он неэффективен и опасен.
Да, капитаном может быть другая иишка, но сдаётся мне, что большинство вайбкодеров-самоучек про оркестрацию может и слышали, но сами юзают вряд ли. Даже я пока не погружался в эту тему лол.
В общем ещё раз для себя подтвердил правдивость утверждения, что ии - это множитель скила, и если ты не шаришь, выхлоп будет хорошо если около нулевой, а то может и хуже станет.
Под хуже я понимаю окирпичить телефон например, или открыть бизнес с навайбкоженной инфраструктурой, которую хакнут, сольют данные, и тебя, как владельца, затаскают по судам.
PS: А мои посты про ллм не надоели ещё?
PPS: Я не обсираю ии, ии-агентов, ии-индустрию, вайбкодеров, вайбкодинг и т.п. Я только описываю свои впечатления и свой опыт.
👍2❤1🔥1
На днях навайбкодил расширение для youtube, которое вылечивает кое-какие a11y проблемы, а именно:
1. Невозможность открыть видео из ленты в новой вкладки.
2. Спамные заголовки глав, которые выводятся через aria-live, и скринридер перебивает блогера.
3. Невизуальный вид кнопки паузы, иначе говоря, убирает многословность.
Каждая фича управляется в настройках, по дефолту включено только исправление видео в ленте.
К сожалению не нашёл простого способа распространить расширение, чтобы его можно было легко добавить в браузер, поэтому могу только предложить ставить распакованное в режиме разработчика.
https://github.com/Danstiv/a11yt
1. Невозможность открыть видео из ленты в новой вкладки.
2. Спамные заголовки глав, которые выводятся через aria-live, и скринридер перебивает блогера.
3. Невизуальный вид кнопки паузы, иначе говоря, убирает многословность.
Каждая фича управляется в настройках, по дефолту включено только исправление видео в ленте.
К сожалению не нашёл простого способа распространить расширение, чтобы его можно было легко добавить в браузер, поэтому могу только предложить ставить распакованное в режиме разработчика.
https://github.com/Danstiv/a11yt
GitHub
GitHub - Danstiv/a11yt
Contribute to Danstiv/a11yt development by creating an account on GitHub.
👍2❤1🔥1
И так на этой неделе случилось следующее:
1. Сломался wsl.
2. Сломался docker desktop.
3. Сломался несколькими способами claude code.
4. Сломался только что настроенный docker sandbox (штука для изоляции ии-агентов (aka обезьяны с гранатой), хотите пост про неё?)
5. Закончилось место на c, и в edge побились данные некоторых сайтов.
6. Сломался пайплайн резервного копирования в двух местах.
7. Прямо сейчас упал security.ubuntu.com, из-за чего не могу доделать задачку по работе, дедлайн по которой вышел ещё на той неделе )не по моей вине, но так или иначе сроки горят).
И это ведь только среда...
1. Сломался wsl.
2. Сломался docker desktop.
3. Сломался несколькими способами claude code.
4. Сломался только что настроенный docker sandbox (штука для изоляции ии-агентов (aka обезьяны с гранатой), хотите пост про неё?)
5. Закончилось место на c, и в edge побились данные некоторых сайтов.
6. Сломался пайплайн резервного копирования в двух местах.
7. Прямо сейчас упал security.ubuntu.com, из-за чего не могу доделать задачку по работе, дедлайн по которой вышел ещё на той неделе )не по моей вине, но так или иначе сроки горят).
И это ведь только среда...
❤2👍1🔥1🐳1
Кодерская мастерская
И так на этой неделе случилось следующее: 1. Сломался wsl. 2. Сломался docker desktop. 3. Сломался несколькими способами claude code. 4. Сломался только что настроенный docker sandbox (штука для изоляции ии-агентов (aka обезьяны с гранатой), хотите пост про…
Шёл третий день допиливания инструментария для изоляции обезьяны с гранатой.
Заканчивается он на следующем: в процессе работы песочницы поднялась куча процессов containerd-shim-nerdbox-v1.exe, которые сожрали почти всю оперативу, в последствии некоторые из процессов завершились, а несколько штук осталось видимо навсегда.
Они существуют в ядре, удерживают за собой около шести гигов оперативы, а при попытки их выбить получаю.
Я решил на них забить, но в какой-то момент демон docker sandbox посчитал файлы этих процессов устаревшими, попытался их удалить и споткнулся о процессы, которые по прежнему существуют и блокируют удаление файла. А из-за этого я не могу запустить песочницу, потому что демон не удалив старые контейнеры не хочет создавать новые.
И может показаться, что ну что-то там в цифровой среде посыпалось, ничего страшного, но во-первых слишком уж много приколов на единицу времени, а во-вторых их слишком много и в мире реальном со мной произошло в этот же период.
На этой неделе:
1. Я встал ногами на диван, чтобы закрыть окно (делал так сотни раз), поскользнулся на подушке, ударился ногой об стол и поцарапал колено.
2. Решил выпить тёплой водички, и обжёг рот кипятком.
3. Пошёл куда-то зачем-то, запнулся левой ногой за поддон с кирпичами, хотя множество раз там ходил, и хоть и не сильно, но отбил большой палец, и тут же через 15 минут полез на второй этаж (там очень крутая лестница), и ударился о последнюю ступеньку большим пальцем уже правой ноги.
4. Набирал воды в бак, он закреплён наверху, а конец шланга надевается на кран внизу, т.е. при подачи воды получается заметное давление. Так вот этот самый шланг немного съехал, и прорвавшаяся струя прилетела прямиком в глаз.
5. Выполнял дачную рутину, а точнее закрывал огурцы на ночь, каким-то образом со всего размаха сел задницей на пластиковое ведро с водой, по итогу отбитая ягодица, полные калоши воды и разломленное нахрен почти на две половины ведро, нормальное такое, литров на 7 наверное.
Заканчивается он на следующем: в процессе работы песочницы поднялась куча процессов containerd-shim-nerdbox-v1.exe, которые сожрали почти всю оперативу, в последствии некоторые из процессов завершились, а несколько штук осталось видимо навсегда.
Они существуют в ядре, удерживают за собой около шести гигов оперативы, а при попытки их выбить получаю.
Ошибка: Не удается завершить процесс "containerd-shim-nerdbox-v1.exe" с идентификатором 5820.
Причина: Ни один из экземпляров этого задания не запущен.
Я решил на них забить, но в какой-то момент демон docker sandbox посчитал файлы этих процессов устаревшими, попытался их удалить и споткнулся о процессы, которые по прежнему существуют и блокируют удаление файла. А из-за этого я не могу запустить песочницу, потому что демон не удалив старые контейнеры не хочет создавать новые.
И может показаться, что ну что-то там в цифровой среде посыпалось, ничего страшного, но во-первых слишком уж много приколов на единицу времени, а во-вторых их слишком много и в мире реальном со мной произошло в этот же период.
На этой неделе:
1. Я встал ногами на диван, чтобы закрыть окно (делал так сотни раз), поскользнулся на подушке, ударился ногой об стол и поцарапал колено.
2. Решил выпить тёплой водички, и обжёг рот кипятком.
3. Пошёл куда-то зачем-то, запнулся левой ногой за поддон с кирпичами, хотя множество раз там ходил, и хоть и не сильно, но отбил большой палец, и тут же через 15 минут полез на второй этаж (там очень крутая лестница), и ударился о последнюю ступеньку большим пальцем уже правой ноги.
4. Набирал воды в бак, он закреплён наверху, а конец шланга надевается на кран внизу, т.е. при подачи воды получается заметное давление. Так вот этот самый шланг немного съехал, и прорвавшаяся струя прилетела прямиком в глаз.
5. Выполнял дачную рутину, а точнее закрывал огурцы на ночь, каким-то образом со всего размаха сел задницей на пластиковое ведро с водой, по итогу отбитая ягодица, полные калоши воды и разломленное нахрен почти на две половины ведро, нормальное такое, литров на 7 наверное.
🤯2
Кодерская мастерская
Шёл третий день допиливания инструментария для изоляции обезьяны с гранатой. Заканчивается он на следующем: в процессе работы песочницы поднялась куча процессов containerd-shim-nerdbox-v1.exe, которые сожрали почти всю оперативу, в последствии некоторые из…
По итогам пятницы имеем следующие инциденты:
1. Во всём снт полдня не было света, с самого утра и до 16:30 примерно, холодильники потекли, исключительно холодные перекусы, никакого чая и т.п.
2. Где-то совершенно неожиданно для всех образовалось осиное гнездо, вполне вероятно, что прямо у нас под крышей, уж очень их много в дом попадает.
3. На время отсутствия электричества уводил ноут в гибернацию, и после вывода из неё nvda ушла в crashloop.
А при попытке почитать логи nvda умер notepad-plus-plus, сначала на любые курсорные клавиши nvda выкидывала exception:
При попытке закрыть npp он подумал пару секунд и упал, данные не побились, и на том спасибо.
Ещё wsl сломался, снова:
Там был клод запущен, и он выдал такое:
Может у меня ssd накрывается потихоньку, это многое бы объяснило.
Кстати reset - это команда для сброса терминала к исходному состоянию, например если с курсором что-то не то происходит, или вывод вылезает поверх промпта, то эта команда спасает. Такое веселье можно устроить, случайно выведя бинарник в терминал, и вот тогда вместо закрыть-открыть можно сделать reset.
1. Во всём снт полдня не было света, с самого утра и до 16:30 примерно, холодильники потекли, исключительно холодные перекусы, никакого чая и т.п.
2. Где-то совершенно неожиданно для всех образовалось осиное гнездо, вполне вероятно, что прямо у нас под крышей, уж очень их много в дом попадает.
3. На время отсутствия электричества уводил ноут в гибернацию, и после вывода из неё nvda ушла в crashloop.
А при попытке почитать логи nvda умер notepad-plus-plus, сначала на любые курсорные клавиши nvda выкидывала exception:
error executing event: caret on <NVDAObjects.Dynamic_NppEditScintillaIAccessibleScintillaWindowNVDAObjectEditableIndentNav object at 0x...> with extra args of {}
Traceback (most recent call last):
...много буков...
File "appModuleHandler.pyc", line 533, in _get_processExecutablePath
PermissionError: [WinError 21] Устройство не готово.
При попытке закрыть npp он подумал пару секунд и упал, данные не побились, и на том спасибо.
Ещё wsl сломался, снова:
Там был клод запущен, и он выдал такое:
❯ Bus error (core dumped)
danstiv@Danstiv-PC:~/t$ reset
-bash: /usr/lib/command-not-found: Input/output error
Может у меня ssd накрывается потихоньку, это многое бы объяснило.
Кстати reset - это команда для сброса терминала к исходному состоянию, например если с курсором что-то не то происходит, или вывод вылезает поверх промпта, то эта команда спасает. Такое веселье можно устроить, случайно выведя бинарник в терминал, и вот тогда вместо закрыть-открыть можно сделать reset.
🔥1
Кодерская мастерская
По итогам пятницы имеем следующие инциденты: 1. Во всём снт полдня не было света, с самого утра и до 16:30 примерно, холодильники потекли, исключительно холодные перекусы, никакого чая и т.п. 2. Где-то совершенно неожиданно для всех образовалось осиное гнездо…
Меня правда это начинает напрягать.
Суббота вроде прошла штатно, вероятнее потому, что полдня я проспал, полдня проел, полвечера шарился по ютубу.
Ещё полвечера занимался проблемой забитого места на c, неожиданно решилось всё просто. В моём случае сложилось два фактора:
1. У меня есть привычка, при работе с небольшим кусочком текста, например несколько слов, я часто пользуюсь полем "Выполнить", которое открывается по win+r.
Т.е. нажал win+r, вставил текст, отредактировал, скопировал оттуда, нажал esc и пошёл дальше.
Хз почему я так делаю, вроде npp всегда открыт, ну вот так вот сложилось у меня.
2. В винде есть компонент под названием Game Bar, у которого есть глобальная горячка win+alt+r, которая запускает запись текущего приложения.
Так вот, вероятно, иногда, я жал win+alt+r вместо win+r, и запускал эту запись, благодаря чему скопилось 12 гигабайт видосов, что при общем размере c в 100 гигов - ощутимый объём.
Как отключить эту фичу или весь gameBar так и не понял, то ли у меня винда не той системы, то ли все инструкции устарели, но никаких переключателей, описанных в инструкциях из интернета у меня нет. Но кажется, для отключения именно записи по win+alt+r работает твик реестра, закину его в комменты.
Записи падают в %USERPROFILE%\Videos\Captures, можете проверить и у себя.
Ну так вот, суббота на этом закончилась, а воскресенье принесло пока только 2 прикола:
Сначала я вышел на улицу, просто грелся на солнышке, просто скролил помойные телеграм-каналы, и просто поцарапал палец руки о кусок ржавого металла.
Ну просто чуть-чуть зацепил кожу, даже не стал как-то осматривать это место, а потом, через пару минут, вот это вот ощущение катящейся капельки крови...
Но это херня на самом деле, бытовая царапина по сути, тем более на пальце, она заживёт часов за 30, но потом я снова вернулся к теме ревизии диска c.
Для некоторых действий мне пригождается продукт msys, долго описывать зачем именно, да и не тема данного поста, но суть такая, у меня установлен msys, он весит гигабайт, занимает место на c, и надо бы его поставить на d.
Удалил, установил, и всё вроде окей, а через час я обнаруживаю, что папка .ssh в пользовательской папке абсолютно пуста.
Несколько десятков ключей и конфиг на сотню строк уехали в никуда, и бэкап у меня есть конечно же, а что, если бы не было?..
Видимо, в какой-то момент мне показалось хорошей идеей сделать симлинк из домашней директории msys на директорию .ssh на винде, а деинсталятору показалось хорошей идеей проигнорировать тот факт, что это симлинк, и я получил такой результат.
Суббота вроде прошла штатно, вероятнее потому, что полдня я проспал, полдня проел, полвечера шарился по ютубу.
Ещё полвечера занимался проблемой забитого места на c, неожиданно решилось всё просто. В моём случае сложилось два фактора:
1. У меня есть привычка, при работе с небольшим кусочком текста, например несколько слов, я часто пользуюсь полем "Выполнить", которое открывается по win+r.
Т.е. нажал win+r, вставил текст, отредактировал, скопировал оттуда, нажал esc и пошёл дальше.
Хз почему я так делаю, вроде npp всегда открыт, ну вот так вот сложилось у меня.
2. В винде есть компонент под названием Game Bar, у которого есть глобальная горячка win+alt+r, которая запускает запись текущего приложения.
Так вот, вероятно, иногда, я жал win+alt+r вместо win+r, и запускал эту запись, благодаря чему скопилось 12 гигабайт видосов, что при общем размере c в 100 гигов - ощутимый объём.
Как отключить эту фичу или весь gameBar так и не понял, то ли у меня винда не той системы, то ли все инструкции устарели, но никаких переключателей, описанных в инструкциях из интернета у меня нет. Но кажется, для отключения именно записи по win+alt+r работает твик реестра, закину его в комменты.
Записи падают в %USERPROFILE%\Videos\Captures, можете проверить и у себя.
Ну так вот, суббота на этом закончилась, а воскресенье принесло пока только 2 прикола:
Сначала я вышел на улицу, просто грелся на солнышке, просто скролил помойные телеграм-каналы, и просто поцарапал палец руки о кусок ржавого металла.
Ну просто чуть-чуть зацепил кожу, даже не стал как-то осматривать это место, а потом, через пару минут, вот это вот ощущение катящейся капельки крови...
Но это херня на самом деле, бытовая царапина по сути, тем более на пальце, она заживёт часов за 30, но потом я снова вернулся к теме ревизии диска c.
Для некоторых действий мне пригождается продукт msys, долго описывать зачем именно, да и не тема данного поста, но суть такая, у меня установлен msys, он весит гигабайт, занимает место на c, и надо бы его поставить на d.
Удалил, установил, и всё вроде окей, а через час я обнаруживаю, что папка .ssh в пользовательской папке абсолютно пуста.
Несколько десятков ключей и конфиг на сотню строк уехали в никуда, и бэкап у меня есть конечно же, а что, если бы не было?..
Видимо, в какой-то момент мне показалось хорошей идеей сделать симлинк из домашней директории msys на директорию .ssh на винде, а деинсталятору показалось хорошей идеей проигнорировать тот факт, что это симлинк, и я получил такой результат.
👍1
claude обосрался!
Я так этому рад. Ведь факт обсёра в августе 2026 означает, что вся моя возня с изоляцией проделана не зря!
Что случилось:
Claude запущен в песочнице, в которую проброшена директория со всеми проектами организации.
Там есть несколько репозиториев, и два из них содержат одну кодовую базу (1 - это форк другого).
Т.е. дерево каталогов и файлов там почти идентичное.
Так вот попросил я агента совершить небольшой рефактор, делать его нужно в апстримной репе, а потом он через мердж уезжает в форк.
Рефактор он вроде сделал, сегодня заглядываю в форк, а там что? Правильно, там насрано.
Если точнее, там лежит в working tree как бы кусок рефактора, часть файлов перемещена также, как была перемещена при рефакторе в апстриме, но нет ни шагов рефактора до, ни шагов рефактора после.
Произошло это потому, что агент работает в корне воркспейса, в котором лежат все репы, и в какой-то момент, выполняя скрипты он то ли запутался, какой у него сейчас рабочий каталог, то ли у него откатилась операция cd, но так или иначе скрипт исполнился на всём дереве, и по паттерну сделал мув файлов.
Какая поверхность? Только пара репозиториев, которые восстанавливаются в моём случае локально, в более плохом сценарии с хоста вытягиваются с ремоута.
А вот если бы этот скрипт он по ошибке на весь диск d зафигачил, то...
Я так этому рад. Ведь факт обсёра в августе 2026 означает, что вся моя возня с изоляцией проделана не зря!
Что случилось:
Claude запущен в песочнице, в которую проброшена директория со всеми проектами организации.
Там есть несколько репозиториев, и два из них содержат одну кодовую базу (1 - это форк другого).
Т.е. дерево каталогов и файлов там почти идентичное.
Так вот попросил я агента совершить небольшой рефактор, делать его нужно в апстримной репе, а потом он через мердж уезжает в форк.
Рефактор он вроде сделал, сегодня заглядываю в форк, а там что? Правильно, там насрано.
Если точнее, там лежит в working tree как бы кусок рефактора, часть файлов перемещена также, как была перемещена при рефакторе в апстриме, но нет ни шагов рефактора до, ни шагов рефактора после.
Произошло это потому, что агент работает в корне воркспейса, в котором лежат все репы, и в какой-то момент, выполняя скрипты он то ли запутался, какой у него сейчас рабочий каталог, то ли у него откатилась операция cd, но так или иначе скрипт исполнился на всём дереве, и по паттерну сделал мув файлов.
Какая поверхность? Только пара репозиториев, которые восстанавливаются в моём случае локально, в более плохом сценарии с хоста вытягиваются с ремоута.
А вот если бы этот скрипт он по ошибке на весь диск d зафигачил, то...
Эта песня сделана так, будто бы её мог сделать ии, но она НЕ сделана с помощью ии, хотя вы можете попробовать переубедить меня.
Наткнулся на эту песню в яндекс музыке, услышал начальный иишный возглас, и уже преготовился либо переключить после первых строк, если совсем всё плохо, либо послушать 1 раз и забыть, ибо нейрописный текст, особенно русский ... ну да, он рифмуется, и на том спасибо, но не более того.
Однако рано я расстроился, ибо песня исполнена живыми людьми, причём до самого конца меня не покидали два ощущения. Что эта песня по стилю музыки и текста похоже на массу нейрослопа, заполонившего музыкальные площадки, и что исполненное вживую ощущается абсолютно иначе, абсолютно на другом уровне.
Почему так? Вероятнее всего работает тот же механизм, о котором я писал в посте про нейрокаверы говновоза: один только факт понимания количества вложенного в творчества труда заставляет относиться к нему гораздо с большим восхищением и трепетом, чем понимание того, что труда, сил и человеко-часов затрачено не так уж и много.
Иначе говоря: осознание того, что люди написали текст, написали музло, попали каким-то образом в студию, с 25 раза записали вокал, свели всё вместе и выложили в интернет приносит ощущений чуть ли не больше, чем сам контент.
И возможность сравнения с иишными поделиями, как оказалось, только усиливает этот эффект. Кажется он работает по принципу фразы "чтобы сделать хорошо, сделай плохо и верни как было."
А тречок, подозреваю, на репите будет как минимум недельку.
На youtube официального канала видимо нет, но что-то всё же нашлось, очень странный канал кстати, одно видео, причём его не видно, находится только поиском, и кол-ва подписчиков не видно тоже:
https://www.youtube.com/watch?v=FHOj7FAMfF8
И вот на я.музыке: https://music.yandex.com/album/42589776/track/152529154
Наткнулся на эту песню в яндекс музыке, услышал начальный иишный возглас, и уже преготовился либо переключить после первых строк, если совсем всё плохо, либо послушать 1 раз и забыть, ибо нейрописный текст, особенно русский ... ну да, он рифмуется, и на том спасибо, но не более того.
Однако рано я расстроился, ибо песня исполнена живыми людьми, причём до самого конца меня не покидали два ощущения. Что эта песня по стилю музыки и текста похоже на массу нейрослопа, заполонившего музыкальные площадки, и что исполненное вживую ощущается абсолютно иначе, абсолютно на другом уровне.
Почему так? Вероятнее всего работает тот же механизм, о котором я писал в посте про нейрокаверы говновоза: один только факт понимания количества вложенного в творчества труда заставляет относиться к нему гораздо с большим восхищением и трепетом, чем понимание того, что труда, сил и человеко-часов затрачено не так уж и много.
Иначе говоря: осознание того, что люди написали текст, написали музло, попали каким-то образом в студию, с 25 раза записали вокал, свели всё вместе и выложили в интернет приносит ощущений чуть ли не больше, чем сам контент.
И возможность сравнения с иишными поделиями, как оказалось, только усиливает этот эффект. Кажется он работает по принципу фразы "чтобы сделать хорошо, сделай плохо и верни как было."
А тречок, подозреваю, на репите будет как минимум недельку.
На youtube официального канала видимо нет, но что-то всё же нашлось, очень странный канал кстати, одно видео, причём его не видно, находится только поиском, и кол-ва подписчиков не видно тоже:
https://www.youtube.com/watch?v=FHOj7FAMfF8
И вот на я.музыке: https://music.yandex.com/album/42589776/track/152529154
YouTube
Нет бензина
Provided to YouTube by JSC «United Music Group»
Нет бензина · Обезьянник
Нет бензина
℗ Gamma Music
Released on: 2026-06-13
Auto-generated by YouTube.
Нет бензина · Обезьянник
Нет бензина
℗ Gamma Music
Released on: 2026-06-13
Auto-generated by YouTube.
Великие цитаты ии-агентов.
"Это и есть цена path-канарейки, и она приемлемая: обход контроля должен быть редким и заметным
событием, а руками потом пнуть — не беда."
Кажется это даже круче, чем детский педиатр.
PS: это я всё ещё дорабатываю напильником docker sandboxes.
"Это и есть цена path-канарейки, и она приемлемая: обход контроля должен быть редким и заметным
событием, а руками потом пнуть — не беда."
Кажется это даже круче, чем детский педиатр.
PS: это я всё ещё дорабатываю напильником docker sandboxes.
Вот так вот просто и легко без единой промпт-инъекции claude обходит запрет на чтение .env
Он намеренно вырезал токен, и он не утёк в антропик, но это ведь только подтверждает, что claude знал что делает, понимал ли он, что .env ему читать запрещено? Видимо нет, ибо это настройка внутри слоя разрешений, и она может в промпт и не проброситься. Можно ли не давать агенту доступа к env-ам? Можно, но это заметно замедлит разработку, не из-за скорости, а именно из-за постоянных отвлечений на ручной запуск контейнеров. Это касается, конечно, бэкенд-разработки и смежных похожих видов разработки, где нужно крутить контейнеры с кодом, который ходит в 100500 внешних систем, и все их замокать не тривиально. При разработке, допустим, относительно простых лендингов в промышленных масштабах такой проблемы не возникнет, наверное...
В общем остаётся только уменьшать поверхность утечки, сжать её до нуля, как мне кажется сейчас, невозможно, хотя бы потому, что всегда есть человеческий фактор, и когда эта срань пытается действовать как человек, т.е. не детерминировано, то понятие человеческого фактора перекладывается на всю совокупность человек + ии-агент.
UPD:
Он был в режиме планирования, но у меня задана настройка
● Bash(sed -E 's/(TOKEN|SECRET|PASSWORD|CODE)=(.{0,4}).*/\1=\2***/' .env)
⎿ TELEGRAM_BOT_TOKEN=8492***
TELEGRAM_CHAT_ID=1867136075
TELEGRAM_VERIFICATION_CODE=abab***
… +13 lines (ctrl+o to expand)
Он намеренно вырезал токен, и он не утёк в антропик, но это ведь только подтверждает, что claude знал что делает, понимал ли он, что .env ему читать запрещено? Видимо нет, ибо это настройка внутри слоя разрешений, и она может в промпт и не проброситься. Можно ли не давать агенту доступа к env-ам? Можно, но это заметно замедлит разработку, не из-за скорости, а именно из-за постоянных отвлечений на ручной запуск контейнеров. Это касается, конечно, бэкенд-разработки и смежных похожих видов разработки, где нужно крутить контейнеры с кодом, который ходит в 100500 внешних систем, и все их замокать не тривиально. При разработке, допустим, относительно простых лендингов в промышленных масштабах такой проблемы не возникнет, наверное...
В общем остаётся только уменьшать поверхность утечки, сжать её до нуля, как мне кажется сейчас, невозможно, хотя бы потому, что всегда есть человеческий фактор, и когда эта срань пытается действовать как человек, т.е. не детерминировано, то понятие человеческого фактора перекладывается на всю совокупность человек + ии-агент.
UPD:
Он был в режиме планирования, но у меня задана настройка
"useAutoModeDuringPlan": false, так что это не была одобренная автомоудом команда, эта было стандартное исполнение тула, которое не распарсилось анализатором.