GyaanSetu WebDev

Frontend, backend and devops for the modern web.

460 articlesDeep, practical knowledge

MCP против API: Почему традиционные API не справляются с ИИ-агентами

MCP против API: Почему традиционные API не справляются с ИИ-агентами. Традиционные API не подходят для ИИ-агентов. Годами разработчики создавали веб-приложения, используя REST и GraphQL. Эти инструменты отлично работают для людей. ...

WebDev · 2 мин чтения

Аутентификация API: API-ключи vs JWT vs OAuth 2.0

Аутентификация API: API-ключи vs JWT vs OAuth 2.0. Однажды я выпустил API без аутентификации. Я думал, что это простой внутренний инструмент. Две недели спустя бот конкурента спарсил...

WebDev · 2 мин чтения

Агент может вести машину. Но маршрут всё равно должны знать вы.

Агент может вести машину. Но маршрут всё равно должны знать вы. Многие хотят передать репозиторий и цель ИИ-агенту и просто отойти в сторону. Они стремятся к полному делегированию. Это тр...

WebDev · 2 мин чтения

Ваш Rate Limiter — это не средство защиты

Ваш Rate Limiter — это не средство защиты. Бот за считанные минуты выкачал все данные по одному паспорту из моего API. Мой rate limiter не смог его остановить. Лимит составлял 3000 вызовов в месяц...

WebDev · 2 мин чтения

Как мы исправили некорректное отображение превью в блоге

Как мы исправили некорректное отображение превью в блоге. Я опубликовал ссылку на наш блог в X. Изображение превью отображалось неправильно. Вместо изображения к технической статье отображался рекламный баннер. Я проверил...

WebDev · 2 мин чтения

Почему в половине дома пропало электричество, хотя автоматы не выбило

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

WebDev · 2 мин чтения

Проверка ширины сломала кандзи

Проверка ширины сломала кандзи. Имя попало в терминальную таблицу и вышло поврежденным. Фамилия была 𠮷田. Первый символ — это не обычный 吉, а 𠮷 (U+20BB7). Это редкий...

WebDev · 2 мин чтения

What Solo Skydiving Taught Me About Web Design

What Solo Skydiving Taught Me About Web Design Solo skydiving looks like one big moment. You open the door. You jump. You fall. People see that part in photos. They do not see the…

WebDev · 2 мин чтения

Эпоха ИИ: Демократизация «башни из слоновой кости»

Эпоха ИИ: Демократизация «башни из слоновой кости». История показывает нам, что наука не всегда справедлива. Долгое время академический мир функционировал как закрытый клуб. Этот клуб часто иг...

WebDev · 2 мин чтения

Тестирование писем для восстановления OAuth без использования реальных почтовых ящиков

Тестирование писем для восстановления OAuth без использования реальных почтовых ящиков. Простой способ тестирования писем для восстановления OAuth создает риски безопасности. Многие команды отправляют ссылки для сброса пароля на один общий почтовый ящик...

WebDev · 2 мин чтения

How to Deploy NestJS on Namecheap Shared Hosting

How to Deploy NestJS on Namecheap Shared Hosting Deploying NestJS to Namecheap shared hosting is not like deploying a static site or a PHP app. You cannot just upload files and ex…

WebDev · 2 мин чтения

Программному обеспечению всегда не хватало «пищевой этикетки»

Программному обеспечению всегда не хватало «пищевой этикетки». 9 декабря 2021 года исследователь безопасности обнаружил уязвимость в Java-библиотеке Log4j. В течение 72 часов сотни миллионов си…

WebDev · 2 мин чтения

Your Agent Didn't Break Prod. Your Pipeline Did.

Your Agent Didn't Break Prod. Your Pipeline Did. Your agent did not break production. Your pipeline did. Many teams use agents to open pull requests. They use CI to check for lint…

WebDev · 2 мин чтения

Тестирование email-дайджестов на Node.js без лишнего шума во входящих

Тестирование email-дайджестов на Node.js без лишнего шума во входящих. Email-дайджесты создают проблемы, когда среды предварительного просмотра отправляют сводки на один общий почтовый ящик. Вы теряете понимание того, к чему относится сообщение...

WebDev · 2 мин чтения

Что определяет день?

Что определяет день? Программисты часто сосредотачиваются не на том, когда создают новые функции. Вы можете думать о данных бэкенда, дублировании кода или производительности. Эти вопросы м…

WebDev · 2 мин чтения

Тестирование процессов смены email в React без путаницы в ссылках

Тестирование процессов смены email в React без путаницы в ссылках. Смена email аккаунта кажется незначительной задачей, но на самом деле это основной источник ошибок при тестировании. Тестировщики часто путают подтверждения...

WebDev · 3 мин чтения

Мой CI/CD пайплайн работал без ошибок 3 месяца — а затем я прочитал логи

Мой CI/CD пайплайн работал без ошибок 3 месяца — а затем я прочитал логи. Зеленые галочки радуют глаз. Каждый pull request проходил успешно. Каждый деплой работал. Но затем пользователь сообщил о неработающей функции. Это...

WebDev · 2 мин чтения

Все методы оптимизации для достижения идеального показателя Lighthouse

Все методы оптимизации для достижения идеального показателя Lighthouse. Я постоянно запускаю Lighthouse на своем сайте. Он стабильно показывает 100 при каждом локальном запуске и 100 в показателе Vercel Real Experience Score. Эти ск...

WebDev · 2 мин чтения

Возможности против инструментов в агентном ИИ

Возможности против инструментов в агентном ИИ. Люди часто оценивают ИИ-агентов по количеству инструментов, которые они используют. Они спрашивают, может ли агент просматривать веб-страницы, запускать код или делать запросы к базе данных. Лог…

WebDev · 2 мин чтения

В HTTP впервые за 20 лет появился новый метод

В HTTP впервые за 20 лет появился новый метод. Скорее всего, вы уже сталкивались с этим. Вам нужно найти товары, но ваши фильтры поиска слишком велики для URL-адреса. Чтобы решить эту проблему, вы используете…

WebDev · 2 мин чтения

Почему одного ComboBox недостаточно

Почему одного ComboBox недостаточно. Вы создаете бизнес-приложения. Вы раз за разом решаете одни и те же задачи. Вы создаете поиск клиентов. Вы создаете поля автозаполнения для товаров. Вы создаете…

WebDev · 2 мин чтения