31 марта 2026 года из npm source maps утёк исходный код Claude Code — CLI-агента от Anthropic. Буквально через часы на GitHub появился OpenClaude — форк, в который добавили OpenAI-совместимый провайдер. Суть: берёте весь инструментарий Claude Code (bash, чтение/запись файлов, grep, glob, MCP, агенты, задачи) и подключаете вместо Claude любую модель — GPT-4o, DeepSeek, Gemini, Llama через Ollama, или что угодно с OpenAI-совместимым API.Давайте разберёмся, что это на самом деле, как работает техн…
Привет, Хабр.Я продолжаю свою педагогическую вахту. В прошлый раз я рассказывал о том, как боролся с костылями в генераторе судоку, а сегодня хочу поднять тему, которая вызывает массу споров: искусственный интеллект.У меня сложилось стойкое ощущение, что среди моего окружения почти никто не умеет пользоваться этим инструментом правильно. Для большинства это либо волшебная кнопка, которая выдает мусор, либо шпаргалка, убивающая критическое мышление. Я решил показать детям другой путь, когда ИИ с…
Главная комнатаПривет, Хабр. Расскажу, как устроен мой сайд-проект — пиксельная аркада Прикольня, где у каждой компании друзей своя 3D-квартира с мебелью, аватарами и контентом на стенах. Под капотом — Next.js 16, Three.js через React Three Fiber, WebSocket-мультиплеер и PWA. Без единого .glTF файла — вся мебель процедурная.СтекСлойТехнологияФреймворкNext.js 16 (React 19, React Compiler)3DThree.js 0.183 + @react-three/fiber + dreiМультиплеерSocket.io (WebSocket transport)БДPostgreSQL + Drizzle …
В экосистеме JavaScript произошёл серьёзный инцидент, который хорошо показывает, насколько опасными стали атаки на open source и цепочки поставок. Исследователи StepSecurity сообщили о компрометации axios — одной из самых популярных HTTP-библиотек в npm (~83 миллионов загрузок в неделю). Злоумышленник получил доступ к аккаунту одного из ведущих мейнтейнеров проекта и опубликовал две вредоносные версии пакета: axios@1.14.1 и axios@0.30.4.На первый взгляд это выглядит как обычное обновление завис…
Замыкание это важный механизм JavaScript, понимание которого обязательно фронтендера. Он позволяет изящно реализовать принцип наименьшего раскрытия, благодаря инкапсулированию функций, сохраняя их состояние во внутренней области видимости, для последующего использования.Замыкания в лямбда-вычисленияхЗамыкания лежать в основе функционального программирования и даже в основе ООП. Изначально они были математической концепцией из области лямбда-вычислений, получившей воплощение во многих языка прог…
Привет! Я Никита, Staff-инженер в крупном финтехе. В этой статье я хочу поделиться нашим опытом построения системы observability. Мы прошли путь от простых логов до сквозной трассировки, и я покажу, как это работает на фронтенде.TL;DR: В статье разбираем опыт внедрения OpenTelemetry в крупном финтех-проекте. Проблема: Логи без контекста не позволяют быстро найти причину 500-й ошибки в распределенной системе. Решение: Сквозная трассировка (Distributed Tracing) от фронтенда до бэкенда. Что внутри…
Мне нравится писать тесты. Написание теста и последующее обновление кода для его прохождения — всегда увлекательный процесс.Но нет ничего хуже, чем выяснение того, что проверяют существующие тесты (раньше я сам часто был автором таких тестов).Представляю вашему вниманию мои советы по написанию высококачественных тестов для фронтенда.Некоторые примеры намеренно упрощены путем удаления специфичных для фронтенда частей для облегчения понимания. Эта статья посвящена тестированию фронтенда, но, чест…
Тот вечер я помню хорошо. Двадцать минут в звонке, пытаясь объяснить человеку как установить VPN. Через пару дней и этот способ тоже закрыли.Но это была не единственная боль. Простой звонок другу в Москву, переписка с клиентом, групповой чат с командой - всё превратилось в логистическую задачу. Один сидит без VPN, у другого он не работает, третий не может установить нужное приложение. Люди тратят время не на разговор, а на то чтобы вообще выйти на связь.А потом мой российский номер, к которому …
Знакома ли вам ситуация? Вы открываете файл контроллера на 2000 строк. Там перемешаны SQL-запросы, HTML-разметка, бизнес-логика и комментарии на ломаном английском. В голове начинает играть тревожная музыка, а внутренний голос шепчет: “Закрой это немедленно, пока оно не сломалось”.В психологии это называется “когнитивная перегрузка”. Мозг просто отказывается парсить такое количество переменных одновременно. Раньше программистам приходилось часами медитировать над распечатками кода, как сыщикам,…