БЕСЕДЫ О ПРОГРАММИРОВАНИИ
Любой компьютер, несомненно, лучше, чем его отсутствие. Однако, когда на миллионах корпоративных настольных систем стоит что-то вроде Windows З.х, не следует рассчитывать, что Windows NT, Windows 95 или OS/2 сумеют пробить себе дорогу только за счет улучшенной производительности.
Питер Коффи
То же самое можно сказать и о противопоставлении графических пользовательских интерфейсов текстовым или объектно-ориентированным инструментам разработки - традиционным старым технологиям. Почти про все можно сказать, что это лучше, чем ничего. Но всегда ли новое лучше старого?
Именно здесь особенно ясно видны слабости большинства специалистов по "информатике", занимающихся научными исследованиями. Разговоры об улучшенной производительности, возврате вложений и других деловых выгодах в нашей отрасли почти не имеют смысла - в общем-то, это простительно, поскольку у нас есть обыкновение совершенствовать технологию так быстро, что времени до появления следующего поколения продукта оказывается недостаточно даже для подсчета выгоды от предыдущего.
Однако как разработчики программ и поставщики платформ мы должны думать о том, что еще может быть значительно улучшено. Не так давно создать простую программу было гораздо труднее, чем описать ее. Было важно аккуратно исполнять несложные задачи и не замахиваться на слишком многое, чтобы не выйти за пределы ограниченных возможностей доступного аппаратного обеспечения. Концентрировать свое внимание на коде было вполне разумно.
Чем ближе мы подходим к тому, чтобы создать спецификацию на исполняемый код, тем меньше чести быть способным кодировщиком. Нам приходится уделять больше внимания решению сопутствующих проблем подручными методами. По мере того как аппаратная часть становится все быстрее для каждого установленного уровня затрат, приложение может решать все больше задач достаточно быстро для того, чтобы затраты времени не лишали работу смысла.
Чем больше возможностей выбора, тем старательнее следует исследовать вопрос о том, какое начинание окажется самым ценным.
Было бы легче, если бы мы старались попасть в мишень, которая не так переменчива, как человеческое сознание. При помощи живых людей безумно трудно измерить, насколько эффективна технология - это доказали знаменитые эксперименты, проведенные в 50-х годах на заводе Western Electric в Хоуторне (шт. Калифорния).
МЯГКИЙ СВЕТ
Часть работников этой фабрики отделили от основной группы и предложили им "улучшенное" освещение, в результате чего производительность их труда возросла. Когда освещение сделали прежним, производительность продолжала расти. Когда света стало примерно столько же, сколько его бывает в ясную лунную ночь, производительность все еще росла.
Исследователям хватило ума понять, что они изучают не эффект, создаваемый освещением: они имеют дело с эффектом заинтересованности работников. Хотел бы я знать, сколько компьютерных приложений было одобрено путем измерения производительности труда работников до и после без учета описанного выше эффекта.
Для того чтобы вести такую статистику, не нужно быть доктором наук: это просто вопрос выбора соответствующих объектов эксперимента. Но у многих ли разработчиков приложений есть в распоряжении достаточные ресурсы, время и решительность, чтобы провести эксперимент должным образом, при том что неконтролируемый эксперимент наверняка приведет к более впечатляющим результатам?
Некоторые приложения взаимодействуют не с людьми, а с менее эмоциональными партнерами типа серверов баз данных. Впрочем, в экспериментах на производительность, при которых анализируются данные из этой области, есть свои ловушки - мы поговорим об этом в следующий раз.
Связаться с Питером Коффи можно через MCI Mail по адресу: 357-1756, или через CompuServe по адресу: 72631,113, или по Internet: 3571756@MCIMAIL.COM.
ПИТЕР КОФФИ