Обновить

Разработка

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

Как использовать Clickhouse без боли

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров4.7K

ClickHouse — одна из самых популярных систем для анализа данных. По информации TheirStack, этот инструмент использует более 3 700 компаний по всему миру. 

У ClickHouse быстрая аналитика, эффективное сжатие и отличное масштабирование. Но у системы есть и недостатки — ограниченная поддержка UPDATE и DELETE, а также сложная миграция.

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

Читать далее

Как мы строим сеть RUTUBE

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров20K

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

В этой статье на примере эволюции сети RUTUBE разберём: с чего начинать ревизию legacy-сети; какие оптимизации помогут пережить резкий рост нагрузки и выиграть время для масштабного обновления; и наконец, что учесть при проектировании новой современной сети, подходящей для актуальных архитектурных подходов и стека технологий. 

Читать далее

Зачем я решил научить Statuser следить за DNS — и что из этого вышло

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

Мы привыкли считать, что если сервер доступен и SSL в порядке — значит, всё под контролем. Но иногда сбой происходит раньше, ещё до того, как запрос дошёл до сервера.

Меня зовут Михаил Шпаков, я создаю и развиваю сервис мониторинга Statuser.

Недавно я общался с руководителем IT-отдела одной компании, которая использует Statuser для мониторинга своих сервисов. Он поделился интересным кейсом: несколько часов подряд у них перестала отправляться почта с корпоративного домена. Сайт работал, сервер был доступен, SSL-сертификат в порядке — всё зелёное, а письма не уходят. Проблема выглядела случайной: часть писем доставлялась, часть возвращалась с ошибкой, а из-за этого срывались заказы и возникали прямые убытки.

Когда их команда начала разбираться, выяснилось, что недавно один из сотрудников сменил почтового провайдера и добавил новые MX-записи в DNS, но старые при этом не удалил. В результате часть писем уходила на старый сервер, который уже не принимал почту, а часть — на новый. Снаружи всё выглядело исправно, но на деле домен был «раздвоен» между двумя почтовыми системами.

После этого разговора я понял, что в Statuser не хватает отдельного типа мониторинга — контроля DNS-записей. HTTP, SSL и Ping могут быть зелёными, но если в DNS остались старые MX, сервис уже фактически неисправен.

Так в Statuser появился новый тип мониторинга — проверки DNS, который помогает замечать изменения, подмены и ошибки в зонах ещё до того, как они превращаются в простои и убытки.

Читать далее

Паттерны ООП, так не издевались даже… Структурные шаблоны с примерами на Java

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров15K

Привет! Меня зовут Бромбин Андрей. В этой статье разберём структурные паттерны ООП. Используя примеры на Java и простые метафоры, поймём природу шаблонов: как они работают, зачем нужны и чего требуют от нас взамен. Почему дизайн называют удачным при использовании паттернов по назначению, и почему так бывает не всегда.

Книг и статей о шаблонах проектирования, как песен о любви, потому что в разработке эта тема волнует каждого начинающего и не очень специалиста. Помните, как пели Чиж и Ко: «а не спеть ли мне песню о любви?» — давайте и я попробую.

Шаблонизироваться

Анализ смарт-контрактов на примере Solidity

Время на прочтение18 мин
Количество просмотров1.8K

Блокчейн-индустрия переживает период беспрецедентного роста, при этом общая стоимость заблокированных активов (Total Value Locked, TVL) в децентрализованных финансовых протоколах превышает 200 миллиардов долларов по состоянию на 2024 год. Вместе с ростом экосистемы растет и количество инцидентов безопасности, связанных с уязвимостями в смарт-контрактах. Согласно отчету Chainalysis, только в 2023 году потери от хакерских атак на DeFi-протоколы составили более 3.7 миллиардов долларов. История блокчейн-индустрии изобилует громкими случаями эксплуатации уязвимостей смарт-контрактов.

Я Радда Юрьева, работаю в команде AppSec и вместе с коллегами из отдела Web3 исследую вопросы безопасности смарт-контрактов. В этой статье хочу поделиться нашим опытом анализа уязвимостей Solidity-кода и рассказать, какие подходы помогают находить и предотвращать ошибки на ранних этапах разработки Solidity-контрактов.

Читать далее

Архитектура Netflix Tudum: от CQRS с Kafka к CQRS с RAW Hollow

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

Tudum.com — фан-портал Netflix с более чем 20 млн MAU, где скорость публикации и персонализации упирается в архитектуру. В статье — путь от «классического» CQRS с Kafka и read-store к узкому месту предпросмотров, а затем — к RAW Hollow: in-memory состоянию с сжатием и read-after-write на требовательных запросах. Разбираем, как отказ от Page Data/KV и I/O на горячем пути упростил контур чтения и дал прирост производительности, какие компромиссы это привнесло и почему такой подход срабатывает для контента, меняющегося не каждую секунду.

Читать далее

Чтобы сварить годный ISO, нужен всего лишь простой…

Время на прочтение8 мин
Количество просмотров2.5K

Прежде чем приступить к готовке настоящей Системы управления информационной безопасности (СУИБ) по ISO/IEC 27001:2022, важно осознать масштаб: у нас в хозяйстве Яндекс 360 множество сервисов с уникальным вкусом и историей, каждый из которых требует бережного подхода и особой организации защиты.

Стандартизация для нас — способ не «пересолить» сложность и хаос: и мы выбрали ISO как универсальное мерило баланса. Наш главный секрет: процессы изначально проектируются по стандарту ISO, а по мере расширения области действия сертификации новые сервисы — Диск, Мессенджер, Телемост, Календарь — поступают на общий дегустационный стол сертификации и достойно занимают своё место в большом ИБ‑меню.

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

Читать далее

Большое сравнение архитектур LLM

Уровень сложностиСложный
Время на прочтение33 мин
Количество просмотров15K

Это перевод классной статьи с детальным обзором архитектур главных опенсорсных LLM: очень структурировано, доходчиво и с изумительными картиночками. И такой обзор просто обязан быть на русском языке. Поговорим про DeepSeek V3/R1, OLMo 2, Gemma 3, Mistral Small 3.1, Llama 4, Qwen3, SmolLM3, Kimi K2, GPT-OSS, Grok 2.5, GLM-4.5, Qwen3-Next.

Ну а дальше слово автору:

Прошло семь лет с момента разработки оригинальной архитектуры GPT. На первый взгляд, оглядываясь назад на GPT-2 (2019) и вперед на DeepSeek-V3 и Llama 4 (2024-2025), можно удивиться тому, насколько структурно похожими остаются эти модели.

Однако я считаю, что все еще есть большая ценность в изучении структурных изменений самих архитектур, чтобы увидеть, чем занимаются разработчики LLM в 2025 году.

Читать далее

Розыгрыш стула, похищение прав: что нашел пентестер в пет-проекте

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров6.7K

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

Привет! Меня зовут Наташа Баранова, я младший специалист по анализу защищенности веб-приложений в Selectel. Под катом расскажу, как проводила пентест пет-проекта своего коллеги: я получала права админа, обнуляла голоса других пользователей, меняла цены, самовольно назначала победителя и подкручивала результаты голосований. И да — это все происходило в приложении, которое оказалось простым и удобным для пользователей, а уж для меня — почти праздник. Надеюсь, будет полезно и начинающим в ИБ, и разработчикам, которые хотят понять базовые ошибки безопасности.

Под кат →

Создание интерактивного макета. Упаковка кругов в квадрат и прямоугольник. Жадный алгоритм

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров1.1K

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

Читать далее

Битва за уникальный сайт: где искать редкие фото и картинки, которых нет у конкурентов

Время на прочтение10 мин
Количество просмотров1.5K

Любой сайт или блог оживает не только за счёт текста, но и благодаря картинкам. И чем качественнее и уместнее медиаконтент, тем более увлекательным и запоминающимся получается проект. Но создавать изображения с нуля или заказывать фотосъёмку не всегда есть возможность, поэтому часто используют фотостоки.

Shutterstock, Adobe Stock, Unsplash — знакомые названия? В этом и кроется ловушка: сервисы, призванные помочь, незаметно превращают уникальные бренды в близнецов! Ведь их знают и ваши конкуренты. В итоге — одни и те же улыбающиеся люди в костюмах, типовые ноутбуки на столе или «абсолютно идеальные» неживые офисы кочуют с сайта на сайт — от банков и онлайн-школ до стартапов и НКО.

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

Читать далее

В 40 лет в геймдев: от корпоративного архитектора к инди-разработчику

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

Привет, хабр!

Это моя первая статья, поэтому для начала представлюсь. Меня зовут Виктор, мне 40 лет, из которых почти 20 я на разных ролях участвую в разработке различного программного обеспечения для крупных корпораций (в основном финтех). Путь был долгий и тернистый, но сейчас я занимаю роль Системного архитектора и по совместительству Руководителя направления интеграции.

Я всегда любил игры, у меня даже был собственный канал с летсплеями и обзорами разных игр, который, к сожалению, не сыскал успеха. Несмотря на это, около двух лет назад я решил с ноги ворваться в мир геймдева. Ничто не предвещало беды, просто одним февральским вечером будто щелкнуло что-то в мозгу - ХОЧУ… ДЕЛАТЬ… ИГРЫ…

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

Читать далее

Рецензия на книгу «Паттерны коммуникации: руководство для ИТ-разработчиков и архитекторов»

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров3.2K

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

Читать далее

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

Почему мы отказываемся от serverless

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

Когда находишься на критическом пути API-аутентификации, важна каждая миллисекунда. Спустя два года борьбы с ограничениями serverless мы пересобрали весь наш стек API, добившись таким образом существенного снижения сквозных задержек.

Когда мы запускали наш API на Cloudflare Workers, они казались идеальным выбором для сервиса API-аутентификации. Глобальная периферийная инфраструктура, автоматическое масштабирование и оплата только за использование. Разве это не замечательно?

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

TL;DR:

Мы перешли с Cloudflare Workers на Go-серверы
Снизили задержки в шесть раз
Устранили сложные механизмы обхода кэшей и оверхед конвейеров данных
Упростили архитектуру, перейдя от распределённой системы к простому приложению
Обеспечили возможность самохостинга и платформонезависимость

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

Читать далее

Вышел браузер ChatGPT Atlas: тестируем нейропоиск и пробуем онлайн-покупки в агентском режиме

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

OpenAI выпустила браузер ChatGPT Atlas с интегрированными языковыми моделями. Приложение уже можно скачать на macOS, а позже появятся версии для Windows и мобильных платформ. В этой статье проверяем, что умеет очередной ИИ-браузер и пробуем заказать товар в онлайн-магазине с помощью агента.

Читать далее

Утилиты для кастомизации Windows

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

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

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

Список утилит, которые будут рассмотрены в данной статье: PowerToys, WinAero Tweaker, ExplorerPatcher, Rainmeter, TranslucentTB, EarTrumpet.

Кстати, если вам интересны IT-технологии и полезные инструменты, заглядывайте в мой Telegram-канал. Я регулярно публикую там свежие новости, лайфхаки и другие полезности. А сейчас — к сути статьи.

Читать далее

Что именно ИИ-чатботы делают «под капотом»

Время на прочтение10 мин
Количество просмотров3.6K

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

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

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

Читать далее

Выжимаем из Go скорость до последних наносекунд

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров16K

Будем оптимизировать программы на Go. Выжимать последние наносекунды, чтобы код приближался по скорости к Си или ассемблерному. Цель - скорость, чтобы процессор был загружен на 100% при высокопроизводительные вычислениях.

Читать далее

Миграции Postgres с использованием логической репликации

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

Миграция PostgreSQL — редкий проект, где «быстро и безболезненно» почти никогда не совпадают. Дамп/восстановление годится для сотен гигабайт, потоковая репликация по WAL — для тех, у кого есть к ней доступ. Но когда простоя не хочется, а WAL недоступен, остаётся третий путь — логическая репликация.

В этом материале — практический сценарий: как заранее перенести схему, обеспечить уникальную идентификацию строк (PK/уникальный индекс/REPLICA IDENTITY FULL), настроить публикации и подписки, следить за первичной загрузкой через pg_stat_subscription, корректно остановить запись на источнике и синхронизировать последовательности.

Старт миграции

Книга: «Математика и архитектура глубокого обучения»

Время на прочтение3 мин
Количество просмотров11K

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

Читать далее