Найти в Дзене
Deep Assay

Эссе: Отладка. Философия

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

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

Как вы понял, это как-то связано с электроникой, так ещё и в работе с командой
Как вы понял, это как-то связано с электроникой, так ещё и в работе с командой

1. Как далеко от нас отладка?

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

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

-2

2. Ограничение в ресурсах

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

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

При этом если бы нас ничего не ограничивало, то почему бы нам не жарить блины на нижнем столике таблеточного ЗУ[1], промазанным маслом и разогретым до 200 °C Поэтому мы принимаем прямое участие в том, чем конкретно сейчас заниматься

1 Зажимное Устройство (ЗУ) предназначенное для зажатия силовых таблеточных приборов типа тиристор или диод, то есть явно для блинов не разрабатывался)

3. Снижение хаоса

Во-вторых, это снижение хаоса, где мы постоянно создаем номенклатуру разных устройств. Чем их больше, разнообразнее, уникальнее, тем больше это создает путаницы. Потому что-либо под каждое устройство нужно писать свой функционал. Либо создавать унифицированные скрипты/код чтобы облегчить работу. Но это создает тоже сложности для дальнейшего поддержания и читаемости. Особенно для тех пользователей, кто впервые сталкивается с устройством. И ему ещё нужно знать, что он обладает нюансами

Вы, как и я, не проходили предмет под названием GTU, LSL или BVT[2]. Так что как минимум должно уйти время, чтобы понять как устроен блок и в чем его особенность. Поэтому отчасти снижение хаоса включает написание унифицированных скриптов, универсальных прошивок, рефакторинг кода. А также в том числе уменьшение номенклатуры компонентов, снижение разнообразия блоков и др.

2 Специфические узконаправленные устройства, служащие для определения по ГОСТ некоторых электрических характеристик силовых тиристоров и диодов. Купить их просто так - невозможно

4. Поиск идеала/истины

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

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

5. Нужно ли что-то запоминать, записывать из прочитанного?

В целом человеческий мозг наиболее уникальный по своей природе с точки зрения восприятия информации. Мы постепенно незаметно изменяем свое мнение под действием информации. Как только наша картина мира рушится или оказывается неверной. Извилинам приходится подстраивать это исключение в свою картину. Либо понимать, что нужно разрабатывать новую гипотезу, которая все объяснит[3]

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

Расскажу о своем опыте в прослушивании книги Талеба – Антихрупкость, которая была со мной на фоне по дороге на работу, занятий в зале, работе по дому. И после этого на год забыл, но был под впечатлением заложенных идей. Спустя время решил её прочитать и понял, что в последние месяцы находился под раздумьями тех же идей. Причем считал, что я самостоятельно к ним пришел, а оказывается просто слышал. Непонятно как это работает, но это работает

3 Из книги Макрейни - И все-таки она плоская!

6. И вы будете совершать ошибки – это нормально

А когда мы по 2 месяца бьемся с проблемой, то наши ошибки сейчас большему научат. Чем если бы мы так удачно занимались запуском и формировали себе ложное понимание устройства мира. Но у нас нет цели знать всю истину, скорее цель отличать истину от неистины. Это не значит на уровне подсознания понимать почему устройство не работает. Но обязаны замечать нашу ограниченность, забывчивость, невнимательность. И видеть, что улучшает продукт, а что малозаметно делает его лучше. Поэтому навык будет, но не сразу, невозможно случайно научиться отлаживать, но затем).

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

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

7. Отличие поиска идеала/истины от баланса

А наша реальность: как сделать объективно самое лучшее устройство. Буквально могущество перед природой и её законами. Ведь зачастую массовый продукт самый сбалансированный. Потому как ещё прокормить стольку народа, или чтобы все были в обуви.

Если мы сместим фокус в экономию ресурсов, то придём в Китай. Если в сторону снижения хаоса, то получим кубик с инструкцией как им пользоваться. Если в сторону познания истины, то узнаем, когда все-таки сломается мультилэм)[4], а телепортом сломаем весьма мир.

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

4 Локальный мем, связанный с исследованиями износостойкости к механическому и электрическому износу пружинных контактов компании Multilam

8. Это не может быть правилами

Отлаживаем мы обычно не в красивых теоретических лайфхаках, а на поле боя: Как нам в процессе отладки принимать решение о дальнейших действиях? Попросить о помощи или пока поправить разъем. Отдохнуть или глубже разобраться в проблеме и устройстве. Возможно, уже стоит переходить нахрапом к следующему шагу. А может все-таки подкинем микросхемку?[5]

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

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

5 Зачеркнуто, потому что подкидывание компонентов при отладке в 95% не поможет, а может и в 97%. Это игра в лотерею

9. Позиция техподдержки в иерархии отладки

На стадии эксплуатации оборудования всплывает все, скажем так, что дурно пахнет, но не сильно воняло). При этом требуется производить отладку, ремонт и т.д. дистанционно. Видя перед собой зачастую сумбурную переписку и смазанную фотку с результатами калибровки CROVU[6].

Можно ли было предвидеть проблемы заранее и не допустить до производства? Да, но не всегда на это есть достаточно времени, либо проверить более глубоко. Потому как проблема может проявляться при особых условиях, либо до нее ещё не добрался Гриша-наладчик)[7]. Поэтому в деятельности команды по запуску мы стараемся узнать от заказчика «что он хочет»? и «что будет, если «то-то, то-то». А также продумать нештатные ситуации и критерии достаточности мероприятий. Каждый из нас по-своему понимает предназначение устройства и его удовлетворительную работу. У каждого инженера весьма разные требования к тому, что должно быть на выходе. Поэтому в идеале нужно учесть все мнения, так как все-таки люди вносят основную ценность в продукт, а дальше подтягивается все остальное

6 Калибровка CROVU в локальной моей среде является самой популярной и сложной калибровкой, которая до недавнего времени вообще не имела автоматического функционала. Обычно всегда есть проблемы с тем, чтобы попасть в погрешности 10%, а также затрачивает большие временные затраты с тем, чтобы вручную снять все данные (2-3 часа)

7 (Имя изменено) Отсылка к тому, что есть такой сотрудник, который удачно "ломает" оборудование, но скорее находит слабые места. А также немного может подгрузить в тот момент, когда уже итак слишком сконцентрирован

10. Аналогия процесса отладки как расследования

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

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

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