Книга: Как пасти котов. Наставление для программистов, руководящих другими программистами

Технологические революции

Технологические революции

«Мыльные пузыри» в рядах программных продуктов регулярно создают излишний шум. Это явление я бы назвал «интеллектуальным зомбированием». Проекты, о которых шли беспрерывные разговоры, не приведшие, однако, к фактической реализации, весьма многочисленны. Упомяну лишь некоторые несбывшиеся обещания и беспочвенные заявления[131].

• Подключенный к сети компьютер за 500 долларов избавит мир от Windows.

• MSN уничтожит AOL (не так быстро – AOL нынче владеет Time-Warner).

• Intuit, несмотря на противостояние с Microsoft, удалось создать более удачный продукт – Quicken.

• OS/2 – это DOS лучше «настоящей» DOS и Windows лучше «настоящей» Windows.

• Разработчики настольных прикладных систем дружно перейдут на Java. (Ну это мы еще посмотрим!)

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

Революции в нашей отрасли, бесспорно, случаются. Впрочем, симптомы грядущих изменений, как правило, прослеживаются задолго до окончательного утверждения новых идей и их воздействия на процесс разработки. Вы должны научиться предсказывать тенденции, обещающие заявить о себе через некоторое время. В «Искусстве войны» Сун Цзу (Sun Tzu) писал:

«Не разбивайте лагерь на сложной местности. Объединяйтесь с союзниками на пересечении крупных путей. Не задерживайтесь на изолированных позициях. Находясь в окружении противников, старайтесь обмануть их. Деритесь только при крайней необходимости»[132].

Следуя этим мудрым советам, с тем чтобы избежать «крайней необходимости», разрабатывайте техническую стратегию революции задолго до наступления самой революции. Сун Цзу говорит о «сложной местности» – полагаю, эта ситуация применима и в разработке программных средств. Домысливая китайского философа, я рекомендую вам в ходе долгосрочного планирования учитывать следующие стратегические проблемы.

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

• Объединяйте усилия. См. предыдущий пункт. Обращайтесь к зарекомендовавшим себя решениям от разных поставщиков – чем больше их будет, тем лучше. Время от времени привлекайте консультантов – пусть делятся с сотрудниками новыми знаниями. Стимулируйте процесс обучения за счет построения силами сотрудников компактных макетов, нацеленных на проверку применимости новых методик к разработке более крупных проектов.

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

Как отслеживать новейшие тенденции? Для этого существует литература, которую нужно читать в больших количествах, и Интернет, пользоваться которым нужно с умом. Выберите несколько надежных источников информации и обращайтесь к ним, как только вам потребуется что-то узнать[133]. А самое главное – путем плотного взаимодействия с начальником и подчиненными выработайте комплексную стратегическую программу, то есть руководство к действию в постоянно меняющемся мире, в котором мы, разработчики, все пребываем.

Оглавление книги


Генерация: 3.907. Запросов К БД/Cache: 3 / 1
поделиться
Вверх Вниз