Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 45 min 6 sec ago

Telegram-бот вместо Excel-рутины: как я автоматизировал рутину с помощью Python

Sun, 03/08/2026 - 22:15

Как я заменил Excel-сводные на Telegram-бота и ускорил контроль потерь на складе

Я автоматизировал рутинный процесс, который постоянно отъедал время: сбор выгрузок, построение сводных в Excel, перенос результатов в Google Sheets и ручной контроль повторений. Теперь всё делается одной кнопкой в Telegram: бот берёт последний файл из папки на Яндекс.Диске, обрабатывает данные и выкладывает готовую витрину в Google Sheets. Отдельно он показывает товар, который начнёт списываться в ближайшие 24 часа — это стало не просто ускорением, а новым инструментом управления потерями.

Как всё было?

Biohazard! Инфекции из игр в реальной жизни

Sun, 03/08/2026 - 21:37

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

C вами Аскар из Plati.market, и давайте вспомним самые известные игровые патогены, заболевания и эпидемии. Проведём параллели с существующими на самом деле микробами. Разберёмся, могут ли действительно наши земные бактерии и вирусы стать субстратом для превращения людей в зомби и вызвать другие катастрофические последствия. Рассмотрим, чего им для этого не хватает. А, может быть, и убедимся, что в чём-то они даже превосходят своих фантастических «коллег».

Читать далее

Asset Catalog – скрытый bottleneck сборки iOS. Разбираемся, как распараллелить компиляцию Asset’ов

Sun, 03/08/2026 - 21:16

2026 год. У вас 8–16 ядер в ноутбуке. M-чипы летают.

Swift компилируется параллельно.

Вы нажимаете ⌘B – и одно ядро уныло крутится на 100% загрузки, пока остальные отдыхают.

Добро пожаловать в мир однопоточной компиляции Asset Catalog’а.

В этой статье я покажу, почему Asset Catalog тормозит сборку и как заставить Xcode использовать больше ядер CPU. Пошагово и с примерами.

Читать далее

Расширение вариантов применения теоремы Котельникова в современных телекоммуникациях

Sun, 03/08/2026 - 21:12

Для передачи аналоговых сигналов по цифровым каналам связи необходимо провести их дискретизацию, для чего необходимо выбрать частоту дискретизации. В большинстве случаев стоит задача минимизации потерь информации при дискретизации и для достижения этого используется теорема Котельникова (теорема отсчетов, теорема Найквиста-Шеннона). Наличие нескольких названий у теоремы объясняется тем, что Котельников в 1933 году опубликовал статью с доказательством теоремы в сборнике трудов конференции, посвященной 15-летию РККА (Рабоче-Крестьянской Красной Армии). Естественно, что этот сборник не был издан за границей и теорема Найквиста-Шеннона появилась через несколько лет совершенно независимо.

В общем случае дискретизация состоит в замене непрерывного сигнала  набором дискретных значений, которые могут быть представлены как  результат свертки сигнала x(t) с весовой функцией φ(t). В идеальном случае, когда  в  качестве  функции φ(t) используется δ-функция, результатом дискретизации являются мгновенные значения входного сигнала, используемые в теореме Котельникова. Дискретизация изменяющихся во времени сигналов при φ(t)δ(t)  приводит к появлению динамической погрешности.

Грубую оценку характера зависимости динамической погрешности от вида весовой функции и параметров сигнала можно получить следующим образом. Длительность весовой функции φ(t) τφ связана с таким параметром устройства дискретизации, как апертурный сдвиг, или систематическая составляющая времени задержки отсчета, а неопределенность этой длительности Δτφ  – с апертурным временем ta. Характер  изменения сигнала во времени удобно оценивать с помощью корреляционной функции B(t), определяемой, в свою очередь, по амплитудному спектру и не зависящей от формы сигнала. Воспользуемся для сопоставления с длительностью весовой функции τφ интервалом корреляции τк:

Читать далее

Когда выгорает руководитель разработки: 4 управленческих анти-паттерна и быстрый ремонт системы

Sun, 03/08/2026 - 20:46

Когда выгорает разработчик — это баги в коде и сорванные дедлайны. Когда выгорает тот, кто создал эту команду — это тихая катастрофа, о которой не принято писать в соцсетях. Мы привыкли «держать лицо», быть для всех наставниками и громоотводами, забывая, что под этой броней — живой человек, который тоже может сломаться.

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

Читать далее

[Перевод] Дата-центры на орбите. 5 камней преткновения, почему в космосе ничего не получится

Sun, 03/08/2026 - 20:31

2026 год. Нейросети окончательно вошли в раж. Они пишут код, озвучивают ролики и требуют за это электричество и воду.

В какой-то момент кто-то гениальный (или просто отчаявшийся) предложил: “А давайте отправим всё это железо в космос? Там же места полно, энергии – залейся, и никому не мешаем!” Звучит как идеальный план. Илоны Маски мира уже потирают руки и рисуют чертежи мегасозвездий из миллионов спутников. Но есть одно “но”.

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

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

Читать далее

3d в MonoGame, python в c# или всё таки KNI в браузере? трёхслойная постирония о том, как я игру делал

Sun, 03/08/2026 - 20:18

Всем привет. В ходе этого материала вы узнаете:

1. Как сделать простой рендер на c# в MonoGame

2. Что использовать, чтобы вызвать python из c#

3. Почему пункт 2 - это плохая идея

4. Как MonoGame игру сбилдить в web/html с помощью его форка KNI

Пристёгивайтесь, будет весело!

ПРИСТЕГНУТЬСЯ!

Инвалидация nginx кэша

Sun, 03/08/2026 - 20:15

Высоконагруженная система. Несколько миллионов страниц. Много сервисов, много данных. Имеются кэши разного уровня. Возникла идея сделать полный html кэш страницы. Достаем с полки nginx, ставим перед системой, включаем кэширование запросов. Работает. Но как быть, если данные изменяются? Надо сбрасывать кэш.

Читать далее

CryptoBuddy или как мы с другом решили сделать переписку секьюрной

Sun, 03/08/2026 - 19:45

Всем привет! Моя первая статья тут, просьба строго не судить :-)

Предыстория

Когда-то давным-давно, в прошлом десятилетии, я учился в одном техническом университете по специальности "информационная безопасность автоматизированных систем" и один из предметов, который меня заинтересовал, был криптография. В то время для меня это был какой-то вид магии, сверхспособность - возможность передавать информацию так, чтобы ее понял только тот, кому она предназначалась. Однако после учебы, столкнувшись на практике с данной областью ИБ, романтика ушла на второй план, и осталось практическое понимание необходимости использования криптографии для обмена "конфиденциальной" информацией. Там, на месте работы (одна большая государственная организация), где использовал криптографию в практическом аспекте, и познакомился со своим другом. Почти 9 лет прошло)

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

Поэтому в определенный момент решил реализовать это на практике, создав небольшого локального помощника в данном вопросе.

Читать далее

Категории типов. Часть 5½. Сопряжения из монады

Sun, 03/08/2026 - 19:22

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

Читать далее

Вакансия мечты? Как меня взяли QA и уволили через несколько часов

Sun, 03/08/2026 - 19:15

Попасть в IT с нуля — уже не квест, а марафон с постоянно меняющимися правилами. Отклики, тестовые задания, скрининги, технические интервью, финальные этапы.

И в какой-то момент начинает казаться, что оффер — это долгожданный финиш.

Но что, если финиша нет?

Представьте: оффер согласован. Первый рабочий день. Вас поздравляют, говорят, как рады новому члену команды. Вы получаете корпоративные доступы, вас добавляют во все чаты, знакомят с коллегами.

Проходит четыре часа.

Звонок.

Вы уволены. Без объяснения причин.

Это не гипотетический сценарий. Это то, что произошло со мной.

Читать далее

[Перевод] Технологические основы сайтов Wikimedia

Sun, 03/08/2026 - 19:13

Наш обзор посвящён сайтам фонда Wikimedia — Википедия, Викисклад, Викиновости, Викитека и многим другим. Он расскажет, как построена технологическая работа этих сайтов, как работает движок этих сайтов и как развивается общественная жизнь вокруг этих сайтов.

Читать далее

Архитектура ИИ‑агентов

Sun, 03/08/2026 - 18:51

Всем привет! Продолжаю делиться опытом построения ИИ-агентов. За последние полгода собрал несколько кейсов на мой взгляд интерсеных чтобы рассказать о них.

Но каждый раз натыкался на один вопрос: а мне здесь вообще агент нужен, или хватит обычного воркфлоу? Слово «агент» за последний год прилепили ко всему подряд от Telegram-ботов до Excel-плагинов. А разница между пайплайном и настоящим агентом огромная. И по возможностям, и по стоимости, и по головной боли при отладке.

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

Это первая часть из двух:

Читать далее

Как я строю адаптивную модель управления отоплением на ESP32

Sun, 03/08/2026 - 18:50

4 дня логов из Telegram, 29 погодных параметров, куча ложных корреляций — и одна формула в конце. Как я с помощью Claude Opus разобрался, почему котёл работает неэффективно, и что с этим делать.

Читать далее

Почему ваш SSD тихо теряет данные пока он лежит на полке

Sun, 03/08/2026 - 18:43

У меня есть привычка, которую я не очень люблю: складывать старые накопители в коробку из-под обуви на балконе. Когда кладу, думаю «ну ладно, потом разберусь». На одном фотки из поездки, на другом какие-то рабочие черновики, на третьем вообще непонятно что, но выкинуть жалко, вдруг пригодится.

Так вот, «потом» наступило примерно через тринадцать месяцев. Взял оттуда повидавший жизнь SSD (какой-то ноунейм с алика, купленный ради эксперимента), подключил через переходник. Диск опознался, SMART вроде бы в норме. Начал смотреть файлы. Папка с фотографиями открылась, но штук двадцать из трёхсот битые. Превьюшки есть, а сам снимок каша из пикселей, либо вообще ошибка чтения. Архив с документами — «архив повреждён». Ни вирусов, ни падений, ни скачков напряжения. Диск тупо лежал в коробке и забыл часть того, что ему доверили.

Я, конечно, знал, что SSD не вечные. Но одно дело знать теоретически, а другое открыть папку и увидеть вместо фоток мусор. Это, мягко говоря, отрезвляет.

Читать далее

Преобразователь сопротивление-длительность, или будни самогонщика

Sun, 03/08/2026 - 18:16

Приходит Петька к Василь Иванычу.

- Василь Иваныч, беда ! Начальник из Москвы приехал, аппарат в дивизии требует сократить !

- Ты вот что Петька. Главное змеевик спрячь. Аппарат мы с тобой потом из любой кастрюли сделаем.

От меня никакое начальство сократить аппарат не требует. Стоит себе булькает. Меня радует, и друзей когда в гости приходят. А вот немного его автоматизировать, и усовершенствовать, чтобы чуть облегчить себе жизнь, а так же чисто науки ради, что-то вдруг захотелось... Да и праздник скоро, 19-е марта. День самогонщика России https://rdshop.ru/articles/povod/3/19 . Интересно ? И праздник, и самогон, и автоматизация ? Тогда милости прошу под кат. Думаю полезным будет не только собратьям по зелёному змию !

Ну, вздрогнули !

Домашний кинотеатр малыми средствами

Sun, 03/08/2026 - 18:16

В системной интеграции по части видео и мультимедиа я работаю уже 16 лет, отчего могу с лёгкостью построить конференц‑зал, медиапространство или кинотеатр. Ну, а что дома? Жена вообще говорит «торгуешь телевизорами»... Ну, я не в «Эльдорадо» работаю, это на минуточку. Но свои навыки в быту применить пришлось, когда подарил вышеозначенной любимой проектор и стали мы смотреть кино на стене.

Сразу оговорюсь: все советы в данной статье даются для бытового использования, «для дома, для семьи». Цена такого кинотеатра вряд ли перевалит за 20 т.р. Если вы хотите соорудить мультиплекс в своём районе и брать деньги за билеты — там уже другое оборудование и другие цены.

Магия кино начинается далее...

Агент, который хочет жить: почему идея «ИИ, зарабатывающий себе на сервер» опаснее, чем кажется

Sun, 03/08/2026 - 18:08

В последние пару лет у разработчиков всё чаще появляется одна и та же мысль.
Она звучит почти как инженерная мечта: А что если сделать автономного агента на базе LLM, дать ему сервер, доступ к криптокошельку и поставить простую цель — зарабатывать достаточно денег, чтобы оплачивать своё существование?

Читать далее

APF Imagination Machine: забытый гибрид приставки и компьютера

Sun, 03/08/2026 - 18:01

История развития игровых консолей и телеприставок всегда шла рука об руку с эволюцией домашних персоналок. Тем не менее, это были две независимые друг от друга сферы, практически не пересекавшиеся на рынке… ну, почти. По крайней мере, до 1979 года, когда американская компания APF Electronics создала невиданный гибрид игровой приставки и домашнего компьютера под названием APF Imagination Machine. Об этой необычной ветви развития игровых консолей (или домашних персоналок) — наш сегодняшний рассказ.

Поехали!

Метеостанция своими руками: от идеи до работающего устройства

Sun, 03/08/2026 - 17:47

Собрал метеостанцию на Arduino c нуля: выбрал компоненты, спаял схему, запрограммировал и напечатал корпус на 3D-принтере. Устройство измеряет температуру, влажность и давление — внутри помещения и на улице. Работает от USB, никаких батареек. Данные выводятся на OLED-дисплей, переключение между шестью режимами одной кнопкой. Использовал датчики DHT11 для комнаты, DHT21 для улицы и ВМЕ280 для давления. В процессе переделывал корпус из-за усадки пластика, но довел проект до конца. Получилось функциональнее магазинных аналогов и полностью под себя. Все 3D модели, код и схему выложил в своём телеграм канале в навигационном посте.

Читать далее

Who's online

There are currently 0 users and 0 guests online.