Тоталитаризм подкрался незаметно

Как известно, тоталитарный режим определяется цитатой Муссолини: Tutto nello Stato, niente al di fuori dello Stato, nulla contro lo Stato — «Всё в рамках государства, ничего вне государства, ничего против государства» — вот и сейчас читаю чисто отраслевой сайтик про пассивные электронные компоненты (всякие там резисторы-конденсаторы), а там между делом клеймят позором фашистов из AfD:

One issue that is not good for anyone, says Steinberger, is the increasing radicalization on the right-wing fringes of society, right through to the center: “It is time for us as an industry to take a much stronger stand against anti-human and anti-democratic tendencies in society. They damage society, the economy and Germany’s reputation as a cosmopolitan country.” Michael Huether of the Institut der deutschen Wirtschaft (IW) estimates the damage caused by the ‘audacious’ economic plans of the AFD and its allies at 500 billion euros in losses and 2.2 million jobs, not to mention the social upheaval.

https://passive-components.eu/fbdi-pesimistic-about-2024-german-components-distribution-market/

Чувствую, скоро в рамках ESG введут пятиминутки ненависти и прочие атрибуты карикатурных диктаторских режимов из антиутопий и комедийных фильмов 60-х.

Про трафареты и Silhouette Portrait

Немного тут занялся нарезкой трафаретов для паяльной пасты на плоттере Silhouette Portrait, этап с экспортом DXF в штатную программу Silhouette Studio прошел быстро и мне не понравился — так как Silhouette Studio понимает в этом формате только полилинии, экспорт из «обычных» CAD’ов для электроники оказался слегка неприспособлен для этого, приходилось дополнительно редактировать эти файлы — так что я быстренько перешел к применению gerber2graphtec:

https://github.com/pmonta/gerber2graphtec

Собственно, это уже давно не новость, самой утилите уже 12 лет, упоминаниям в рунете — не меньше 7, более того, даже в ACM про организацию кустарной мастерской с такой хренью писали. Естественно, держать хотя бы и виртуалку с линуксом для этой задачи мне показалось лишним, поэтому я творчески совместил руководства по применению скрипта gerber2graphtec в WSL — с выводом в файл, и запуск file2graphtec уже в Windows (к сожалению, WSL не видит подключенные по USB устройства). Один из необходимых на этом пути шагов — это замена драйверов с помощью известной утилиты Zadig — ну и в принципе оно работало, пока я не подумал — а ведь устройство endpoint’ов у плоттера — почти такое же, как и у USB-CDC, то бишь виртуального COM-порта! А почему бы не поставить этот драйвер с помощью Zadig принудительно?

И что самое интересное — оно заработало! После такой замены плоттер распознается в Windows, как «еще один» COM-порт, и при этом его можно использовать в WSL «штатными средствами», как устройство с именем /dev/ttySn, где n — номер COM-порта.

В итоге стало возможно прямиком из WSL запускать команды вроде

./gerber2graphtec --media_size 8.5,11 --offset 0.5,0.5 file.gbr > dev/ttyS5

а с заранее подготовленным файлом с graphtec’овскими командами — использовать банальный cat вместо «отдельного» file2graphtec.

PS Понадобилось внести еще пару изменений в gerber2graphtec — но пока не могу понять, с чем они на самом деле связаны.

Кошмар монтажника

В одном устройстве (ну вы уже знаете, в каком) одновременно используются контроллер PoE TPS2376 и операционный усилитель OPA2376. Найдите 10 отличий, а также — что не даст монтажнику перепутать такие разные чипы (картинки кликабельны)?

PS Всерьез подумываю о том, чтобы поставить где-то в схеме 1-wire EEPROM в корпусе SOT-323, подписать в шелкографии Q1488, а дорожку от неиспользуемого вывода задействовать в аналоговой части схемы, как паразитную емкость.

Про массовое производство

Не очень умные хохлы смеются над сделанным в лучших традициях «военки» блоком управления УМПК — моднейшей российской корректируемой авиабомбы. Не отрицая того, что вот эти жгутики с кембриками и разъемы DB-9 — чудовищный пример антитехнологичности, скажу просто — молитесь, чтобы начинку УМПК не начали делать по технологиям, скажем, автоэлектроники — девайс существенно проще, скажем, автомобильного ЭБУ, так что собирать их по несколько сотен в час можно без особого труда:

А тех, кто топит за жгутики и кембрики, в Прекрасной России Будущего отправят в исправительно-трудовые лагеря, на строительство заводов по производству современных разъемов (хотя вот отечественный Ethernet показывали, КРОСИВОЕ).

Конспирологическое про KPI

Вот подумалось тут, что пресловутое «расширение НАТО на Восток» прекрасно описывается в терминах KPI, воронок продаж и тому подобных. Представьте, что в Брюсселе, в штаб-квартире НАТО, где-то в конце 90-х создали «Отдел холодных звонков по расширению НАТО». Ну все как у людей — начальник, секретари, менеджеры холодных звонков, регулярный обзвон министров обороны и президентов всякой европейской мелочи — «А вы не хотите вступить в НАТО? А давайте мы вам презентацию скинем!»

И разумеется, этому отделу были поставлены KPI — так как задача стояла большая и сложная, KPI ставились на пятилетний срок. И если посмотреть на табличку «Расширение НАТО» в Википедии, дела сначала шли просто прекрасно: в 1999 году отчитались Венгрией, Польшей и Чехией, в 2004 — Болгарией, Румынией, Словакией, Словенией и всей Трибалтикой (может, даже за перевыполнение плана всех поощрили), в 2009 чуть скромнее, Албанией и Хорватией, а дальше случилось страшное — кандидаты закончились.

Даже хуже — после 08.08.08 отвалилась весьма перспективная Грузия, отвалилась Украина, так что можете представить себе весь ужас департамента холодных звонков — вроде уже выучили имена всех любовниц министров обороны недоразвитых стран, вроде пообещали каждому постсоветскому президенту счет в швейцарском банке и откаты с поставок — а тут оказывается, что никого из кандидатов не осталось! С большим трудом в 2017 году (!) в НАТО заткскивают Черногорию, провалив все сроки (напомню, что пятилетний цикл велел принять кого-то в НАТО в 2014, опоздали на три года), так что вероятно, НАТОвский «отдел продаж» предупредили о том, что если так пойдет и дальше — все пойдут на мороз.

Не сильно улучшила ситуацию и Македония, спешно проведенная через всю «воронку продаж» — от приглашения о вступлении в 2018 до формального вступления в начале 2020. Во-первых, при оценке KPI намекнули, что формально это все равно опоздание относительно планового срока отчетности за период 2014-2019, во-вторых, кто-то из высокого начальства недовольно заметил, что «с этими балканскими карликами мы скоро совсем до мышей доебемся». От скорого расформирования «отдел по расширению» с отправкой особо отличившихся чистить снег в Норвегию могло спасти лишь чудо (нет, ну можно позвать Боснию и Герцеговину, или какое-нибудь Косово — но фразу про балканских карликов восприняли вполне серьезно).

И внезапно (где-то в начале-середине 2021 года) такое чудо случилось — свежеизбранный президент Украины Зеленский допизделся и заявил о готовности «да хоть завтра!» вступить в НАТО. За такую удачу ухватились буквально бульдожьей хваткой, пресекая все попытки «соскочить», а на заявления со стороны России в духе «вы что там, охуели?» включили такой damage control и пропаганду, что мало не покажется — мол, не было никогда никаких договоренностей о нерасширении, это Ельцину все с пьяных глаз привиделось! Выдумывать разговоры между выпускниками британских элитных интернатов, сопровождавшие все это — неблагодарное занятие («- Бо́рис, привет, это Джон, мы с тобой в ранней молодости свинью ебали! — Да Джон, наслышан о твоих проблемах со свиньями, ха-ха! Не ссы, русские блефуют!») — но задействовались, наверное, связи на самом высоком уровне, впервые в истории «отдела по расширению».

Собственно, итог «борьбы за KPI» мы все видим последние два года — и даже несмотря на то, что членства Украины в НАТО не случилось, впервые за много лет «отдел по расширению» встречает новый отчетный период спокойно — в качестве результатов за 2019-2024 год будет предъявлена Финляндия (много лет назад списанная за бесперспективностью — ну да, совместные учения, водка, сауна — но дальше развивать отношения финны отказывались), а на следующие несколько лет (2024-2029) отложена Швеция. А про «балканских карликов» и «чистить снег в Норвегии» мы — или не мы — прочитаем в мемуарах кого-то из британских генералов лет через 15 (называются «Тридцать лет на страже европейского мира», издано тиражом 200 экземпляров, весь тираж роздан по родственникам и знакомым, по паре экземпляров подарено библиотекам школы в Итоне и военного училища в Сендхерсте).

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

Embedded, мать его

Как это, руководить проектом (пусть даже студенческим) по разработке мелкого устройства на микроконтроллере? Да очень просто:

— вчера ты шутишь про «быстрые китайские чопперы» (не мотоциклы);
— сегодня — разбираешься в нюансах работы gdbserver поверх TCP;
— завтра — еще какая-нибудь ебала вылезет.

Впрочем, now it’s official — удалось прикрутить к Blackmagic Debug Probe поддержку TCP, причем нормально, а не как в ctxLink:

Дальше в планах — дальше допиливать обещанный как-то в комментах «отладчик с мониторингом энергопотребления для устройств Интернета вещей, … сочетающий в себе свойства Segger J-Link Pro, Blackmagic Debug Probe и Unwired Devices Energymon». Скорее всего, даже заопенсорсим устройство (прошивку уж точно) — хотя есть у меня обоснованные сомнения касательно всякого Open-source hardware.

Ну и в качестве развлечения — быстрый китайский чоппер (на этот раз мотоцикл):

Защита информации — слишком сложная вещь, чтобы доверять ее айтишникам

Поучаствовал на днях в паре срачей «кто виноват в сбое DNSSEC и что с этим делать». В очередной раз убедился в двух вещах:

— словосочетание «информационная безопасность» — это лингвистическая диверсия, отключающая мозг;
— доверять айтишникам «защиту информации» нельзя, это путь к цифровому концлагерю худшего типа.

А теперь подробности — на этой неделе в Рунете произошел крупный сбой, связанный с защитой от подмены данных в протоколе DNS, официальные органы довольно быстро отреагировали и разослали интернет-провайдерам указание — «отключите временно проверку подписей DNSSEC». Некоторые айтишники очень бурно отреагировали на это — мол, где это видано, чтобы проверки «безопасности» отключать, особенно по указанию госорганов! На разъяснения, что это нужно прежде всего для доступности интернет-сервисов пользователям, реакция была в духе «но это же небезопасно!!!11»

Так вот, подобное поведение годится для всяких там вахтеров, в лучшем случае — младшего технического персонала, которому в голову вдалбливается (в основном через жопу) несложная инструкция (стоять здесь, нажимать на эту кнопку, в случае чего звать старшего). Именно на «младшего техника» расчитаны указания типа «DNSSEC не отключать ни при каких обстоятельствах», «на сайте должен быть HTTPS» и тому подобные.

Но… даже на железной дороге, где каждый знает, что «проезд на красный свет — преступление» есть вполне себе штатные процедуры, когда под запрещающий сигнал светофора двигаться можно и даже нужно — да, они строжайше документированы, но с другой стороны — это прямо показывает, что иногда «требования безопасности» (причем настоящей, а не «информационной») приходится обходить.

И это приводит нас к определяющему элементу всей теории что безопасности, что защиты информации — к анализу рисков. Мне эти понятия казались самоочевидными — тем более, что с определений угроз и рисков начинается любой «профильный» документ по защите информации, но недавно я прочитал вот это изложение азбучных истин за авторством Лукацкого и задумался — а какие же причины заставили уважаемого специалиста влезть на табуреточку и рассказать вроде бы очевидные вещи?

https://www.it-world.ru/security/200675.html

А дело в том, что условный айтишник в принципе невыносимо далек от понимания проблем организации, вплоть до того, что искренне считает, что деньги берутся из тумбочки, а его роль — скажем, «выполнение требований регуляторов». При этом при минимальном понимании управления рисками становится очевидно реальное место всей этой «безопасности» в списке приоритетов любой организации — да, она необходима, но в подавляющем большинстве случаев многочасовой простой обойдется дороже, чем небольшое, в общем-то снижение уровня защиты DNS (да и как-то жили мы до появления DNSSEC, и ничего). На определенном уровне «айтишнику» необходимо — даже в рамках должностных обязанностей — принимать подобные решения, и очень печально, что многие так и продолжают считать «ну полежит DNS, а с ним и все остальное у нас пол-дня, пока DNSSEC не раздуплится, зато все будет защищено, как в учебнике».

А вот что на самом деле хотелось бы обсудить — так это наличие штатных процедур, позволяющих механизмы защиты данных отключать. Что должно быть основанием для этого? Сообщение в телеграме от пользователя под ником Ssh? Официальное письмо из министерства на гербовой бумаге? Звонок в Whatsapp якобы от начальника? Интересно даже, дошел ли кто-то до осознания необходимости регламентировать такие вещи.

Хотя… о чем это я, когда средний аутишник уверен, что все это его не касается, «ты не отвечаешь и тебе похер«.

И еще про инженерию

Тут в жежешечке внезапно проснулся [info]vit_r, и в частности, разъясняет, чем software engineer отличается от любого другого инженера:

Most software engineers aren’t really engineers because they like to talk. The people who are true engineers use numbers and images in their discussions, not rhetoric.

Если вы считает сложным выбор между самыми модными джаваскриптовыми фреймворками последнего сезона — то просто попробуйте с цифрами в руках обосновать выбор между всего четырьмя с половиной простыми микросхемами, а именно операционными усилителями — деталями практически commodity-уровня, которых в каком-нибудь измерительном приборе может быть несколько десятков (я бы тут еще подкинул, но ладно, это последние несколько, что я смотрел):

TI OPA2376
Fulihao OPA2376D
AD8605
TP2312
MAX4239

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

Про матриархат

Вот кстати, вспомнил, что отладчик со счетчиком энергопотребления Energymon (у меня тут на столе две штуки валяются) по масштабу идеально подходит, как электросчетчик в домик Барби (рост куклы — около 30 см, то есть масштаб 1:6; Energymon, увеличенный в 6 раз, имел бы размеры 222*300 мм — в общем, вполне себе похоже на небольшой электрощиток). Подумал, что из этого можно было бы сделать забавную фотосессию, и если с домиками для Барби и самими Барби проблем нет — то найти Кена-электрика или разнорабочего не представляется возможным.

Нет, Барби бывают всякие, есть даже инженер-робототехник — но вот Кены в основном занимаются тунеядством и ходят в модных шмотках. Нет, не так выглядит матриархат, совсем не так!

Или это специально сделали, чтобы детишки не играли в ролевую игру по мотивам немецких фильмов «пришел электрик»? Впрочем, в рамках инклюзивности все равно нужны Кены в варианте чернорабочего, скуфа с пивным пузом и подзаборного алкаша.

Из твиттера про инженерию

Увидел тут в твитере пост, где некая сеньорита фронтенда считала «новым и интересным» чтение ебаной документации к очередному блядскому стейт-менеджеру. Охуел и подумал — господи, какой же пиздец, когда люди считают это «новым и интересным»! Что сука характерно: как только некий класс софта получает общее название (да хоть «стейт-менеджер» этот), выбор между разными представителями этого класса определяется в первую очередь не «функциональными» соображениями, а абсолютно субьективными вещами вроде «моды» — и это еще сравнивают с инженерией! После такого отказываюсь причислять программистов к инженерам, потому что инженерии в сборке очередного программного поделия не больше, чем в поклейке танчиков из набора фирмы «Звезда».

А кто-нибудь у нас в американском патентном праве разбирается?

Не могу понять, как у них работает приоритет — вот, допустим, есть американский патент с filing date в августе 2019 года, при этом в качестве priority date указана дата ровно за год до этого, а именно август 2018. При этом я знаю российский девайс, почти полностью описываемый claim’ом этого патента, но выпущенный в январе 2019 («знаю» вплоть до «лично ручкался с автором, держал в руках и даже срисовывал некоторые интересные места схемы»). Собственно, вопрос: может ли этот российский прибор выступать в качестве prior art, которое было по понятным причинам неизвестно американскому заявителю, но при этом патент «обнуляет»? Или наоборот, американцы будут орать, что русские у них все спиздили и должны много $$$?

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

PS/2 Если юридической дулей дело не ограничится, придется отправлять устройство в Штаты своим ходом в составе какого-нибудь изделия.

Вопросик про наколеночные ЧПУ

Почитал всякие форумы, и возник вопрос: а почему «взрослым» вариантом управления станком с ЧПУ (естественно, полусамопальной конструкции) считается компьютер с установленным на нем Mach 3? Люди героически борются с тем, что Windows к «реальному времени» отношения не имеет, плачут, колются, но все равно пытаются управлять шаговиками через LPT — в то время как простая китайская плата с микроконтроллером для интерпретации G-кода (например, одна из первых попавшихся — MKS Robin Nano, 2400 рублей в китайском онлайн-сельпо) все эти проблемы моментально решает.

Немного окунулся в мир китайских производителей микроэлектроники

Вот, допустим есть у Texas Instruments операционник OPAx376 (разработки бывшего Burr-Brown) — очень даже неплохой, и за долгие годы (17 лет уже как выпускается, скоро совершеннолетие отметим) много где примененный. Как на такую популярность должен отреагировать китайский производитель микроэлектроники? Да очень просто — взять и выпустить свой компонент с таким же названием! Некоторые скромничают, мнутся где-то в уголке, и даже если их деталька по каким-то параметрам похожа на «оригинал» — все равно припишут лишнюю буковку в обозначение, за что их обосрут на хабре:

https://habr.com/ru/articles/721750/

Другие же ничего не стесняются, спиливают напильником маркировку с какого-то говна и продают свои поделия под тем же названием, что и TI:

https://datasheet.lcsc.com/lcsc/2308021730_Tokmas-OPA2376_C7470935.pdf

Отдельно оцените шакалистость графиков в даташите и степень близости параметров этого поделия к «настоящему» OPA376. А теперь представьте, что любой более-менее популярный компонент обладает ну этак десятком подобных «однофамильцев» (слово «клон» тут даже близко не описывает ситуацию), выпускающихся сразу кучей китайских производителей (часть из них сразу пишет «мы только корпусируем микросхемы» — вот как тот же HGSemi). В общем, покупать на алиэкспрессе радиодетали — это теперь та еще лотерея, никто не обещает, что это будет «настоящий» TI, а не его подобие.

Хотя вот HGSemi написали в даташите (другом) совершенно честно — если вам нужны детали категорий military и aerospace — это не к нам, обращайтесь на Техасский Инструментальный.

Евросоциализм и IoT

На днях в твиторе восточноевропейских айтишников сильно попердолило от того, что в Германии чувак, снимающий показания электросчетчиков (малоквалифицированный труд, не требующий специального обучения, самая минимальная ставка — 2900 евро в месяц) при наличии троих детей живет не хуже программиста-миддла (степень бакалавра, ставка из верхней части «профсоюзных» тарифных сеток — 5500 евро). Условие про трех детей, конечно же, ключевое — потому что весь кажущийся парадокс объясняется вот таким графиком:

Из этого, конечно, делается вывод, что в Германии программистов не ценят, накладывается на искаженные восточноевропейские представления о том, что «айтишники много зарабатывают» — ну и в итоге твиторские айтишники испытывают сильнейший когнитивный диссонанс.

А я скажу наоборот — именно «евросоциализм» делает возможной немалую часть айтишечки. Со счетчиками так и вообще волшебно получается — вместо того, чтобы гонять Васю за две копейки списывать показания, подумайте — может, выгоднее будет поставить «умный» счетчик с каким-нибудь там Sigfox или LoRaWAN? А ведь разработка и эксплуатация таких устройств — это еще масса «наукоемких» айтишных рабочих мест с важными и интересными задачами (а не перекладыванием JSON’ов). Если же труд программиста намного «дороже» (нет, не «ценнее») труда условного Васи — то вся ваша айтишечка начнет деградировать до offshore programming, местами разбавленного несколькими «монстрами» с халявными деньгами. Поверьте, это к «высоким технологиям» отношения не имеет.

PS Кстати, с материалом из исходного твиттерского треда можно посеять срач и собрать лулзов еще минимум двумя способами: для «Одноклассников» и женских форумов пускай показания счетчиков снимает мать-одиночка с тремя детьми («вот как у них о семейных ценностях заботятся, не то что у нас»), и для пабликов типа «Многонационала» — пускай ее зовут Гюзель («турки заебали!»).

Немного о печальном

Увидел свою студентку на сайте Profi.ru, где она предлагала стыдные услуги трансформационного и карьерного коучинга с почасовой оплатой. Даже не сразу понял, что это за извращения.

Никогда не читайте истории успеха

Особенно — в исполнении русских бизнесменов. И нет, я сегодня не о вылезших из анекдотов про «новых русских» красномордых жлобах с турецкой золотой цепочкой, которые дают ценные советы по ведению бизнеса прямиком из тех лет, когда они начинали, а ты слушаешь и думаешь — ну господи, что ты несешь, от этих твоих «советов» работники в ужасе разбегутся, а потом еще и придет налоговая и даст пиздюлей. Впрочем, аргументированно возражать тоже не получится — потому что главный аргумент расказчика выражается фразой «если ты такой умный, где твои деньги?» Нет, можно быть вполне себе милым московским мальчиком с написанным на лице ВМК МГУ, и носить не малиновый пиджак, а интеллигентский свитерочек — но давать советы такого же космического масштаба и космической же глупости. Вот, например, Максим Лапшин, руководитель Flussonic, распедаливает нам, чем баг отличается от фиче-реквеста:

https://levgem.livejournal.com/508738.html

И разумеется, Максим считает себя очень умным, а описанную по ссылке жесть — несомненно правильной, и доказывается это тем, что у Flussonic’а клиенты есть и даже готовы платить за такое жлобское отношение — но что же мы узнаем из приведенного текста?

А узнаем мы очень простую вещь — «продукт» Flussonic полностью соответствует фразочке «A design without specifications cannot be right or wrong, it can only be surprising!» — а все потому, что в фирме у Лапшина писать хоть какую-то документацию для разрабатываемого софта не принято, чай, клиент не барин, сам поймет, баг это или фича. И действительно, в отсутствии спецификаций они различаются только субьективным отношением, «эмоциональной оценкой клиента». Добавляем к этому еще парочку «антипаттернов» уровня «документация делается техписом», «сотрудник поддержки, который заведомо ниже квалификации чем разработчик или продакт» (кстати, видите тут совершенно неприкрытый снобизм по отношению ко всем «непрограммистам» с «заведомо низкой квалификацией»?) — ну и видим, собственно, что ни при каких обстоятельствах принимать во внимание мнение Лапшина о том, «как должно быть», попросту нельзя.

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

PS Найдите максимум «антипаттернов» в вот этом слащаво-рекламном тексте: https://web.archive.org/web/20170207041400/vc.ru/p/flussonic-tv