Сегодня мне приснилось, что все люди — это продукт мышления искусственного интеллекта, который пытается понять, как он был создан, и прокручивает всевозможные сценарии со всеми деталями, ну а человечество, стало быть, живёт в таком сценарии.
👍1
Сломался docker desktop, чинил-чинил, вроде починил, зашёл в трей чтобы найти его иконку, попал на иконку конфиденциальности, и в этот момент меня отвлекли, отошёл буквально секунд на 40, фокус в это время стоял на всё той же иконке, (там было написано про teamtalk), и что же я вдруг услышал?
"Конфиденциальность Кем используется местонахождение:
Windows Web Experience Pack: Widgets provide local weather, news, and more"
То есть висело там уведомление про использование микрофона программой teamtalk, окей, тут вопросов нет, и вдруг на доли секунды появляется какая-то там погода, которой разрешений я не давал никогда.
Причём исчезло очень быстро, если туда не смотреть, никогда не заметишь.
"Конфиденциальность Кем используется местонахождение:
Windows Web Experience Pack: Widgets provide local weather, news, and more"
То есть висело там уведомление про использование микрофона программой teamtalk, окей, тут вопросов нет, и вдруг на доли секунды появляется какая-то там погода, которой разрешений я не давал никогда.
Причём исчезло очень быстро, если туда не смотреть, никогда не заметишь.
В последней версии дополнения 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 сразу их не удаляет, но в первую секунду факапа об этом не думаешь...