Обновить
512K+
606,91
Рейтинг
187 236
Подписчики
Сначала показывать

Вы неправильно используете IDisposable: почему using не спасает, когда объект утекает в другой поток

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

using в C# выглядит как универсальная страховка от утечек ресурсов, пока объект живёт строго внутри одного метода. Но стоит вернуть его наружу, передать в фоновую задачу, положить в коллекцию или доверить DI‑контейнеру — и привычное правило начинает работать против вас.

В статье разберём типичные сценарии, где IDisposable превращается в источник нестабильных багов: закрытые раньше времени соединения, гонки с Task.Run, утечки обработчиков и тот самый HttpClient, который лучше не создавать на каждый запрос.

Читать далее

Пентест 2026: как войти в профессию

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

В пентест часто пытаются войти через список инструментов: выучить Burp, погонять Nmap, пройти пару лабораторий и ждать первой боевой задачи. В 2026 году такой вход всё хуже работает: часть рутины уже забирают AI‑ассистенты и автоматические сканеры, а от специалиста ждут понимания атакующей логики, бизнес‑рисков и умения проверять гипотезы руками.

Разбираемся, кому сегодня действительно стоит идти в пентест, какие направления растут быстрее всего и как учиться так, чтобы не конкурировать с автоматизацией за самые простые задачи.

Читать далее

Соглашения по именованию в Go: практическое руководство

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

В Go легко написать код, который компилируется, но раздражает при чтении: слишком длинные receiver’ы, странные имена пакетов, лишние повторы в вызовах, хаотичный регистр и utils, который постепенно превращается в свалку. Для начинающего Go-разработчика соглашения по именованию могут выглядеть как набор мелких вкусовых правил, хотя на практике они влияют на навигацию по проекту, читаемость API и стоимость будущего рефакторинга.

В статье разберем основные правила и идиомы именования в Go – от идентификаторов и пакетов до методов, интерфейсов и геттеров – с примерами удачных и неудачных решений.

Разобраться в Go

Как посчитать ROI AI‑проекта, а не нарисовать его в презентации

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

AI‑проекты часто выглядят убедительно на уровне демо: модель отвечает, интерфейс работает, в презентации уже стоит ROI и срок окупаемости. Проблемы начинаются позже — когда нужно доказать, что продукт действительно меняет бизнес‑процесс, экономит деньги или влияет на выручку.

В этой статье разберём, как считать ROI AI/ML‑проекта без самообмана: от baseline и полного TCO до adoption rate, value drivers и риск‑поправок, которые быстро превращают красивую экономику пилота в куда более приземлённую модель.

Читать далее

Как развернуть Spring Boot в Kubernetes за полчаса: туториал

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

Хотите увидеть, как живое Spring Boot‑приложение проходит путь от репозитория до кластера Kubernetes? В статье пройдем путь от создания простого HealthController до автоматического деплоя через CI/CD. Разберём Dockerfile без магии, манифесты Deployment с пробами, настройку ресурсов и изящный Graceful Shutdown. В финале вы получите живую связку «код — контейнер — кластер», готовую к продакшену.

Читать далее

Kubernetes: архитектура и абстракции — полный гайд

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

Почему Kubernetes стал стандартом оркестрации контейнеров? Разбираем архитектуру без скучной теории: Control Plane, поды, сервисы, деплойменты — на реальных примерах. Вы узнаете, как избежать типичных ошибок, увидите опыт миграции Tinder и получите лучшие практики, которые применяют ведущие команды. Статья для тех, кто хочет не просто знать команды kubectl, а понимать, как проектировать отказоустойчивые платформы

Читать далее

Паттерны событийно-ориентированной архитектуры в облачном банкинге: что работает, а что ломает систему

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

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

В статье разбираем, как EDA ведёт себя в облачном банкинге: где она действительно помогает развязать системы и упростить аудит, а где добавляет новую сложность — от outbox/inbox и идемпотентности до границ доменных и интеграционных событий.

Разобрать паттерны

Почему Python стал главным помощником Java‑команд

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

Python уже не просто язык для скриптов и Data Science — в 2026 году он стал «клеем», который связывает микросервисы, тесты и CI/CD в Java‑проектах. Как получилось, что даже консервативные Java‑разработчики всё чаще пишут интеграционные тесты на pytest, запускают контейнеры с Testcontainers и рулят пайплайнами в GitHub Actions с помощью Python‑скриптов?

В этой статье разбираем три реальные причины популярности Python. Если вы до сих пор считаете, что Python не для вас — возможно, это изменит ваш взгляд на инструменты.

Читать далее

63 бесплатных урока мая: от Go и Kubernetes до LLM, ClickHouse и AI-агентов

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

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

Это возможность посмотреть, как практикующие эксперты разбирают актуальные темы вроде Go, Kubernetes, LLM, ClickHouse, DevSecMLOps и AI-агентов, задать вопросы и понять, какие навыки стоит подтянуть дальше.

Выбрать урок

Вы неправильно используете clone() в Rust

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

clone() в Rust часто появляется в коде в тот момент, когда borrow checker снова «мешает просто дописать фичу». Компилятор успокаивается, задача закрывается, но в проекте постепенно накапливаются лишние копирования, аллокации и API, которые требуют владения там, где хватило бы ссылки. В статье разберём типичные места, где clone() используют как затычку: от Vec и String до замыканий, HashMap и многопоточного кода.

Читать далее

Эффект «галлюцинаций»: когда ИИ врет уверенным голосом

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

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

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

Читать далее

Circuit breaker на Go: пишем свой за 100 строк и разбираем, почему gobreaker работает иначе

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

Когда один зависимый сервис начинает отвечать медленнее, проблема быстро перестает быть локальной: горутины ждут, соединения заканчиваются, таймауты разъезжаются по всей цепочке. Circuit breaker помогает остановить этот каскад до того, как он положит соседние части системы. В статье разберем, как написать простой breaker на Go примерно за 100 строк, где у такой реализации границы применимости и почему production‑библиотека gobreaker устроена гибче.

Читать далее

Коллаборация человека и ИИ в Kotlin‑разработке: скрытые практики эффективных команд

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

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

Читать далее

WebAssembly как платформа расширений для Python: ускорение, встраивание и опасные ловушки API

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

WebAssembly можно использовать как способ расширять Python без нативной сборки под каждую платформу: упаковать Wasm-модуль внутрь библиотеки, запускать его через wasmtime-py и ускорять участки, где чистый Python уже не справляется. Но за удобной схемой быстро проявляются неочевидные детали: store, линейная память, знаковые указатели, ручное копирование данных и риск записать их совсем не туда.

В статье разберёмся, где Wasm действительно полезен для Python и почему работа с таким API требует особой аккуратности.

Читать разбор

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

Пять документов ломают ваш RAG: где реальная уязвимость и что с ней делать

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

RAG часто воспринимают как аккуратный способ «заземлить» LLM на документах и снизить риск галлюцинаций. Но у этой архитектуры есть менее очевидная проблема: контекст из базы знаний обычно считается доверенным, хотя именно через него в модель могут попасть вредоносные инструкции.

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

К рискам RAG

Архитектурные решения в backend: 5 практических приёмов, которые помогают держать баланс

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

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

Читать далее

Man pages, которыми хочется пользоваться: как сделать их удобными

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

Man-страницы часто остаются главным способом разобраться с CLI-инструментом, но в реальной работе быстро найти нужную опцию или пример бывает непросто. В статье разберем практичные приемы, которые делают такую документацию удобнее: сводки опций, группировка по сценариям, шпаргалки, примеры, таблицы и нормальная навигация в HTML-версиях. Всё на примерах Git, rsync, strace, curl, OpenBSD и GNU.

Перейти к статье

User Story: полный гайд по написанию без ошибок

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

Почему одни User Story работают как часы, а другие становятся источником бесконечных багов и ночных звонков? За годы работы в FinTech собрал коллекцию типичных ошибок, из‑за которых команды теряют драгоценное время. В статье — живые кейсы, наглядные диаграммы, разбор INVEST и практики Three Amigos, которые снижают число дефектов. Рассмотрим, как превратить сырую идею в зрелую User Story с чёткими критериями приёмки и нефункциональными требованиями.

Читать далее

Поговорим о планировании внедрения DevSecOps

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

DevSecOps по-прежнему часто сводят к подключению сканеров в CI/CD. Дальше сценарий предсказуем: пайплайн замедляется, отчёты копятся, команда теряет к ним интерес. Проблема обычно не в инструментах, а в том, что их внедряют поверх неизменённых процессов.

В статье — о том, как подойти к DevSecOps как к системному изменению: с чего начать, как выбрать пилот, какие цели ставить и где чаще всего всё идёт не так.

Разобраться в теме

Продакт vs маркетолог: где заканчивается одно и начинается другое

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

Продакт-менеджер строит продукт. Маркетолог привлекает трафик. А кто отвечает за то, чтобы первое встретилось со вторым и пользователь сказал «да, это то, что мне нужно»?

В статье разбираем три роли, которые часто путают даже опытные команды: продакт, маркетолог и Product Marketing Manager. Без воды и шаблонных фраз — только зоны ответственности, реальные метрики и примеры, где чаще всего ломается взаимодействие.

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

Информация

Сайт
otus.ru
Дата регистрации
Дата основания
Численность
101–200 человек
Местоположение
Россия
Представитель
OTUS