Параллель проведена для того, чтобы стала яснее перспектива: если новое движение сумеет столь же основательно повлиять на разработку и применение ПО в грядущем столетии, принимать его в расчет серьезный руководитель обязан уже сегодня.
Открытые исходные тексты
В фокусе движения находится понятие "открытых исходных текстов" (open sources), или, короче, "открытых текстов". Оно означает такой способ разработки, при котором:
- ПО создается без единого кем-либо утвержденного, подробно разработанного плана ("проекта");
- ПО создается виртуальным коллективом, открытым для любого желающего (Internet!);
- документы разработки и тексты программ полностью открыты всем вообще, не только участникам.
Часто программы создаются даром, в свободное время. Каждый участник при наличии квалификации может предложить свое решение проблемы или нововведение. А конечный результат (например, программа) доступен - вот она, эта ересь! - бесплатно.
Несерьезно? Но "революционеры" указывают, что в компьютерной сфере нет ничего серьзнее, чем Internet, круглосуточно дежурящие Web-узлы и системы доставки электронной почты, стеки TCP/IP, самая динамично распространяющаяся серверная ОС, а также масса других достижений "открытых текстов": Perl (язык сценариев), Samba (сервер услуг в локальной сети), Apache (Web-сервер), FreeBSD (свободно распространяемый Unix) и многое другое.
Что они дают потребителю?
Если вы начнете делать проекты, опираясь на открытое некоммерческое ПО, это будет серьезным решением. Ведь вы начнете вкладывать время и деньги своего коллектива в конкретные работы, и эти инвестиции должны иметь отдачу.
Чем же ПО, произведенное методом "открытых текстов", лучше традиционного? Сравнение, увы, не всегда может быть выполнено достаточно строго. Не только потому, что разработчики "открытых" продуктов не склонны заниматься измерениями своих созданий, но и потому, что производители "частнособственнического" ПО многие оценки своих продуктов предпочитают держать в тайне. Тем не менее вот что можно сказать в пользу ПО открытых текстов.
- Оно дешевле. В самом деле, собственно продукт запросто может достаться потребителю бесплатно: те же самые Apache, FreeBSD или Linux и другое свободное ПО любой может "скачать" в Internet. Это правда, что сопровождение потребует хорошей квалификации, а значит, затрат. Но, например, NT как техническая система не менее сложна, чем Linux, и для грамотного сопровождения требует нередко еще больших затрат - если только не смириться с ее разительной неэффективностью.
- Оно надежнее. Это не совсем очевидно, и к тому же трудно проверяется (читай выше про оценки и измерения). Но посудите: разработчики ПО открытых текстов - это тысячи программистов, дополненные сотнями тысяч квалифицированных добровольных испытателей. Продукты проверяются в самых разнообразных условиях, а "от многих глаз ошибке не спрятаться".
- Оно более экономно. Действительно, продукты открытых текстов намного скромнее в своих требованиях к аппаратной платформе, нежели их ненасытные собратья от Microsoft. Только на одних компьютерах потребитель может прилично сэкономить (требуется на порядок меньше ОЗУ, дисковой памяти и тактовой частоты процессора).
- Оно "правильное". ПО открытых текстов разрабатывается программистами для самих себя. При такой работе они не будут заниматься тем, что не нужно в повседневной практике ("хороший программист знает, какие средства ему нужны, лучше любого начальника").
- Оно эффективнее. В силу открытого характера разработки неэффективные решения попросту не принимаются сообществом. Их некому навязывать. Получают развитие только дееспособные решения реальных проблем.
- Оно безопаснее. В коммерческом ПО вопрос безопасности - это в том числе и вопрос доверия производителю. Исходные тексты сокрыты, и потребитель никогда не может точно знать, какие опасности его подстерегают в эксплуатации. Трудно придумать более действенный способ успокоить потребителя, чем вручить ему полные исходные тексты продукта. (Мы не говорим здесь о безопасности только как о функциях защиты, которые, кстати, в Linux получили высокую оценку.)
- Для него лучше техподдержка. У ПО открытых текстов часто нет техподдержки в знакомом виде, но это не значит, что не к кому обратиться с вопросом или никто вам не исправит обнаруженную ошибку. Напротив: число тех (в Internet), кто вам поможет, весьма велико, и их реакция бывает намного приемлемее ответов традиционных служб коммерческого ПО, по поводу которых у потребителей накопилось немало эмоциональных впечатлений.
- Оно стабильнее. Хозяин коммерческого ПО - фирма, а фирма может лопнуть (крупная тоже) или изменить свое мнение о светлом будущем. Случаи, когда фирмы "кинули" своих клиентов, не часты, но постоянны. У ПО открытых текстов хозяева продукта - сами пользователи, и здесь такая ситуация в принципе невозможна. Вы спокойно можете рассчитывать, что продукт будет поддерживаться, пока им будут пользоваться.
Сторонники ПО открытых текстов приводят и более "идейные" аргументы, но руководители ИС - в первую очередь практики и, вероятно, предпочтут ограничиться сказанным выше.
Метод в действии
Одно только употребление готового ПО открытых текстов вовсе не исчерпывает его потенциал. Информационная служба предприятия может использовать подход открытых текстов в собственном "производстве". Вот пример из жизни.
Специалист из группы разработчиков одной американской фирмы решил подарить коллегам по проекту возможность работать дома. Понадобилось надежно переносить большие файлы с работы домой и обратно. В группе использовалась ОС Linux, и была идея задействовать Zip-устройства, но для них в Linux не было драйверов. Возникла дилемма: купить на замену Linux существенно более дорогостоящее коммерческое ПО, или за пару рабочих дней написать драйвер самому. Выбрав второй путь, специалист обнародовал свой код в Internet и вскоре получил обратно хорошо отлаженную программу.
Этот случай - с конкретными именами - приведен в книге Open Sources: Voices from the Open Source Revolution издательства O'Reilly&Associates. Понятно, что такой способ работы ломает устоявшиеся стереотипы. Кстати, не хотите ли прикинуть, во что обошелся бы третий вариант: заказать разработку драйвера коммерческой фирме?
Вот еще один пример - скромный, но из собственной практики. Недавно мне понадобилось найти драйверы видеоплаты для работы с ней в NT и в Linux. Попытка найти в Internet драйвер для "фирменной" NT с помощью поискового сервера Altavista потерпела фиаско: сотни тысяч ссылок сомнительного качества не помогли. С другой стороны, зайдя на страницу http://www.linux.org, я быстро по ссылкам добрался до нужных описаний и до самого драйвера. Было видно, что хотя за каждую группу драйверов в Linux отвечают самые разные люди их разных стран, вся информационная сеть построена весьма толково.
Дело революции - в ваших руках!
Конечно, осторожный руководитель, прежде чем связываться с таким ПО, будет ждать надежных свидетельств, что "открытая разработка" - это не миф , как часто бывает со многими другими словесными конструкциями из компьютерной жизни. Его более решительный коллега сошлется на достоверные примеры высококритичных (mission critical) приложений:
- самый крупный информационно-поисковый сервер в миреYahoo! работает на FreeBSD и Apache (Apache вообще опередил по числу использования в мире любой коммерческий сервер);
- крупнейший в мире магазин продажи книг по Internet - Amazon, существенно базируется на Perl;
- сеть из компьютеров с Linux в NASA образует мощнейший суперкомпьютерный комплекс. В движении помнят и об угрозе "новой технологии" со стороны финансово могущественного "софтверного империализма", не заинтересованного в смене правил игры.
В движении помнят и об угрозе "новой технологии" со стороны финансово могущественного "софтверного империализма", не заинтересованного в смене правил игры.
И все же мы уже участвуем в революции далеко не худшего типа. Есть выгоды, которые можно получать от ПО открытых текстов уже сегодня, а подключиться к перспективному движению бывает выгоднее заранее.
Владимир Викторович Пржиялковский - независимый консультант, координатор ЕАГПО (http://www.ccas.ru/~prz). С ним можно связаться по адресу prz@deneg.net.
Краткий курс истории движения
Движение открытых текстов, обозначившееся год назад, возникло не на пустом месте. У него богатая предыстория, вот несколько примеров из накопленного опыта. В конце 60-х годов появилась система Unix, вполне соответствующая духу движения открытых текстов. Первое десятилетие развития системы может считаться временем первой серьезной обкатки этой идеи. Затем создание Unix перешло на коммерческую стезю, что пагубно отразилось на судьбе ОС.
Примерно с конца 70-х годов в среде разработчиков и пользователей Unix и некоторых других программ начала спонтанно развиваться сеть обмена сообщениями, файлами и новостями, превратившаяся к нашему времени в Internet. Замечательно, что разработка и стандартов и документации по Internet ведется беспрецедентно открытым образом (комитет IETF).
С 1984 года и по сию пору осуществляется проект GNU - создание переносимой, открытой (уже в смысле открытых текстов) и совместимой с Unix операционной системы. Видимые результаты проекта кажутся скромнее достижений производителей коммерческого ПО, проинвестированных на четыре-пять порядков щедрее, однако значение GNU для отрасли нельзя переоценить. Открытые трансляторы с Cи, C++, Фонд свободного ПО, система лицензирования Copyleft - вот всего лишь несколько примеров.
Предложенная в начале 90-х финским студентом Линусом Торвальдсом POSIX-совместимая операционная система Linux далее развивалась "всем миром" по принципу открытых текстов и стала самой энергично растущей серверной ОС. Число ее пользователей оценивают между 5 и 20 млн.
Многие руководители давно слышали что-то о проектах GNU, BSD или Samba, но до сих пор относятся к ним как к забавам программистов: ведь за ними не стоит коммерческая фирма-разработчик. Между тем уже год назад эти проекты официально породили новое движение, которое реально составляет мощную составную часть компьютерной индустрии. Новое движение сулит немалые выгоды, но чтобы их получить, директорам информационных служб нужно перешагнуть через определенные стереотипы и начать всерьез вкладывать ресурсы своей службы в использование некоммерческого ПО.
Деятели революционного движения
Движение открытых текстов поддерживает сотни тысяч участников, сотни организаторов отдельных разработок и десятки "лидеров". Некоторых просто необходимо упомянуть.
Эти и другие участники движения отнюдь не монолитно едины во всех вопросах, касающихся подхода открытых текстов. Между ними случаются и споры, провоцирующие сомнение: не является ли движение плодом чьей-то фантазии? Но непохоже: принципы открытых текстов в целом понимаются всеми одинаково.