Category: it

Category was added automatically. Read all entries about "it".

Бритоголовый и С1-97

Вышка нинужна

Вот еще один маленький спойлер к планируемой матерной простыни про образование – довольно узкоспециальное, но занятное наблюдение за юными программистами (жизнь свела меня с выпускниками бакалавриата одного в прошлом считавшегося неплохим ВУЗа). “Высшее айтишное” образование у нас, как выясняется, предполагает довольно мало программирования – допустим, курс по “операционным системам” читается в режиме “сухого плавания”. Я интереса ради прикинул, сколько строк кода нужно написать, чтобы получить диплом по специальности 09.03.01 “Информатика и вычислительная техника” – получилось даже меньше, чем, скажем, на мехмате (который вовсе не программистов готовит!).

В результате свежий выпускник во многих узкоспециальных вопросах не то что “плавает” – барахтается и тонет. Скажем, представление о многозадачности/многопоточности у многих попросту отсутствует, и выпускник не готов толком ни к работе в “народном хозяйстве” (”напиши программку с графическим интерфейсом, выполняющую какие-то расчеты, только чтобы этот интерфейс не тормозил”), ни к продолжению образования и какой-то “научной” деятельности (”полистай CSP Book и распиши, используя формальную запись оттуда, как взаимодействуют потоки в этой программе”).

Но студенты же сами не дураки – они прекрасно умеют пользоваться поиском по headhunter и понимают, что с одними только плохими знаниями C и прекрасными навыками тыкания мышкой в LabView их никуда толком не возьмут! На помощь приходит среднеспециальное программистское образование в виде всяких курсов типа “Java с блекджеком и шлюхами”, “Петухон за три дня”, “Готовим фронтендеров из домохозяек” (и нет, речь идет не о компиляторном фронтенде). В результате весь жизненный опыт начинающего программиста просто кричит о бесполезности высшего образования – и не могу с ними в этом не согласиться, такое образование действительно довольно бессмысленно.

Еще один сложный момент – выпускники экспресс-курсов в интернетах крайне плохо знают “классику Computer science” – и всякие там “проблемы обедающих философов” им вообще незнакомы, а разговор, скажем, об особенностях реализации сортировок вообще выносит мозг (да, вузовскую программу “оптимизировали” настолько, что курсу по алгоритмам и структурам данных места не нашлось). В результате – первокурсник магистратуры в плане знаний по предмету равен примерно второкурснику нормального (идеального?) вуза, на наличие каких-то специальных знаний расчитывать не приходится. Зато о той же многопоточности они могут рассуждать в терминах питоновско-джаваскриптовского async/await – и пожалуй, придется в дальнейшем учитывать такого рода особенности нынешнего айтишного “образования”.

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

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Бритоголовый и С1-97

Кстати, к разговорам про “вендекапец”

Как вы думаете, сколько из примерно 20 студентов магистерской группы по “околоайтишной” специальности уверенно работают в консоли Linux, или сколько из них пользуются линуксами в качестве основной рабочей системы?

Правильно – 2-3 человека. Есть еще несколько “маководов” (из них примерно половина умеет пользоваться “Терминалом”), остальные умеют работать исключительно в Windows и даже tab completion воспринимают, как большое колдунство.

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Бритоголовый и С1-97

Хабр продолжает скатываться в дерьмо

Как вы думаете, можно ли в 2020 году писать статью о том, как поднять на VDS серверную версию Windows и “в несколько кликов мышки” настроить там торчащую голой жопой в интернет SMB-файлопомойку? Оказывается, можно:

https://habr.com/ru/company/ruvds/blog/529970

Заодно оцените количество скриншотов.

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Бритоголовый и С1-97

Еще маленько наброшу

А то, похоже, господа стартаперы сочли мой коммент не очень добрым троллингом. Короче говоря, как учат нас ГОСТы 34.602-89 и 34.601-90, всякий раз, когда вы делаете что-то околоайтишное – вы занимаетесь созданием или доработкой автоматизированной системы. Жить по ГОСТам тяжело, и не очень-то модно – но иногда полезно примерять формулировки оттуда на свою деятельность.

Скажем, что такое “пилотный проект”? Заказчик обычно считает, что это – в терминологии ГОСТ – “проведение предварительных испытаний”; исполнитель – как в примере по ссылке – “проведение необходимых научно-исследовательских работ”. Заметили, как все стало ясно, как только мы заменили ни к чему не обязывающую формулировку “пилотный проект” на вполне конкретные определения?

А знаете, как помогает использование ГОСТ 34.602 как “чеклиста” при написании всяких ТЗ, даже неформальном? Особенно если у вас принят всякий с(к)рам и аджайл – вовремя вставленное “а не забыли ли мы про требования по сохранности информации при авариях хороший бекап” сразу представит вас в очень выгодном свете, как думающего о перспективах проекта человека.

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

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Бритоголовый и С1-97

Орфографический вопрос

Зовут в некий стартап. В зазывалке написано что-то в духе “на подобие каршеринга на основе технологии blockchain”. Как правильно послать? Сначала сообщить, что блокчейн технически бессмысленен и должен быть заменен на традиционную базу данных, а потом отругать за “на подобие”, или сначала обложить матом за орфографию, а потом написать “и кстати, нахуй ваш блох член никому не сплющился”?

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Бритоголовый и С1-97

Про сети и симуляторы

Интересует меня, кстати, один вопрос – довольно узкоспециальный, но надо записать, чтобы не забыть. Вот есть такой довольно популярный среди исследователей сетевой симулятор NS-3 – в котором есть реализации TCP/IP стека, MAC и PHY уровня Ethernet, WiFi и вообще черта лысого. Есть, опять же, ставшее в последнее время популярным направление исследований – сети на основе LoRaWAN. Исследования там самые разные – от прикидок уровня “карандашом на бумажке” до изучения работы сети с использованием симуляционной модели – в том самом NS-3:

https://github.com/signetlabdei/lorawan

Так вот, для построения этой модели нужно, фактически, реализовать довольно нетривиальный “сетевой сервер” – и это в LoRaWAN, полное описание которого – где-то 70 страниц текста. И вот возникает вопрос – не офигевал ли кто-то от того, что нужно дважды проделать одну и ту же работу, сначала сделав ее в симуляторе (с его довольно оригинальной моделью программирования), а потом повторив это в “железе” – точнее, в прошивке устройства. Прямо вот интересно, можно ли сделать какой-то промежуточный слой между какой-нибудь встраиваемой операционкой и моделями сетевых устройств из NS-3, например, или наоборот – впилить в NS-3 полноценную реализацию сетевого стека откуда-то еще (применительно к LoRaWAN можно было бы взять хотя бы “официальный” LoRaMAC-Node).

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Бритоголовый и С1-97

Тут в Штатах выборы

А я вот внезапно понял, отчего вдруг разгоняют истории про инженеров из Индии в Cisco, которых обижают менеджеры из высших каст.

https://www.npr.org/transcripts/915299467

Кто идет у Байдена вице-президентом? Американоиндианка Камала Харрис, представитель угнетенного меньшинства? Левачки и blmщики всех мастей пищат от восторга!

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

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Бритоголовый и С1-97

Делайте ставки, господа

Продолжаю тут развлекаться с LoRaWAN, и нашел просто невъебеннейшую ошибку в RIOT – точнее, в промежуточном слое между операционкой и “эталонной” LoRaMAC-Node. Ошибка там пряталась довольно давно, но то ли никто не обращал внимания, то ли списывали на “редкие разовые глюки” – в конце концов, возникала она только при довольно активном обмене в сети (хотя в принципе возможна и “на столе”).

Дело в том, что в одной из функций этого промежуточного слоя никто не обратил внимания на то, что драйвер трансивера SX1276/77/78 иногда может вернуть при вызове recv() отрицательное значение, сигнализирующее об ошибке – и радостно записывали то, что он возвращает, в переменную типа size_t – а дальше при попытке прочитать почти 4 гигабайта все радостно валилось с затиранием немалой части памяти и невнятным сообщением об ошибке.

Видимо, по “закону парных случаев” кто-то увидел такое поведение два месяца назад – но все эти два месяца разработчики “линукса для интернета вещей” мяли сиськи:

https://github.com/RIOT-OS/RIOT/issues/14962

Я, в отличие от них, был прямо заинтересован в исправлении ошибки – и сделал это, поправив буквально пару строк кода:

https://github.com/RIOT-OS/RIOT/pull/15355

Ошибка, тем временем, довольно критичная – она может полностью вывести из строя любое устройство, использующее встроенную в RIOT реализацию LoRaWAN. Вдвойне критично то, что альтернативного варианта стека LoRaWAN в RIOT не было примерно до конца прошлого года – и то назвать его полностью пригодным к работе сложно, скажем, полноценной поддержки “региональных параметров” там в официальной версии пока не просматривается. В сухом итоге – негодяю-хакеру достаточно просто послать вашему устройству в нужный момент специально сформированный пакет (подозреваю, что соорудить его можно практически штатными средствами), чтобы оно выпало в HardFault.

С другой стороны, зная отношение авторов RIOT к присылаемым им багфиксам – вангую те же два месяца жевания соплей до каких-то осмысленных телодвижений в отношении моего pull-request. Впрочем, я со своей стороны все необходимое сделал, и даже поправил строчечку, чтобы не ругалась их система Continuous Integration. Буду дальше следить за происходящим.

А вы как думаете – примут или замнут? И не стоит ли закинуть в окрестностях FU Berlin и HAW Hamburg пару девайсиков, срущих в эфир пакетами с битой CRC?

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Бритоголовый и С1-97

Кризис к нам приходит

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

https://habr.com/ru/company/avito/blog/525384/

А тем временем рыночек порешал и первыми на мороз пойдут… кто бы вы думали?

https://www.kommersant.ru/doc/4539560

Дальше будет еще хуже.

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).

Бритоголовый и С1-97

Обожаю, блядь, фронтендеров

Если вы думаете, что в мире опенсорсных платформ для IoT все хорошо, и всякие решения от непонятных людей за многоденег не нужны – вы глубоко ошибаетесь. Только что наблюдал, как вкладка в MS Edge с какой-то из страничек веб-интерфейса ChirpStack отъедала ресурсов больше, чем показывающий красивые картинки SDR Sharp.

А еще выяснилось, что установка InfluxDB на GatewayOS – образ флешки для Raspberry Pi с установленным и настроенным ChirpStack – занятие для сильных духом; есть мнение, что поставить ChirpStack отдельно на голую Raspbian будет едва ли не проще.

Хоть садись и сам все пиши.

Запись опубликована в блоге Шуры Люберецкого. Вы можете оставлять свои комментарии там, используя свое имя пользователя из ЖЖ (вход по OpenID).