Эффект плато. Как преодолеть застой и двигаться дальше - читать онлайн книгу. Автор: Боб Салливан, Хью Томпсон cтр.№ 60

читать книги онлайн бесплатно
 
 

Онлайн книга - Эффект плато. Как преодолеть застой и двигаться дальше | Автор книги - Боб Салливан , Хью Томпсон

Cтраница 60
читать онлайн книги бесплатно

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

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

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

В 1999 году, когда Вайзеру было 46 лет, ему диагностировали рак желудка, и врачи отвели ему всего шесть месяцев. Xerox PARC разработала специальную технологию диктовки, чтобы он смог написать книгу, на которую ему раньше не хватало времени, однако он не успел закончить ни единого абзаца. Рак прогрессировал с невероятной скоростью, и он умер три недели спустя, оставив без ответа вопрос о том, как нам обрести покой внутри технологической бури.

8. Гибкость
Второе действие,

или Медленные падения и едва заметные отличия


Кент Бек жил вне законов. Кое-кто мог бы даже назвать его анархистом.

Живи он в XVI веке, не исключено, что именно он, а не Коперник, заявил бы, что Земля вращается вокруг Солнца. Когда Хью впервые услышал выступление Бека, эскапизм его философии и наглость его утверждений были настолько резкими, что показались заслуживающими внимания. Этот человек мог вполне серьезно утверждать, что мосты нужно строить не по готовым проектам, а ориентируясь на текущие обстоятельства. Он говорил множество столь же странных вещей, однако самым удивительным было то, что люди ему верили.

Как и все успешные революционеры, он искал союзников. Они встречались и обменивались планами свержения устоявшихся порядков. Во время одного из таких собраний в Сноуберде Бек вместе с шестнадцатью другими людьми подписал Манифест гибкости {138}. Это был один из самых еретических документов в области разработки программ. На дворе стоял 2001 год.

Бек – создатель подхода под названием «экстремальное программирование», и начало его книги Extreme Programming Explained («Экстремальное программирование в деталях») напоминает скорее политическую доктрину, а не технический текст для разработчиков программ {139}:

«Extreme Programming (XP) напрямую связано с социальными изменениями. Оно помогает нам отказаться от привычек и методов, которые были полезны в прошлом, однако теперь не позволяют нам сделать свою работу в наилучшем виде. Все дело в том, чтобы отказаться от того, что защищает нас, однако при этом мешает нашей производительности».

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

До появления Манифеста гибкости крупные проекты по разработке программных продуктов были жестко структурированы и следовали модели под названием «водопад» {140}. В этой системе разработка разбивается на несколько монолитных этапов, один из которых последовательно переходит в другой. Этот же крайне структурированный и методичный подход используют инженеры при проектировании и строительстве небоскребов (проект, строительство, тестирование). И, как и при строительстве небоскреба, разработка программы могла занимать до нескольких лет. Рабочие комитеты устраивали встречи, на которых согласовывались все детали программы, после чего программисты суеверно стучали по дереву. После завершения работы над набором основных свойств они принимались за дело, выполняя одно задание за другим. В это время тестеры готовились перехватить у них работу, а члены руководящего комитета пытались справиться с прыгавшим от напряжения кровяным давлением. Когда результаты передавались тестерам для поиска ошибок, все опять принимались стучать по дереву. В это время, когда после первого заседания комитета уже проходило около 18 месяцев, кто-то мог рассказать команде о выходе на рынок Netscape или изобретении Facebook, после чего все начальные планы комитета уже оказывались полностью устаревшими. Разумеется, при наличии согласованного и утвержденного набора свойств о пути назад не могло быть и речи. И тогда часть разочарованных программистов уходила из компании, а маркетинговая команда принималась размышлять и обсуждать, как получше солгать о том, на что действительно способна программа.

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

Вернуться к просмотру книги Перейти к Оглавлению Перейти к Примечанию