UHT сгенерировал 4294 строки кода из одного моего заголовочного файла. Имена свойств, смещения в памяти, флаги сериализации, exec thunks для каждой функции - всё, чтобы движок в runtime знал о классе то, что C++ забывает после компиляции. Это третья и последняя статья в серии про внутренности Unreal Engine: K2Node → Blueprint VM → рефлексия. Разбираем, что внутри этих четырёх тысяч строк, зачем каждая из них, и как ими пользуются Details panel, GC, репликация и сама Blueprint VM.
Читать далееПриходят к нам мужики из цеха и говорят эту фразу.
В ней — целая жизнь. Во-первых, сам факт того, что пришли люди из цеха, — это всего несколько лет назад было бы просто шоком. Цех очень хочет, чтобы его не трогали и не лезли с новыми процессами. Сейчас они научились нам доверять, увидели возможности и примерно понимают, что мы можем.
Во-вторых, конвертер, который надо фотографировать. Если что, то конвертер — это такая печка в виде большого горшка восемь метров высотой. Мы туда заваливаем металлолом и заливаем жидкий чугун, затем всё это продувается кислородом, а потом на выходе получается сталь. Смысл операции — при температурах выше 1 600 градусов продуть кислородом на сверхзвуке так, чтобы он связал ненужные нам примеси.
Чего хотят цеховые: каждый раз, когда сталь готова, этот горшок наклоняется, и из него выливается расплав в ковш на железнодорожной платформе.
И им нужно заглянуть в Ородруин. В смысле посмотреть на горловину, чтобы узнать насколько она зарастает шлаком и чугуном.
Кстати, она еще и бороду снаружи отращивает.
Пока конвертер наклоняется к платформе, горловина сзади красиво подсвечивается расплавом. Если мы сможем повесить камеру под 45 градусов и ловить точный момент во время наклона, то они будут очень счастливы. Данные наклона есть в АСУТП и, соответственно, в шине, потому что мы знаем положение механизма.
Мы сделали синхронизацию через шину: как только градус доходит до расчётного, камера делает фотографию, определяет степень зарастания и отправляет её в диспетчерскую цеха.
Заодно мы стали разбираться, зачем им это, и из этого пошла ещё серия проектов.
В результате нашей командой мы реально повлияли на количество выплавляемой в стране за год стали: парой шажков — тут, парой — там, но в итоге прямо значимо. Сейчас расскажу.
Читать далееПривет. Меня зовут Настя, и я виртуозно жонглирую списком дел. Давайте подробнее:
· у меня свой образовательный стартап, где работает 25 человек, а ежемесячно обучается от 20 до 100 человек;
· я веду частную практику психолога и бизнес-консультанта – это от 5 до 15 консультаций в неделю;
· являюсь директором программного комитета «Podlodka Soft Skills Crew», и мы готовим новый сезон. Это 5 человек в основной команде, плюс общение с теми, кто отвечает за всю конференцию. Порядка 3–4 месяцев подготовки на один сезон;
· спикер конференций, где стараюсь выступать регулярно;
· автор 4 каналов, куда пишу тоже регулярно, некоторые — каждый день;
· я куратор фонда «Свет в руках». Тут нагрузка бывает разная, но более свободная, поскольку это волонтерский фонд.
Самое главное в этом списке – я мама и жена. У меня нет дополнительного 25‑го часа, и в таком объеме я и правда порой могу тонуть. Мне помогают крутые админы моих проектов и всевозможные трекеры, календари, задачники.
Некоторое время назад я заметила, что теряю новые сообщения в Telegram. Мессенджер устроен так, что новые сообщения уходят вниз, если кто‑то пишет, и в один момент это стало происходить все чаще и чаще. Задачи тоже начали теряться. Я пошла в чат выпускников нашего проекта с вопросом – как пофиксить. Хороший совет, который сработал, пусть и отчасти, – все разложить по тематическим папкам. Я что‑то разложила, но до финала еще далеко, поскольку сообщений много (прям реально очень много). Один из выпускников написал интересный комментарий – что вообще в Telegram вести рабочие вопросы неудобно, и личное с рабочим стирается (не прямо слово в слово, но суть такая). И правда, когда я вспомнила о Slack и Notion, поняла, что там реально было как‑то полегче.
Читать далееПривет, Хабр! Меня зовут Кирилл Маканков, я iOS-разработчик в ПСБ.
Сегодня хочу поговорить про особенности реализации MVVM. Не с практической, а с теоретической стороны. С практической стороны этот архитектурный шаблон давно уже объезжен и в хвост, и в гриву. А вот теоретических исследований, особенно применимых к Swift (и в общем, и к SwiftUI в частности), не так уж и много. Давайте вместе попробуем закрыть этот пробел и обосновать с теоретической точки зрения те или иные вариации реализаций в нашей ежедневной работе. Мобильным разработчикам на ObjC, Java и Kotlin данное исследование и обсуждение тоже будет полезно. Присоединяйтесь!
Если Вы уже хорошо знакомы с MVVM, то в конце приведен опрос об используемой лично Вами реализации. Давайте вместе определим, какая из реализаций самая популярная.
Читать далееКак бы вы ни относились к искусственному интеллекту — и в особенности к большим языковым моделям и чат-ботам, которые на нём работают, — реальность такова: человечество прямо сейчас строит и расширяет инфраструктуру для его поддержки. Это огромные сети дата-центров, пожирающих электричество и воду, — и их строительство всё чаще вступает в конфликт с потребностями людей, живущих по соседству.
Именно из-за этих проблем появилась идея: а что если вынести ИИ-дата-центры в космос? Одна из компаний, SpaceX, недавно объявила о планах построить мегасозвездие из миллиона спутников для этой цели.
Это пример зарождающейся технологии, способной решить проблему конкуренции за ограниченные ресурсы? Или это, как в своё время Hyperloop, красивая обёртка для нереализуемой идеи — где сам концепт не нарушает законов физики, но практические ограничения делают его настолько непрактичным, что воплотить обещанное невозможно?
Оказывается, на пути к созданию работающей сети ИИ-дата-центров в космосе стоит пять серьёзных препятствий. Три из них, в принципе, могут быть преодолены технологическим развитием. Последние два — установлены самой физикой Вселенной. И, скорее всего, именно они поставят крест на всей затее.
Читать далееЗапрос «как писать ТЗ для дизайнера» звучит просто. На практике — это причина недопониманий между заказчиком и дизайнером.
Я дизайнер и регулярно работаю с фриланс-заказами и внутренними командами. Чаще всего проблема ТЗ (в этой статье — бриф, а не формальный документ на подпись) в том, что оно либо слишком размытое, либо вообще не про то, что вам нужно.
Читать далееVercel из России работает через раз. Sweb и Beget — от 300 руб/мес за раздачу файлов. Оказалось, что Яндекс Cloud отдаёт Object Storage, DNS, SSL и Cloud Functions бесплатно. Перенёс сайт за один день с помощью Claude Code + два самописных скилла для yc CLI и Яндекс Метрики.
Читать далееДля обычного пользователя разрешать уходить в минус по балансу - не может позволить себе ни одна организация, как говорилось в одном известном фильме - утром деньги, вечером стулья. Но для больших корпораций остановка платежей даже на секунду - это уже не проблема корпорации, а всего государства. Невозможно приостановить работу концерна (например Росатом) только потому, что в данный момент у него нет средств. На перезапуск может уйти куда как больше ресурсов.
Поэтому пора исправлять эту проблему в MireaPay и наконец-то добавить работу с крупными юр. лицами, которые будут называться корпоративными пользователями!
Пройти в комнату шардирования10 новых российских продуктов для корпоративны рассылок в мессенджерах, инвентаризации товаров в розничных магазинах, создания микролендингов с управлением через телеграм и многого другого. Битва за «Продукт недели» началась!
Product Radar — здесь каждую неделю публикуются лучшие онлайн-сервисы и железки от русскоязычных команд.
Читать далееНе все проблемы внедрения ИИ упираются в качество моделей. Иногда сильнее мешают страх ошибиться, внутреннее сопротивление, недоверие и неловкость перед коллегами. Мы опросили 250+ человек из разработки и делимся опытом, как работать с такими барьерами и делать внедрение ИИ более комфортным для людей.
Читать далееВ 1С:ERP сотни настроек. Каждая из них может быть абсолютно правильной — но некоторые их комбинации в процессе эксплуатации начинают конфликтовать друг с другом. Система при этом продолжает работать, только всё хуже и хуже.
Бывает и по-другому: настройки выглядят вполне корректно, но на самом деле содержат скрытые проблемы, проявляющиеся по мере эксплуатации.
Чтобы находить такие ошибки, была создана экспертная система с использованием искусственного интеллекта. Она анализирует настройки ERP и выявляет потенциальные конфликты.
Я участвовал в разработке этой системы и покажу, как она работает на реальных примерах.
Читать далееВсем привет! Сегодня хочу затронуть «стыдную» тему – то, о чем ни вендоры, ни интеграторы, ни даже сами заказчики на уровне менеджмента обычно не говорят.
Привилегированные пользователи ненавидят PAM.
Предлагаю разобраться, почему это так, и что тут можно улучшить.
Отвечая на вопрос, сформулированный в названии статьи, я бы выделил три основные проблемы, возникающие при использовании PAM:
● Отрицательное влияние PAM на UX;
● Восприятие PAM как инструмента слежки;
● Проблемы с надежностью.
Давайте разберем каждую из них подробнее.
Влияние на UX
Я давно обратил внимание: знакомясь с новой для себя PAM-системой, опытный, матерый, администратор, почти всегда задает вопросы, нацеленные на то, чтобы оценить удобство пользователей. Все потому, что PAM-системы сильно влияют на UX. Вот несколько ярких примеров того, как это иногда бывает:
● Необходимость для работы с защищаемыми ресурсами применять на АРМ какие-то агенты/клиенты от вендора PAM (либо вовсе – безальтернативное использование браузера в качестве административного клиента);
● Не поддерживаются, либо требуют от пользователя дополнительных телодвижений часть обычных для администратора операций, таких как передача файлов, работа с буфером обмена, sudo и т.п. (в наиболее одиозных ситуациях – буфер обмена работает только в одном направлении из-за того, что сессия транслируется как поток графики);
● «Лишние» и лишние шаги при доступе к ресурсу. Иногда пользователей может в принципе раздражать необходимость зайти в ЛК или предъявлять второй фактор – все-таки тут больше действий, чем при простом подключении, скажем, по SSH или RDP. Но бывает и так, что у вендора не пробрасываются «креды» и состояние аутентификации: зашел пользователь в личный кабинет, предъявил «креды», выбрал ресурс для доступа – и на каком-нибудь шлюзе/прокси/jump ему опять надо предъявлять те же «креды». В числе моих «любимых» – накладываемая на пользователя обязанность указать причину, по какой нужен доступ. Как правило, в реальной практике туда пишут нечто вроде: «Работа». Как эта информация используется потом – остается только гадать;
Читать далее1. Скинули в ИИ текст ошибки.
2. Получили поверхностный ответ.
3. Закрыли вкладку.
«Этот ваш ИИ – глупый какой-то!»
Современные IoT-устройства, несмотря на компактные размеры и ограниченные ресурсы, представляют собой полноценные embedded-системы. Под пластиковым корпусом бюджетного гаджета часто скрывается стандартный Linux-компьютер с собственным ядром, драйверами, файловыми системами и сетевыми службами.
Статья посвящена проведению полного цикла реверс-инжиниринга типовой IP-камеры: от аппаратного анализа печатной платы до закрепления в операционной системе с root-правами.
Разберём путь от подключения к внутренним отладочным интерфейсам устройства до реализации устойчивого удаленного root-доступа по Wi-Fi. На примере IP-камеры Aceline AIP-O4 наглядно рассмотрим типовую архитектуру бюджетного IoT-девайса и классические ошибки, допускаемые вендорами при проектировании безопасности.
Читать далееВот так. Впервые в мире. Суперсэмплинг (SSAA) — ресурсоемкий метод сглаживания, увеличивающий число выборок на пиксель для повышения качества изображения. При значении 8x (N=8) сцена рендерится в разрешении, в 8 раз превышающем целевое, по обеим осям, создавая 64 (или 8 х 8) выборки на пиксель. Изображение просчитывается в более высоком разрешении, а затем принудительно уменьшается до разрешения дисплея, устраняя лесенки и улучшая чёткость. Это очень высокая нагрузка! Это не 1920 на 1080 пикселя а в 8x8 больше - 15360 на 8640 пикселя! Такое никто, кроме меня, делает в мире. Для множество Мандельброта.
Это маленькая утилита из командной строке. Которая либо читает Mandelbrot.txt три строки из файла - клавиша 7. И создает Mandelbrot.bmp
Либо клавиша 1-6 - это одно из шести разных мест множество Мандельброта и создает Mandelbrot.bmp
Скачайте и посмотрите. Это экзешник, в ГитХаб
Скачать последнюю версию (Windows и Linux)
2 года назад переводил я локальными моделями WoW на русский язык (https://habr.com/ru/articles/818513/) и тут недавно возобновил канал свой на YouTube-ах этих ваших, но выкладывая нарезки со стримов про прогу (https://www.youtube.com/@the_homeless_god). И в тестовом режиме переозвучил видео от Fireship про OpenClaw. Да и на тех же стримах возник концепт про цифровые замещения и аватары.
И вот сижу я и думаю, что, например, владея английским языком смотреть могу видео в оригинале, но, тот же Veritasium смотрел в оригинале всего несколько раз, так как мне ближе адаптационная озвучка от Vert Dider. А я чем хуже? Правильно, мне лень этим заниматься на стабильной основе. Что я могу сделать? Автоматизировать за несколько часов часть процесса, который по-хорошему должен занимать 15 минут, зачем тогда десятый год я программирую?
В общем, статья написана как всегда в стиле (б|в)лога, потому заваривайте чай, мы начинаем писать cli и десктоп для переозвучки с помощью локальных моделей ollama!
Ну чё погналиЯ иногда наблюдаю за людьми которые зарабатывают на рынке. Достаточно часто они выкладывают годовые результаты или даже налоговые отчёты с миллионными выплатами. И при этом все в основном стесняются рассказывать о своих стратегиях даже чуть‑чуть. Правда это вполне естественно, ведь если стратегия приносит деньги зачем о ней говорить?
Правда и то, что со стороны других людей (не наших многомиллионных героев) ситуация может выглядеть по‑другому.
Представьте детский сад. Один ребёнок приносит коробку конфет. Он её открывает. Показывает всем. Но делиться не собирается.
У остальных детей возникает понятная смесь эмоций: любопытство, раздражение.
Чем больше заявленный результат, тем сильнее желание окружающих узнать хотя бы в общих чертах механизмы помогающие извлекать прибыль.
Заработок без прогноза?На прошлой неделе исследователь Крис Азиз опубликовал информацию о новом способе обхода систем безопасности, якобы позволяющем протаскивать вредоносное ПО под видом обычного ZIP-архива. В свойствах каждого архива в этом формате есть поле Compression Method. При желании данные в архиве можно вовсе не сжимать, и тогда в этом поле будет прописано 0 (STORED). Обычный сжатый архив имеет свойство DEFLATE compressed. Защитному решению или архиватору данный статус указывает на то, что архив нужно сначала распаковать.
«Метод», предложенный Азизом, максимально простой. Устанавливаем в поле Compression Method статус STORED (сжатие отсутствует) для обычного архива со сжатием данных, у которого в норме должен быть флаг DEFLATE Compressed. Собственно, на этом все. Защитные решения доверяют описанию архива и сканируют его как контейнер с несжатыми данными. Так как на самом деле данные заархивированы, вредоносное содержимое не будет прочитано. Что открывает возможность «протаскивания» вредоносного кода на компьютер жертвы с последующим выполнением. Но именно на стадии выполнения вредоносного кода казалось бы стройная идея исследователя быстро рушится.
Читать далееВ этой статье “контекст” не равен окну токенов и не сводится к длине истории чата. Непрерывность контекста — это сохранение рабочей преемственности между шагами: удерживаются цель и ограничения, не теряются принятые решения, фиксируются допущения и границы исходных данных, а при сбоях сохраняется способность вернуться в рабочий режим без перезапуска процесса.
Читать далееОблако точек — это набор измерений в формате точек в 3D‑системе координат, где каждая точка представляет одно пространственное измерение на поверхности некоторого объекта. Вместе все точки описывают внешнюю поверхность объекта в пространстве. Такие облака точек можно получить с помощью 3D‑лазерных сканеров, LiDAR-сканеров или фотограмметрии; их часто используют для построения точных цифровых 3D‑представлений в строительстве и архитектуре, геодезии и картографии для создания цифровых двойников зданий или моделей рельефа и местности, а также в промышленности для создания 3D-моделей деталей (CAD), контроля качества продукции и анализа износа оборудования.
Часто возникает необходимость анализировать локальные геометрические свойства 3D-поверхностей — чтобы понимать, как они изгибаются, как меняется наклон, как варьируется плотность точек. Это важно для реалистичной графики, анализа 3D‑сканов и инженерной оптимизации форм. Математический инструмент, позволяющий это сделать — вычисление производных.
Ключевое отличие облаков точек от 3D‑сеток (mesh) в том, что облака точек — это несвязанные точки данных, а не поверхность, построенная из треугольников или полигонов (рисунок 1).
Читать далее