Архив февраля 2020

Готовимся к 1000 верст

Запасся спортивным топливом.

IMG_20200221_222109

Кроме того, пообещал сплясать в кирзачах под Верку Смердючку.

Законы и стандарты

Был свидетелем дискуссии, если можно так выразиться, двух “околоайтишников”, либерала и ватника, по поводу госпитализированной из-за короновируса питерской дамы (той, которая шпилькой открыла замок и сбежала из-под карантина, а потом была отловлена с участием полиции). В ходе спора звучали апелляции к Конституции, правам человека и всему такому – но за полчаса никто так и не удосужился сослаться ни на 52-ФЗ “О санитарно-эпидемиологическом благополучии населения“, ни даже найти на сайте питерского управления Роспотребнадзора ТО САМОЕ решение суда:

http://78.rospotrebnadzor.ru/c/document_library/get_file?uuid=107d3b41-fb9b-45b2-9cf1-49efeb12b15c&groupId=935484

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

PS Демонстрация нужных статей 52-ФЗ и зачитывание с выражением нескольких абзацев из постановления суда произвела должный эффект, либерал для проформы только поворчал что-то про “незаконное лишение свободы”.

Вот интересно даже

Кто заказал вебинар по трансляции кода из Matlab с упором на процессоры Миландр?

https://exponenta.ru/events/avtomaticheskaya-generatsiya-koda-dlya-ekb-milandr

Тренинг по решению проблем

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

IMG_20200218_195126_238

Например, диаграмма направленности антенны ассоциируется у меня с хуем. Если положить этот хуй на любую проблему – то и решать ее не придется!

Ничего не скажешь – работает психологический подход, прекрасно работает!

Шедевры контекстной рекламы, продолжение

Сказал в фейсбучной дискуссии что-то вроде “ежика родить” и теперь мне показывает рекламу пренатального скрининга.

Про гиперболы

Идет разговор про обработку текста, машинное обучение и все такое. Наши ихним:

- А вы умеете обнаруживать метафоры?
- А что такое метафоры?

(тут возникает понимание, что дальнейшая беседа клеиться не будет, но может, виноват языковой барьер и русский акцент?)

- Ну… это что-то вроде гиперболы, но…
- (они услышали знакомое слово!) Да, мы умеем обнаруживать гиперболы! И эллипсы! (тут внутренне напрягаешься – сказали они ellipsis или ellipses) И даже параболы!

Дальше их недоматематики объясняют нашим филологам сложности классификации кривых второго порядка, но тебе уже все равно, ты делаешь facepalm.

В порядке бреда

Интересно, а можно ли на жирном ARM Cortex M4 крутить “полноценную” математическую модель какого-нибудь теплого лампового гитарного усилителя? Вот навскидку – предположим, что тактовая частота у нас около 100 МГц, частота оцифровки – ну, 100 кГц за глаза. Можно ли в 1000 инструкций на отсчет АЦП засунуть какую-то полноценную обработку оцифрованного сигнала? Мне кажется, что хватит с большим запасом.

Раз уж про ЕСПД и прочие ГОСТы вспомнил

В режиме “идея для стартапа” – взять OpenUP, перевести на русский, скрестив с ГОСТ-ами 34 серии (он на них довольно хорошо ложится), добавить шаблоны документов. Кто сделает – может произвести себя в ранг общероссийского гуру и собирать вокруг себя секту наподобие ТРИЗопоклонников.

ЕСПД и программисты

Напишу-ка я очередную проповедь про программистов – точнее, об их взаимодействии с внешним миром. Глупый и наивный программист думает, что конечный результат его работы – это код программы. Программист, побитый жизнью, обычно догадывается, что код этот сам по себе малоинтересен, и к нему нужна еще какая-то документация. Если это удается сочетать с живительными пиздюлями менеджмента – то к проекту прикручивается какой-нибудь Doxygen или Javadoc, и на выходе получается автоматически сгенерированная портянка рафинированной чуши.

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

Примерно тут возникает еще одна проблема – “код и документация” нужны заказчику в удобоваримом для него виде. Скажем, “код валяется в разных местах на диске у Васи, документация – в виде обрывков бумажек в столе у Пети” ни одного заказчика не устроит; “исходники и Javadoc лежат на гитхабе там-то и там-то” – приемлемый вариант для “технарей”; “все документы по проекту находятся в CVS-системе фирмы, а также записаны на компакт-диски и находятся в двух разных помещениях архивов” – вариант повышенной энтерпрайзности, ну и так далее.

И тут мы приходим к одной поучительной истории – про ЕСПД. Идея 19 и 34 серии ГОСТов, если вдуматься – это решение проблемы, описанной в предыдущем абзаце. Если говорить на языке более современных подходов к разработке ПО – типа RUP или OpenUP – то они описывают “артефакты”, которые должны возникнуть в ходе разработки программы или автоматизированной системы, и требования к содержанию и оформлению этих “артефактов”, позволяя заказчику, разработчику и потребителю ПО говорить “на одном языке”.

Проблем с ЕСПД две – откровенный саботаж всякого процесса документирования своего творчества со стороны программистов и (как позже увидим, непосредственно вытекающая из этого) устарелость стандартов. Но начнем мы все же с саботажа. Давайте попробуем “изготовить” полагающийся по ГОСТ 19.401-78 “Текст программы”. Поймайте программиста и попросите у него “текст программы”. Ответом вам будет либо набор файлов (хорошо, если он сопровождается каким-нибудь Makefile), либо, если вы используете много “чужого” кода – долгая дискуссия, где заканчивается ядро Linux и начинаются ваши доработки. Дальше вы смотрите на ГОСТовские требования и понимаете, что распечатка ядра Linux или какого-нибудь веб-фреймворка на бумаге – это, конечно, прикольно – но отдел технической документации у вас это не примет.

Дальше выясняется – со слов коллег, сдававших сделанную по ЕСПД документацию раньше – что архив и нормоконтроль удовлетворятся сделанным в Word документом, содержащим что-то, похожее на исходники программы. Не вопрос! – думаете вы, и лихим Ctrl+C – Ctrl+V набиваете вордовский шаблон неработающими исходниками. Собственно, где-то на этом этапе в 1937 году вас бы ждал расстрел за подлог документов и саботаж (кстати, вы никогда не задумывались, что сокращение ИТР обозначает одновременно инженерно-технических работников и иностранные технические разведки?) – но сейчас времена более вегетарианские. и за такое очковтирательство никому ничего не будет.

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

Примерно так же происходит подготовка любых других документов “по ГОСТ” – вместо минимально читаемого Javadoc “Руководство программиста” будет куцей компиляцией форменного бреда; “Руководство системного программиста” будет описывать все, кроме того, что действительно нужно. В конечном итоге на написание документации будет посажена “девочка”, совершенно не задумывающаяся о сути производимой работы, но неплохо умеющая писать формально удовлетворяющую требованиям нормоконтроля документацию.

priplyli

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

В принципе, с чем-то подобным столкнулись и обычные инженеры, конструктора и так далее – но в отличие от программистов, там довольно быстро осознали, что стоит привести ГОСТы в соответствие с реальностью XXI века – поэтому в ЕСКД где-то в начале 2010-х легализовали, к примеру, “электронный документ” (собственно, ГОСТ 2.051-2006 приняли еще раньше, как несложно догадаться – в 2006). Технически продвинутые программисты – наоборот, предпочитают оставаться в реалиях 1970-х годов по причине полной неспособности взаимодействовать с “нехорошими бюрократами”. Остается их с этим поздравить.

PS Написано по мотивам личного опыта автора, your mileage may vary.

За телеком, не чокаясь?

Почитал тут телеграм-канал “За телеком”, тесно связанный с “Обществом защиты интернета” (кстати, квест! Найдите на сайте, кто же, собственно, входит в это самое “общество”). Вот вроде бы ребята изображают какую-то организацию, радеющую за права российских айтишников – но при этом демонстративно ссорятся с любыми государственными органами, обзывают всех мудаками и так далее. А потом еще удивляемся – что это из российского околайти в Кремле знают только старика Касперского, а всех остальных считают какими-то недопанками-анархистами?

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

Про метро

Не знаю даже, любить или нет станцию Беговая за совершенно шедевральное объявление:

Чендж хиа ту диван! Следующая станция Полежаевская!

Вроде и хочется на диван и полежать, а с другой стороны – на следующей выходить :(

Про модные V2V communications

Наткнулся тут на ролик, где показывают, как некие студенты слепили на ардуинах и неизвестных радиомодулях прототип системы связи между транспортными средствами (V2V communications):

Говорят, что этот проект занял в проводимом фирмой Valeo конкурсе инноваций второе место (а авторы получили денежный приз в 10 000 $) – но вообще я не углядел здесь ничего особо инновационного. Безо всяких “инноваций” в ралли-рейдах уже давно, с 2005 года, используют приборчик под названием Sentinel – делающий практически все, что с большой помпой представлено в ролике, причем это не творчество кружка “Умелые руки”, а вполне себе серийно выпускающееся устройство.

Патч брамина

Почти как патч Бармина, но в переводе на хинди.

Немного жопоголизма

В комментах у [info]sanches обнаружил некий не лишенный логики прогноз смертности от китайского коронавируса (опубликован 31 января, так что можно сравнить с фактической смертностью):

31 января – 215 (факт – 213)
1 февраля – 250 (факт – 259)
2 февраля – 300 (факт – 304)
3 февраля – 400 (факт – 361)
4 февраля – 570 (факт – 427)
5 февраля – 780 (факт – 492)
6 февраля – 1350 (факт – 565)
7 февраля – 1770 (факт – 638)
8 февраля – 2250 (факт – 724)
9 февраля – 3190 (факт – 813)

https://trueview.livejournal.com/219857.html