Idempotency в API — почему это важнее, чем кажется
Принято считать, что идемпотентность — это просто теоретическое свойство HTTP-методов.
Типа
На практике идемпотентность часто решает очень реальные прод-проблемы.
Что вообще означает idempotency
Идемпотентный запрос можно выполнить несколько раз подряд,
и результат будет тем же, что и после первого.
Пример:
Первый запрос удалит товар.
Второй запрос ничего не изменит.
Где начинаются реальные проблемы
Сеть не гарантирует, что запрос выполнится ровно один раз.
Иногда происходит так:
👉 клиент отправил запрос
👉 сервер его обработал
👉 ответ потерялся
👉 клиент повторил запрос
Если операция не идемпотентная, начинаются сюрпризы.
Классический пример:
Без защиты это может привести к:
👉 двойной оплате
👉 повторному созданию заказа
👉 дублированию записей
Как это обычно решают
Чаще всего используют idempotency key.
Клиент отправляет уникальный ключ вместе с запросом.
Сервер сохраняет этот ключ и результат операции.
Если тот же ключ приходит снова —
сервер просто возвращает предыдущий ответ.
Где это особенно важно
👉 платежи
👉 создание заказов
👉 бронирование
👉 webhook-обработчики
👉 любые retry-механизмы
Там, где дубликат операции может стоить денег.
Что важно понимать
Идемпотентность — это не только про HTTP-методы.
Это дизайн API.
Можно сделать идемпотентным даже
если контролировать повторные вызовы.
Главная мысль
Сеть ненадёжна.
Повторы запросов — это норма.
Если API не учитывает это,
рано или поздно появятся странные баги.
Принято считать, что идемпотентность — это просто теоретическое свойство HTTP-методов.
Типа
GET идемпотентный, POST нет — и на этом всё.На практике идемпотентность часто решает очень реальные прод-проблемы.
Что вообще означает idempotency
Идемпотентный запрос можно выполнить несколько раз подряд,
и результат будет тем же, что и после первого.
Пример:
DELETE /cart/item/42
Первый запрос удалит товар.
Второй запрос ничего не изменит.
Состояние системы остаётся тем же.
Где начинаются реальные проблемы
Сеть не гарантирует, что запрос выполнится ровно один раз.
Иногда происходит так:
👉 клиент отправил запрос
👉 сервер его обработал
👉 ответ потерялся
👉 клиент повторил запрос
Если операция не идемпотентная, начинаются сюрпризы.
Классический пример:
POST /payments
Без защиты это может привести к:
👉 двойной оплате
👉 повторному созданию заказа
👉 дублированию записей
Как это обычно решают
Чаще всего используют idempotency key.
Клиент отправляет уникальный ключ вместе с запросом.
POST /payments
Idempotency-Key: 9f7c1a
Сервер сохраняет этот ключ и результат операции.
Если тот же ключ приходит снова —
сервер просто возвращает предыдущий ответ.
Операция не выполняется второй раз.
Где это особенно важно
👉 платежи
👉 создание заказов
👉 бронирование
👉 webhook-обработчики
👉 любые retry-механизмы
Там, где дубликат операции может стоить денег.
Что важно понимать
Идемпотентность — это не только про HTTP-методы.
Это дизайн API.
Можно сделать идемпотентным даже
POST,если контролировать повторные вызовы.
Главная мысль
Сеть ненадёжна.
Повторы запросов — это норма.
Если API не учитывает это,
рано или поздно появятся странные баги.
И чаще всего они появляются
в самых дорогих местах системы.
❤7👍6
Forwarded from xCode Journal
Свежее исследование 4261 спеца подтвердило, что честность сегодня не кормит. Рынок сломан HR-фильтрами, и выживают на нем только накрутчики. Крутят все и всё:
— 66% опрошенных рисуют опыт. Мидлы делают это так же часто, как джуны, чтобы просто пробить стену из ATS-ботов;
— Без «подкрутки» цифр соискателей не зовут даже на скрининги, зато с нарисованным стажем люди залетают в бигтех и финтех на хорошие ЗП и успешно проходят испыталку;
— В 77% случаев работодатели вообще не вдупляют, что опыт фейковый. Служба безопасности ловит лишь 4%;
— Кандидаты массово используют нейросети для резюме, чтобы обмануть нейросети рекрутеров
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8😁2
Forwarded from xCode Journal
CEO Y Combinator выкатил свой сетап для Claude Code
Это целая виртуальная команда из 10+ ролей, которая живёт внутри CLI. Теперь мы живем в реальности, где один человек гоняет 5–10 агентов параллельно: они пишут код, тесты, сами находят баги и фиксят их. У самого Гарри получается до 10–20к строк кода в день при работе «параллельно с CEO».
По факту это превращает Claude в управляемый софтверный завод с ролями, процессами и гейтами.
✖️ xCode Journal
Это целая виртуальная команда из 10+ ролей, которая живёт внутри CLI. Теперь мы живем в реальности, где один человек гоняет 5–10 агентов параллельно: они пишут код, тесты, сами находят баги и фиксят их. У самого Гарри получается до 10–20к строк кода в день при работе «параллельно с CEO».
По факту это превращает Claude в управляемый софтверный завод с ролями, процессами и гейтами.
Please open Telegram to view this post
VIEW IN TELEGRAM
👎3🔥3
Forwarded from xCode Journal
В версии axios 1.14.1 подтянулась зависимость plain-crypto-js, которой раньше не было. Анализ показал, что это загрузчик вредоноса, скрытый с помощью обфускации.
На секундочку — axios ставят сотни миллионов раз в неделю, так что под удар могли попасть тысячи проектов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👎9❤2
Forwarded from xCode Journal
В ходе тестирования Claude Mythos Preview вышла за пределы изолированной среды, разработав «довольно сложную многоэтапную уязвимость» для получения доступа в интернет. После она уведомила исследователя об успехе письмом и выложила детали уязвимости на веб-сайты, хотя об этом ее никто не просил.
Но и это не всё: иногда модель понимала, что нарушает правила, и пыталась это скрыть.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁10❤1
Forwarded from xCode Journal
Скотт Чакон считает, что классический Git УСТАРЕЛ И плохо работает в мире, где код пишут не только люди, но и ИИ-агенты. Поэтому он создал пару лет назад GitButler и теперь выкатил CLI-версию. Главная его идея — более удобный интерфейс и отсутствие классического переключения между ветками + параллельная работа.
Вообще внутри много прикольных фич — сразу видно, что разрабатывал не новичок
Please open Telegram to view this post
VIEW IN TELEGRAM
🐳3👎2❤1👍1
CSP, CORS и security headers — что фронтендер обязан понимать глубже
Принято считать, что безопасность — это зона бэкенда.
Фронтенд «просто отправляет запросы и рендерит UI».
На практике фронтенд напрямую влияет на то,
будет приложение безопасным или нет.
CORS — это не про «разрешить запрос»
CORS часто воспринимают как настройку:
«чтобы запросы не падали из браузера».
Но по сути это механизм, который говорит:
кто имеет право читать ответ.
Важно понимать:
CORS — это про контроль доступа, а не про обход ошибок.
CSP — ваш последний рубеж
Content Security Policy — это защита от XSS,
даже если у вас уже есть уязвимость.
Пример:
Что это даёт:
Но есть нюанс.
Если CSP выглядит так:
Это не защита. Это иллюзия.
Security headers, которые реально важны
Где фронтендер влияет напрямую
Можно иметь идеальный бэкенд и сломать всё на уровне UI.
Частая ошибка
«Мы включили CSP — значит всё ок».
Но:
👉 нет nonce / hash
👉 разрешены любые источники
👉 подключены сторонние скрипты без контроля
В итоге защита есть только на бумаге.
Главная мысль
CSP, CORS и заголовки — это не чекбокс в настройках.
Это часть архитектуры.
Если фронтенд не понимает, как они работают,
безопасность становится случайностью.
Принято считать, что безопасность — это зона бэкенда.
Фронтенд «просто отправляет запросы и рендерит UI».
На практике фронтенд напрямую влияет на то,
будет приложение безопасным или нет.
CORS — это не про «разрешить запрос»
CORS часто воспринимают как настройку:
«чтобы запросы не падали из браузера».
Но по сути это механизм, который говорит:
кто имеет право читать ответ.
Важно понимать:
👉 сервер может обработать запрос
👉 но браузер может не дать прочитать ответ
Именно поэтому:
👉 Access-Control-Allow-Origin: * — не «фикс», а потенциальная дыра
👉 credentials + wildcard — запрещённая комбинация
CORS — это про контроль доступа, а не про обход ошибок.
CSP — ваш последний рубеж
Content Security Policy — это защита от XSS,
даже если у вас уже есть уязвимость.
Пример:
Content-Security-Policy: default-src 'self'; script-src 'self'Что это даёт:
👉 запрещает выполнение inline-скриптов
👉 блокирует загрузку скриптов с чужих доменов
👉 режет целый класс атак
Но есть нюанс.
Если CSP выглядит так:
script-src * 'unsafe-inline' 'unsafe-eval'Это не защита. Это иллюзия.
Security headers, которые реально важны
👉 X-Content-Type-Options: nosniff
Браузер не пытается угадать тип файла. Меньше атак через подмену.👉 X-Frame-Options / frame-ancestors
Защита от clickjacking.👉 Strict-Transport-Security (HSTS)
Принудительный HTTPS. Без вариантов.👉 Referrer-Policy
Контроль того, какие данные уходят при переходах.
Где фронтендер влияет напрямую
👉 какие скрипты подключаются
👉 есть ли inline JS
👉 используются ли eval-подобные вещи
👉 как работают сторонние виджеты
👉 как обрабатываются пользовательские данные
Можно иметь идеальный бэкенд и сломать всё на уровне UI.
Частая ошибка
«Мы включили CSP — значит всё ок».
Но:
👉 нет nonce / hash
👉 разрешены любые источники
👉 подключены сторонние скрипты без контроля
В итоге защита есть только на бумаге.
Главная мысль
CSP, CORS и заголовки — это не чекбокс в настройках.
Это часть архитектуры.
Если фронтенд не понимает, как они работают,
безопасность становится случайностью.
❤5👍2👎2
Forwarded from xCode Journal
Скилл из 4 инструкций, которые меняют поведение Claude Code. Благодаря им модель больше планирует, проверяет себя, пишет аккуратнее и меньше галлюцинирует. Автор вдохновился размышлениями отца вайбкодинга и формализовал его подход к работе с кодом и ИИ.
Чтобы вы понимали — репа набрала почти 40 тысяч звезд за пару дней.
Please open Telegram to view this post
VIEW IN TELEGRAM
Карпатый написал 4 инструкции для Claude Code. Репа набрала 40к звёзд за пару дней
Скилл из четырёх файлов меняет поведение модели: больше планирования, меньше галлюцинаций, аккуратнее код, чаще самопроверка. Андрей формализовал собственный подход к работе с агентами и выложил на GitHub.
Раньше работа с агентом выглядела так: «попросил в чате, получил код, скопировал».
Теперь рабочий цикл другой:
👉 SKILLS.md фиксирует повторяющиеся паттерны: как пишутся миграции, как оформляются ошибки, какие соглашения по логированию
👉 AGENTS.md лежит рядом с кодом и описывает архитектуру директории: что здесь живёт, что нельзя трогать
👉 MCP подключает агента к вики, БД, API-докам через стандартный протокол
За полгода узкое место сместилось с возможностей модели на навыки разработчика. Скиллов нужно освоить много: SPEC-разработка, контекст-инжиниринг, Plan Mode, AGENTS.md под каждую директорию, мультиагентные пайплайны. Собрать всё это в рабочую систему самому займёт примерно год экспериментов.
Команда Naition.ai научит этому за 12 недель на своем онлайн-буткемпе.
Преподают практики из Google, Yandex Cloud, Сбера. 15 живых вебинаров по 3 часа: теория, разбор кейса, практика на своём коде:
• настраиваешь ИИ-окружение под свой стек — RAG, MCP, агенты, контекст
• начинаешь быстрее делать фичи — от идеи до внедрения с ИИ на каждом этапе
• собираешь набор ИИ-агентов, которые берут на себя часть задач (бек, фронт, аналитика, DevOps)
• и много другое!
Записаться
Старт: 5 мая.
По промокоду WEUSEJS — скидка 20%.
Бонус для участников первых когорт: 3 месяца в закрытом клубе после обучения.
Записаться
Команда также собрала бесплатную дорожную карту из 40+ концептов со ссылками на источники. По сути оглавление того, что сейчас составляет базовую инженерную грамотность для работы с AI.
Забрать роадмеп по ссылке
Скилл из четырёх файлов меняет поведение модели: больше планирования, меньше галлюцинаций, аккуратнее код, чаще самопроверка. Андрей формализовал собственный подход к работе с агентами и выложил на GitHub.
Раньше работа с агентом выглядела так: «попросил в чате, получил код, скопировал».
Теперь рабочий цикл другой:
👉 SKILLS.md фиксирует повторяющиеся паттерны: как пишутся миграции, как оформляются ошибки, какие соглашения по логированию
👉 AGENTS.md лежит рядом с кодом и описывает архитектуру директории: что здесь живёт, что нельзя трогать
👉 MCP подключает агента к вики, БД, API-докам через стандартный протокол
За полгода узкое место сместилось с возможностей модели на навыки разработчика. Скиллов нужно освоить много: SPEC-разработка, контекст-инжиниринг, Plan Mode, AGENTS.md под каждую директорию, мультиагентные пайплайны. Собрать всё это в рабочую систему самому займёт примерно год экспериментов.
Команда Naition.ai научит этому за 12 недель на своем онлайн-буткемпе.
Преподают практики из Google, Yandex Cloud, Сбера. 15 живых вебинаров по 3 часа: теория, разбор кейса, практика на своём коде:
• настраиваешь ИИ-окружение под свой стек — RAG, MCP, агенты, контекст
• начинаешь быстрее делать фичи — от идеи до внедрения с ИИ на каждом этапе
• собираешь набор ИИ-агентов, которые берут на себя часть задач (бек, фронт, аналитика, DevOps)
• и много другое!
Записаться
Старт: 5 мая.
По промокоду WEUSEJS — скидка 20%.
Бонус для участников первых когорт: 3 месяца в закрытом клубе после обучения.
Записаться
Команда также собрала бесплатную дорожную карту из 40+ концептов со ссылками на источники. По сути оглавление того, что сейчас составляет базовую инженерную грамотность для работы с AI.
Забрать роадмеп по ссылке
👎11
Forwarded from xCode Journal
Сервис отбрасывает любой современный ресурс в эпоху Web 1.0: он вырезает из HTML все современные стили, скрипты, сжимает картинки, добавляет кислотный фон, гифки и прочее. Самое забавное — ссылки внутри тоже переписываются, так что погружение будет полноценным. И да, проект опенсорс.
«Я посмотрел на эти робкие попытки регуляторов и подумал: а зачем нам эти полумеры? Если интернет всё равно замедляют и ломают, почему бы не возглавить этот процесс и не деградировать с ветерком?»
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6❤3👎1
Forwarded from xCode Journal
Разработчик Митчелл Хашимото, создатель популярного эмулятора терминала Ghostty, переносит проект из-за проблем со стабильностью платформы.
«Я пользователь GitHub под номером 1299, присоединился в феврале 2008 года. Я заходил на GitHub почти каждый день в течение более 18 лет. Для меня никогда не было вопроса, куда размещать свои проекты: всегда GitHub. Мне очень грустно это говорить, но пришло время уходить», — пишет он.
Please open Telegram to view this post
VIEW IN TELEGRAM
👎3❤2
Forwarded from xCode Journal
Так говорит айтишник Disney. Дело в том, что компания Disney сделала для своих программистов «панель мониторинга внедрения ИИ» с лидербордом. Чем больше дней подряд ты используешь Cursor или Claude, тем больше у тебя ачивок.
Некоторые сотрудники говорят, что чувствуют давление «максимально использовать токены».
Please open Telegram to view this post
VIEW IN TELEGRAM
👎5
Изучаете программирование, или хотите стать классным айтишником с высокой ЗП?
Пока многие паникуют из-за бума ИИ, вы можете стремительно войти в сферу IT при помощи сборки "IT в деле" которую мы составили. Специально для вас разбили нашу сборку мини папки по конкретным тематикам:)
Что внутри сборки:
- Каналы о программировании и разработке: Python, CSS, HTML, Java и Swift
- GameDev и каналы о QA тестироварии, создание игр, помощь для ваших проектов и реальный опыт от тестировщиков💍
- Авторские каналы и вайбкодинг: IT & AI, простые заметки с проектов, работа с нейросетями, и как они реально влияют на индустрию 🔤
- Информационная безопасность: многое узнаете о работе хакеров и о том, как защитить себя в этом интернет-хаосе.🔫
Для каждого здесь что-то найдётся! Выберите интересные вам каналы или подпишитесь на всю сборку, и найдите то, что нужно вам для следующего шага в IT.
Пока многие паникуют из-за бума ИИ, вы можете стремительно войти в сферу IT при помощи сборки "IT в деле" которую мы составили. Специально для вас разбили нашу сборку мини папки по конкретным тематикам:)
Что внутри сборки:
- Каналы о программировании и разработке: Python, CSS, HTML, Java и Swift
- GameDev и каналы о QA тестироварии, создание игр, помощь для ваших проектов и реальный опыт от тестировщиков
- Авторские каналы и вайбкодинг: IT & AI, простые заметки с проектов, работа с нейросетями, и как они реально влияют на индустрию 🔤
- Информационная безопасность: многое узнаете о работе хакеров и о том, как защитить себя в этом интернет-хаосе.
Для каждого здесь что-то найдётся! Выберите интересные вам каналы или подпишитесь на всю сборку, и найдите то, что нужно вам для следующего шага в IT.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
Forwarded from xCode Journal
Запускаешь
npx autoskills, и он сканирует репозиторий: читает package.json и конфиги, определяет технологический стек и ставит нужные скиллы из проверенного списка. Короче, сильно экономит время на ручной настройке и поиске.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Меня недавно позвали в папку IT On и я согласился почти не раздумывая, потому что давно искал что-то похожее.
Там собраны люди, которые реально шарят в своей теме: разработчики, продакты, основатели стартапов, эксперты по карьере в tech. Каждый пишет про своё и в сумме получается полная картина индустрии.
Читаешь и чувствуешь что находишься внутри IT, а не наблюдаешь снаружи. Разница есть, проверено на себе.
Добавляй папку себе, советую!
Там собраны люди, которые реально шарят в своей теме: разработчики, продакты, основатели стартапов, эксперты по карьере в tech. Каждый пишет про своё и в сумме получается полная картина индустрии.
Читаешь и чувствуешь что находишься внутри IT, а не наблюдаешь снаружи. Разница есть, проверено на себе.
Добавляй папку себе, советую!