Йоу! Это Дмитрий из UnderJS, давно не виделись. Наверное, вы уже заметили, что долгих 4 года у нас не было выпусков. А совсем недавно мне стукнуло 31, подумал и замотивировался снова заниматься выступлениями, подкастами и писать интересные мысли.
Я создал отдельный канал @zh_rust, где собираюсь писать про веб и системную разработку на Node/Rust. Подписывайся, чтобы не пропустить!
P. S. Уже 6 декабря иду записывать интересное интервью с классным гостем!
Я создал отдельный канал @zh_rust, где собираюсь писать про веб и системную разработку на Node/Rust. Подписывайся, чтобы не пропустить!
P. S. Уже 6 декабря иду записывать интересное интервью с классным гостем!
🔥10🌚6
Со вчерашнего дня в мире фронтенда жарко. Опубликовано CVE-2025-55182 с оценкой 10.0 и типом RCE (remote code execution) в react-server-*. Как любят говорить: React это всего лишь библиотека, но вот проекты на Next.js это реальность и уязвимость достается им в награду.
Воспроизводится легко, достаточно послать специально собранный HTTP запрос с JS кодом внутри, и он выполнится на сервере.
Ребята из Vercel уже подготовили патчи для 15/16 релизов:
15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 16.0.7.
Проблема в том, что нужно обновить крайне много веб приложений, что нереально сделать в короткие сроки. А эксплуатировать уязвимость крайне легко (см. скриншот).
Из хорошего, подключились облачные провайдеры и начали защищать на уровне файрволов через рулы WAF. Уже есть у Vercel, Google, Cloudflare, Fastly и других.
Если вы сидите на baremetal и не прикрыты файрволом, то бегом обновляться!
Голландский Rust-ист - канал о веб разработке
Воспроизводится легко, достаточно послать специально собранный HTTP запрос с JS кодом внутри, и он выполнится на сервере.
Ребята из Vercel уже подготовили патчи для 15/16 релизов:
15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, 16.0.7.
Проблема в том, что нужно обновить крайне много веб приложений, что нереально сделать в короткие сроки. А эксплуатировать уязвимость крайне легко (см. скриншот).
Из хорошего, подключились облачные провайдеры и начали защищать на уровне файрволов через рулы WAF. Уже есть у Vercel, Google, Cloudflare, Fastly и других.
Согласно анализу Wiz, уязвимые версии фреймворков React Server Components, Next.js и других до сих пор остаются в ~39 % облачных сред.
Если вы сидите на baremetal и не прикрыты файрволом, то бегом обновляться!
Голландский Rust-ист - канал о веб разработке
👍5🔥2
Тихо и без лишнего шума на прошлой неделе JetBrains сделал доступным новый продукт с кодовым названием Air из новой для них категории ADE (Agentic Development Editor).
Пока поддерживается только macOS и только Anthropic, что не удивительно, так как у ребят сейчас лучшая LLM на рынке для кодинга или аджентика.
Насколько я вижу, исходя из зависимостей, частично построено на Fleet, бывшем легковесном редакторе, который пытались продвинуть как легковесная замена их IDE продуктам, но пациент скорее уже мертв, чем жив.
Поигрался полчаса, и мнение простое: стильно, модно, вайбкожно, но ничего кардинально нового. Пока так же буду сидеть на Claude, запущенном в терминале RustRover.
Голландский Rust-ист - канал о веб разработке
Пока поддерживается только macOS и только Anthropic, что не удивительно, так как у ребят сейчас лучшая LLM на рынке для кодинга или аджентика.
Насколько я вижу, исходя из зависимостей, частично построено на Fleet, бывшем легковесном редакторе, который пытались продвинуть как легковесная замена их IDE продуктам, но пациент скорее уже мертв, чем жив.
Поигрался полчаса, и мнение простое: стильно, модно, вайбкожно, но ничего кардинально нового. Пока так же буду сидеть на Claude, запущенном в терминале RustRover.
Голландский Rust-ист - канал о веб разработке
👍4
Не прошло и пару недель, как Cloudflare столкнулся с новым серьёзным сбоем (5 декабря). Для понимания масштабов, порядка 20% мирового веб-трафика обслуживается ими. Они предоставляют CDN/DNS/DDoS protection/WAF и кучу всего.
Ни много ни мало, 25 минут даунтайма были вызваны ошибкой в коде LUA который использовался для WAF (Web Application Firewall) рулов как раз для защиты CVE-2025-55182 в React о которой я рассказывал чуть раньше.
Ребята детально описали причину падения в свое блоге (ошибка оставалась незамеченной многие годы), но мое внимание привлекло одно интересное предложение:
> This type of code error is prevented by languages with strong type systems. In our replacement for this code in our new FL2 proxy, which is written in Rust, the error did not occur.
Это звучит крайне забавно, если учесть, что прошлое их падение было вызвано тем, что ребята взорвались на unwrap(). В ближайшее время, запишу ролик с анализом их пред падения, на основе их блог поста.
Сложные, распределенные системы имеют свойство падать при любой технологии / команде, и это де факто норма. Не важно, из-за чего ты упал, а как быстро открыл/закрыл инцидент. 25 минут на все, или 22 минуты с того как сработал мониторинг - это достаточно быстро.
Процессы, опыт и экспертиза, это то что нарабатывается годами и текущий AI даже близко не может заменить или помочь с этим.
Голландский Rust-ист - канал о веб разработке
Ни много ни мало, 25 минут даунтайма были вызваны ошибкой в коде LUA который использовался для WAF (Web Application Firewall) рулов как раз для защиты CVE-2025-55182 в React о которой я рассказывал чуть раньше.
Ребята детально описали причину падения в свое блоге (ошибка оставалась незамеченной многие годы), но мое внимание привлекло одно интересное предложение:
> This type of code error is prevented by languages with strong type systems. In our replacement for this code in our new FL2 proxy, which is written in Rust, the error did not occur.
Это звучит крайне забавно, если учесть, что прошлое их падение было вызвано тем, что ребята взорвались на unwrap(). В ближайшее время, запишу ролик с анализом их пред падения, на основе их блог поста.
Сложные, распределенные системы имеют свойство падать при любой технологии / команде, и это де факто норма. Не важно, из-за чего ты упал, а как быстро открыл/закрыл инцидент. 25 минут на все, или 22 минуты с того как сработал мониторинг - это достаточно быстро.
Процессы, опыт и экспертиза, это то что нарабатывается годами и текущий AI даже близко не может заменить или помочь с этим.
Голландский Rust-ист - канал о веб разработке
Telegram
Голландский Rust-ист
Со вчерашнего дня в мире фронтенда жарко. Опубликовано CVE-2025-55182 с оценкой 10.0 и типом RCE (remote code execution) в react-server-*. Как любят говорить: React это всего лишь библиотека, но вот проекты на Next.js это реальность и уязвимость достается…
❤4😨2🔥1
Сегодня в Twitter заметил тред, где Jarred Sumner (автор Bun), подсвечивает проблему что в VSCode медленно работает copy/paste в терминал со скриншотом кода.
Логика там простая, весь контент вставки бьется на строчки по 50 символов и вставляет их последовательно с паузой в 5 ms. Естественно, это выглядит как нереальный говнокод.
Какая еще пауза при вставке? Набежала куча людей, естественно шуточки, приколы, все как мы любим. Но почему так сделано? Почему сразу не пишут все за раз?
Ответ крайне простой, такой код был написан, чтобы исправить проблему которая звучит как:
> The only pattern I can see is that the text gets cropped after 1018 characters
Переписали плохо, но чтобы работало. Но почему так?
Я не хочу грузить сложностями в пятницу вечером, а просто приведу мой подробный комментарий как я считаю почему вызывался такой баг.
Баг крайне сложный, вызванный из-за того что Node.js использует везде NON Blocking IO для STDOUT/STDERR/TTY.
Я тут хочу сказать об другом. На человека вывалился хейт, популярная персона подала это погано и на показ и люди начали критиковать это еще больше. Я уверен, что 99% людей кто написали плохие вещи, даже не догадываются в чем там проблема.
Иногда так бывает, что крайне сложно разобраться в проблеме, особенно на стыке когда это уже системное программирование, в котором не каждый человек селен.
Помните, код который вы пишите, не определяет вас, а определяет вас реакция. Человек пошел и начал чинить. 1-2 дня и проблему исправят.
Хороших выходных!
Голландский Rust-ист - канал о веб разработке
Логика там простая, весь контент вставки бьется на строчки по 50 символов и вставляет их последовательно с паузой в 5 ms. Естественно, это выглядит как нереальный говнокод.
Какая еще пауза при вставке? Набежала куча людей, естественно шуточки, приколы, все как мы любим. Но почему так сделано? Почему сразу не пишут все за раз?
Ответ крайне простой, такой код был написан, чтобы исправить проблему которая звучит как:
> The only pattern I can see is that the text gets cropped after 1018 characters
Переписали плохо, но чтобы работало. Но почему так?
Я не хочу грузить сложностями в пятницу вечером, а просто приведу мой подробный комментарий как я считаю почему вызывался такой баг.
Баг крайне сложный, вызванный из-за того что Node.js использует везде NON Blocking IO для STDOUT/STDERR/TTY.
Я тут хочу сказать об другом. На человека вывалился хейт, популярная персона подала это погано и на показ и люди начали критиковать это еще больше. Я уверен, что 99% людей кто написали плохие вещи, даже не догадываются в чем там проблема.
Иногда так бывает, что крайне сложно разобраться в проблеме, особенно на стыке когда это уже системное программирование, в котором не каждый человек селен.
Помните, код который вы пишите, не определяет вас, а определяет вас реакция. Человек пошел и начал чинить. 1-2 дня и проблему исправят.
Хороших выходных!
Голландский Rust-ист - канал о веб разработке
🔥8👍4❤1
На прошлой неделе был на подкасте от HolyJS - тяжелое утро.
(извиняюсь, не получилось сделать анонс заранее)
😉 YouTube 📺 VK Видео
В разные сезоны на HolyJS было два доклада, которые идеально дополняют друг друга:
— «Компилируем TypeScript» от Владимира Цышнатий
— «Разработка компилятора для TypeScript на TypeScript на базе LLVM» от Дмитрия Пацура
Должно быть крайне интересно для людей, которые любят технический хардкор и хотят задуматься «а как оно под капотом» или послушать рассуждения про разработку компиляторов.
Голландский Rust-ист - канал о веб разработке
#подкаст #видео #компиляторы #хардкор
(извиняюсь, не получилось сделать анонс заранее)
В разные сезоны на HolyJS было два доклада, которые идеально дополняют друг друга:
— «Компилируем TypeScript» от Владимира Цышнатий
— «Разработка компилятора для TypeScript на TypeScript на базе LLVM» от Дмитрия Пацура
Должно быть крайне интересно для людей, которые любят технический хардкор и хотят задуматься «а как оно под капотом» или послушать рассуждения про разработку компиляторов.
Голландский Rust-ист - канал о веб разработке
#подкаст #видео #компиляторы #хардкор
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Тяжелое утро HolyJS #118 с Дмитрием Пацура и Владимиром Цышнатий. Компиляция TypeScript: невошедшее
Подробнее о конференции HolyJS: https://jrg.su/EM4wwV
— —
— —
🔥5❤3👍1
На прошлой неделе Z.ai представили открытую модель GLM-4.7
Кто не знает, GLM это серия открытых мультимодальных моделей из китайской компании Zhipu. Модели, у них нереально клевые, местами выигрывают у Antropic, а местами недотягивают какие-то сущие копейки.
В новой версии:
SWE-bench Verified - 73.8% (+5.8%)
SWE-bench Multilingual - 66.7% (+12.9%)
Terminal Bench 2.0 - 41% (+16.5%)
Ключевое отличие GLM-4.7, это использование interleaved thinking (думает перед каждым действием), а в агентных сценариях сохраняет reasoning между ходами.
Если будет сохраняться такой же вектор развития по моделям из Китая, то в след году мы увидим перестановку на рынке. Я уже сравнивал GLM-4.6 с Opus 4.5 в claude code и был немного в шоке. Работало быстро, дешево и сопоставимые результаты. Я не заметил различий на глаз. Сейчас, я думаю, и не замечу вовсе.
Голландский Rust-ист - канал о веб разработке
#llm #ai #claude #zai
Кто не знает, GLM это серия открытых мультимодальных моделей из китайской компании Zhipu. Модели, у них нереально клевые, местами выигрывают у Antropic, а местами недотягивают какие-то сущие копейки.
В новой версии:
SWE-bench Verified - 73.8% (+5.8%)
SWE-bench Multilingual - 66.7% (+12.9%)
Terminal Bench 2.0 - 41% (+16.5%)
Ключевое отличие GLM-4.7, это использование interleaved thinking (думает перед каждым действием), а в агентных сценариях сохраняет reasoning между ходами.
Если будет сохраняться такой же вектор развития по моделям из Китая, то в след году мы увидим перестановку на рынке. Я уже сравнивал GLM-4.6 с Opus 4.5 в claude code и был немного в шоке. Работало быстро, дешево и сопоставимые результаты. Я не заметил различий на глаз. Сейчас, я думаю, и не замечу вовсе.
Голландский Rust-ист - канал о веб разработке
#llm #ai #claude #zai
👍2🔥1
Всех с наступившим 2026 годом 🎄У нас тут в Нидерландах, снег идет уже 5-й день подряд ❄️
С пятницы, 2 января, снег идёт почти по всей стране. Снег - это редкое событие тут и настоящий подарок для тех, кто его любит.
Но без последствий не обошлось:
- задержки в аэропорту Schiphol (только сегодня отменили 700+ рейсов, а в общем там более 3 тысяч уже)
- остановка поездов NS из-за проблем со стрелками, они залипли из-за большого количества снега
- серьёзные задержки автобусов из-за пробок
7 января объявлен оранжевый код от KNMI из-за снегопада и гололёда, даже школы сегодня закрыли.
Это моя третья зима тут и я тут такое впервые вижу) Собакен сегодня самый счастливый конечно :)
Голландский Rust-ист - канал о веб разработке
#нидерланды
С пятницы, 2 января, снег идёт почти по всей стране. Снег - это редкое событие тут и настоящий подарок для тех, кто его любит.
Но без последствий не обошлось:
- задержки в аэропорту Schiphol (только сегодня отменили 700+ рейсов, а в общем там более 3 тысяч уже)
- остановка поездов NS из-за проблем со стрелками, они залипли из-за большого количества снега
- серьёзные задержки автобусов из-за пробок
7 января объявлен оранжевый код от KNMI из-за снегопада и гололёда, даже школы сегодня закрыли.
Это моя третья зима тут и я тут такое впервые вижу) Собакен сегодня самый счастливый конечно :)
Голландский Rust-ист - канал о веб разработке
#нидерланды
❤7☃3🤗2
