Обновить
512K+

Веб-разработка *

Делаем веб лучше

413,33
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

HTTP получил метод QUERY: зачем понадобился безопасный запрос с телом

Время на прочтение16 мин
Охват и читатели4.6K

В июне 2026 года опубликован RFC 10008 — «The HTTP QUERY Method». Он добавил в HTTP новый стандартизованный метод QUERY, который также появился в реестре HTTP‑методов IANA: запрос с телом к конкретному адресу, который по смыслу остаётся чтением и не должен менять данные на сервере.

Метод нужен для давно знакомого случая: нужно передать сложные параметры поиска, фильтрации или отчёта, а по семантике это всё ещё безопасная операция чтения.

Обычный GET для таких запросов часто неудобен: параметры быстро превращаются в длинный URI или в собственный мини‑язык фильтрации внутри строки запроса. POST удобнее для передачи структуры, но передаёт не тот сигнал промежуточной инфраструктуре.

Приглашаю посмотреть, что там в RFC напридумывали, и чем нам это грозит — и чем поможет!

Что же это за зверь, QUERY?

Новости

Настройка AI-агентов для ускорения бизнес процессов компании

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели5.9K

Практический dev-story о том, почему AI-агент для реальной работы - это не чат с моделью, а система из задач, браузеров, проверок, журналов, ограничений и внешних интеграций. На примере публикационного пайплайна: сайты, CMS, соцсети, cron, browser sessions, anti-false-success, CRM, нейросеть, видео контент и SEO-грабли. От настройки до практического применения.

Читать далее

Народная карта наличия бензина: честно про цифры, архитектуру и как PostGIS прод положил

Время на прочтение6 мин
Охват и читатели8.4K

Коллеги всем привет, меня зовут Дмитрий Тыльный, я автор проекта gde‑benzin.ru
Народная карта наличия бензина на АЗС, где водители в реальном времени отмечают, на каких заправках сейчас есть топливо, где очередь, где скоро будет, а где уже все...

Сразу скажу про спорный момент. На волне топливного дефицита появилось сразу несколько похожих карт, и в комментариях других статей уже считают, «кто у кого скопипастил».

Мы с «гдебенз» запустились примерно в одно время, если я не путаю, зарегистрировал даже на день раньше домен, но к разработке приступил позже, по личным причинам).

Читать далее

Подвожу итоги: 3 млн рублей на моей детективной игре в Telegram

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели4.8K

Разбираю, как программист запустил детективную игру, где расследование проходит прямо в Telegram. За полгода он продал 1000+ копий и вывел проект на 3 млн рублей оборота, несмотря на жесткую конкуренцию с настольными играми, квизами и другими детективными развлечениями.

Читать далее

Виртуализация адаптивной Grid разметки

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели8.7K

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

С примерами работы на TypeScript, React, Vue и Angular можно ознакомиться на домашней странице проекта Layout Virtual.

Репозиторий с проектом тут.

Читать далее

Авторизация по протоколу OAuth 2.0 в интеграциях

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели7.8K

В интеграциях с внешними приложениями часто используется протокол OAuth 2.0. В этой статье разбирается практический сценарий: получение access_token, обновление токена, работа с ошибками и использование токена аккаунта для фоновых операций.

Статья будет полезна системным аналитикам и backend-разработчикам, которые проектируют интеграции с внешними API, используют OAuth 2.0 и хотят разобраться в практических сценариях — включая фоновые операции.

Читать далее

Как я заработала $1200+ за 2,5 месяца, выпустив AI-бота для практики английского

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели5.5K

Разбираю, как девушка без опыта в программировании запустила AI-бота для практики разговорного английского. И за 2,5 месяца заработала $1200, несмотря на высокую конкуренцию. 

Читать далее

DTO, schema, model, entity: почему в коде всё называется User

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели14K

Один User сначала кажется удобным: его можно принять в запросе, вернуть из API, сохранить в базу и передать дальше.
Но со временем такой класс смешивает разные границы и перестаёт защищать код.

Разбираю на Python-примерах, чем отличаются DTO, schema, model и entity — и когда отдельные классы действительно нужны.

Читать далее

Как вайбкодинг довел меня до депрессии, а потом привел к вайб‑инжинирингу

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели15K

Начнём с того, что по-настоящему «вайблю» я где-то с ноября 25 года. До этого моё общение с LLM строилось на копипасте в ChatGPT, DeepSeek, Gemini и обратно. Рука наловчилась, и я в целом не замечала, сколько времени это всё-таки сжирает. Казалось бы, лишнее действие.

Не сказать что я злоупотребляла общением, но когда ты начинаешь кодить, ты очень уверен в себе и думаешь, что всё делаешь правильно. А как только погружаешься в процесс, начинается это… синдром самозванца, выгорание и тревога. Не сочтите меня пессимистом, но всё так и было))

Пока я училась в университете, слава богу, ChatGPT был отсталой жабой, которая через раз выдавала код с ошибкой. Поэтому я морщила нос и старалась всё делать сама — и аминь, спасибо вселенной, что всё так и было. Иначе, мне кажется, сейчас я была бы не разработчиком, а унылым вайбером, который при слове «конструктор» или «указатели» просто представляет лего и какой-нибудь г. Санкт-Петербург.

А потом случилась революция. И моя компания решила не тормозить.

El pueblo unido jamás será vencido!

Point0 — фулстек TypeScript-фреймворк на Bun и React, о котором я мечтал

Уровень сложностиСредний
Время на прочтение92 мин
Охват и читатели6.9K

Хочу анонсировать свой фреймворк Point0. Это первый Bun FullStack фреймворк сопоставимый по функционалу с Next.js и TanStack Start. Однако, имеет кардинально другой DX, ради которого и был создан.

Мне всегда не нравились существующие фреймворки, особенно Next.js и Remix (React Router). Но я думал, что, видимо, по-другому фреймворки просто не получаются, поэтому и не делают. А громоздкость, чужие строгие соглашения, неповоротливость архитектуры, это просто необходимое зло, с которым я должен смириться.

В какой-то момент во мне накопилось критическое ощущение, что всё же должно быть совершенно по-другому. И я подумал, а напишу-ка я псевдокод на воображаемом фреймворке, который бы меня устраивал, вообще не взирая на возможность реализации. Просто буду писать проект, будто бы идеальный фреймворк существует.

И получилось так здорово, что я просто забыл обо всём на свете и 10 месяцев пилил реализацию этого фреймворка, а 3 месяца назад даже уволился с работы, чтобы уже скорее его добить. И вот добил, и хочу поделиться с вами.

Читать далее

Кастомизация Битрикс24 на платформе Вайбкод: создаём паспорт клиента

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели8.5K

Тестируем платформу Битрикс24 Вайбкод для создания полезных приложений в своём бизнес-портале с помощью ИИ-агентов.

Сегодня сделаем паспорт клиента: собираем в одном месте всё, что нужно знать о компаниях в нашем бизнес-портале: контакты, сделки, лиды и любые активности. Рассказываем по шагам свой опыт работы с платформой — что было просто, как строили работу, где ИИ ошибался и пришлось ли что-то исправлять вручную.

Читать далее

ГдеЗаправка: умный подбор + как нас за сутки посетило полмиллиона

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели14K

Год назад, в разгар топливного дефицита, я объехал три заправки подряд — и на всех был «сухой» АИ-95. Так появилась ГдеЗаправка — карта не расположения заправок, а их наличия: где прямо сейчас, по отметкам водителей, есть топливо. Недавно вышло большое обновление — и через сутки про него узнало столько народу, что наши серверы не выдержали. Рассказываю, что мы выкатили.

Карта: gdezapravka.ru

Читать далее

Flappy Bird: делаем игру сложнее и добавляем автопилот на чистой математике

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели13K

Начнём с предыстории. Когда я опубликовал первую статью про клон Flappy Bird, я хотел получить результат, который был бы мне приятен, но вместо этого получил всего понемногу. Можно сказать, сработал эффект Зейгарник, когда незавершённая задача создаёт когнитивное напряжение, которое буквально «заставляет» нас возвращаться к мыслям о ней. Вроде поучил физику, посмотрел, как лучше работать с рендерингом, узнал, почему птица стала такой популярной игрой, но один комментарий заставил задуматься, что на этом нельзя останавливаться и стоит сделать ещё что-то, пока эффект не пропал.

Читать далее

Ближайшие события

Микрофронтенды. Стабильная интеграция нескольких SPA-приложений. Часть 2

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели10K

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

Делимся веб-компонентами

Приложения у нас самодостаточные, так что друг о друге они не знают. Нам необходимо каким-то образом поделиться веб-компонентами. Есть два способа.

Читать далее

Pivot grid без сторонних библиотек: кэш, производительность и связанные гриды

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели6.5K

Расскажу, как и почему я в какой-то момент решил написать собственный pivot grid — без сторонних библиотек, на чистом JavaScript и DOM. И что из этого получилось: от первой версии с обычным GROUP BY до кэширования больших выборок и цепочки связанных гридов.

Читать далее

Микрофронтенды. Стабильная интеграция нескольких SPA-приложений. Часть 1

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели11K

Привет, Хабр! Меня зовут Александр, я руковожу веб-разработкой в InfoWatch. Мы занимаемся проектированием решений, которые обеспечивают информационную безопасность для разных компаний. 

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

Читать далее

Оптимизация без AI: как я автоматизировал API-ручки и типы

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели6.3K

На прошлой неделе я снова потратил полдня на то, чтобы понять, почему фронт падает после обновления бэка. Локально работало, а на стейдже ошибка. Оказалось, бэкендер переименовал поле в ответе, но не обновил документацию и не предупредил команду. Я узнал об этом только когда код упал на стейдже - вручную править ручку пришлось уже постфактум, разбираясь с ошибкой.

С этим надо было что-то делать.

Читать далее

Baseline: май 2026

Время на прочтение6 мин
Охват и читатели6.5K

Уже почти июнь подходит к концу, а я так и не выпустил эту статью. Исправляюсь.

Обзор на браузерные API, которые стали Widely available в мае 2026. Раз в месяц я буду вам напоминать, что вы уже можете использовать в проде.

Каждый месяц выходят новые CSS-свойства, HTML-атрибуты, JavaScript-методы и WebAPI, но применять в проде мы их конечно же не будем. 2.5 года назад также каждый месяц выходили новые фичи в браузере, а вот их уже пора начинать применять.

Узнать, что можно применять в проде

Кнопка «К началу ответа» для ChatGPT, Qwen, DeepSeek, Claude, Gemini, Grok и Perplexity: как я победил скролл и AI‑мысли

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели6.6K

Спойлер: коды готовы — вставьте и пользуйтесь.

Знаете, что меня расстраивало больше всего в чатах с нейросетями? Сидишь, читаешь длинный ответ в момент генерации. Дошёл до середины, понял, что упустил какую-то деталь в начале, крутишь скролл вверх. А бот в этот момент дописывает новый абзац, и весь текст уезжает обратно вниз.

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

Чтобы не дергать страницу туда-сюда, я набросал около 10 юзерскриптов для всех популярных чатов. Они вешают в углу экрана кнопку, которая телепортирует прямо к первой строчке именно последнего ответа. Заодно вычищают визуальный мусор, который разработчики добавляют в интерфейс без возможности отключения штатными методами.

Читать далее

Canvas или SVG для карты офиса: как мы выбрали и справились с неочевидными граблями

Время на прочтение4 мин
Охват и читатели5.9K

Если к вам придут с задачей внедрения интерактивной карты офиса, какой рендер вы выберете? Canvas или SVG? Верхнеуровневый обзор скажет, что Canvas хорош для частых перерисовок (географические карты, игры), а SVG — когда важна работа с отдельными элементами, которые естественным образом присутствуют в DOM.

Мы выбрали SVG.

В этой статье не будет глубокого анализа, это живая история о том, почему мы отказались от идеи использовать Canvas, как строили карту с нуля, какие инструменты использовали, как организовали связь между SVG-элементами и данными в БД, и как сделали админку, где карту могут менять дизайнеры без участия разработчиков.

Читать далее
1
23 ...