Человеческий фактор в программировании
Человеческий фактор в программировании читать книгу онлайн
Хорошее программное обеспечение создается людьми. Так же как и плохое. Именно поэтому основная тема этой книги — не аппаратное и не программное обеспечение, а человеческий фактор в программировании (peopleware). Первое издание «Constantine on Peopleware» признано классическим трудом в области информационных технологий. Новая книга Ларри Константина включает все 52 легендарные статьи из предыдущей книги и 25 новых эссе.
Peopleware охватывает все аспекты, связанные с ролью людей в разработке программного обеспечения. Это качество и продуктивность, модели и методы, динамика поведения коллектива, руководство проектами, разработка интерфейсов и взаимодействие между человеком и компьютером, психология и процессы мышления. В данное издание включены два новых раздела, посвященных организационной культуре и юзабилити программных продуктов.
Название оригинала на английском языке: The Peopleware Papers by Larry L. Constantine
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
Самый устойчивый и почитаемый гуру имеет нечто большее, чем стиль, — нечто, чему, вероятно, невозможно научить или научиться. Это харизма. Часто и неверно употребляемое слово «харизма» буквально означает дар богов. Этот дар наделяет некоторых людей способностью побуждать других идти на риск — создавать новое программное обеспечение, или стремиться к 5-му уровню в SEI, или заниматься неиспытанным языком программирования.
По-настоящему харизматические личности — те страстные истинные верующие, которые побуждают приверженцев следовать за собой в горы, в тюрьмы или в места похуже, — наверное, люди другого рода. Лен Оукс (Len Oakes), психолог из Мельбурна, изучающий психологию харизмы, утверждает, что, по сути, настоящие харизматичные гуру очень похожи друг на друга. Основополагающие идеи могут быть совершенно различными, но личности обладают сходным, чрезвычайно твердым центром. Кореш (Koresh), Жюре (Jouret), Раджниш (Rajneesh), Хаббард (Hubbard) — у харизматических лидеров подобного типа кроме всего прочего есть один общий изъян: непроницаемый эгоистичный взгляд на реальность, который может вызывать у других ощущение абсолютной, окончательной, непоколебимой достоверности. В мире, где преобладает двойственность и неоднозначность, достоверность может служить действенным эликсиром. Но, увы, достоверность такого рода основана на выдуманной реальности, которая не связана с реальным миром. Она поддерживается за счет непрерывных усилий по отгораживанию от новых идей, новых сведений и новых аргументов, которые могут поставить под сомнение абсолютную истинность личных представлений.
Под это описание могут подойти некоторые из ярых защитников тех или иных инструментов или методов разработки, однако у большинства истинных харизматических лидеров мало шансов в такой быстро меняющейся и динамичной индустрии, как наша. Чаще случается так, что истинные верующие остаются на улице и проповедуют в пустой аудитории. Хотя, с другой стороны, может быть, быстрые изменения как раз и делают нас столь восприимчивыми ко всякому спасителю, продающему серебряные пули, при помощи которых можно мгновенно создавать приложения без единой ошибки. Подходите, ребята. К каждому волшебному флакону полагается бесплатное программное обеспечение!
И в каждом змеиный жир?
Из журнала Software Development, том 3, № 2, февраль 1995 г.
61
Импресарио
Наш бизнес довольно большой. Даже тем, кто работает в маленьких компаниях, может показаться, что один человек вряд ли способен что-то изменить, а тем более существенно повлиять на ход событий. Я регулярно получаю сообщения от людей, которые жалуются, что не могут оказывать влияние, а их тихий голос — лишь глас вопиющего в пустыне программирования. Они не питают большой надежды на то, что в практике проектирования программного обеспечения что-то улучшится. Некоторые из них являются программистами и разработчиками программного обеспечения, желающими действительно что-то изменить, а не просто создавать больше кода. Другие — руководители, которые благоговеют перед своим техническим персоналом и чувствуют, что вносят меньший вклад по сравнению с работающим у них гением, способным редактировать программу на С в 15 разных окнах одновременно.
Влияние и воздействие может принимать разные формы. Целая отрасль или профессия может измениться благодаря действиям или вкладу одного человека. Эдсгер Дейкстра (Edsger Dijkstra) применил теоретическую работу Бома (Bohm) и Джакопини (Jacopini) к стилю программирования. Своим историческим письмом к редактору под названием «GO ТО Statement Considered Harmful» (Оператор GO ТО считаю вредным) (Dijkstra, 1968 [34]) он вызвал спор, приведший к революции в практике программирования. Молодой Билл Гейтс совершил несколько правильных шагов в создании системного программного обеспечения для зарождающейся микрокомпьютерной индустрии, и наш бизнес радикально изменился. Докторская диссертация Алана Кэя (Alan Кауе) стала основой революционного языка, который помог превратить объекты в новую программную парадигму. В сущности, в основе современного компьютерного программирования лежит совсем немного базовых идей, которые были выдвинуты сравнительно небольшой группой новаторов.
Однако даже самые известные новаторы и создатели, самые заметные инициаторы и зачинатели, самые активные авторы и консультанты не всегда оказывают настоящее влияние. Иногда другие, менее известные и менее почитаемые личности могут оставлять глубокий след. Возьмем, например, импресарио.
Английский — жадный язык, страстно заимствующий слова почти отовсюду. Итальянское слово impresario означает «антрепренер». В свою очередь, оно заимствовано из французского языка, где это слово означает человека, который организует и координирует работу предприятия. Однако в английском языке слово «импресарио» часто ассоциируется с надзором за цирковыми артистами или обозначает хозяина театра. Импресарио руководит не отдельной группой, а туром. Он не исполнитель, а непосредственный начальник, не инженер, а директор лаборатории. Тем не менее значение и важность импресарио очень часто недооцениваются.
Технические специалисты, посещающие Австралию, зачастую поражаются уровню дисциплинированности и искушенности многих групп, разрабатывающих программные приложения. Это не значит, что каждый имеет первый ранг, а все программное обеспечение, как говорят австралийцы, «попадает в цель». Это означает лишь то, что эффективное применение инструментов и системных методов здесь широко распространено.
Все лучшие методы работы уходят корнями в 70-е годы, когда ведущие разработчики программных методов стали посещать Австралию. Поскольку эта страна так мала, а область информационных технологий — еще меньше, то на удивление много австралийских профессионалов-программистов прошли подготовку непосредственно у этих первопроходцев, которые были создателями и основными защитниками современных методов и подходов. Многие из тех студентов, которые рано испытали на себе влияние Константина, ДеМарко (DeMarco), Вайнберга (Weinberg) или Йордона (Yourdon), заняли руководящие позиции или стали независимыми консультантами и профессиональными лидерами, в свою очередь оказывая влияние на современную практику разработки программного обеспечения и приложений.
Формирующую роль в этом процессе культурного изменения сыграли один человек и крошечная организация, проводившая курсы по повышению квалификации. Оба персонажа — человек и организация — мало кому известны за пределами Австралии. Компания называлась DP Education Proprietary Limited, а Деннис Дэви (Dennis Davie) был веселым импресарио, который первым завлек Эда Йордона и Ларри Константина на континент, чтобы научить австралийцев своим новым методам. В то время когда мало кто в Соединенных Штатах даже слышал о структурных методах, а рукопись книги «Structured Design» (Структурное проектирование), известной как «Orange book», еще только предполагалось отдать в печать, австралийцы уже получали этот материал из первых рук. С Дэви было очень приятно сотрудничать, и за эти годы он сумел привлечь к работе в Австралии значительную группу квалифицированных преподавателей и новаторски мыслящих людей. Оставаясь человеком небогатым и малоизвестным, Дэви тихо и счастливо ушел на пенсию и перебрался на Золотое побережье Австралии. Иногда он проводил одно-два занятия в своей компании, которую возглавил его сын. Знал ли он об этом или нет, но Дэви, который умер в начале 1998 года, изменил жизнь многих людей.
За примерами других влиятельных импресарио далеко ходить не надо. Эд Йордон, возможно, больше известен как автор методов, в названии которых фигурирует его имя, или как плодовитый писатель и убедительный демонстратор. Однако самый значительный вклад в данную область он внес в качестве импресарио. Вряд ли будет преувеличением сказать, что на основе структурных методов он создал индустрию. Технологии автоматизированного проектирования и создания программ имеют одни и те же корни.