В статье сравним REST, gRPC и GraphQL с точки зрения производительности, гибкости и архитектуры микросервисов. Покажем, как объединить GraphQL и gRPC для фронтенда и бэкенда, чтобы получить мощный API без лишнего трафика и задержек.
Читать далееПредставьте: без выгорания и переработок вести несколько проектов одновременно. Как в шторм на сапборде, скажете вы — мы ответим, что с правильными инструментами это возможно. Если устали захлебываться в рутине, эта статья для вас. 
Привет, Хабр, на связи команда ITSM 365. Наш клиент Михаил пытался вести вручную несколько проектов, допустил типичные ошибки и обратился к автоматизации. Его опыт показал, как система управления проектами помогает не срывать сроки и навести порядок в коммуникации. С согласия клиента делимся его историей.
Когда речь заходит о беспроводных сетях, злоумышленники часто сосредотачивают усилия на поиске брешей в механизмах аутентификации и на атаках на них: подобным способом они пытаются проникнуть в корпоративную сеть. На прошлой неделе мы рассказали, как устроен процесс аутентификации и какие протоколы для этого применяются. В зависимости от выбранного протокола используются определенные методы шифрования и проверки данных.
Так, у широко распространенного протокола WPA2 есть ряд известных уязвимостей. Среди них — подбор пароля по захваченному рукопожатию (handshake), восстановление ключа при слабом пароле (перехват PMKID), атаки на WPS (в том числе перебор PIN‑кода). В корпоративных сетях также возможны атаки на механизмы аутентификации, например downgrade‑атаки при использовании устаревших методов вроде EAP‑GTC.
Ни один протокол не идеален, и даже WPA3 не стал исключением. Хотя он действительно более безопасен, чем предшественники, исследователи обнаружили в нем уязвимости под общим названием Dragonblood. Например, одна из них позволяет провести атаку на точку доступа в режиме WPA3-Transition Mode. В этом режиме точка доступа поддерживает одновременно WPA2 и WPA3, что позволяет злоумышленнику понизить уровень безопасности до уровня WPA2 и обойти защиту. Дополнительно существует инструмент DragonShift, который автоматизирует процесс такой атаки, еще больше упрощая задачу хакеру.
Чтобы нагляднее показать, как распределяются атаки на беспроводные сети (в том числе на WPA2 и WPA3), можно условно выделить несколько категорий.
Читать далееПредставьте сделку: я даю вам готовую аудиторию из миллионов покупателей, беру на себя доставку, платежи, возвраты. Вам остается только поставить товар на полку. Звучит как мечта любого предпринимателя, правда?
Именно так выглядели маркетплейсы пять лет назад. И миллионы продавцов подписали эту сделку. Wildberries показал пятикратный рост, весь российский e-commerce утроился до 4,8 триллионов рублей. Все радовались.
Но через несколько лет предприниматели начали понимать, что подписали не партнерское соглашение, а долговую расписку.
В этой статье разберемся, почему продавцы начинают уходить с маркетплейсов, нужен ли вам собственный интернет-магазин, и если да — как его создать и привлечь туда покупателей.
Читать далееКорпоративный архитектор — это «демон Максвелла», и его задача — бороться со сложностью ИТ-ландшафта. У нас в Банке это добрый демон, оперирующий подходами Just Enough Enterprise Architecture (JEEA) и Lightweight Architecture Governance (LAG). Именно корпоративные ценности и культура в Банке делают демона добрым. Поверьте мне, ведь я один из них.
Привет, Хабр! Меня зовут Дмитрий Клецких. Я Chief Enterprise Architect в Райффайзен Банке. До этого много лет работал корпоративным архитектором в других компаниях: МКБ, СБЕР, Транснефть, Правительстве Москвы. Поговорим об изменениях ИТ-ландшафта, организационных и технологических трансформациях, о роли архитекторов и изменении этой роли с приходом ИИ.
Читать далееПривет, Хабр! Это Андрей Горностаев, руководитель агентства контекстной рекламы КонтекстЛаб. Весной 2022 года спрос на продукцию магазина раций стремительно вырос, но вскоре ситуация изменилась: на рынок вышли частные предприниматели, начавшие продавать дешёвые рации из Китая на маркетплейсах. В итоге компания с сертифицированной продукцией и надёжной репутацией попала в ситуацию “дикого рынка”. В этом кейсе расскажу, как побороть демпингующих конкурентов, найти прибыльную нишу в ассортименте, перестать соревноваться с дешевыми предложениями и грамотно настроить контекстную рекламу.
Читать далееПривет, Хаброжители! Использование ИИ-инструментов вродеCopilot и ChatGPT похоже на наем суперумного и быстрого джуниор-разработчика, который готов взяться за любую задачу – от исследования до рефакторинга. Работа с ИИ помогает писать код быстрее, улучшать качество приложений и даже реализовывать идеи, которые могли быть недоступными вашей команде. Эта книга покажет, как использовать ИИ с максимальной пользой.
В ней вы найдете подробное руководство по эффективному применению ИИ-инструментов в реальных проектах. Пройдете весь цикл разработки, включая использование ИИ на каждом этапе. Будете использовать ChatGPT и Copilot для генерации кода и идей, автодополнения и создания самодокументируемого приложения. Узнаете, как ИИ помогает тестировать и объяснять код.
Созвездия представляют собой скорее исторический и культурологический феномен, нежели могут являться объективной физической данностью. Не смотря на то, что разные народы в разные эпохи так или иначе занимались группировкой "неподвижных светил" в более или менее легко запоминающиеся схемы, это были разные фигуры — для одних и тех же звёзд. Существует мнение, что большинство народов каким-то странным образом — не взаимодействуя друг с другом, независимо друг от друга — собрали из звёздных россыпей примерно одинаковые фигуры, и даже назвали их похожим образом — это скорее миф. Одинаковые традиции в расчерчивании звёздной карты характерны для для тех народов и стран, которые активно общались между собой в античную эпоху — торговали, воевали, обменивались философскими и прикладными идеями. А те, которые не общались, видели на небе совсем не совпадающие образы.
Читать далееОднажды при работе с крупной кодовой базой одного фронтенд-приложения я заметил, что функционал постепенно группируется относительно команд (доменов). Каждая из таких групп функционала постепенно накладывает собственные ограничения на архитектуру. Как оказалось, обработка ошибок при сравнении кода двух разных команд неоднородна. В одном случае разработчики структурировали ошибки стандартным наследованием JS/TS, в другом были использованы перехваты возникающих ошибок и логирование.
Стало ясно, что нам требуется обобщить подход к тому, как мы структурируем (называем, наследуем) и выбрасываем ошибки. Как показала практика, соглашений о кодировании недостаточно.
Что мы хотели получить?
Читать далееSmileFace — игра, в которой нейросеть угадывает эмоции
Мы сделали интерактивный стенд: камера, смайлики и нейросеть, которая пытается распознать, что вы чувствуете. В статье — как это работает, с какими трудностями столкнулись и как запустить игру у себя.
Улыбнуться ИИС приходом в каждый дом технологического чуда под названием персональный компьютер мы привыкли, что каждый школьник может сочинять и записывать дома музыку, не обладая музыкальными инструментами и особыми знаниями. Некоторые даже умудряются делать из этого успешную карьеру.
Однако, уже в 1990-х годах создание музыки стало доступно не только обладателям «настоящих» ПК, но и пользователям куда более простых и узкоспециализированных компьютерных устройств. Речь про игровые приставки, они же консоли. Для них тоже существовали музыкальные редакторы, и за годы их накопился целый исторический пласт. Покопаемся!
Читать далееСнаружи финтех выглядит безупречно: есть подробная документация, надёжные провайдеры, а платёжные интеграции будто можно внедрять «на автопилоте». Но стоит заглянуть внутрь, и вы попадаете в «семь кругов финтеха», где любая мелочь превращается в драму, отнимающую выходные и нервы всей команды.
В этой статье разберем два эпизода из практики: от технических тонкостей до ситуаций на стыке бизнеса и разработки. Поговорим о том, почему слепое доверие документации часто оборачивается болью и как проактивный подход помогает компании сэкономить деньги, а разработчикам — сохранить нервы и сон.
Читать далееВсе считают 5-ю версию лучше, выше, сильнее. Но есть ли разница для обычного пользователя, который не мониторит бенчмарки и микроапдейты моделей, а просто приходит поболтать с ИИ?
Мы поставили эксперимент: сравнили 4о и 5 с точки зрения обывателя, который хочет изучить ML и пришёл за пошаговым планом обучения.
Спойлер: в конце всё равно решили подключить живого специалиста.
Читать далееСобеседование — один из самых важных и волнительных этапов для любого специалиста. Независимо от опыта, возраста или других индивидуальных особенностей, каждый из нас так или иначе переживает за результат, но всё же надеется успешно пройти все этапы интервью. Безусловно, самым серьёзным из них является технический блок. Именно здесь у интервьюера больше всего возможностей вас «помучить» :)
Особенно остро это ощущают специалисты из направления QA/SDET, ведь информации действительно очень много. Но не переживайте: SimbirSoft спешит на помощь!
Меня зовут Кирилл, я SDET-специалист в компании SimbirSoft. В этой статье я собрал список вопросов, на которые обязательно стоит обратить внимание при подготовке — как начинающим специалистам, так и закалённым «воинам» в области обеспечения качества — QA Manual, QA Automation и SDET — вне зависимости от грейда.
Читать далееНаследование — это механизм, который позволяет создавать новый класс (наследник или дочерний класс) на основе уже существующего (родителя или базового класса). Дочерний класс автоматически «забирает» все атрибуты и методы своего родителя. Ему не нужно определять их заново.
Проще говоря, вместо того чтобы говорить: «Гоблин — это что-то, у чего есть здоровье и атака. Дракон — это что-то, у чего есть здоровье и атака», мы говорим: «Сначала создадим общий шаблон "Враг" с базовыми характеристиками. А гоблин и дракон — это разновидности этого врага, которые наследуют всё от него и добавляют что-то своё».
Читать далееКогда GPT впервые научился вызывать внешние API, стало понятно: нас ждет эра agentic AI. Вчера «Яндекс» представил «Алису» с AI-агентами, которые могут записать вас к врачу, заказать товар и оплатить услугу.
Удобно? Безусловно. Но что, если агент ошибется — отправит деньги не туда, запишет к не тому врачу или сольет данные партнерам? Кто несет ответственность — разработчики, компания или сама «Алиса»?
Тот же вопрос встает и перед бизнесом. В корпоративной среде agentic AI действуют уже от лица компании. Они сами ставят задачи, создают тикеты, вносят изменения в CRM и принимают решения. Это шаг к самоуправляемой организации — и новая зона риска, где ошибка модели может стоить миллионы.
Меня зовут Сергей Спиренков, я евангелист в KODE и CEO собственных проектов. В статье расскажу, где агентные системы уже приносят пользу, а где превращаются из помощников в источник уязвимостей.
Читать далееПривет, Хабр! 
На связи Маргарита Сорочинская, технический писатель отдела архитектуры в Рунити. Хочу рассказать, как мы в компании подошли к описанию API в Swagger — и почему решили перенести туда всё, что раньше жило в Confluence. А еще поделюсь с вами стартерпаком для описания API в Swagger, пошаговой инструкцией и всеми ссылками, чтобы для вас этот путь был уже более простым :) 
Навигация по тексту:
Читать далееВ этой статье я сделал обзор основных векторных баз данных: Milvus, Qdrant, Weaviate, ChromaDB, pgvector, Redis, pgvectorscale, LanceDB, ClickHouse, Vespa, Marqo, ElasticSearch.
Если вы запутались в разнообразии векторных баз данных или хочется верхнеуровнево понимать как они устроены, чем отличаются и для чего вообще нужны, то эта статья будет очень полезна. Мы пошагово соберем все ожидания от векторных БД, посмотрим бенчмарки, а затем попробуем собрать все воедино.
Читать далееВсе знают о Leetcode — его можно любить, ненавидеть, презирать или даже бояться, но равнодушным точно не останется никто.
Эта статья — впечатления о моём 600-дневном марафоне на этой платформе, динамике моих скилов и ответе на главный вопрос «надо ли решать там задачи?».
Все было спокойно, пока мы с другом не заключили спор — сможем ли мы решить 100 задач до конца 2023 года? А это было 50 задач всего за 1 месяц — декабрь.
На одном из моковых собеседований мы услышали, что для прохождения алгоритмического этапа может хватить решения 50 задач на Литкоде.
Челлендж в 100 задач оказался достаточно легким — Новый год мы встречали уже с круглым числом выполненных задач в профиле. Так быстро мы решили не останавливаться — Покоренная вершина стимулировала покорить новую — 200 задач к началу лета (за 5 месяцев).
В конце челленджа в 200 задач мой друг принял решение сойти с дистанции — переизбыток алгоритмов в крови, голове и остальных частях тела вызывал у него дискомфорт и галлюцинации, поэтому в его профиле красуется круглое «200», а я же к этому времени только «разогрелся» и вошел во вкус.
24 февраля 2024 в течении недели Leetocde предлагал неплохие и не очень сложные задачи на дейли челлендже, и у меня случайно получился стрик в районе 10 дней подряд.
Сбивать стрик было как‑то жалко — это же целых 10 дней. Так и началась долгая история в 600 дней...
Читать далееПосле каждого критического бага в продакшене в голове, звучит одна и та же фраза: «Я мог бы сделать лучше». Эта установка съедает мотивацию и создает токсичную атмосферу. В этой статье я расскажу, как я заменил культуру вины на культуру работы с контекстом, почему «лени» не существует, а есть внутреннее сопротивление, и как лидеру создать среду, где команда не боится говорить о проблемах открыто.“
Читать далее