«Свой мини-мониторинг как сервис»: Python-демон, Next.js-дашборд и файловая архитектура без лишней инфраструктуры — как я сделал лёгкий self-hosted инструмент для наблюдения за маленькими проектами, который проверяет API, страницы, базы, очереди, TLS и Docker, пишет JSON-снапшоты, сам управляет процессами через встроенный supervisor, умеет следить за ресурсами, логами и сроком жизни сертификатов, собирает стримы производительности и при этом не требует ни базы данных, ни внешнего backend-сервера; просто ставишь рядом с приложением, настраиваешь конфиг, запускаешь демон и получаешь живой Next.js-дашборд, читающий отчёты.
Читать далееПривет, Хабр! Это вторая часть статьи о балансировке между провайдерами на Mikrotik. С первой части прошел год, за это время многое изменилось в жизни поэтому такая большая задержка.
В первой части мы разобрали как настроить этот самый мультиван но без самой балансировки.
И так у нас есть 3 настроенных провайдера (их может быть и больше), начинаем маркировать трафик.
Читать далееЖировую ткань можно использовать для восстановления костей. Учёные успешно использовали жировые клетки для восстановления позвоночника при компрессионных переломах. Это меняет подход к лечению переломов и повышает прочность костей при таких заболеваниях, как остеопороз.
Читать далееЯ хочу показать, почему распространённая фраза "не занимайтесь преждевременной оптимизацией" почти всегда используется неправильно, особенно в современных фронтенд-проектах. Я посмотрю на исторический контекст, разберу, что именно Кнут называл оптимизацией, и почему многие вещи, которые считаются "преждевременной оптимизацией", на деле — нормальная инженерная дисциплина.
Читать далееКонтекстное окно — главный ресурс AI-агента. Засорите его — и агент начнёт тупить. Рассказываю, как держать контекст чистым и выбирать уровень контроля под задачу. Практические советы после нескольких месяцев ежедневной работы с Claude Code.
/readКажется, что индустрия решила устроить прогрев перед новогодними подарками. Новые режимы, моды, скидки и даже сюрпризы от Кодзимы. Давайте же посмотрим, что интересного случилось в геймдеве за последние 7 дней. Кратко и по делу.
Читать далееПривет, Хабр! Сегодня расскажу вам сагу о том, как мы искали дешёвые AI-мощности для своего проекта и чуть не сошли с ума. Спойлер: спас нас Китай, но эта помощь стоила нам седых волос и нескольких лет жизни. Делюсь опытом, чтобы вы прошли этот путь быстрее.
Читать далееПривет, Хабр! Меня зовут Сергей Сорокин, я .NET-разработчик с 12-летним стажем. Занимаюсь бэкендом, архитектурой и высокими нагрузками.
Знаю, о чем вы подумали, прочитав заголовок: "О боже, еще одна ORM? В 2025 году? Зачем, если есть Dapper и EF Core?".
Я тоже так думал. Но когда ты работаешь в Enterprise-системах, где производительность критична, а база данных — это не просто хранилище, а мощный инструмент обработки данных, стандартные решения начинают показывать свои слабые места.
Сегодня я хочу рассказать о Visor — ORM, которую мы создали, чтобы превратить работу с базой данных в вызов типизированного API, убрать оверхед рефлексии и решить извечную боль с передачей списков (TVP) в SQL Server. А заодно показать, как Source Generators позволяют писать код, который работает быстрее, чем то, что вы пишете руками.
Читать далееСейчас репутация Singleton давно не та, что была ранее. В последние годы он признается антипаттерном, который следует избегать в новом коде, но что делать с legacy кодом? Ловить косые взгляды современников? В данной статье мы напишем плагин для поиска этого паттерна в коде на C++, разберем аспекты разработки плагина с помощью Clang API и протестируем плагин на реальных проектах.
Читать далееПредметом исследования являются полумодулярные схемы (далее ПМС), подкласс схем, не зависящих от скорости, определенных Д. Малером в 1961 году. Этот подкласс включает в себя последовательные схемы, обсуждаемые в статьях с очевидным названием, опубликованные здесь же.
Как и в случае последовательных схем ограничимся только автономными схемами, т.е.
такими, которые не имеют внешних входов и выходов, т.к. для ПМС это ограничение
обходится (в соответствии с известной теоремой Малера) размыканием провода,
соединяющего выход любого элемента схемы со входами остальных ее элементов.
Схемы описываются системами логических уравнений, задающих поведение каждого
элемента.
Если в некотором состоянии схемы значение выхода элемента соответствует значению
описывающей его логической функции из системы уравнений, то выход является
устойчивым, в противном случае - возбужденным. Возбужденный выход может стать
устойчивым двумя способами: либо изменив значение выхода через время, определяемое его физической задержкой, либо за счет изменения входного набора его логической функции при котором ее значение придет в соответствие с не изменившимся выходом элемента.
Помните, с каким звуком включалась windows XP, или же главную тему Звездных Войн, а может быть вам что‑то скажут строчки: «Э рон дон дон…» Если у вас потекла скупая слеза ностальгии и вы вспомнили те времена, когда с первых секунд услышали эти культовые мелодии, то присаживайтесь поудобнее, сегодня мы вспомним о прошлом!
Когда я занимался саунд дизайном и композицией в муз.училище, у меня был вопрос: почему определенная композиционная задумка и выбор инструментов вызывают конкретные эмоции. И вот спустя года руки дошли наконец разобраться в этом. А именно: почему саундтрек и звуковой дизайн игр становится культовым, как мы воспринимаем звуки и почему это достояние не только для геймеров?
Несколько раз в жизни мне случайно попадалась в руки гитара, и я начинал учить песни Стинга. Shape of my heart, Fragile — любимые с детства. Их я легко нашел на ютубе, подробные разборы, понятные для чайников — где какую страну зажимать и в каком порядке дергать.
А вот с Desert Rose возникли трудности — я не смог найти по ней внятный урок. Только примитивный набор аккордов типа Am, Dm, C. Но я нашел исполнение одной девушки, которое понравилось, и решил разобрать его. Сначала я просто смотрел на видео и повторял. Но дальше нескольких аккордов не получилось выучить — объем информации слишком большой. Я пытался в тетрадке делать записи, но тоже не осилил. Смотрел несколько приложений для составления табулатур и счел их крайне неудобными. Я пытался отказаться от записей и «вербализации», а двигаться на чувствах и интуиции — и тоже не смог
В итоге я сделал скриншоты всех перестановок руки (их получилось 75). И в редакторе изображений отметил перебор. Получилось такое:
Читать далееКогда стандартные инструменты диагностики бессильны, когда логи молчат, а проблема где‑то в сети, наступает время настоящей артиллерии. tcpdump — это не просто утилита для «прослушки» трафика. Это полноценная среда для глубокого анализа, декомпозиции и понимания того, как данные на самом деле путешествуют по проводам и эфиру.
Читать далееВ современном цифровом предприятии знания перестали быть статичными документами — они живут, развиваются и меняются вместе с системой.
Каждый сервис, процесс, интерфейс или поток данных является носителем смыслов, и все эти смыслы взаимосвязаны.
Чем сложнее организация, тем важнее становится способность сохранять и использовать знания в структурированном виде.
Читать далееЯ ненавижу пет-проекты.
Да, я НЕНАВИЖУ их всей своей душой. Ровно с тех пор, как получил свою первую фул-тайм работу разработчиком. Я ненавижу приходить с работы и вставать перед выбором - работать в рамках привычного мне фронтенда, которым я занимаюсь на моей “с 9 до 5” и от которого к концу рабочей недели уже тошнит.
…или с головой погружаться в новые технологии, медленно и мучительно прогрызаясь через них, прежде, чем у тебя получится сделать нечто чуть лучше условного Hello world. Если ты, конечно, не готов жертвовать сном, другими хобби или временем, проведенным с любимыми людьми.
По крайней мере, я так думал до одного забавного дня пару месяцев назад.
Читать далееВ общем здесь будет немного повествования о том, как я внедрил в свой инструмент функции генерации разного рода контента (карточки для маркетплейсов, обучающего материала, презентаций)
С вами снова Евгений. Если вы читали мои предыдущие посты, то знаете мой бэкграунд: я сотрудник компании из сферы СИЗ (спецодежда и средства защиты), который устал от рутины и решил автоматизировать бизнес с помощью Gemini. Я не умею программировать, не знаю синтаксис Python, но имею желании и потихоньку обучился искусству "вайбкодинга"
Ранее я уже рассказал о своем опыте подбора товара по своей базе и про автоматический парсинг с последующим исследованием данных (подбор товара по базам поставщиков/конкурентов и анализ цен).
Какие насущные рутинные (и не только) вопросы я хотел решить с максимально возможной автоматизацией:
1. Создание обучающего материала для вновь прибывшего сотрудника
2. Анализ текстовых данных (тут вопросы были разные и останавливаться подробно не буду. Возможно, это будет отдельная статья)
3. Генерация презентаций
4. Генерация визуального материала для сайта, каталога и прочего
5. И самое насущное СОЗДАНИЕ КАРТОЧЕК ДЛЯ МАРКЕТПЛЕЙСОВ
Под эти задачи было разработано несколько мини инструментов:
Генерация Текста и Документов (он же анализ)
Создание простого текста (или кода)
Создание презентации (PPTX)
Генерация Изображений (с помощью разных моделей nano banana, nano banana pro, imagen4)
Генерация карточек (nano banana pro)
Далее постараюсь подробнее описать, что и как.
Привет, Хабр! По многочисленным просьбам, сегодня мы изучим и испытаем долгожданную новинку — продвинутое зарядное устройство, пришедшее на смену снятому с производства Кулону 912.
Эти аппараты предназначаются для тех, кто любит самостоятельно настраивать параметры этапов заряда, сохранять и изучать графики напряжений и токов, а также использовать прибор в качестве многофункционального блока питания.
Также устройство снабжено функцией разрядной нагрузки для проведения контрольно-тренировочных циклов.
Читать далееПроиндексируем фото архив для поиска на человеческом языке простыми фразами. Фраза: «новогодний праздник» найдет все фото связанные с новым годом. В этом нам поможет Qwen3-VL и Qdrant.
Читать далееКогда программист пишет код, он редко задумывается о том, что происходит с программой после того, как он её написал. Но понимание этого процесса необходимо для эффективной отладки, оптимизации и написания надёжного кода. А ещё, это просто интересно.
Читать далее