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

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

Трудно определить самое важное [над чем работать дальше], потому что пространство для решений огромно и сложно сравнивать истории. Но я обнаружил, что теория ограничений - это полезный способ быстро сосредоточиться на важных областях, не вдаваясь в мучительные детали всего бизнеса.

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

1. Цель: процесс постоянного улучшения

Авторы: Элиягу М. Голдратт и Джефф Кокс

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

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

2. Это не удача

Автор: Элиягу М. Голдратт

Это продолжение The Goal. Алекс получил повышение и теперь отвечает за три компании. Прибыль нужно увеличивать, иначе совет директоров продаст компании Алекса. Алекс узнает больше о теории ограничений и о том, как применять ее к другим видам проблем, а не только к производственным проблемам. Он использует свои новые навыки, чтобы еще раз спасти положение.

Из четырех я рекомендую вам прочитать эту книгу последней, если вообще. Он знакомит с мыслительными процессами, которые являются инструментами Голдратта для логического анализа. Я пробовал их, и они действительно мощные, но их изучение требует больших вложений. И я предполагаю, что менее одного процента из вас захотят поднять свое обучение на этот уровень. Вот краткое описание« мыслительных процессов ». И если вы действительно хотите изучить их, я рекомендую Теорию ограничений Голдратта (Х. Уильям Деттмер).

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

Авторы Ди Джейкоб, Сьюзан Бергланд и Джефф Кокс

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

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

4. Проект «Феникс»: роман об ИТ, DevOps и помощи вашему бизнесу.

Джин Ким, Кевин Бер и Джордж Спаффорд

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

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

Мне больше всего понравилась эта книга. Фактически, я не мог оторваться.

Как эти романы помогут вам стать лучшим программистом

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

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

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

Рекомендации к прочтению

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

  • начните с Phoenix Project. Это новейшая книга, она будет самой простой книгой для большинства программистов, и в ней есть отличный раздел ресурсов в конце нового издания.
  • прочтите Скорость далее, если вы все еще хотите узнать больше
  • прочтите Цель, если вы работаете на производстве или действительно хотите прочитать о теории ограничений от человека, который ее изобрел. Не стесняйтесь пропускать все сюжеты о семейной драме (кроме тех, где есть парень Эми, потому что он также является ее наставником) - эти сюжеты мало что добавляют к истории.
  • Если вы решили прочитать более одной книги, не читайте их подряд. Постарайтесь расположить их так, чтобы у вас была возможность применить то, что вы узнали из первой книги, прежде чем погрузиться в следующую.

Выводы

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

Читали ли вы какие-нибудь из этих книг или думали, что могли бы? Я хотел бы услышать ваши мысли в разделе комментариев.

Нравится этот пост? Пожалуйста, «хлопайте» ниже.

Первоначально опубликовано на сайте smallbusinessprogramming.com 12 марта 2018 г.