О программах, компьютерах, людях и дорогах

   Компьютеризация общества вовлекла в процесс взаимодействия с компьютером существенную часть населения. Количество управленцев сейчас превысило 30% трудоспособного населения нашей страны. Подавляющее большинство предприятий и фирм располагает компьютерами. Более половины управленцев и значительная часть служащих использует в своей работе компьютер. В стране - около 100 млн. трудоспособного населения, 30 млн. управленцев, 15 млн. используют компьютер при парке компьютеров более 10 млн.
   Можно сказать, что столь желанная компьютеризация народного хозяйства нашей страны состоялась (хотя бы там, где еще сохранилось это «хозяйство»). Предложение на компьютерном рынке устойчиво опережает спрос. Сферы влияния поделены и ниши определены, как по “железу”, так и по “мягким изделиям”. Определены и лидеры рынка в нишах и регионах. Как и полагается, в каждой из ниш - их несколько, и они даже иногда вступают в схватки, подобные борьбе сумо, чтобы вытолкнуть друг друга с освоенного пятачка.
   В секторе компьютерного “железа” ситуация достаточно понятная, хотя и всплывают спорадически в отдельных изданиях строго ориентированные статьи о превосходстве российского brand name над всякими американскими компаниями типа COMPAQ и DELL (например, в “Известиях”, № 112 от 19 июня 1996 г.), но на них мало кто обращает внимание.
   Казалось бы в области программного обеспечения ситуация тем более ясная: отечественные производители мирно сосуществуют в своих секторах и нишах, куда вход иностранцам фактически заказан, а где нет российских - там конкурентов выдавливает Microsoft, сохраняя картину всеобщего умиротворения производителей программных продуктов.   
   Однако есть вопросы, которые связаны не столько с проблемой сбыта программной продукции производителем, сколько с проблемой выбора и дальнейшего использования этой продукции потребителем.
   Как и везде, здесь есть полюсы.
   На одном полюсе, потребитель не располагает значительными средствами, но у него существует потребность, которую он хочет удовлетворить за минимальную цену. Эта ситуация подобна владельцу небольшого садового участка, который с его помощью пополняет домашний бюджет. Для перевозки плодов своего труда он приобретает “Запорожец”. Разумеется, вопрос о комфорте, сервисе и скоростных показателях здесь не встает.
   Другой полюс.
   Потребитель столь велик, богат и могуч, что не в состоянии рассмотреть и определить свои потребности в столь безразличной для него области, как автоматизация учрежденческой деятельности. Поэтому ради приличия создает подразделение в этой области, выделяет ему какой-то бюджет и навсегда о нем и его проблемах забывает.
   Нам не досуг анализировать состояние полюсов, там все предельно ясно. Другое дело - ситуации, возникающие между этими полюсами.
   Программы выбирают люди, исполняются они компьютерами, а о дорогах мы поговорим отдельно.

ПРОГРАММЫ
   Программа для непосвященного - как стихи на неведомом языке: звучат притягательно и загадочно, хотя смысл неясен. Дают пищу для воображения и мечтаний о тайном, а после их перевода подчас оставляют горькое разочарование.
Без сомнения, компьютерные программы - это авторские произведения. Чем яснее выражена в них авторская концепция, тем они целостнее и понятнее тем, кто их использует. Судить о достоинствах и недостатках авторской концепции - дело неблагодарное.  «Время им – судия»… Поэтому не будем о божественном, поговорим о земном, т.е. об использовании программ.
   Программы “пишут разные... иногда прекрасные, чаще бесполезные”. Не надо думать, что эти строки относятся только к разработчикам программ. К ним как раз в меньшей степени. Стоит вспомнить, что программа автоматизации - это инструмент, который надлежит освоить, дабы он стал полезен. Иначе он может уподобиться прекрасному “Бехштейну”  в зале “нового русского”.
   Люди иногда покупают инструменты, не умея их использовать, - на то могут быть разные причины. Однако они редко винят инструмент, если не достигают желаемых результатов.
   Освоение инструмента предполагает определенные затраты времени, умственных усилий и, в конце концов, некоторых способностей. Не пройдя обучения вождению автомобиля, не получишь лицензию на право управления им. А ездить на машине хочется! Это вынуждает затратить время и усилия независимо от желания. Если же такого вынуждения нет, человек всегда найдет более приятное времяпрепровождения.
Изобилие денег и поверхностные представления о культуре побуждают нувориша украсить интерьер своего дома дорогим роялем, но не заставят его потратить время на обучение игре на нем. Рояль для него, как подобранные дизайнером по цвету корешки книг в библиотеке, - только украшение интерьера.
   Программы для управления предприятием, к сожалению, не могут служить украшением интерьера офиса. Если только их название, говорящее о зарубежном происхождении и заоблачной цене, греет душу владельцу мечтами о возросшем статусе и капитализации его компании.
   Очень часто в программах видят не инструмент, а желаемый автомат для совершения необходимых операций.
   Высококачественный продукт, созданный для профессионального использования, при попадании в руки неподготовленного пользователя не только не представляет заложенной в него потребительной стоимости, но имеет потребительную стоимость ниже, чем простой продукт, но созданный для новичка.
Мало какой не только профессионал, но и любитель средней руки удовлетворится качеством снимков, сделанных "Polaroid"ом. Однако большинство людей, которые не только не хотят становиться профессионалами, но и просто не хотят тратить даже минимум времени на обучение фотографированию, получаемые моментально снимки вполне удовлетворят, так как они получаются мгновенно и без особого труда. 
Точно так же и в программных продуктах. Существует много людей, не желающих ни обучаться программированию, ни даже изучать ту область, в которой протекает их деятельность. Они не желают становиться профессионалами. Их интересы лежат в другой области. В данной же им надо получить результат, пусть даже невысокого качества, но моментальный.
   Если несведущему человеку дать высококачественную профессиональную технику, в которой, как правило, существует очень мало автоматизма, то он отвергнет ее со словами: «Зачем мне такая техника? Она почти ничего не умеет делать!»
Подчас человеку бывает свойственно переносить на орудие или инструмент свою квалификацию. Не "Я не умею ничего делать с этим аппаратом", а "аппарат ничего не умеет делать!"
   Кто хочет получить программный продукт, который позволит выразить максимум своего профессионального мастерства, тот ищет программу со многими возможностями, которые заключаются не только в богатстве и разнообразии алгоритмов, заложенных разработчиками на основании достоверного знания предметной области, но и в ее быстродействии и, главное, надежности. 
   Кто же хочет получить минимум необходимого, не прикладывая практически никаких усилий, тому нужен конечный автомат с минимальным числом возможных настроек. Такое пожелание естественно для предпринимателя с небольшим бизнесом, ведущего учет в тетрадке и в голове, но обязанного государством предоставлять отчетность, о правилах формирования которой он понятия не имеет и не хочет иметь.
   Ситуация с отчетностью постепенно улучшается, поэтому в дальнейшем мы в наших рассуждениях не будем учитывать этих горемык. Будем говорить о тех предпринимателях, для кого актуальный и точный учет дает надежду не только на увеличение прибыли, но и подчас на выживание на рынке в условиях реальной конкуренции.

КОМПЬЮТЕРЫ
   Прошло то время, когда персональный компьютер был диковиной, цена которой относила его к основным средствам. Разница в цене компьютеров отечественной сборки и импортных могла достигать двух раз. Большинство предпринимателей вынуждены были учитывать затраты на "железо" в планах автоматизации, умеряя пыл АйТи-директоров.
   Дорогостоящий, а потому ограниченный ресурс, всегда влияет на способы его использования. Разработчики программ учитывали этот аспект и старались вывести на рынок решения, минимизировавшие затраты на "железо". Стала популярной технология "клиент-сервер", позволяющая при наличии достаточно мощного компьютера, используемого в качестве сервера в локальной сети, оснастить пользователей дешевыми компьютерами в усеченной конфигурации с установленными на них пользовательскими программами в виде "тонкого клиента".
   Многим казалось, что найденное решение позволит эксплуатировать его десятилетиями, не производя дополнительных вложений, но рынок был против!
Известное сотрудничество двух фирм, обозначаемое термином WINTEL, лишило пользователей таких надежд. Новые характеристики "железа" стимулировали новые потребности "софта", которые уже не могли быть реализованы на старом "железе", и наоборот.
   Эта гонка вынуждала пользователей регулярно обновлять компьютерный парк, что становилось все более накладно владельцам бизнеса. К этому же их побуждали разработчики программных приложений, чьи новые версии программ не могли использоваться в старых операционных средах на устаревших компьютерах. 
   Однако всему когда-то приходит конец. Пришел конец и компьютерной гонке. Ни новые компьютеры, ни новые версии операционных систем не добавляли существенных преимуществ при использовании офисных программ. Новые компьютерные гаджеты были не способны полностью вытеснить традиционные десктопы. Рынок предлагаемых программ сжался и обновление парка компьютеров вошло в нормальное русло простого воспроизводства, так как ничто не побуждало к массовой замене компьютеров. 
   Тем не менее на рынке еще витает дух гонки за гигагерцами и нанометрами. Разогнать процессор до двух, трех, а то и четырех гигагерц - это ли не подвиг? А разместить на нем до восьми ядер - это ли не круто? Честь и хвала технологиям, позволяющим достичь таких вершин. Есть только один вопрос - зачем? 
Приведу пример реплики на заметку по поводу разработки отечественного процесора.

Размышления по поводу нового российского процессора «Эльбрус-4С»

    Однако, иронизирует издание, благодаря запуску процессора «Эльбрус-4С» у чипа Intel Pentium 2006 года наконец-то появился конкурент.
Этот "первоклассный" микропроцессор использует собственную архитектуру. Он также способен эмулировать архитектуру x86, а значит, поддерживает большую часть программного обеспечения.
     Тем не менее, подчеркивает издание, это не означает быструю работу этих программ. Ведь тактовая частота «Эльбруса» - «колоссальные» 800 мегагерц, в то время как у капиталистического Intel i7 этот показатель составляет порядка 3,5 гигагерц.
При его производстве используются 65-нм технологии, и он содержит недостаточное число транзисторов.
    Он идет в комплекте с компьютером «АРМ Эльбрус-401». На нем можно запускать Linux или Windows XP, и «у него даже есть портUSB».
   
    Видно, с каким удовольствием издание Gizmodo иронизирует над российской разработкой. Конечно, не без оснований. Состязаясь в беге на 100 метров по прямой, безусловен фаворит, который разорвет финишную ленточку первым.
    Если бы развитие науки и техники было так прямолинейно прогнозируемым, человечество быстро исчерпало бы свой потенциал, добежав до естественного природного ограничения своих возможностей.
    В шестидесятых годах лидирующая концепция советской авиационной промышленности была "летать выше всех, быстрее всех, дальше всех". Мы немало преуспели в этом. Наши авиационные комплексы отвечали этой задаче. Но тут нам пришлось помогать героическому вьетнамскому народу защищать свою независимость. И что мы увидели?
   Американские "стервятники" летают медленнее, ближе, но зато ниже наших «серебристых орлов». Американцы разработали, освоили и применили систему "низковысотного полета". Благодаря этой системе у наших зенитных комплексов не хватало угловой скорости, чтобы отследить низколетящую цель. Позднее время обнаружения радиолокационными комплексами не позволяло вовремя произвести запуск зенитных ракет, тяги которых не хватало, чтобы развернуться и догнать низколетящую цель.
    Этот пример показывает, что не всегда успех достигается путем линейного развития. На определенном этапе закон Мура (эмпирическое наблюдение, изначально сделанное Гордоном Муром, согласно которому количество транзисторов, размещаемых на кристалле интегральной схемы, удваивается каждые 24 месяца) перестает действовать, как это и было предсказано самим Муром в 2003 году. Зато постоянно действует закон Вирта (Программы становятся медленнее более стремительно, чем компьютеры становятся быстрее).
    Существует высказывание в виде закона Гейтса:
 Закон Гейтса — это вариант закона Вирта, названный в честь основателя Microsoft Билла Гейтса. Это шутливое наблюдение, утверждающее, что скорость программного обеспечения уменьшается на половину каждые полтора года, что сводит на нет все преимущества закона Мура. Это может происходить по нескольким причинам: добавление избыточных ненужных функций, плохой код, нежелание программистов дорабатывать программы и плохой менеджмент или частая смена команды.
Состояние прикладного программного обеспечения в настоящее время полностью подтверждает это высказывание. Программы загружаются утомительно медленно, часто зависают. Использование вспомогательных утилит очистки реестров и кэшей становится регулярной операцией. Перезагрузка серверов даже в самых ответственных приложениях (например, в Сбербанке) никого не удивляет.
    Невольно приходит в голову крамольная мысль:   а не начать ли сначала?
    Путь, проложенный развитию программного обеспечения убогим творением компании Microsoft - операционной системой MS DOS - в немалой степени способствовал нынешнему состоянию прикладного программного обеспечения. Очень хотелось бы рассказать о бесславном (без кавычек) пути этой компании, но в нее уже и так брошено достаточно камней и комьев грязи. Сколько веревочке не виться, а конец будет. Жалеть о потерянном времени не стоит. В конце концов, даже отходы человеческой  деятельности приносят пользу, будучи использованными для удобрения почвы.
    "Отыщи всему начало, и ты многое поймешь" - говорил Козьма Прутков. Не грех и здесь заглянуть в начало.
    Брайан Уилсон Керниган с Деннисом Ритчи и позже - Ли;нус Бенедикт То;рвальдс  задали направление развития средств и методов программирования. Все системы, ориентированные на долговременную надежную работу в обороне, в банковской деятельности, в связи, в любых системах массового обслуживания, следуют этому направлению.
     Большой компьютерный взрыв, порожденный появлением персонального компьютера, на исторически короткое время внес суматоху на рынке и сумятицу в умы людей малосведущих. Тут-то им и было подброшено убогое творение. Как и положено неофитам, они испытали неописуемый восторг от приобщения к тайнам и возможностям компьютинга. И немедленно связали его с именем новорожденного пророка. Хотя пророк не получил даже весьма среднего специального законченного образования и не смог оценить ни одного перспективного прорыва в компьютерной области (графический интерфейс, интернет и т.п.), но зато настриг больше всех шерсти с баранов, чье хоровое блеянье до сих пор возносит ему осанну.
    Вернемся к родоначальникам языка программирования Си и открытого ядра операционной системы Linux. Эффективные программы, созданные с использованием этих средств даже на медленных процессорах, заведомо превосходят  колченогие и валкие создания, разработанные в среде WINDOWS с помощью средств  Microsoft. В качестве примера приведу случай на выставке.
    Мы демонстрировали недавно разработанный генератор складских отчетов для нашей системы ЛокОФФИС. К нам подошли коллеги, создавшие такой же генератор, но написанный в отличие от нас не на Си, а на популярном языке фирмы Microsoft. Специалист фирмы быстро сформировал отчет и запустил его на исполнение. Сказав, что пока он будет строиться он зайдет на соседний стенд, повернулся, чтобы отойти. И в тот же момент отчет появился на экране. Надо было видеть удивление коллеги! Он сказал, что на таком же массиве информации у него отчет строится 25-30 минут, тогда как у нас он построился за 15 секунд.
Вот и скажите при чем здесь скорость процессора?!



Интернет-магазин издательства
http://business-court.ru


Рецензии