🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку
Окружение решает больше, чем кажется.
Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.
AI: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
Linux: t.me/linuxacademiya
Хакинг: t.me/linuxkalii
DevOps: t.me/DevOPSitsec
Docker: https://t.me/+90Z5TAyfuNU5YmRi
Golang: t.me/Golang_google
Rust: t.me/rust_code
C++: t.me/cpluspluc
C#: t.me/csharp_ci
Java: t.me/javatg
JavaScript: t.me/javascriptv
React: t.me/react_tg
Frontend: t.me/front
PHP: t.me/phpshka
Android: t.me/android_its
Мобильная разработка: t.me/mobdevelop
Базы данных: t.me/sqlhub
Data Science: t.me/data_analysis_ml
Big Data: t.me/bigdatai
Математика: t.me/data_math
Физика: t.me/fizmat
Kubernetes: t.me/kubernetc
GameDev: https://t.me/gamedev
Haskell: t.me/haskell_tg
Собеседования и карьера:
DS собеседования: t.me/machinelearning_interview
Python собеседования: t.me/python_job_interview
Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy
Папка Frontend: https://t.me/addlist/mzMMG3RPZhY2M2Iy
Полезное сверху:
ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: https://t.me/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: https://t.me/addlist/BkskQciUW_FhNjEy
Max Ai: https://max.ru/ai_machinelearning_big_data
Max python: https://max.ru/pythonl
ТЕХНО: https://max.ru/vistehno
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Devops: https://max.ru/DevOPSitsec
C#: https://max.ru/csharp_ci
C++: https://max.ru/cpluspluc
SQL: https://max.ru/sqlhub
Java: https://max.ru/javatg
Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.
Окружение решает больше, чем кажется.
Собрал папки и каналы, где можно быстрее влиться в нужное направление, следить за трендами и не вариться в своём пузыре.
AI: t.me/ai_machinelearning_big_data
Python: t.me/pythonl
Linux: t.me/linuxacademiya
Хакинг: t.me/linuxkalii
DevOps: t.me/DevOPSitsec
Docker: https://t.me/+90Z5TAyfuNU5YmRi
Golang: t.me/Golang_google
Rust: t.me/rust_code
C++: t.me/cpluspluc
C#: t.me/csharp_ci
Java: t.me/javatg
JavaScript: t.me/javascriptv
React: t.me/react_tg
Frontend: t.me/front
PHP: t.me/phpshka
Android: t.me/android_its
Мобильная разработка: t.me/mobdevelop
Базы данных: t.me/sqlhub
Data Science: t.me/data_analysis_ml
Big Data: t.me/bigdatai
Математика: t.me/data_math
Физика: t.me/fizmat
Kubernetes: t.me/kubernetc
GameDev: https://t.me/gamedev
Haskell: t.me/haskell_tg
Собеседования и карьера:
DS собеседования: t.me/machinelearning_interview
Python собеседования: t.me/python_job_interview
Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy
Папка Frontend: https://t.me/addlist/mzMMG3RPZhY2M2Iy
Полезное сверху:
ИТ-мемы: t.me/memes_prog
Английский для программистов: t.me/english_forprogrammers
ИИ и технологии: t.me/vistehno
954 ГБ open-source курсов: https://t.me/+rKBQEMccAA01MTcy
ИТ-книги бесплатно: https://t.me/addlist/BkskQciUW_FhNjEy
Max Ai: https://max.ru/ai_machinelearning_big_data
Max python: https://max.ru/pythonl
ТЕХНО: https://max.ru/vistehno
Max Go: https://max.ru/Golang_google
Max Linux: https://max.ru/linuxkalii
Devops: https://max.ru/DevOPSitsec
C#: https://max.ru/csharp_ci
C++: https://max.ru/cpluspluc
SQL: https://max.ru/sqlhub
Java: https://max.ru/javatg
Подписывайся на нужные направления и собирай себе ленту, которая реально двигает вперёд.
❤2👍2👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Electric strings
Электрический паук, следующий за мышью. Написан на JavaScript.
https://codepen.io/Mertl/pen/dybBPWx
Электрический паук, следующий за мышью. Написан на JavaScript.
https://codepen.io/Mertl/pen/dybBPWx
👍19❤5
🌐 Умный DNS-резолвер Numa
Numa - это портативный DNS-резолвер, который работает из одного бинарного файла. Он блокирует рекламу, позволяет настраивать локальные сервисы и шифрует запросы с помощью ODoH, обеспечивая вашу конфиденциальность. Все функции встроены, без необходимости в облачных сервисах.
🚀 Основные моменты:
- Портативный, работает на любом устройстве.
- Блокировка рекламы и кэширование по умолчанию.
- Поддержка DNSSEC и DNS-over-TLS для шифрования.
- Автоматическое обнаружение устройств в локальной сети.
- Легкий в использовании интерфейс и настройка.
📌 GitHub: https://github.com/razvandimescu/numa
Numa - это портативный DNS-резолвер, который работает из одного бинарного файла. Он блокирует рекламу, позволяет настраивать локальные сервисы и шифрует запросы с помощью ODoH, обеспечивая вашу конфиденциальность. Все функции встроены, без необходимости в облачных сервисах.
🚀 Основные моменты:
- Портативный, работает на любом устройстве.
- Блокировка рекламы и кэширование по умолчанию.
- Поддержка DNSSEC и DNS-over-TLS для шифрования.
- Автоматическое обнаружение устройств в локальной сети.
- Легкий в использовании интерфейс и настройка.
📌 GitHub: https://github.com/razvandimescu/numa
🔥6👍3❤1👎1🤔1
Критическая уязвимость в декодировщике Brotli, затрагивающая Node.JS, Bun, браузеры, HTTP-клиенты и другие проекты
В библиотеке с эталонной реализацией декодировщика для формата сжатия данных Brotli выявлена уязвимость (CVE-2026-111497, приводящая к переполнению буфера при обработке специально оформленных сжатых данных. По данным Google уязвимость может использоваться для удалённого выполнения кода при атаке на проекты, использующие официальную реализацию декодировщика Brotli. Среди подобных проектов Node.js, Bun, Envoy, Istio, web-браузеры, прокси-серверы, HTTP-клиенты и -серверы, архиваторы, прокси-серверы, UEFI-прошивки, просмотрщики JPEG XL, декодирующие контент библиотеки для Python, Ruby, Java, PHP и .NET и связанные с ними зависимости.
Полный текст:
https://opennet.ru/66537/
https://opennet.me/66537/
В библиотеке с эталонной реализацией декодировщика для формата сжатия данных Brotli выявлена уязвимость (CVE-2026-111497, приводящая к переполнению буфера при обработке специально оформленных сжатых данных. По данным Google уязвимость может использоваться для удалённого выполнения кода при атаке на проекты, использующие официальную реализацию декодировщика Brotli. Среди подобных проектов Node.js, Bun, Envoy, Istio, web-браузеры, прокси-серверы, HTTP-клиенты и -серверы, архиваторы, прокси-серверы, UEFI-прошивки, просмотрщики JPEG XL, декодирующие контент библиотеки для Python, Ruby, Java, PHP и .NET и связанные с ними зависимости.
Полный текст:
https://opennet.ru/66537/
https://opennet.me/66537/
👍4🤔2❤1
Найти ближайшее значение в бинарном дереве
Напишите функцию, которая принимает два аргумента — бинарное дерево и значение в виде числа, а возвращает ближайшее значение, найденное в бинарном дереве.
Зная свойство сбалансированного бинарного дерева, где слева находятся все значения нод меньше текущей, а справа равные или больше по значению, мы можем в лучшем случае откидывать каждый раз половину дерева.
В данном решении мы идем рекурсивным путём по нодам, записывая и сравнивая разницу со значением из аргумента. Если значение равно нужному, значит мы нашли нужную нам ноду, а иначе мы смотрим, является ли текущее значение ноды меньше или больше того, которое мы ищем. В зависимости от этого мы продолжаем рекурсивно спускаться в нужном нам направлении, обновляя разницу, до тех пор пока не упремся в конец ветки.
Напишите функцию, которая принимает два аргумента — бинарное дерево и значение в виде числа, а возвращает ближайшее значение, найденное в бинарном дереве.
Node = { value: number | null, left: Node | null, right: Node | null }
Решение доступно на картинке. В данном решении мы идем рекурсивным путём по нодам, записывая и сравнивая разницу со значением из аргумента. Если значение равно нужному, значит мы нашли нужную нам ноду, а иначе мы смотрим, является ли текущее значение ноды меньше или больше того, которое мы ищем. В зависимости от этого мы продолжаем рекурсивно спускаться в нужном нам направлении, обновляя разницу, до тех пор пока не упремся в конец ветки.
👍3🔥3🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
Совет по CSS 💡
Мы часто используем кнопки действий, которые появляются при наведении, чтобы интерфейс выглядел чище.
Но пользователи, работающие только с клавиатурой или сенсорными экранами, не могут вызвать наведение, из-за чего такие кнопки становятся недоступными.
Вот как это исправить
Мы часто используем кнопки действий, которые появляются при наведении, чтобы интерфейс выглядел чище.
Но пользователи, работающие только с клавиатурой или сенсорными экранами, не могут вызвать наведение, из-за чего такие кнопки становятся недоступными.
Вот как это исправить
👍12❤4🔥1🤩1
Показываешь ИИ чужой сайт или приложение, а он разбирается, как всё работает, и собирает свою версию
На GitHub появился Craft Anything - open-source инструмент на Rust, объединяющий реверс-инжиниринг и AI-разработку.
Работает довольно интересно. Указываешь сайт, десктопное приложение или игру и описываешь, что хочешь воспроизвести.
Система исследует оригинал, передаёт результаты coding-агенту, собирает новый проект и сравнивает его с исходным. Если обнаруживает расхождения, запускает следующую итерацию исправлений.
Внутри целый движок реверс-инжиниринга с более чем 300 инструментами. Поддерживаются анализ бинарников, .NET, Java, Android, Electron, JavaScript и игровых файлов.
Есть два режима. Clean Room изучает только внешнее поведение и интерфейс, не читая исходники. Deep позволяет исследовать внутреннее устройство программы, включая дизассемблирование и декомпиляцию.
Все инструменты доступны через CLI и MCP. Для генерации кода используется прежде всего Claude Code.
Например, можно попросить агента воссоздать интерфейс сайта, а затем проверить результат на трёх размерах экрана.
Проект пока в ранней альфе: часть проверок и интеграций ещё экспериментальная.
Интересная идея для coding-агентов: вместо попытки угадать устройство программы по скриншоту сначала собрать реальные данные о её работе, а затем писать код.
https://github.com/storytold/craft-anything
На GitHub появился Craft Anything - open-source инструмент на Rust, объединяющий реверс-инжиниринг и AI-разработку.
Работает довольно интересно. Указываешь сайт, десктопное приложение или игру и описываешь, что хочешь воспроизвести.
Система исследует оригинал, передаёт результаты coding-агенту, собирает новый проект и сравнивает его с исходным. Если обнаруживает расхождения, запускает следующую итерацию исправлений.
Внутри целый движок реверс-инжиниринга с более чем 300 инструментами. Поддерживаются анализ бинарников, .NET, Java, Android, Electron, JavaScript и игровых файлов.
Есть два режима. Clean Room изучает только внешнее поведение и интерфейс, не читая исходники. Deep позволяет исследовать внутреннее устройство программы, включая дизассемблирование и декомпиляцию.
Все инструменты доступны через CLI и MCP. Для генерации кода используется прежде всего Claude Code.
Например, можно попросить агента воссоздать интерфейс сайта, а затем проверить результат на трёх размерах экрана.
Проект пока в ранней альфе: часть проверок и интеграций ещё экспериментальная.
Интересная идея для coding-агентов: вместо попытки угадать устройство программы по скриншоту сначала собрать реальные данные о её работе, а затем писать код.
https://github.com/storytold/craft-anything
👍8❤6🔥2🤬2
🔥 Прожарка резюме разработчиков
Откликаешься, а в ответ тишина? Или зовут, но предлагают меньше, чем рассчитываешь? Возможно, дело не в навыках, а в резюме.
7 ноября HR Lead ex-Яндекса и разработчики из Wildberries и Uzum разберут реальные резюме в прямом эфире
Что обсудим:
🗓 7 ноября, 13:00 мск
Участие бесплатное
👥 Спикеры:
— Валерия Парунова, HR Lead, ex-Яндекс;
— Виктор Анохин, Java/Kotlin-разработчик в Wildberries, ex-Билайн;
— Сергей Чамкин, Senior в Uzum, ex-Wildberries, проводил технические интервью в EPAM и Wildberries.
Эфир проводит ШОРТКАТ — менторская программа для разработчиков, которые хотят сменить работу или повысить зарплату.
📲 Регистрируйся на эфир в боте → @shortcut_front_bot
Реклама.
О рекламодателе.
Откликаешься, а в ответ тишина? Или зовут, но предлагают меньше, чем рассчитываешь? Возможно, дело не в навыках, а в резюме.
7 ноября HR Lead ex-Яндекса и разработчики из Wildberries и Uzum разберут реальные резюме в прямом эфире
Что обсудим:
✦ что может оттолкнуть рекрутера
✦ как показать свой вклад и результаты
✦ какие формулировки могут занизить грейд
✦ какой уровень отражает опыт кандидата и какие вопросы могут возникнуть у интервьюера
🗓 7 ноября, 13:00 мск
Участие бесплатное
👥 Спикеры:
— Валерия Парунова, HR Lead, ex-Яндекс;
— Виктор Анохин, Java/Kotlin-разработчик в Wildberries, ex-Билайн;
— Сергей Чамкин, Senior в Uzum, ex-Wildberries, проводил технические интервью в EPAM и Wildberries.
Эфир проводит ШОРТКАТ — менторская программа для разработчиков, которые хотят сменить работу или повысить зарплату.
📲 Регистрируйся на эфир в боте → @shortcut_front_bot
Реклама.
О рекламодателе.
👍2👎2❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Как работает комбинация clip + mask:
- маска применяется к контейнеру с использованием соответствующего изображения клавиши, чтобы изображение обрезалось при смещении (translate)
- clip применяется к контейнеру, чтобы зона взаимодействия (hit area) не перекрывала другие клавиши 🧑🍳
- маска применяется к контейнеру с использованием соответствующего изображения клавиши, чтобы изображение обрезалось при смещении (translate)
- clip применяется к контейнеру, чтобы зона взаимодействия (hit area) не перекрывала другие клавиши 🧑🍳
👍12❤1👏1
LATCH: минималистичный протокол для безопасных действий ИИ-агентов
Разработчик Антон Баланов представил LATCH, открытый протокол, позволяющий ИИ-агентам взаимодействовать с внешними сервисами через обычные HTTPS-запросы.
Идея в том, чтобы агент мог не только получать данные, но и выполнять действия с явным подтверждением условий.
Например, агент хочет заказать 3D-печать детали. Вместо немедленного оформления заказа используется последовательность:
1. `ask` - узнать доступные материалы и возможности сервиса.
2. `quote` - получить точные условия заказа без его выполнения.
3. `approve` - подтвердить предложение, привязав согласие к SHA-256-хешу условий.
4. `commit` - выполнить подтверждённое действие с ключом идемпотентности, защищающим от случайных повторов.
5. `status` - проверить состояние задачи и получить отчёт сервиса.
В основе обычные JSON и HTTPS. Никаких обязательных SDK, облачных посредников и внешних зависимостей.
Референсная реализация написана для Node.js 20+, есть независимый PHP-провайдер и дополнительный мост к MCP.
LATCH не заменяет MCP или A2A. Он решает более узкую задачу: разделяет получение предложения, подтверждение и выполнение действия.
Это особенно полезно для агентов, которые работают с заказами, платежными сценариями или другими операциями с последствиями.
Проект пока экспериментальный, версия протокола 0.1. Для продакшена потребуется самостоятельно обеспечить аутентификацию, авторизацию и надёжное хранение состояния.
Лицензия MIT.
GitHub: https://github.com/Balanov/latch
Разработчик Антон Баланов представил LATCH, открытый протокол, позволяющий ИИ-агентам взаимодействовать с внешними сервисами через обычные HTTPS-запросы.
Идея в том, чтобы агент мог не только получать данные, но и выполнять действия с явным подтверждением условий.
Например, агент хочет заказать 3D-печать детали. Вместо немедленного оформления заказа используется последовательность:
1. `ask` - узнать доступные материалы и возможности сервиса.
2. `quote` - получить точные условия заказа без его выполнения.
3. `approve` - подтвердить предложение, привязав согласие к SHA-256-хешу условий.
4. `commit` - выполнить подтверждённое действие с ключом идемпотентности, защищающим от случайных повторов.
5. `status` - проверить состояние задачи и получить отчёт сервиса.
В основе обычные JSON и HTTPS. Никаких обязательных SDK, облачных посредников и внешних зависимостей.
Референсная реализация написана для Node.js 20+, есть независимый PHP-провайдер и дополнительный мост к MCP.
LATCH не заменяет MCP или A2A. Он решает более узкую задачу: разделяет получение предложения, подтверждение и выполнение действия.
Это особенно полезно для агентов, которые работают с заказами, платежными сценариями или другими операциями с последствиями.
Проект пока экспериментальный, версия протокола 0.1. Для продакшена потребуется самостоятельно обеспечить аутентификацию, авторизацию и надёжное хранение состояния.
Лицензия MIT.
GitHub: https://github.com/Balanov/latch