Автор — инженер, а не писатель. Этот текст не о красивых словах, железках или коде, а о систематизации опыта, наблюдений и выводов, накопленных за годы работы в ИТ и управлении. Каждая мысль и каждая аксиома — результат бессонных ночей, совещаний и попыток исправить чужие ошибки.
Цель — передача опыта, способного упорядочить мышление управленцев, укрепить инженерную культуру и сформировать новое поколение ИТ-специалистов.
ИТ — это не только железки и код(т) . Это миллионы пользователей, чьи привычки формируются через решения конкретных руководителей. Каждый выбор стандартов, инструментов и подходов закладывает фундамент будущего — не только для отрасли, но и для общества.
Читать далееВ прошлом месяце я исследовал периодически возникающие всплески задержек в нашем сервисе отчётности и обнаружил нечто, заставившее меня не поверить своим глазам: 102 потока блокировалось одновременно, и все они ждали одной блокировки. Причиной этого оказалась одна строка кода, выглядевшая совершенно невинно.
Это история о том, как DatatypeFactory.newInstance() поставил на колени наш высокопроизводительный Java-сервис, и об удивительно простом решении, позволившем полностью избавиться от проблемы.
Читать далееВсем привет, с вами ваш писатель-программист и сегодня мы поговорим о такой штуке как "Архивация".
Представьте, что у вас есть таблица, в которой каждый день появляется 100 000 новых записей. Через год в ней будет 36 миллионов записей. MySQL начнет "тормозить" на сложных аналитических запросах, а удалять старые данные нельзя — они нужны для отчетности.
Решение есть! ClickHouse!
Читать далее(В статье описывается простой и безопасный способ поднятия собственного Matrix Synapse сервера с компонентами web интерфейса пользователя и видеосвязи на основе opensource скрипта. Статья состоит из 2-х частей, теоретической и практической. Если вы сразу понимаете о чем речь, чтобы сэкономить время можете сразу перейти к практической части.)
Matrix Synapse (эталонная реализация сервера) предлагает уровень безопасности, который многим коммерческим продуктам только снится. Сквозное шифрование (E2EE) на базе протоколов Olm и Megolm обеспечивает приватность не только один на один, но и в групповых чатах. При этом ключи шифрования хранятся только на ваших устройствах, а не на сервере. Даже если кто-то получит доступ к базе данных вашего Synapse, он увидит там лишь нечитаемый шум.
Федерация — киллер-фича протокола. Это работает как электронная почта: вы можете иметь адрес на matrix.my-company.ru и спокойно писать пользователю на matrix.org. Это создает глобальную сеть без единой точки отказа и единого цензора. Если один сервер или целый сегмент сети заблокируют, остальная сеть продолжит жить. Для бизнеса это означает возможность строить защищенные каналы связи с партнерами, сохраняя данные внутри своего контура сети.
Читать далееДобрый день!
Хочу привести пример небольшой оптимизации интерфейса (frontend) мобильного приложения, сделанного на 1С.
Разницу вы сами можете проверить, скачав приложение и переключив флаг в настройках «Оформление HTML».
Читать далееВ этой статье я изложил своё видение, что такое открытая автоматизированная система управления технологическими процессами (АСУ ТП), почему этой теме уделяется так много внимания со стороны промышленных заказчиков и ведущих мировых вендоров. Разобрал несколько наиболее распространенных критических аргументов от скептиков из профессионального сообщества.
Читать далееУ меня небольшой бюджет на AI-ассистент — $20 в месяц. Хватает, но только если понимаешь как работает тарификация. Я потратил время чтобы разобраться что именно ест токены, и написал framework который пытается решить эти проблемы. Расскажу про оба.
Читать далееПрохождение сложной Linux машины на платформе HackTheBox под названием Falafel. Предварительно нужно подключиться к площадке HackTheBox по VPN. Желательно использовать отдельную виртуальную машину. Разбираем SQLi (Boolean-based Blind), PHP Type Juggling Attack (Magic Hashes), Filename Truncation Attack to Upload a PHP Script.
Читать далееВкладки браузера разрастались до 5 ГБ. Причина — эффекты в реактивной системе, которые продолжали жить после удаления компонентов из DOM: подписки на сигналы не очищались, замыкания удерживали ссылки на мёртвые узлы, а каждый переход по SPA множил «призрачные» обновления. Разбираем, как иерархия parent-child эффектов, привязка к disconnectedCallback через effectSet и WeakRef полностью решили проблему — без ручного управления подписками
Читать далееГод назад я заменил RAG в продукте на «просто большой контекст» и на время действительно выиграл в простоте: стало меньше пайплайна и онколла, больше фич. Но прод быстро показал цену такого решения — хоть ответы звучали уверенно, доверия к ним не было. Статья о том, почему в 2026 году RAG возвращается в более взрослой форме и что именно приходится проектировать, чтобы знания оставались актуальными и проверяемыми.
Разобрать RAGУ меня в детстве была такой случай.
Дед выписывал много разных изданий, среди них были журналы «Вокруг света» и «Наука и жизнь». Мне было лет 6–7, дело было в начале 70х, я с удовольствием эти журналы листал. Непонятные статьи я пропускал, хотя всякие графики и схемы — завораживали, я их разглядывал с удовольствием и подолгу. Самое вкусное — в обоих журналах были развороты с короткими заметками, их я непременно читал, там и была история, которая меня тогда потрясла.
Читать далееПройти по темной квартире до туалета, а затем добежать до кровати и нырнуть под одеяло. Прийти на встречу с начальством. Впервые поцеловать человека, к которому испытываешь сильные чувства. Наш опыт извлечения страха и, что крайне важно, умение отпускать страх, строится вокруг одной группы клеток. Роль которых кардинально переигралась в новом исследовании.
Развеять страхиЯ не умею учиться на курсах. Серьёзно. Когда встала задача собрать портфолио, я пошла в поле: взяла документацию трёх продуктов, прошла путь пользователя, нашла проблемы, посчитала их цену в деньгах и спроектировала решения.
Что получилось:
Привет, Хабр!
Вопросы по HTML и CSS всё реже встречаются на собеседованиях для фронтендеров. Но в основном это касается позиций middle и выше. А вот для начинающих специалистов они всё ещё есть.
Поскольку новичкам всегда сложнее проходить собеседования, я захотел помочь. Я поискал вопросы с собеседований, которые были в 2025 году, и составил список наиболее часто встречающихся вопросов.
А главное, отвечать на них будет ChatGPT. Я же буду его дополнять, если потребуется. Многие же используют его для подготовки. Вот и посмотрим, как он справится.
Сразу скажу, что буду душнить. Так что вы сами рассудите, кто из нас лучше отвечает.
Давайте начнём!
Читать далееПривет, Хабр! Меня зовут Евгений и я ведущий разработчик отдела SAP разработки.
Большинству из нас рано или поздно приходится сталкиваться с задачами оптимизации ПО. Последние пару лет мне пришлось плотно поработать в этом направлении, и в итоге решил поделиться некоторыми своими наблюдениями\выводами.
Статья описывает общий подход к увеличению производительности ПО. Для новичков в подобном "развлечении", она позволит понять что делать и куда смотреть в первую очередь. Опытные разработчики, надеюсь найдут для себя что то полезное, или смогут упорядочить свои знания.
Интересно? Читайте статью под катом.
Читать далееЕсли вы разработчик и выбрали для своего проекта Django Framework, но не делали большие миграции на своем проекте, эти советы вам точно пригодятся.
Читать далееВсем привет!
Сегодня говорим про систему world state — она позволяет делать вариативность, запоминать решения игрока и делать реплики/ответы на основе флагов.
Если вам всё равно, сколько это стоит, дальше можно не читать.
Автор
Привет, Хабр! Я Олег Ассур, CTO SafeMobile. В праздники прочитал статью про MDM за 60 минут. Вспомнил, как выглядел наш продукт десять лет назад и решил рассказать, что вас ждёт после быстрого прототипа. В этом году нашему продукту исполнится 17 лет. За это время мы с командой съели не один пуд соли в мире MDM. Под катом поделимся, какие кактусы ждут вас на этом пути. Вошли и вышли. Приключение на 20 минут.
Спасибо команде Samsung, что приютили нашу статью у себя блоге и ничего в ней не изменили
Всех приветствую - меня зовут Худошин Илья (https://t.me/Official_Lays), я разработчик десктопных, серверных и веб приложений.
Хоть и в последнее время я не пишу решения на .net, но мне совсем недавно пришла одна интересная мысль как можно решить одну из самых распространенных проблем в разработке плагинов для Autodesk Revit и я решил попробовать реализовать это.
Читать далееВ прошлой статье мы разобрали механику событийного цикла asyncio.
В этот раз поговорим о задачах, объектах класса asyncio.Task (они же по‑простому «таски»). Тема важная, потому что по сути вся работа событийного цикла сводится к постоянному жонглированию задачами: запустить, приостановить, разбудить, завершить. Если понять, как устроена таска изнутри, изрядная доля магии asyncio (как и нелюбви к нему) исчезнет.
На десерт шок-контент: почему await далеко не всегда является точкой, где управление возвращается событийному циклу, чтобы он мог переключиться на другую задачу.
Погружаемся