golang
Я написал 61 тест для AI-ментора. Потом выяснилось, что тестам тоже нельзя верить

Репетитора не нанимают по резюме. Ему дают тетрадь реального ученика и смотрят не на то, знает ли он ответ, а на то, где он остановится. Подскажет, в какой строке ошибка, или перепишет задачу за ученика? Скажет «не знаю, давай проверим» или уверенно додумает?Месяц назад я встроил в свою учебную платформу AI-ментора: он видит уроки, прогресс студента и его последнюю попытку по заданию. Чтобы не выбирать модель и не править промпт по ощущениям, я собрал стенд из автоматических проверок и начал пр…

  • воскресенье, 11 октября 2026 г. в 00:00:10
javascript
Зачем быстрая реактивность за пределами DOM: ответы на вопросы и знакомство с Raph

Привет, Хабр!В первой статье мы разобрали четыре способа хранить связи реактивного графа. Это связи между источниками данных и теми, кто от них зависит: например, между сигналом, вычислением и обработчиком обновления.Читать её перед этой статьёй необязательно, но для полного понимания сути нашего разговора рекомендую. Всем, кто задавал вопросы, - большое спасибо! Благодаря вам я решил сразу ответить на них в формате небольшого демо.Так что могу назвать этот текст ответами на вопросы и демонстра…

  • воскресенье, 11 октября 2026 г. в 00:00:07
javascript
Не хочу грузить свои документы в онлайн-сервисы. Поэтому сжимаю PDF прямо в браузере

Нужно было загрузить на сайт посольства пакет документов одним PDF – свидетельство о рождении, дипломы, справки. Лимит – 1 МБ. Первое, что предлагает любой поисковик, – онлайн-сервисы «сжать PDF бесплатно». Загрузить туда сканы всех своих документов разом? Нет, спасибо.Сжать PDF без загрузки на сервер: kompakt.xronocode.com/compressTL;DRОнлайн-компрессоры PDF почти всегда работают так: вы загружаете файл на чужой сервер. Что с ним происходит дальше – вы не знаете и проверить не можете.Для личны…

  • воскресенье, 11 октября 2026 г. в 00:00:06
javascript
«Грет британ блть»: сделал тренажёр английского со своими PDF, карточками и конечно же ИИ

Привет мальчики, сделал приложение для английского — Ebi_English. Внутри оно называется «Грет британ блть». Есть 18+ в интерфейсе.Что оно делает: открываешь свой английский текст, нажимаешь на незнакомое слово, смотришь перевод и сохраняешь в карточки. Потом повторяешь его здесь же. Ещё есть готовые колоды, грамматика, научные темы и чат с ИИ, если он тебе нужен.Главная идея простая: читать то, что тебе нужно, и собирать из этого материал для занятий, не таская каждое слово между несколькими пр…

  • воскресенье, 11 октября 2026 г. в 00:00:05
javascript
Чей номер и чей БИК: две офлайн-библиотеки на открытых реестрах Минцифры и ЦБ

Когда в форме нужно проверить ИНН, подсказать банк по БИК или показать оператора по номеру телефона, обычно подключают внешний API. Мне захотелось обойтись без него: все эти данные государство и так публикует открыто, и они достаточно маленькие, чтобы положить их прямо в npm-пакет. Так появились две библиотеки, которые работают без сети и обновляются сами. Это продолжение истории с cronsense и производственным календарём.Выглядит это так:import { lookup } from 'phoneoperator'; lookup(&…

  • воскресенье, 11 октября 2026 г. в 00:00:03
javascript
Почему O(1) не гарантирует высокую скорость: четыре структуры данных для графа signal – effect

Привет, Хабр!Меня зовут Егор Козельский. Я фулстек-разработчик, в основном занимаюсь backend-системами и производительностью графических приложений. В этой статье разберу один вопрос из устройства реактивных систем: как хранить связь между источником данных и её потребителем.Само понятие реактивности используется в очень широком списке самых разных систем: от игровых движков и графов зависимостей до систем с логикой подписок и фронтенда.Предполагаю, что сравнение реактивности игровых движков и …

  • суббота, 10 октября 2026 г. в 00:00:07
javascript
Я несколько месяцев изучал теорию категорий. Вот зачем она оказалась нужна мне как программисту

Несколько месяцев назад я зачем-то полез изучать теорию категорий. Причины были примерно те же, по которым нормальные люди иногда решают разобраться в квантовой механике по роликам на YouTube: звучит умно, выглядит загадочно, а главное – можно потом с важным лицом употреблять слово «эндофунктор» в компании людей, которые не могут проверить, несёшь ты ахинею или нет. В моём случае ситуацию усугубляла любовь к функциональному программированию, поэтому рано или поздно столкновение с теоркатом было…

  • суббота, 10 октября 2026 г. в 00:00:06
javascript
Обновления GigaIDE за сентябрь 2026

Как и в предыдущие месяцы, по итогам сентября мы решили рассказать про то, как изменилась GigaIDE за прошедший месяц. Ниже — краткий обзор обновлений Pro-функциональности GigaIDE, которую можно найти на нашем маркетплейсе.Как стать пользователем GigaIDE ProСейчас GigaIDE Pro доступна только для корпоративных потребителей. Чтобы получить дополнительную информацию, нужно оставить заявку на сайте.GigaIDE Pro станет доступна всем пользователям в этом году позже. Следите за новостями!Для Js/Ts-разра…

  • суббота, 10 октября 2026 г. в 00:00:04
javascript
Как мы научили JavaScript анализатор понимать поток управления

Недавно в статический анализатор PVS-Studio была добавлена поддержка JavaScript/TypeScript, и он на старте умеет искать ошибки, связанные с потоком управления. Причём тут граф потока управления, как мы его добавили и чем это полезно — читайте в этой статье.Граф потока управления?Я уже затрагивал эту тему, в частности, в моей серии про taint-анализ в Java, но кратко напомню. Исходный код, попадая в статический анализатор, преобразуется в абстрактное синтаксическое дерево (AST). Оно почти полност…

  • суббота, 10 октября 2026 г. в 00:00:04