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

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

Как начинающий инженер, представлявший руководство циничного автомобильного завода, управляемого профсоюзами, в первый же день я забрел на цех по производству проводов, чтобы увидеть свой новый рабочий дом - тусклый офисный декор, более близкий по стилю к бетонной камере со старым 386 Компьютер Intel Pentium в углу задыхается от пыли из-за неиспользования. Пытаясь отвлечься, чтобы убрать с глаз невдохновленный вид, я перенаправил свои интересы по соседству на женщину, которая деловито щелкала мышью.

Она энергично щелкала.
Она щелкнула не зря.
Она настойчиво щелкнула.

Я почувствовал страсть, и мне стало любопытно. Только позже я понял, что это была страсть, подпитываемая отвращением к тяжелой работе, которую она выполняла. Я сказал «Привет», и она поприветствовала меня. С зонтиком невежества в качестве своего щита я спросил, в чем заключалась ее миссия. Дружелюбно и открыто она поделилась…

- недостатки устаревшей системы IBM OS / 2 Warp Factory.
- устаревание форм ввода данных программного обеспечения.
кормление семьи или пропуск оплаты машины из-за низкой производительности труда

Я стиснул зубы, но продолжал слушать. Она начала объяснять важность подтверждения статистического контроля процесса, чтобы помочь спасти завод и получить обязательную аккредитацию. Аккредитация в форме QS9000, которую требовали автомобильные компании Большой тройки и их поставщики первого уровня, означала жизнь для завода, жизнь для его рабочих и жизнь для города, который его охватил. Она объяснила, насколько чистые и надежные данные требуют, чтобы она тщательно прочесывала 12–15 таблиц, содержащих 13–15 тысяч (то есть 1 с 4 нулями !!) строк данных на листе, чтобы удалить дубликаты. Упражнение для ошеломления наверняка без явных победителей - за исключением, пожалуй, магазина излишков мышей.

Это занятие без устали отнимало две с половиной недели ее времени каждый месяц… каждый месяц.

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

Мое чутье говорило «Нет».
Мои инженерные инстинкты сказали «Нет».
Мое сердце говорило «Нет».

Я не знал, смогу ли я добиться большего, но знал, что должен попробовать. Годы занятий в Университете Пердью сформировали в моем сознании доску Пачинко, которая допускала только один путь.

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

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

Я загрузил электронную таблицу и просмотрел справку Excel. VBA! Конечно! Visual Basic для приложений - это язык программирования Excel и lingua franca для непрограммистов 1990-х годов. Ой! Для меня это неизведанный мир. Опираясь на мои уроки в колледже и базовые конструкции кода, решение быстро появилось в виде десяти строк кода.

Я вернулся с таблицей, недавно украшенной скромной невзрачной кнопкой макроса, которая противоречила ее истинной силе. Я попросил ее нажать кнопку. Сразу же началась серия экранных вспышек, которые казались минутами, но, скорее, секундами. Она сделала паузу, а затем с насмешкой спросила: «Что это было?». Я ответил: «То же, что и вы». В этот момент ее поведение превратилось в скептицизм. Она сравнила свою более раннюю работу с тем, что выплюнули биты и байты на основе кремниевого стробоскопа. Когда смысл этого стал понятен, она повернулась и сказала самым проникновенным тоном:

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

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

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

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

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

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

В моей карьере это остается моим САМЫМ значимым кодом.

Алгоритм и сама конструкция потеряны во времени и остаются для меня бессмысленными. ВАЖНО то, что десять строк изменили чью-то жизнь. Самое смешное - это, возможно, оказало на меня большее влияние, чем на нее. Для нее она сократила свое время, проводимое со 100 часов до нескольких часов каждый месяц, и снова обрела счастье. Для меня этот опыт вдохновил меня на более чем 15-летний путь развития программного обеспечения, чтобы изменить жизнь людей к лучшему. Карьера, которую я никогда не мог предсказать в тот прекрасный день, когда я закодировал десять строк.