SDR, который не software-defined radio

Зацепился глазом за объявление о вакансии:

Ищем в команду специалиста, который будет помогать делать цифровой SDR на базе LLM, по дороге помогая стартапу расти; надо быть сильным аналитиком и неплохим разработчиком (Python/SQL), хорошо, если вы в душе маркетолог и исследователь

дальше еще всякое бла-бла и ссылка:

https://cteleport.com/careers?jobId=DQploFSJgyf9

— в общем, довольно быстро становится понятно, что SDR здесь не про радио, а про что-то еще. Оказывается, что у этой аббревиатуры за сотню расшифровок, и скорее всего имелся в виду Sales Development Representative — короче говоря, собираются делать менеджера холодных звонков на основе нейросеточек. Запишу рядом с digital communications, которые у нормальных людей означают цифровые системы связи, а у ненормальных — маркетинговые коммуникации в «цифровой среде».

PS Вообще надо попробовать написать объявление о поиске погромиста в стартап так, чтобы про значение SDR и digital communications стало понятно только в самом конце :)

Братский народ

Вот историк-алкоголик все верно тут пишет про Суркова и Арестовича:

https://t.me/istrkalkglk/4717

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

Про мониторы и импортозамещение

Последний миландросрач убедительно доказывает нам, что многих «журналистов» от айти, от новостного раздела «Хабра» до редакции HiTech на mail.ru, можно заменить перемычкой для трансляции в их СМИ пресс-релизов (в официальный раздел) и скандалов в исполнении блогеров (в неофициальный). Мозг для такой работы не нужен.

Ростех не мой, я только разместил объяву!

Репостнул в околопрограммистском чатике умеренно ватнической среднелюдоедской направленности вопрос (не мой), нет ли среди присутствующих кого-то, имеющего опыт конфигурации Ardupilot или чего-то аналогичного для ростеховского проекта. Один из программистов чатика мгновенно порвался и два дня фонтанировал бессвязными фразами про FPV-дроны, глушилки GPS, распилы, Мавики, СВО, Ланцеты, «они пилят, а там люди гибнут» и прочее в том же духе, перемежая это оскорблениями в адрес незнакомых ему людей.

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

Про VPN

Почитал тут на хабре плач нескольких владельцев VPN-сервисов про то, как тяжело им живется, когда Роскомнадзор хочет запретить в интернетах «информацию ‎о способах, методах обеспечения доступа к ресурсам и (или) информационно-телекоммуникационным сетям, доступ к которым ограничен на территории РФ». Подумалось тут, что надо бы написать ответку в стиле Панчула, о том, что VPN-сервисам надо рассказывать о том, как получить доступ к ресурсам, самостоятельно огородившимся от пользователей из РФ, вроде ti.com или analog.com.

Хотя, конечно, впноводов я понимаю — аудитория пейсбука и прочих «запрещенных» соцсетей «на глаз» побольше, чем число желающих читать Application Notes Техасского Инструментального Завода.

Кто-то в лесу сдох

Издательство ДМК внезапно выпустило две более-менее вменяемых книги про встраиваемые системы. Во-первых, сначала я наткнулся на «Реверс-инжиниринг встраиваемых систем» Алексея Усанова. Не сказал бы, что раскрыты какие-то глубины этого процесса — но если рассматривать книгу, как каталог ссылок на всякие полезные материалы — то сойдет. В целом — нормальное дополнение к какому-нибудь учебному курсу по программированию встраиваемых систем — «как на ваше устройство смотрит недоброжелатель :)».

Во-вторых, поизучав другие издания на сайте, нашел перевод учебника Даниэле Лакамеры «Архитектура встраиваемых систем» — в отличие от массы литературы «по STM32», сводящейся к пересказу даташита вперемешку с многочисленными скриншотами из Cube MX, здесь описывают среду разработки с использованием gcc и make, работу с памятью «на низком уровне», немного затрагивают внешние сетевые интерфейсы и многозадачность — в общем, подходящий набор для того, чтобы не пугаться любого более-менее современного микроконтроллерного проекта, отличающегося от «а мы тут быстренько что-то под ардуину налабали».

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

Чем программист отличается от андроид-разработчика

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

https://mbr.livejournal.com/655769.html

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

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

В запущенном случае, это, конечно, принимает некоторую форму снобизма, особенно, если времени освежать знания не было, в духе «а нахера тут Cortex-M, ща я на PIC’овском ассемблере сбацаю, учись, студент, пока я жив!» — но в целом такой типаж повторяется с поразительной регулярностью, вот и топикстартер в той теме про андроид-приложение к нему относится.

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

https://itvdn.com/ru/blog/article/250-about-android

Знания собственно платформы — минимальные, зато уделяется масса внимания «работе с сетью» — точнее, работе с операциями семейства CRUD через какой-нибудь REST API. В сочетании с неумением читать документацию — прекрасный кадр для решения простых повторяющихся задач, вроде «приложения со списком рецептов» из того же опросника. Что-то за пределами привычного круга задач моментально выбивает из колеи — примерно как описано по первой ссылке. С другой стороны, одинаковые «приложения» по рецепту «архитектура MVVP, работаем с REST API через Retrofit, получаем JSON, конвертируем в понятный вид с помощью Moshi» тоже кем-то востребованы, клиенты есть.

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

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

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

— так что сливаются под более-менее благовидным предлогом, мол, очень сложно.

Про блокировки и фрагментацию интернета

Не так страшен Роскомнадзор, как всякие CDN’ы, играющие в географическую сегрегацию пользователей.

{ "errors" : [{ "title" : "Restricted Country or Region" , "detail" : "We're sorry. Access to the Fastly app and API is not available in your location" }] }

Ну и да, какой-нибудь analog.com, во исполнение американских санкций полностью блокирующий доступ из России — это куда хуже, чем заблокированный «из России» инстахлам с пейсбуком.

Почитал тут про BGP

https://blog.benjojo.co.uk/post/bgp-path-attributes-grave-error-handling

Такое впечатление, что на протоколы маршрутизации типа этого самого BGP косо смотреть нельзя, а если подышать неосторожно — то ВЕСЬ ИНТЕРНЕТ развалится. А потом нам рассказывают про всякий «интернет вещей», где каждая умная лампочка маршрутизатором работает, ага (ну да, там не BGP, но от этого не легче).

Про принципы

Решил узнать, стою ли я чего-то, как «программист под Android», скорее всего, срежусь на первом же вопросе, про «основные принципы ООП»:

https://itvdn.com/ru/blog/article/250-about-android

С другой стороны, при чем тут Организация Освобождения Палестины?

Люблю поп-психологию

Вот, например, некий «мотивирующий» текстик:

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

И будешь задавать вопрос, а почему я не сделал этого раньше.
Страх приводит к бездействию… Поддерживающий вопрос: а что самое страшное может произойти, если я это сделаю?

Предлагаю простой ответ на этот «поддерживающий вопрос»: «Можно умереть или покалечиться». Что дальше? Кажется, такого продолжения любители мотивирующих цитат не предполагают.

Тем временем попал под лошадь

https://www.hse.ru/best/2023_miem

Точнее, в список «лучших преподавателей» Московского Института Элегантных Мужчин.

Милые наивные жжисты 2003 года

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

Что интересно — про буккаке никто ни слова не сказал! Какие же чистые и наивные люди посылали друг друга на хуй в интернете 20 лет назад!

Про инженерию

Почитал тут прекрасный сайт Fountain Pen Design: Function, Development, Construction and Fabrication:

https://fountainpendesign.wordpress.com/

Советую посмотреть даже тем, кто никогда не интересовался нюансами устройства перьевых ручек — потому что самое интересное там вовсе не это, а подход к проектированию, казалось бы, простых и понятных вещей. Автор, вне всякого сомнения, настоящий инженер — от латинского ingenium — и это заставляет задуматься, может ли называть себя «инженером», скажем, тот, кто никогда в своей работе не сталкивался с противоречиями и ограничениями, вытекающими из простой физики, или не выражал требования вроде «пользоваться должно быть удобно» в виде «измеримых» количественных величин. Все это есть уже в первой главе, Feed Design, где сразу же сочетается «физика» и работа с требованиями.

Из прочего — поорал вот от этого определения «инноваций»:

Many different methods of doing this have been invented, most of them purely for reasons we would today call a “USP” (Unique Selling Proposition), or even, hyperbolically, “a Technological Innovation”: “Our product is better than the competitor’s because of this feature that is different.”

В общем, рекомендую, было интересно.

Шитпост за гранью дозволенного

В одном шитпостерском чатике прокомментировал эти твиты:

А еще можно слова «ебать хохлов» понять буквально :)

за что получил от местной ЛГБТ-общественности немедленный бан. Ни о чем не жалею!

А в этот раз — не про студентов

Скажу только, что такой говнокод пишет не Хундай, там ISO 26262 пока еще чтут :)

uint32_t cur_timestamp, last_timestamp;

cur_timestamp = GET_SECONDS() & UINT16_MASK;
last_timestamp = storage->timestamp;

if (last_timestamp + TIME_DELTA > cur_timestamp) {
    return;
} else {
    // do something
    storage->timestamp = (uint16_t) cur_timestamp;
}

Студентов я за такое бил по рукам спрашивал — а что будет с вашей программой через 71 минуту (когда так мучили 32-битный микросекундный таймер) или через 49 дней (таймер миллисекундный на этот раз, но те же 32 бита)? 16-битный счетчик секунд, кажется, это кококомбо, тут все встанет раком через 18 часов, это уже достаточно много, чтобы не заметить проблему при тестировании, но при этом достаточно мало, чтобы она ебала мозг в эксплуатации.

Извините, но я все про студентов

Студентам магистратуры дали задание, формулировавшееся примерно так: «Представьте себе, что вы технический директор небольшой фирмы, проектирующей электронику (тут пропускаю ненужные подробности); предложите решение поставленной задачи, расчитайте некоторые параметры, укажите плюсы, минусы, подводные камни». Одно из предложенных решений не содержало ни единого расчета, ни единой оценки интересующих клиента параметров, зато сводилось к «давайте купим Cisco/Huawei/Tuya и переклеим этикетки» (ну и пересказу рекламных буклетов этих производителей).

Собственно, вопрос к публике — а куда стоило бы послать такого технического директора?

Про лженауку

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

https://github.com/a-podshivalov/lectures2023/blob/main/exam2.pdf

В принципе, ничего особо сложного — CMSIS-DSP я им показывал, книжку Joseph Yui тоже, так что за разумное время получить 3 балла вполне можно было. Но после экзамена полез читать в Википедии про первооткрывателя электроэнцефалографии, Ганса Бергера — и в общем открылись бездны.

Вот если бы в 1934 году англичане не обратили бы внимания на исследования Бергера и не повторили бы их «независимо» — то не кажется ли вам, что ЭЭГ была бы причислена к «нацистской лженауке»? Этому способствует буквально все — от варварских методов записи и полного невежества Бергера в механике и электротехнике до его пронацистских взглядов. Да в принципе сама идея придавать какое-то значение суммарной электрической активности мозга, а не отдельных нейронов, попахивает некоторой дикостью.

Про экономическую эффективность

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

Но вот увидел я эту картинку — точнее, скриншот с рейтингом зарплат выпускников айтишных специальностей по разным вузам — и немного охуел. Московский Институт Элегантных Мужчин в рейтинге находится на 4 месте, напротив циферками обозначено 220 000 рублей.

Конечно, мои взгляды на рынок труда попахивают трудовой теорией стоимости, почерпнутой из пересказов Карла Маркса и Адама Смита — но среди выпускников за эти два дня я не увидел практически никого, кто мог бы «производить продукт», стоящий этак тысяч 300-400 в месяц (не забываем про все, что кырла-мырла относил к «прибавочной стоимости»). Более того, поразмыслив над одной из работ, я понял, что эта ваша айтишечка глубоко убыточна, но что самое страшное — никто из участников в принципе не осознает глубины этой дыры.

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

Разумеется, сразу был предусмотрен жуткий хайлоад — ведь 3000 центров формирования заказов, в каждом из которых стоит метеостанция, раз в секунду отправляющая данные о погоде, это не ишак чихнул, тут все эти названия и аббревиатуры однозначно нужны! Кстати, если чуть-чуть подумать мозгом — то этот «раз в секунду» совершенно не нужен, достаточно, к примеру, раз в 10 минут — и тогда весь ваш хайлоад усыхает до 5 RPS. Это, кстати, было первое предложение от комиссии :)

Но давайте посмотрим на это все хотя бы даже с точки зрения пилотного запуска на десятке центров формирования заказов. Во сколько обойдется человекомесяц работы программиста и девопса (смотрим в верхнюю табличку!), закупка и установка оборудования, прочие капексы и опексы за некоторый период? Что-то мне подсказывает, что можно легко вылететь за сумму в миллион рублей — а результат будет явно несопоставим.

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