Search
Write a publication
Pull to refresh
83
0
Бузинов Роман @Romer

Пользователь

Send message

TbK — удобный, многофункциональный и бесплатный терминал для работы с COM-портами и поддержкой Modbus-протокола

Reading time5 min
Views16K

Думаю, что каждый из embeded-разработчиков хотя бы раз в жизни пользовался терминалом для работы с COM-портом ПК - простой программой, позволяющей персональному компьютеру через встроенный интерфейс RS-232 (или USB-переходник) общаться с внешними устройствами, например такими, как GSM-модем или просто обмениваться данными с микроконтроллером в процессе разработки и отладки прошивки.

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

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

Читать далее

Формы глаголов в английском языке

Reading time2 min
Views14K

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

Каждое из 16 времен (каждое время – в двух вариантах: действительный и страдательный залог) может быть охарактеризовано наличием или отсутствием каждого из следующих 5 признаков.

Читать далее

Лучшие в мире батарейки по 13 рублей

Reading time2 min
Views136K
Протестировав эти батарейки, я сильно удивился. При самой низкой цене они превзошли по ёмкости и нагрузочной способности все топовые батарейки Duracell, Energizer и Varta.

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

Единая точка выхода в web, I2P, TOR и обход блокировок

Reading time6 min
Views26K

Коварный план


Преамбула… Даная статья была написана ещё летом но, по независящим от автора причинам, немножко подзадержалась...


Однажды, жарким летним вечером, после очередной введённой в консоли браузера команды вида :set content.proxy socks://localhost:9050, автор сего опуса понял, что дальше так жить нельзя и пора приводить выход во всякие скрытосети, а заодно и обход блокировок имени известной организации к какому-то единому, для любого софта вообще и браузера в частности, «общему знаменателю». А как приводить? Разумеется так, чтобы прокси сервер сам «понимал», через какой вышестоящий прокси отправлять и принимать трафик в зависимости от введённого адреса. Вторая цель, вытекающая из первой, вышестоящие прокси могут работать либо как http, либо как socks и оба протокола должны поддерживаться входным прокси. Ну и сам софт должен быть более менее актуальным, что б в случае ошибок или «хотения фич», не приходилось грустно смотреть на одинокую репу на гитхабе, а то и вообще на каком-нибудь сорсфорже.
Итак цели поставлены!

Пора переходить к реализации!

Управление RC машинкой 27mhz с компьютера

Reading time3 min
Views13K

Накопилось у меня некоторое количество радиоуправляемых игрушек, из тех, которые покупать своим двум детям нельзя: один пульт управляет всем в округе, никакого разделения ни по частотам, ни по кодам. Одновременно играть не получится. У меня эти игрушки работают на частоте 27mhz, но аналогичные могут работать на частотах 35, 40, 49 mhz по тому же простейшему протоколу, о котором и пойдет речь дальше.

Моя идея заключалась в том, чтобы сделать USB девайс, на который можно передавать с компьютера коды команд, а это устройство каждую команду закодирует и выдаст в эфир RC-машинке.

Читать далее

Компиляция Python

Reading time7 min
Views103K

Предположим, вы разработали приложение или библиотеку на Python и уже готовитесь передать его / её  заказчику. И в этот момент появляются разные вопросы.

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

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

И, наконец, хочется,  чтобы конечное приложение работало быстрее, чем в среде разработки.

И вот тут настало время скомпилировать Python-код.

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

Читать далее

Написание компилятора на Haskell + LLVM

Reading time20 min
Views8.4K

На работе я пишу почти исключительно на Python, с университетской скамьи остались некоторые знания C/C++, в одном pet-project использовал Haskell. С таким багажом знаний я взялся за написание компилятора на основе LLVM - зачем и что получилось я уже рассказывал в предыдущей статье.

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

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

Читать далее

Использование сертификатов в ASP.NET Core

Reading time20 min
Views32K

В последнее время использование протокола HTTPS для Web-ресурсов является обязательным требованиям ко всем более-менее большим Web-проектам. Эта технология основана на использовании так называемых сертификатов. Раньше за получение своего сертификата нужно было платить. Но сегодня появление таких сервисов, как Let's Encrypt сделало возможным получение сертификатов бесплатно. Таким образом, цена больше не служит оправданием отказа от использования HTTPS.

В самом простом случае сертификат позволяет установить защищённое соединение между клиентом и сервером. Но это далеко не всё, на что они способны. В частности, недавно я смотрел на Pluralsight курс Microservices Security. И там среди прочих упоминалась такая вещь, как Mutual Transport Layer Security. Она позволяет не только клиенту убедиться в том, что он общается именно с тем сервером, с которым хочет, но и сервер может узнать, что за клиент с ним общается.

Всё это накладывает на разработчиков необходимость знать способы работы с сертификатами. Именно поэтому я и решил написать эту статью. Я задумал её как место, куда можно обратиться за основными сведениями, если что-то забудешь. Не думаю, что специалисты найдут в ней что-то новое, но надеюсь, что она будет полезна новичкам и тем, кто захочет освежить свои знания в этом вопросе.

Читать далее

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

Reading time12 min
Views20K

Эффективное обучение крайне важно для разработчика программного обеспечения, ведь постижение нового — значительная часть его работы. Умение быстро осваивать новые языки/фреймворки/инструменты сделает вас намного продуктивнее. Это своего рода суперспособность.

Как ее приобрести? Читайте в тексте Джоша Комо, эксперта с многолетним опытом в разработке ПО, ИТ-блогера и автора обучающего курса «CSS для разработчиков JavaScript». В статье Джош описывает практики и рекомендации, которые помогут начинающим специалистам (например, студентам и тем, кто переходит в разработку из какой-либо другой области) в развитии их профессиональных навыков.

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

Читать далее

Развертывание веб-приложения ASP.NET на виртуальной машине Linux в Azure

Reading time7 min
Views12K

В этой статье представлено пошаговое руководство по развертыванию веб-приложений ASP.NET (на примере проекта на фреймворке DotVVM) на виртуальной машине Ubuntu Server 20.04 в Microsoft Azure.

Читать далее

Переписка со спамерами: избранное

Reading time4 min
Views69K

Конец XIV века, неизвестный автор: Комиссия ФАС изучает отмазки спамера.

Я радуюсь, получая спам – ведь у меня появляется новая возможность пополнить бюджет любимой страны (откуда берутся деньги на пенсии старикам, больницы, школы, домики для уточек и вот это вот все). Каждое полученное от спамеров сообщение я аккуратно пересылаю в ФАС, давая ей возможность пополнить бюджет на лишние 100-500 тысяч рублей, а потом наслаждаюсь материалами «расследований», проливающих свет на грязную подноготную «солидного бизнеса» и его подельников. Вранье, подтасовка документов и далее со всеми остановками – наслаждайтесь!
Читать дальше →

11 проектов, которые нужно сделать, чтобы стать мастером фронтенда

Reading time4 min
Views106K

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

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

Читать далее

Дефицит в IT: платите больше

Reading time5 min
Views73K

Недавно мы опросили рекрутеров агентства GetIT о том, какие зарплаты хотят разработчики. Они выкатили нам большой список ожиданий, в зависимости от языков и направлений. Например, верхняя цифра в вилке ожидаемых зарплат для C#-разработчиков — 280 000. И она не самая большая: сеньоры в Android и Java-разработчке рассматривали ожидаемые зарплаты по 400 000. 

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

Читать далее

Асинхронные потоки от Стивена Клири

Reading time18 min
Views23K


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


Еще в 2019-м на нашей конференции DotNext Стивен рассказал об асинхронных потоках: чем они могут быть полезны, чем отличаются от существующих библиотек вроде System.Reactive и RxJS, а также как задействовать их в проектах.


Спустя пару лет этот доклад остается полезным — поэтому теперь, в преддверии нового DotNext, мы решили сделать для Хабра текстовый перевод доклада Стивена. Видео тоже есть под катом. Далее повествование будет от лица спикера.

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

Рисовалка для атомных орбиталей на Python

Reading time10 min
Views11K

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

Посмотреть код, без регистрации и СМС.

Серая зарплата — это плохо?

Reading time3 min
Views64K

Пару лет назад я проходил на собеседование в подразделение IT в одной достаточно известной компании. Сам процесс проходил достаточно гладко. Я рассматривался на позицию разработчика и аналитика данных, который занимается хранилищами и следит за управленческой отчетностью. Мы очень быстро нашли общий язык и о сумме оклада договорились без проблем. Собеседование принимал сам директор IT подразделения, который услышав мой финансовый запрос, ответил "Без проблем. Просто говорите когда готовы выйти"

После чего я получил вопрос которого вообще не ожидал "А вы хотите серую зарплату или белую?", и предложили мне сумму на 30% больше, той что запросил, при условии если я выберу серую схему оплаты. Т.е. минимально допустимую сумму по МРОТ платить официально, а все остальное на руки, либо в конверте. Моя первая реакция вызвала отторжение и ответил "Белую! Ну а как же будущая пенсия, на которую хотелось бы верить, что буду получать"

После чего я получил риторический вопрос, который я сам себе задаю до сих пор "А точно ли вы аналитик?"

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

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

Читать далее

Где найти персональные данные детей и их родителей?

Reading time3 min
Views40K

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

Читать далее

DIY-музыка — проекты, которые помогут погрузиться в тему

Reading time3 min
Views6.8K

При желании собрать цифровую звуковую рабочую станцию можно на основе open source инструментов — о некоторых из них мы рассказывали ранее. Однако перенести свои акустические эксперименты в оффлайн и собрать синтезаторы и педалборды на основе открытых схематиков — тоже можно. Поговорим о проектах, которыми пользуются популярные исполнители, в том числе The Prodigy.

Читать далее

Балансирующий робот на Arduino Nano и шаговых моторах

Reading time5 min
Views26K

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

Читать далее

Взять и собрать DAW — помогут эти инструменты

Reading time3 min
Views3.8K

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

Читать далее

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity