Pull to refresh
15
0
Роман Данилов @Infra_HDC

Пользователь GNU/Linux

Send message

Импортозамещение на практике. Часть 6. Пользовательские рабочие места

Reading time24 min
Views11K

Время шло, импортозамещение набирало обороты, пилоты становились продакш-средами, и все катилось под откос шло к светлому будущему.

Какое-то время назад мы с командой приступили к пилотированию миграции на «отечественное» ПО. И вот, что из этого вышло.

Мне интересно, что было дальше!
Total votes 5: ↑4 and ↓1+3
Comments14

Подключаем последовательные интерфейсы по IP

Reading time4 min
Views32K
Последовательные интерфейсы RS-232/422/485 до сих пор очень популярны в промышленности: по ним подключаются диагностические порты, датчики, сканеры штрих-кодов и RFID меток и т.д. Однако последовательные интерфейсы имеют свои ограничения. Иногда возникает необходимость получить доступ к такому интерфейсу по IP-сети, или, например, иметь доступ к одному устройству с RS-232 с нескольких удаленных компьютеров одновременно, или объединить несколько удаленных объектов в одну шину RS-485.

Сервер последовательных интерфейсов конвертирует последовательные физические протоколы в IP-пакеты, и позволяет программно управлять ими — подключать удаленный виртуальный COM-порт к компьютеру по сети так, будто он подключен физически, и прозрачно соединять несколько устройств в режиме P2P, без использования компьютеров.

В статье мы разберем сервер последовательных интерфейсов Advantech EKI-1524, имеющий четыре последовательный порта, каждый из которых поддерживает протоколы RS-232/422/485, и два LAN-порта.


Сервер последовательных интерфейсов EKI-1524 имеет четыре порта DB9 и два LAN-порта.

Ключевые функции EKI-1524:

  • Виртуальный COM-порт — позволяет программно эмулировать виртуальный COM-порт удаленного устройства на системе Linux.
  • Одновременное подключение нескольких клиентов — в режиме сервера дает возможность использовать один последовательный порт для нескольких устройств одновременно.
  • Работа в режиме P2P — одновременная работа в режиме клиента и сервера позволяет объединить несколько EKI-1524 напрямую, без использования серверов и компьютеров.
Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments21

Передача данных по радиоканалу

Reading time4 min
Views15K

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

Важно! Здесь не будет информации о юридических особенностях использования радиосвязи, а также о частотах, мощности передачи, позывных и т. п. Применение радиосвязи имеет ограничения и регулируется Федеральным законом N 126-ФЗ «О связи».

Читать далее
Total votes 36: ↑36 and ↓0+36
Comments60

Скажи «нет» Electron! Пишем быстрое десктопное приложение на JavaFX

Reading time13 min
Views83K
В последнее время на программистских форумах развернулись неслабые дискуссии (для примера см. здесь, здесь и здесь, и эта сегодняшняя) об Electron и его влиянии на сферу разработки десктопных приложений.

Если вы не знаете Electron, то это по сути веб-браузер (Chromium) в котором работает только ваше веб-приложение… словно настоящая десктопная программа (нет, это не шутка)… это даёт возможность использовать веб-стек и разрабатывать кросс-платформенные десктопные приложения.

Самые новые, хипстерские десктопные приложения в наше время сделаны на Electron, в том числе Slack, VS Code, Atom и GitHub Desktop. Необычайный успех.

Мы писали десктопные программы десятилетиями. С другой стороны, веб только начал развиваться менее 20 лет назад, и на протяжении почти всего этого времени он служил только для доставки документов и анимированных «гифок». Никто не использовал его для создания полноценных приложений, даже самых простых!
Читать дальше →
Total votes 70: ↑61 and ↓9+52
Comments185

Автоматическая сборка модулей ядра при помощи DKMS

Reading time3 min
Views20K
В некоторых случаях ручная сборка модулей ядра нецелесообразна, поскольку удобнее использовать Dynamic Kernel Module Support (DKMS)
Технология DKMS позволяет в том числе производить автоматическую сборку модулей системы при обновлении ядра.

В данной статье рассматривается автоматическое управление при помощи DKMS на примере модулей шины CAN.
Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments2

FreeRTOS — операционная система реального времени

Reading time13 min
Views29K

Существует целый ряд классов задач, которые должны быть выполнены за строго определённое время и не более. Среди подобных задач можно назвать: срабатывание предохранительных клапанов, катапультирование пилота из терпящего бедствие воздушного судна, срабатывание подушек безопасности у автомобиля, промышленную робототехнику и т.д. В сфере программного обеспечения также существует целый ряд задач, которые должны быть выполнены точно срок — для этого и служат операционные системы реального времени, одной из которых является FreeRTOS. Именно о ней мы и поговорим в этой статье.
Читать дальше →
Total votes 31: ↑27 and ↓4+23
Comments29

Алан Кей: Будущее «чтения» зависит от будущего «обучения сложным для понимания вещей»

Reading time27 min
Views17K
«A change in perspective is worth 80 IQ points»
— Alan Kay

Алан Кей — крутой мужик, мы его на Хабре поздравляли с днюхой.

Напомню заслуги Алана.

  • Работал в легендарном Xerox PARC, Atari, Apple, Disney, HP.
  • Предложил концепцию Dynabook (в 1968 году), которая определила концептуальную базу для ноутбука, планшетного компьютера и электронной книги.
  • Один из «отцов-основателей» объектно-ориентированного программирования (SmallTalk, 1969).
  • Участвовал в создании первого персонального компьютера Xerox Alto (1973).
  • Инициатор полезной движухи «Каждому ребенку по ноутбуку».
  • в 2001 году, он основал исследовательский Институт Viewpoints, некоммерческую организацию посвящённую детям, обучению и передовым разработкам программного обеспечения.
  • В 2006 бросил дерзкий вызов индустрии — заявил о возможности создания операционной системы с графическим интерфейсом из 20.000 строчек кода.
  • В 2016 присоединился к Y Combinator.

Решили мы перевести его самую концептуальную статью и тут бац, оказывается, что в оригинальной статье нет куска текста. Написали мы в Viewpoints Research Institute, мол, опечатка у вас. Ответила нам Kim Rose, все объяснила, исправила и благославила.

Total votes 36: ↑36 and ↓0+36
Comments5

Как я написал клиент электронного дневника своей области

Reading time5 min
Views11K

Сейчас я учусь в 8 классе. Где-то с октября (сейчас апрель) я изучаю разработку мобильных приложения для андроид. И как это бывает у каждого - я столкнулся с проблемой: а какое приложение мне сделать? И мне крайне повезло. Я не стал делать какой-нибудь фейковый магазин, калькулятор, блокнот, туду лист и всякую подобную заезженную тему.

Читать далее
Total votes 97: ↑105.5 and ↓-8.5+114
Comments29

Панель управления собой: 10 простых шагов к порядку в вашей жизни

Reading time31 min
Views26K

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

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

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

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

Читать далее
Total votes 25: ↑13 and ↓12+1
Comments24

Заблуждения программистов о почтовых адресах

Reading time15 min
Views45K
У всех легковых автомобилей четыре колеса. Исключение из этого правила — Reliant Robin.

Если у автомобиля больше четырёх колёс, то это грузовик, автобус или вообще автопоезд. Исключение найдётся и здесь: Mercedes-AMG G 63 6x6.

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

Заблуждение 0. Для доставки нужны адрес и имя


В мае 2016 года издание Skessuhorn рассказало трогательную историю: семья фермеров в Хоуларе на северо-западе Исландии получила письмо, на котором не были указаны ни имена получателей, ни адрес, по которому его нужно было доставить. Письмо отправил зарубежный турист, который гостил в посёлке Хоулар и точного адреса не знал. Вместо этого на конверте было изображено местоположение получателя с кратким описанием места, вместо имени — «датчанка, которая работает в супермаркете в Будардалюре».

Адрес называл точно только страну (Исландия) и посёлок (Будардалюр). Дальше шло текстовое описание: лошадиная ферма, где живёт исландская/датская семья с тремя детьми и большим количеством овец. Письмо турист отправил из столицы Исландии, Рейкьявика.


Skessuhornið
Читать дальше →
Total votes 173: ↑170 and ↓3+167
Comments257

SSD killer

Level of difficultyEasy
Reading time3 min
Views46K

SSD killer — destroyer for your ssd

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

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

SSD killer
Total votes 58: ↑56.5 and ↓1.5+55
Comments280

Как мы использовали Telekube для удаленной отладки приложений в Kubernetes

Reading time7 min
Views1.9K

Привет, Хабр! Эта статья расскажет о способе, который мы в Just AI придумали и реализовали для локальной разработки и отладки сервиса, работающего в Kubernetes.

Допустим, у нас есть некий компонент (ядро системы), который обычно запускается в Kubernetes и имеет множество взаимосвязей с другими сервисами. У компонента два сетевых интерфейса, которыми активно пользуются другие части системы, также развернутые в Kubernetes. Наша задача — научиться запускать его в IDE на своем ноутбуке в режиме отладки, чтобы максимально удобно и быстро отлаживать этот компонент. Telekube предоставляет возможность это сделать

Читать далее
Total votes 1: ↑1 and ↓0+1
Comments2

Компонентный подход к Ansible или как навести порядок в инфраструктурном коде

Level of difficultyHard
Reading time10 min
Views8.8K

Привет, Хабр! Меня зовут Игорь Гербылев, я технический директор в компании Just AI. В этой статье я расскажу о методологии структурирования ansible-плейбуков, которую мы называем «Компонентный ансибл». Этот подход позволил нам упростить разработку и поддержку большого объёма ансибл-кода, который мы используем для настройки инфраструктуры и развёртывания наших SaaS продуктов.

Читать далее
Total votes 5: ↑4 and ↓1+3
Comments26

Немного о красоте T-фракталов

Reading time2 min
Views9.1K

В 1977 году Бенуа Мандельброт написал книгу «Фрактальная геометрия природы». В ней он подробно описал, как, руководствуясь простыми правилами, нарисовать сложный и красивый самоподобный узор. И до Мандельброта, и после, и по сей день фрактальные узоры привлекают к себе внимание математиков, программистов, художников и прочих любителей красоты.

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

Посмотреть на фракталы
Total votes 111: ↑107 and ↓4+103
Comments52

«Коллеги, пришлите сроки!» — сага о том, как я открыла портал в ад на Хабре

Level of difficultyEasy
Reading time5 min
Views20K

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

Проходит день, два, три. На статье больше 68К просмотров и больше 180 комментариев. У меня все так же висит челюсть: материал джуна залетел в «топ». Минутка гордости за себя и свою практику письма. Эту весну я запомню надолго!

Но комментарии...

Читать далее
Total votes 100: ↑36 and ↓64-28
Comments108

быстрое создание веб-приложений на Perl: вводная

Reading time16 min
Views4.4K
Сейчас сложилась такая ситуация, что язык Perl незаслуженно забыт. Хочу немного поднять авторитет этого чудесного языка своими заметками.
Эта макро-заметка ориентирована на изучающих Perl, знатоков этого языка, а так же на тех, которые только хотят побольше узнать о Perl. В заметке хочу поделиться просто своим опытом.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments31

Что не так с Enterprise Linux

Reading time5 min
Views11K
Enterprise Linux работает примерно по такой модели:

Принимается решение сделать мгновенный снимок неких восходящих свободных проектов по состоянию на определённую версию (это касается, в том числе, ядра Linux) и заложить этот снапшот в качестве основы для новой целостной версии, дистрибутива Enterprise Linux. Коллекция программ останется замкнута на уровне этих конкретных версий на протяжении всей службы этого релиза Enterprise Linux – а этот срок часто составляет 10 лет или даже больше.

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

Для этого релиза начинается следующий кусок сложной работы. Чтобы держать большой комплект софта максимально защищённым и при этом свободным от багов, не хуже, чем его вышестоящие аналоги, придётся постоянно месить код и выпускать новые и новые версии. Те, кто отвечают за поддержку вашего Enterprise-дистрибутива Linux, должны тщательно ориентироваться в океане изменений.
Читать дальше →
Total votes 16: ↑12 and ↓4+8
Comments5

Уменьшаем qcow2 образ в Libvirt KVM

Reading time6 min
Views19K
Вам когда-нибудь доводилось уменьшать размер qcow2 образа диска, используемого в виртуальных машинах KVM-QEMU? Как известно, процесс увеличения размера образа довольно прост и быстр, а как обстоят дела с уменьшением?

В данной статье я расскажу про ситуацию, когда нужно уменьшить qcow2 образ виртуальной машины KVM в максимально быстрые сроки.
Читать дальше →
Total votes 7: ↑7 and ↓0+7
Comments20

Автомонтирование файловых систем с systemd

Reading time2 min
Views50K
Среди множества функций, которые предоставляет systemd, есть одна, которую несправедливо забыли. Это функция автомонтирования. При настройке автомонтирования указанный каталог будет подмонтирован только после первого обращения к нему (точнее, прямо во время).

NFS over VPN


Конкретный пример: у меня есть удалённый сервер, на котором есть интересующий меня каталог. Я хочу иметь этот каталог локально на своей машине. Протокол доступа — nfs. Т.к. он не имеет шифрования, то разумным решением выглядит использование vpn-канала до сервера.

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

Как оно устроено


Systemd имеет специальный вид automount-юнитов, которые позволяют автоматически монтировать указанный каталог.
Читать дальше →
Total votes 36: ↑35 and ↓1+34
Comments29

Делаем ноутбук на Raspberry Pi

Reading time3 min
Views77K

Портативный компьютер RasPSION

За четыре года с момента выхода Raspberry Pi что только не делали из этого маленького одноплатного компьютера — маленькие видеомагнитофоны, игровые консоли, автомобильные навигаторы, музыкальные плееры и многое другое. Но самая очевидная мысль — дополнить Raspberry Pi экраном, клавиатурой и аккумулятором, чтобы получился ультрапортативный ноутбук (его можно назвать нетбук или даже карманный компьютер).

Например, один экземпляр Raspberry Pi попал в руки японского моддера nokton35mm, который изготовил мини-компьютер RasPSION в стиле портативных компьютеров Psion конца 90-х.
Читать дальше →
Total votes 23: ↑18 and ↓5+13
Comments36
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity