Обновить

Технотекст

Как спроектировать фильтр электромагнитных помех для DC-DC преобразователя?

Время на прочтение9 мин
Охват и читатели34K

Поставщики компонентов наперебой рассказывают, как просто при помощи их изделий создать готовое к промышленному выпуску решение. После посещения одного из таких мероприятий от Wurth Electronic по проектированию пассивных фильтров электромагнитных помех (ЭМП) у меня появились смутные сомнения по поводу методики подбора компонентов, и мы решил провести собственное исследование.

Сегодня мы постараемся рассеять маркетинговый туман и внести осознанность в проектирование фильтров ЭПМ для импульсных преобразователей (DC-DC).

Читать далее

Система озвучки для игр с плагином для Unity, часть 2, упрощенная

Время на прочтение2 мин
Охват и читатели1.8K

Я немного упростил изначальную концепцию, хотя весь код всё еще доступен и работает.

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


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

Начинаем :)

Unity: 8 причин отказаться от Coroutine в пользу Async

Время на прочтение9 мин
Охват и читатели47K

Когда речь заходит об асинхронных операциях в Unity, на ум первым делом приходит coroutine. И это не удивительно, так как большинство примеров в сети реализованы именно через них. Но мало кто знает, что Unity поддерживает работу с async/await еще с 2017 версии.

Так почему же большинство разработчиков до сих пор использует coroutine вместо async/await? Во первых, как я уже упомянул, большая часть примеров написана с использованием coroutine. Во вторых, async/await кажется очень сложным для начинающих разработчиков. Ну и в третьих, когда речь заходит о коммерческих проектах, где основным из критериев является стабильность, предпочтение отдается проверенному годами подходу.

Но технологии не стоят на месте и появляются библиотеки, которые делают работу с async/await в Unity удобной, стабильной и самое главное высокопроизводительной.

Читать далее

Консольный UI и отказ от асинхронного кода в idewave-cli

Время на прочтение9 мин
Охват и читатели2.7K

С выходом версии 1.0.1 я решил осветить некоторые аспекты технической стороны моего проекта. В этой статье я расскажу про использование библиотеки tui-rs и про нюансы использования библиотеки tokio-rs, а так же постараюсь рассказать, что же было исправлено и почему так, как было раньше делать не надо. Добро пожаловать в статью - возможно, кому-то она поможет на тернистом пути погружения (или восхождения) в Rust.

Читать далее

Стартап в энтерпрайз: выгореть или выстрелить

Время на прочтение5 мин
Охват и читатели3.3K


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

Читай, как мы профакапились

Как я нахожу парковочное место за 5 секунд

Время на прочтение5 мин
Охват и читатели122K

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

Читать далее

Полуфабрикат Windows-службы

Время на прочтение16 мин
Охват и читатели9.4K
Один из способов доморощенной классификации служб основывается на времени их жизни: некоторые из них запускаются сразу же при старте ОС, оставаясь активными постоянно (сюда, скажем, можно отнести веб-серверы и СУБД), другие же запускаются лишь при необходимости, делают свои архиважные дела и сразу завершаются; при этом, ни один из вариантов сам по себе не делает реализацию службы сложнее, однако второй требует от разработчика как минимум ещё и умения программно стартовать, а при необходимости и досрочно останавливать её работу. Именно указанный аспект управления службой, плюс добавление некоторых отсутствующих в штатной поставке Delphi возможностей, и сподвиг автора на данный опус.

Чтобы статья воспринималась максимально полезной и практичной, в ней предлагается заготовка (почти готовый к употреблению шаблон) службы, обрабатывающей очередь неких задач (или заданий – кому как больше нравится); после того, как все из них обработаны, служба тут же завершается. Если представить графически, то читатель познакомится со следующей конструкцией:

Взаимодействие службы с очередью и управляющим приложением
Читать дальше →

Почему аспирантура — зло

Время на прочтение5 мин
Охват и читатели105K

Вам 20 лет. Вы заканчиваете универ по какой-нибудь прекрасной специальности вроде "Программной инженерии". Вы учитесь на все пятерки, пишете научные статьи, получаете академическую и еще какую-нибудь именную стипендию с крутым названием, ездите по студенческим конференциям и олимпиадам, привозя оттуда призы и охапки мерча. Футболку с последнего чемпионата по программированию вы носите, не снимая (зимой - прямо поверх свитера), и все ваши канцтовары отмечены логотипом Microsoft.

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

Читать далее

Mikrotik, Telegram и не только…

Время на прочтение8 мин
Охват и читатели42K

Здравствуйте, друзья!

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

Однако, давайте по порядку.

Читать далее

Дегустация Argo Rollouts: обзор решения, часть 1

Время на прочтение8 мин
Охват и читатели5.3K

Всем привет! Меня зовут Евгений Симигин, я занимаюсь внедрением DevOps-практик в Центре компетенций по разработке облачных и интернет-решений МТС Digital. В этой статье – обзор Argo Rollouts, я покажу несколько примеров применения и отмечу интересные места в документации. Хотите быстро освоить Argo Rollouts и разобраться в этом решении? Тогда жмите кнопку «Читать далее»!

Читать далее

Внедрение контроля над ИТ

Время на прочтение17 мин
Охват и читатели9.2K

Добрый день!

Меня зовут Максим Торнов и я продолжительное время занимаюсь областью управления рисками, присущими ИТ. Данный материал является продолжением статьи «Управление риском ИТ» (https://habr.com/ru/post/599047/).

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

Читать далее

Идея для языка программирования искусственного интеллекта. Свойство-ориентированный подход

Время на прочтение8 мин
Охват и читатели6.5K

В данной статье предлагается новый свойство-ориентированный подход к организации объектной модели в языках программирования. Основная идея - вынести свойство из объекта и сделать понятия свойства и объекта равноправными. Это позволит получить крайнюю гибкость и универсальность описания предметных областей, приблизив это описание к восприятию объектов и свойств человеком.

Свободу свойствам от объектов!

Читать далее

Чем различаются Kafka и RabbitMQ: простыми словами

Время на прочтение8 мин
Охват и читатели158K

Программные брокеры сообщения уже стали стандартом при построении больших и сложных систем. Однако до сих пор не все ИТ-специалисты понимают, как работают эти инструменты. Главный системный аналитик «Иннотех» Павел Малыгин помогает разобраться в брокерах сообщениях и их работе.

Читать далее

Пишем собственный ColorWheel на основе представления (View) в Android

Время на прочтение24 мин
Охват и читатели4.4K

Эта статья рассказывает о моём опыте создания пользовательских представлений под Android. Со временем это всё переросло в целую библиотеку.

Как-то одним вечером мне в голову забралась идея о создании собственного настраиваемого View компонента для выбора цвета в обёртке уже готовой к использованию библиотеки. На самом деле, таковых в сети достаточно и без меня, но довольно интересных, с возможностями кастомизации я не нашёл. Опыта в разработке View компонентов у меня на тот момент не было, а хотелось бы чуть больше, чем ничего. Так я и приступил к написанию кода.

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

Читать дальше →

Интеграция картин в видео фасада здания за 60 часов

Время на прочтение7 мин
Охват и читатели3.3K

Художник-монументалист - человек, который выполняет действительно Большие Задачи. Вот и со мной рядом был такой человек, у которого еще не горел, но активно приобретал характерную черную корочку диплом.

На диплом художник выбрал Российскую национальную библиотеку (они выбирают объекты, и декорируют их). В итоге - 9 отдельных картин предполагаемых в технике мозаика были готовы украшать фасад здания. Сделать диплом - это полдела, но более важной задачей является подать его. По задумке камера должна вальяжно облетать здание, масштабироваться и проходить по замысловатым траекториям. Но вот незадача, курс 3D моделирования длился полгода, а результатом была модель пустой комнаты, с плинтусами и окнами. Отчаянные просмотры роликов на YouTube по темам «Как сделать 3D иллюстрации Adobe» дали понять одно - 3D визуализации не будет. Больно, грустно, обидно - но дедлайн заставляет креативить.

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

Мое глубокое подсознание положило эту мысль в стек головного мозга и достало его оттуда, как это водится, перед самым сном. «Так ведь можно это все реализовать программно. Распознать рамки под панно какой-нибудь нейронкой, вставить мозаики попутно сжимая их и растягивая в нужных местах, затенить, выделить контраст и бла бла бла» подумал наш герой-программист и его было уже не остановить…

Читать далее

Баг в ядре Linux и как правильно жаловаться

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели15K

Я работаю системным программистом в компании КриптоПро. Нередко мои задачи связаны с ошибками, которые лежат на самом нижнем уровне современных операционных систем, под которые мы пишем ПО. Я хочу поведать тебе, Хабр, об одной из таких ошибок и о том, как я жаловался на неё разработчикам.

Я отвечаю за поддержку одной из наших библиотек с C-интерфейсом, написанной на C и C++. Мой коллега из другого отдела сообщил, что его нагрузочный тест нашей библиотеки на C# в Linux выдаёт ошибку в хитром сценарии: нужно иметь два процесса по пять потоков, делающих некоторые идентичные вызовы. Если процесс один, а потоков много, то проблема не проявляется. Если процессов два, но в каждом по одному потоку, то проблема не проявляется. Путём просмотра исходников нагрузочного теста и логов работы библиотеки удалось перенести проблему в маленький юнит-тест на C++ с использованием нашего API.

Узнать, что же это было

Мой личный опыт восстановления старых фотографий с помощью нейросетей

Время на прочтение2 мин
Охват и читатели19K

Мой скромный опыт запуска нейросетей на ноутбуке для восстановления старых фотографий.

Читать далее

Читаем ключевой контейнер КриптоПро

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели18K

Речь пойдет о PFX, который можно экспортировать из КриптоПро, однако данный контейнер нельзя использовать в OpenSSL и в других криптографических средствах из-за некой PBE с OID 1.2.840.113549.1.12.1.80.

Читать далее

Как попробовать 60-процентную клавиатуру, если у вас её нет

Время на прочтение16 мин
Охват и читатели68K

Клавиатура Vortex POK3R RGB V2 (источник — geekboards.ru/product/vortex-pok3r-rgb-v2)

Я правша, но держу мышку в левой руке. Потому что правая и так слишком нагружена стрелочками, цифровым блоком, кнопками Home, Delete и пр. А поскольку эти кнопки перенести невозможно, я перенёс мышку.

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

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

#3 Нейронные сети для начинающих. Работа с изображениями в OpenCV. Алгоритм Canny Edge Detector

Время на прочтение11 мин
Охват и читатели26K


Здесь должна быть шутка
image

Сегодня я хочу представить вам третью статью из серии «Нейронные сети для начинающих». Мы научимся обрабатывать изображения и сохранять результаты в отдельные файлы. Вот небольшой список задач, которые будут разобраны ниже:

  1. Преобразование изображения в оттенки серого.
  2. Уменьшение размерности изображения (в пикселях) в 4 раза.
  3. Нахождение и выделение (рамкой) самого тёмного объекта на изображении.
Читать дальше →