golang
B4 — обход DPI с веб-интерфейсом

B4 - инструмент обхода разноуровневых DPI на Go с удобной веб-мордой. Работает на уровне ядра Linux через NFQUEUE - перехватывает сетевые пакеты и применяет к ним техники обхода.Написан с нуля на Go - хех, это не очередной форк/обертка zapret или других существующих решений. Zapret - мощный CLI-инструмент с тонкой ручной настройкой. B4 - другой подход: веб-интерфейс, полная интеграция v2ray geodat-файлов и автоматический подбор стратегий и применение изменений на лету без перезапуска.Мне хотело…

  • четверг, 26 февраля 2026 г. в 00:00:22
golang
Паттерны конкурентности в Go. Подробный разбор. Часть 1. Worker pool

Здесь пойдет речь именно о простых примерах реализации паттернов, годных для начального понимания и использования на собеседованиях. Это будут не полноценные production-шаблоны, а схематичные примеры с подробным описанием - что и зачем.Worker poolВероятно, самый популярный паттерн на собеседованиях. Задача: Написать код, параллельно обрабатывающий некий массив входных данных фиксированным количеством "воркеров" и складывающий результаты в выходной массив.Часто можно встретить в статьях …

  • четверг, 26 февраля 2026 г. в 00:00:21
golang
Я два месяца платил 300к человеку, который тихо скармливал мои задачи в ChatGPT

У меня небольшая продуктовая команда, 12 человек, пилим B2B-логистику. Go, React, PostgreSQL, всё на кубере. Предметка скучная снаружи, но внутри — ад: у каждого перевозчика свой API, и каждый API как будто писали в пятницу вечером. У СДЭК поле tariff_code в одном эндпоинте строка, а в другом число, я до сих пор не понимаю почему, и никто там не понимает, я спрашивал.Ну и вот, осенью 2025-го у нас ушёл мидл. Типичная история — нашёл +80к в каком-то финтехе, ему там обещали «плоскую структуру и …

  • четверг, 26 февраля 2026 г. в 00:00:20
golang
glenv: синхронизируем .env файлы с GitLab CI/CD переменными без боли

Привет, Хабр!Если вы работаете с GitLab и у вас больше одного окружения — вы наверняка знаете этот ритуал: открываешь Settings → CI/CD → Variables, начинаешь вбивать переменные вручную, на пятой ошибаешься, на двадцатой теряешь счёт, на пятидесятой начинаешь сочувствовать тем, кто хранит секреты прямо в коде.Я написал glenv — CLI-инструмент на Go, который синхронизирует .env файлы с GitLab CI/CD переменными через API. Под катом — история о том, почему существующих решений не хватило, как это ус…

  • четверг, 26 февраля 2026 г. в 00:00:19
javascript
Забыть про Backprop: Как я собрал «Термодинамический Мозг» с фазой сна и митозом, который влезет в …

Мы (человечество) очень хотим создать разум. Инопланетян мы пока не нашли, поэтому пытаемся собрать его сами из кремния и электричества. Но то, куда свернула индустрия сегодня, вызывает вопросы. Мы греем планету мегаваттами энергии, перемножая гигантские матрицы в дата-центрах, чтобы обучить LLM. Backpropagation и современный инференс - это непозволительно дорого и энергозатратно.А что если вернуться к истокам? Что если интеллект — это не градиентный спуск, а кристаллизация связей под давлением…

  • четверг, 26 февраля 2026 г. в 00:00:16
javascript
Проблема ретроспективного внедрения интернационализации (i18n)

Одна из главных проблем i18n в приложениях заключается в том, что о ней вспоминают в последнюю очередь.Обычно мы разрабатываем продукт, проверяем соответствие рынку (Product-Market Fit) и только спустя месяцы или годы решаем: «Пора выходить на глобальный уровень».Сложность в том, что решения для i18n носят структурный характер и сильно влияют на работу команды. Куда эффективнее закладывать это в техническое задание с первого дня.Как же с этим справиться? Заморозить разработку на неделю и рефакт…

  • четверг, 26 февраля 2026 г. в 00:00:15
javascript
Перестаем бороться с компилятором TypeScript и начинаем писать безопасный и строго типизированный к…

Система типов в TypeScript может творить чудеса, но на практике многие используют ее едва ли на десять процентов. Признайтесь, мы все хотя бы раз лепили any просто чтобы компилятор отстал и дал собрать проект. Проблема в том, что такие компромиссы рано или поздно приводят к неожиданным падениям в рантайме.В этой небольшой статье мы разберем с вами несколько полезных практик, которые помогут писать более чистый код и будут реально отлавливать баги еще до того, как они попадут в продакшен.Просто …

  • четверг, 26 февраля 2026 г. в 00:00:13
javascript
Потрошим расширения VS Code: как XSS превращается в кражу ваших SSH-ключей

Многие привыкли считать, что VS Code — это просто текстовый редактор. Но «под капотом» у нас старый добрый Electron со всеми вытекающими. Если расширение имеет доступ к файловой системе, а вы открываете в нём кривой файл поздравляю, вы в зоне рискаЯ решил покопаться в безопаснности популярных расширений от самой Microsoft: SARIF Viewer и Live Preview. Спойлер: удалось найти обход защиты (CVE-2022-41042) и вытащить локальные файлы через... DNS-запросы.Webviews: Песочница, которая иногда протекае…

  • четверг, 26 февраля 2026 г. в 00:00:12
javascript
Как мы оптимизировали компоненты во фронтенде: работа с импортами и package.json

Привет, Хабр! Меня зовут Василий Беляев. Я руководитель группы разработки по направлению фронтенда в ИТ-компании «Криптонит». В этой статье хочу поделиться опытом и рассказать об оптимизации библиотек: о том, с какими проблемами мы столкнулись, и как их пошагово решили.Для начала кратко опишу фронтовый стек у нас в «Криптоните»: мы те ребята, которые не пишут на React. У нас все проекты и библиотеки написаны на Vue + Composition API. Из дополнительных инструментов мы используем следующие:Typesc…

  • четверг, 26 февраля 2026 г. в 00:00:11