Pull to refresh
-3
@andmerk93read⁠-⁠only

User

Send message

Правила построения BIM-команды

Level of difficultyEasy
Reading time6 min
Reach and readers3.2K

Привет, Хабр! Меня зовут Станислав Пуртов, я заместитель директора по автоматизации проектного блока в ПИК. 

В этой статье хочу кратко описать наш опыт формирования команды.

За последние 6 лет внедрения BIM в компании мы прошли путь от небольшой группы развития из 7 человек до самостоятельной дирекции численностью до 150 сотрудников. Прошли этапы исследования, робкого внедрения, агрессивного внедрения, внедрения на этапах кратного роста наших проектных институтов. И несколько кризисов!

Материал будет полезен руководителям BIM-направлений и руководителям проектных компаний, принявших непростое решение о переходе на BIM. Всех нюансов в одном рассказе не раскрыть — если после прочтения останутся вопросы, пишите мне или моим коллегам лично, и мы с радостью постараемся вам помочь.


Дисклеймер:

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

Читать далее

Аппаратное кодирование HEVC в FFmpeg — как быстро вникнуть и начать уже сейчас?

Level of difficultyMedium
Reading time8 min
Reach and readers8.1K

В прошлой статье, посвящённой изучению кодирования на HEVC в FFmpeg, мы разобрали большинство функций работы с видео и научились эффективно сжимать видео или ускорять процесс кодирования для различных задач, преимущественно в программном кодировании. На этот раз моё внимание привлекла тема аппаратного кодирования (ГПУ) в FFmpeg.

Буду рассматривать аппаратные кодеки Nvidia, AMD и Intel.
Читать дальше →

Отработка периодических событий в QNX и RT Linux

Reading time13 min
Reach and readers11K

Пришло время использовать RT Linux.

Для периодических событий очень важна задержка начала отработки события. Точнее максимальный джиттер. Когда джитер соизмерим с периодом возникновения события, система становится непригодной для отработки периодических событий.

Читать далее

Операционная система реального времени QNX: Знакомство

Reading time6 min
Reach and readers158K
Так сложилось, что моя деятельность связана с операционной системой реального времени (ОСРВ) QNX. Уже несколько лет занимаюсь разработкой как под эту ОС, так и некоторых частей самой системы. Обратил внимание на то, что поиск на хабре выводит немного результатов по запросу QNX, однако, мне кажется, что эта ОСРВ может быть интересна не только специалистам по встраиваемым и высоконадёжным системам, но и более широкой публике. Не секрет, что планшетный компьютер BlackBerry PlayBook производства компании RIM основан на QNX и имеет популярность и у нас.

Немного о QNX


ОСРВ QNX это не клон или дистрибутив Linux или ответвление какой-то другой UNIX-подобной системы. QNX самостоятельная UNIX-подобная операционная система реального времени, основанная на микроядре и передаче сообщений. Современные версии QNX имеют поддержку стандартов POSIX (и сертифицированны по ним). Первая версия QNX вышла в далёком 1981 году. С тех пор утекло достаточно много времени и поколения QNX сменяли друг друга: QNX2, QNX4 и, наконец, QNX 6 (или QNX Neutrino). Старичок QNX2 и сейчас ещё используется, хотя его расцвет пришёлся на 80-е годы прошлого столетия. Надёжная и более современная ОСРВ QNX4 могла конкурировать на десктопе с Windows в середине 90-х
Да, я хочу узнать больше о QNX.

ОСРВ QNX: Немного о микроядре, потоках и процессах

Reading time6 min
Reach and readers30K
Поскольку мой первый небольшой обзор операционной системы реального времени QNX показал, что среди жителей Хабра есть к ней интерес, то я решил продолжить цикл заметок. Мне кажется, что стоит немного рассказать о системной архитектуре QNX6. Думаю, что нелишне дать определение тому, что такое микроядро, и какие задачи оно решает. По ходу повествования будут также развенчаны два мифа, связанные с QNX. Но сначала…

Немного о POSIX


С выпуском каждой новой версии QNX (а надо отметить, что первая версия ОСРВ QNX появилась теперь уже в далёком 1981 году), разработчики использовали накопленный ранее опыт и делали систему лучше, в том числе и удобнее для разработчиков. Именно поэтому QNX Neutrino поддерживает стандарты POSIX 1003.1, например, управление потоками (threads), расширения реального времени (Realtime Extensions), дополнительные расширения реального времени (Additional Realtime Extensions) и профили прикладных окружений (Application Environment Profiles, AEP).

Зачем я об этом говорю?
Не знаю, но я действительно хочу узнать зачем.

Принцип цифрового управления непосредственным преобразователем напряжения

Reading time5 min
Reach and readers6.7K

Схема непосредственного преобразователя напряжения широко используется в современной электронике: различные стабилизаторы напряжения (понижающие или повышающие), инверторы одно- и много-фазные. Для низковольтных маломощных преобразователей как правило используются аналоговые схемы управления, для мощных и/или высоковольтных уже выгоднее использовать цифровые системы управления на основе микроконтроллера.

К оригинальному принципу построения цифрового регулятора я пришёл без малого 20 лет назад. Принцип простой, как говорится, “лежит на поверхности”, позволяет получить отличное быстродействие, качество переходных процессов и отсутствие выбросов токов дросселя. Но вот, что интересно для меня, я нигде больше за эти 20 лет на практике не встретил данного подхода к построению регулятора по аналогичному принципу (плохо искал?).

Подразумевается, что читатель понимает: основы ТОЭ (теоретические основы электроцепей), принципы формирования ШИМ (широтно-импульсной модуляции).

Читать далее

Ретроспектива: создание одних из первых автоматизированных рабочих мест

Reading time5 min
Reach and readers811

Продолжаю рассказ о предшественниках ПЛК, и сегодня расскажу об одних из первых в стране АРМов – автоматизированных рабочих мест и периферии для поверки датчиков.

Читать далее

Как внести свой вклад в Open Source и стать полезным

Level of difficultyEasy
Reading time20 min
Reach and readers1.7K

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

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

Как мобильный разработчик TAGES, я не раз сталкивался с миром Open Source, активно поддерживая и участвуя в различных проектах. Открытые инициативы становятся все более важными в современном процессе разработки программного обеспечения, создавая культуру инноваций, сотрудничества и обмена знаниями.

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

Читать далее

История визуализации данных: краткий исторический очерк

Level of difficultyEasy
Reading time7 min
Reach and readers2.4K

В новом материале я хочу поговорить об истории визуализации данных. Речь не только о всяческих диаграммах (о чем недавно в нашем блоге была отдельная большая статья), но в принципе — как вообще появилась идея, что данные можно как-то кодировать и визуализировать? Как давно это началось? Через какие этапы развития прошла сама идея представления данных в наглядном виде? Есть ли еще куда развиваться, или мы уперлись в некий технический потолок? Обо всем этом — и не только.

Читать далее (очень много картинок!)

Забытая история Java: версия Патрика Ноутона

Level of difficultyEasy
Reading time44 min
Reach and readers3.6K

Патрик Ноутон — первоклассный специалист из Sun Microsystems, являющийся одним из создателей Star7 и Java.

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

Если бы Патрику позволили уволиться и перейти в NeXT, возглавляемую Стивом Джобсом, как он того хотел, то языка Java, не существовало бы.

Данный текст, опубликованный им 18 марта 1996 г., позволяет взглянуть в прошлое на “лихие” 90-е, когда Sun пыталась оседлать перспективные направления, связанные с компьютерами, сетями и сопутствующими технологиями.

Но Патрика не запомнят, как одного из компьютерных гениев, работавших в Sun над Java. А все потому, что на пике своей карьеры в возрасте 34 лет в конце 1999 г. он потеряет всё: семью, престижную работу, бо́льшую часть состояния и репутацию. Причиной тому будет поимка его ФБР и обвинение в педофилии.

Но до этого переломного события еще около трех лет; успех и востребованность начинают кружить голову и кажется, что вся жизнь впереди…

Узнать темное прошлое Java

Краткая история визуализации данных: от древних времён до XVII века

Reading time3 min
Reach and readers6K
На нашей планете 4.3 миллиарда пользователей интернета. Каждую минуту они добавляют 46,740 фото в Instagram, пишут 456,000 твитов, 120 профессионалов регистрируются в LinkedIn и происходит 990,900 свайпов в Tinder. А у Facebook 2 миллиарда пользователей — больше четверти населения планеты! [1]

Данные везде и их количество только возрастает. Как пишут в своём отчёте McKinsey & Company “Data Science — это простая часть. Получить правильные данные и данные, пригодные для анализа — куда более сложна задача” [2]. Визуализация данных упрощает восприятие, делает данные более доступными и понятными, помогает понять, какую часть лучше всего использовать. А ещё за это хорошо платят. Давайте проследим как в разные эпохи люди по разному решали проблему визуализации, посмотрим на самые древние и самые известные примеры.
Читать дальше →

Правительство США: критически важное программное обеспечение должно отказаться от C/C++ к 2026 году

Level of difficultyEasy
Reading time6 min
Reach and readers20K

31 октября 2024 года, 11:00, автор: Дэррил К. Тафт

Это самая жёсткая позиция правительства в отношении безопасности программного обеспечения, которая предупреждает производителей: устраняйте опасные методы программирования, иначе вас могут обвинить в халатности.
Федеральное правительство предупреждает об опасных методах разработки программного обеспечения. Агентство по кибербезопасности и защите инфраструктуры США (CISA) и Федеральное бюро расследований (ФБР) публикуют жёсткие предупреждения о нарушениях базовых мер безопасности, которые продолжают затрагивать критически важную инфраструктуру.

В недавнем отчёте, опубликованном совместно CISA и ФБР, о недостаточных мерах обеспечения безопасности продуктов производители программного обеспечения предупреждаются о нежелательности использования небезопасных для памяти языков программирования, таких как C и C++.
«Разработка новых линеек продуктов для использования в критически важной инфраструктуре или [национальных критически важных функциях] NCF на языке, небезопасном для памяти (например, C или C++), когда есть доступные альтернативные языки, безопасные для памяти, которые можно использовать, несет в себе угрозу и значительно повышает риск для национальной безопасности, национальной экономической безопасности, здоровья и безопасности населения», — говорится в отчёте.

Читать далее

Как я переделал освещение в подъезде на два контура и сэкономил 200 т.р. не делая ремонт, а используя умный дом

Level of difficultyEasy
Reading time8 min
Reach and readers23K

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

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

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

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

Но это не решало проблему двух контуров освещения: тусклого вечером и яркого днём.

Узнать чем закончилось

Django-аутентификация: просто о сложном

Level of difficultyEasy
Reading time13 min
Reach and readers11K

Привет, Хабр!

Аутентификация является фундаментальной частью любого веб-приложения. Мы рассмотрим различные способы реализации аутентификации в Django, начиная от стандартных методов и заканчивая более крутыми техниками, например как 2FA и OAuth2.

Читать далее

Жизненный цикл контейнеров в Docker Compose: использование хуков post_start, pre_stop

Level of difficultyEasy
Reading time3 min
Reach and readers1.6K

В версии 2.30.0 Docker Compose появился новый функционал - хуки жизненного цикла контейнера. Давайте разберемся, что это такое и как их использовать для решения практических задач.

Читать далее

ByeDPI + Redsocks на OpenWRT: дарим свободу локальной сети на дровах (на примере ASUS RT-N12 ROM/ОЗУ: 8/32 Мб)

Level of difficultyEasy
Reading time6 min
Reach and readers84K

Решение проблемы зачастую упирается в использование роутеров с ограниченными ресурсами, таких как ASUS RT-N12 VP B1 с ROM/ОЗУ 8/32 Мб. В этой статье я расскажу, как настроить связку ByeDPI и Redsocks на роутере с OpenWRT, даже если ваш роутер далеко не топ по характеристикам.

## Зачем нужны ByeDPI и Redsocks?

ByeDPI — это утилита для обхода DPI (Deep Packet Inspection), которая изменяет сетевые пакеты таким образом, чтобы они не распознавались системами фильтрации трафика.

Redsocks — это прокси-инструмент, который перенаправляет трафик через SOCKS или HTTP прокси, даже если приложение не поддерживает прокси напрямую.

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

Ставим ByeDPI и Redsocks на OpenWRT

Зачем рассказывать про контейнеризацию в 2023 году

Level of difficultyMedium
Reading time13 min
Reach and readers25K
image
Техножрец DevOps бережно описывает документацию по проекту

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

Каждая новая технология поначалу держится на энтузиастах, которые её полностью понимают. Например, первые пользователи радио знали почти всё про радиосвязь, могли на коленке собрать детекторный приёмник и ловить радио «Маяк» на металлическую вешалку и моток проводов. Первые пользователи GNU/Linux знали всё про ядро и ключевые принципы работы. По крайней мере, вариант «поправил и скомпилировал драйвера для модема, чтобы настроить сеть» был не самым редким. Текущие пользователи обычно не сталкивались с основами, так как начали щупать технологию уже после снижения порога входа.

Те же процессы идут не только в среде потребителей технологий, но и среди инженеров. С одной стороны, узкая специализация совершенно нормальна, с другой — мы рискуем получить аналог культа Галактического Духа на Анакреоне из цикла романов «Основание» Азимова. Техножрецы выполняют сложные ритуалы, ядерные реакторы пайплайны работают. Ровно до тех пор, пока всё не сломается к чертям на низком уровне, а чинить будет некому.

Так происходит и с контейнеризацией. Я всё чаще встречаю на собеседованиях devops-инженеров, которые знают, как пользоваться Docker и Podman, пишут Dockerfile, но теряются, когда спрашиваешь про namespaces, и начинают плавать при вопросе: «А зачем, чем RPM хуже?» Все собирают контейнеры, и я собираю. Таков Путь. Не всегда, кстати, оптимальный.
Читать дальше →

Хватит называть контейнеризацию виртуализацией

Reading time5 min
Reach and readers15K

Привет, Хабр! Меня зовут Матвей Мочалов, я — компьютерный инженер и один из авторов корпоративного блога cdnnow! Как-то мы уже обсуждали особенности Docker на разных системах, а сегодня я хочу копнуть глубже — поговорить о том, как наша индустрия поймала саму себя в ловушку Джокера и умудрилась запутать всех, выдавая контейнеризацию за виртуализацию.

Продолжим об этом ниже в посте.

Читать далее

Скилл-нутриенты для тестировщика и не только: зачем выращивать в себе технолога

Level of difficultyEasy
Reading time11 min
Reach and readers3.5K

Однажды я задумался, почему одни QA-инженеры застревают в мидлах, а другие — дорастают до CTO. Я исследовал эту тему, проводил интервью и пришёл к определённым выводам, которыми готов поделиться. 

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

Читать далее

Information

Rating
Does not participate
Registered
Activity

Specialization

Инженер АСУТП
SQL
Python
Администрирование сетей
Системное администрирование
Администрирование серверов
PLC
Программирование ПЛК
Scada
АСУ ТП