Свободные программы и рентабельность
Алессандро Рубини [*]12 ноября 1998 года, опубликовано в феврале 1999 года
К счастью, проект мирового господства Линуса, видимо, осуществится довольно скоро. Тенденцию к этому можно проверить по тому, как пресса реагирует на применения GNU/Linux, по тому, как несколько образовательных учреждений собираются ввести свободные программы в школах, и по обычному для этой системы высочайшему техническому уровню.
Сегодня, в 1998 году (а я пишу еще в 1998 году), наиболее важной работой, по моему мнению, остается распространение общественных и коммерческих последствий свободных программ. Хотя я высоко ценю статью Расселла Нельсона “Схема программ с открытым исходным текстом” из июльского выпуска Линукс джорнел, я ощущаю потребность пояснить те моменты, которые он вкратце затронул.
Обратите внимание, что я не эксперт ни в экономике, ни в политике. Я просто техник-энтузиаст, рассуждения которого основаны на его собственном опыте борьбы за выживание и приводятся в надежде, что они помогут кому-то еще приспособиться к условиям новой среды. Некоторые из этих идей уже обсуждались с приятелями или в деловом списке рассылки свободных программ (<fsb-subscribe@crynwr.com>), к которому я присоединился, прочитав статью Расселла.
Рентабельность для индивидуальных консультантов
Самое лучшее в любой вычислительной системе — ее гибкость. Пользователи могут перекроить ее поведение под свои нужды. Эта гибкость часто полностью неизвестна обычному пользователю компьютера, потому что несвободные программные решения нередко скрывают функциональность за жестким внешним интерфейсом, который пресекает любые отклонения от ожидаемого поведения — поведения пользователя.
Внедряя свободные программы, пользователи получают возможность открыть настоящую мощь вычислительных систем. Сегодня я разговаривал с коммерческим консультантом, которому никогда не приходило в голову, что программы можно приспосабливать под свои нужды. Он признался, что его компания всегда действовала наоборот — они приспосабливали свои нужды к программам, которыми они пользовались. Большинство пользователей — жертвы своих программ, и они даже не осознают этого.
Просвещение пользовательских масс в вопросе расширяемости программ откроет новые рынки для независимых консультантов, создавая новые рабочие места. У каждого пользователя свои нужды, и решение этих нужд часто означает обращение к технической поддержке людей, которые перекраивают или улучшают соответствующие программы. Хотя это даже невозможно вообразить в случае несвободных программ, доступность исходного текста позволяет быстро решать любую возникающую проблему и легко добавлять новые функции. Хотя вы можете подумать, что это быстро доведет пакет программ до совершенства, индивидуальные нужды так разнообразны и специфичны, что пакет не может удовлетворить сразу всех.
Например, я вместе с другими писал для местного физиологического центра программу для анализа данных типичного эксперимента. За два года пользования врачи нашли столько путей к улучшению программы, что по отзывам она стала лучше коммерческих решений. Сумма всех выплат, которые они сделали за эти годы, показывает, что программа в конечном счете дороже некоторых коммерческих альтернатив. Этот факт для моих клиентов значения не имеет, поскольку у них есть в точности то, что им нужно, и они знают, что при необходимости они смогут получить еще больше. Программа, разумеется, свободна, и другие центры выразили интерес в получении копии.
По мере того как все больше и больше людей будут применять для своих нужд свободные программы, я уверен, что некоторые программистские компании попытаются демонизировать GNU/Linux и движения за свободные программы и открытый исходный текст, потому что эти компании теряют свою долю рынка. Такие компании, вероятно, будут пытаться показать, что занятость в информационной сфере снижается и человечество в целом страдает от внедрения свободных программ. Это совершенно беспочвенное заявление; компьютеры существуют для того, чтобы их программировали, и чем больше их позволено программировать, тем больше возникает рабочих мест. Если вы подсчитаете число людей, предлагающих консультационные услуги по свободным программам, то оно легко покроет сокращение в компаниях, занимающихся несвободными программами. Возвращаясь к моему предыдущему примеру, физиологическая лаборатория подрядила мою компанию написать программу, а другие центры, заинтересованные в продукте, охотно наняли бы местного консультанта для установки, поддержки и улучшения нашего пакета. Я сказал “улучшения”? Разве программа не работает? Работает, и отменно, но продукт можно улучшить. Местная лаборатория решила прекратить разработку “потому что нам нужно ставить опыты, а не изобретать новые функции в программах”. Всем известно, что в любой программе найдется ошибка и недостающая возможность, и на этом-то мы и стоим: ошибки можно исправить, а возможности можно добавить. Как я сказал, чем больше всего можно запрограммировать, тем больше будет запрограммировано.
Почему в информационной сфере должно быть больше рабочих мест, чем сейчас? Во-первых, потому что от пользователей свободных программ поступает больше запросов на новые функции, чем от пользователей несвободных продуктов, как уже объяснялось. Далее, потому что каждый может заниматься самообразованием без платы за доступ к источникам информации. Я стал экспертом, изучая исходный текст и пробуя то и другое на своем дешевом персональном компьютере. Сейчас я уверен, что я смогу решить любую проблему, которая только возникнет у моих клиентов, и мои клиенты это знают (если только у меня будет достаточно времени, чтобы справиться с проблемой).
Другой важнейший аспект в дополнение к доступности источников — стандартизация форматов файлов; это область, в которой несвободные продукты обнаруживают свои худшие черты. Представим себе среду, в которой любой формат файлов в системе известен: вы могли бы, например, создавать индексные списки из любого создаваемого документа, облегчая тем самым последующий поиск. Это можно было бы делать без обращения к сети и безо всякой нагрузки на нетехнический персонал. Асинхронное повторное использование данных для многих пользователей лежит на грани фантастики, потому что они привыкли к программам, в которых применяются фирменные форматы файлов (и операционным системам без настоящей многозадачности или функций “cron”). Как только внедряются свободные стандарты, пользователи начинают просить о доработке и охотно платят за все, что повышает их производительность. Более того, свободные стандарты гарантируют, что клиенты не поставят не на ту карту, потому что они никогда не останутся с бесполезными данными, если изменится рыночная конъюнктура.
В то время как традиционная схема распространения программ концентрирует все знание в немногих компаниях (или одной из них), открытые стандарты распределяют техническое знание между всеми, кто желает учиться. В то время как несвободный продукт может поддерживаться только ограниченным количеством квалифицированных консультантов (число и квалификация которых определяется централизованно), количество консультантов, поддерживающих решение на базе свободных программ практически не ограничено, и предложение может быстро откликаться на спрос.
В мире, где компьютеры — это только средства для достижения каких-то других целей, простота доработки и быстрота обслуживания представляют основные требования серьезных пользователей. По моему мнению, свободные программы быстро приобретут авторитет, нужный для того, чтобы стать значимым явлением рынка. Как только вы начинаете доверять некоторым продуктам на базе свободных программ, вы узнаете, что они заслуживают большего. Поклонники GNU/Linux должны быть готовы предложить поддержку, чтобы удовлетворить растущие потребности в консультантах.
Рентабельность для компаний поддержки
Очевидно, независимые консультанты не покрывают всех потребностей пользователей компьютеров. Некоторые виды деятельности частными лицами неосуществимы. Red Hat и S.u.S.E. показывают, что создание и поддержка дистрибутива могут быть хорошим источником дохода, даже если продукт распространяется свободно. На подходе работы на базе Debian, хотя здесь прогресс не так заметен — главным образом потому что как Red Hat, так и S.u.S.E. поставляли несвободные продукты со свободными пакетами, чтобы выжить, пока доля рынка была невелика, а Debian всегда стоял, и до сих пор остается, полностью в стороне от несвободных продуктов.
В дополнение к работам по “созданию и упаковке” или “собиранию и упаковке”, компании могут специализироваться на технической поддержке, обслуживая ситуации, когда компьютерные системы критически важны. Потребности больших предприятий, применяющих компьютерные системы в своей производственной среде, не будут удовлетворены ни внешним консультантом, ни собственным техником. Им нужно опираться на внешнюю структуру, которая гарантирует безотказную работу их парка аппаратуры.
Даже если GNU/Linux или любая другая операционная система показала себя абсолютно надежной, серьезным пользователям нужно будет опираться на компанию поддержки как своего рода страховку. Чем важнее для производственной среды компьютеры, тем больше людей будут согласны платить за уверенность в том, что все будет продолжать работать и за то, чтобы был кто-нибудь “ответственный”, кому можно позвонить в случае любого отказа. Договор на поддержку таких “серьезных пользователей” мог бы также включать пункт о возмещении в случае простоев. Большие компании поддержки смогут эффективно заниматься этим, а клиенты с радостью будут платить большие деньги, если им никогда не придется обращаться за поддержкой.
Короче говоря, я не вижу, почему программистским компаниям было бы нужно оставлять за собой исключительные права на свои продукты; сфера поддержки достаточно широка, чтобы предложить хорошие ниши для предприятий в информационной отрасли. Те, кто хотят быть на высоте, могли бы вносить часть выручки на развитие свободных программ, получая таким образом первыми доступ к наилучшим программам и связывая в сознании людей свое предприятие с программными продуктами. На самом деле большие дистрибутивы уже следуют этой практике.
Рентабельность для образовательных центров
Само собой разумеется, школы и университеты глубоко заинтересованы в преподавании вычислительной техники с помощью свободных программ. Благодаря своему техническому совершенству системы на базе свободных программ могут предложить учащимся больше, но они требуют также большего технического знания для успешного администрирования. Я не нахожу, чтобы выбор свободных операционных систем дал экономию в деньгах, но для образовательных заведений лучше тратить деньги на системных администраторов, чем на субсидирование и без того богатой компании, занимающейся коммерческими программами. Хотя моя страна, Италия, зажата в тисках нескольких правил, более благоприятствующих покупкам, чем найму людей, в других странах уже идет сдвиг в верном направлении — например, Мексика и Франция объявили о планах применения GNU/Linux в своих общественных школах.
Еще один аспект подводит к свободным программам в образовании: когда учащиеся поступают на работу, они предпочитают пользоваться средствами, которым они научились в школе, чтобы сократить дополнительную работу по обучению. Этот факт должен заставлять училища преподавать только те средства, которые никому не принадлежат — которые свободны. Учебным заведениям следует преподавать несвободные программы, только если соблюдаются два условия: нет никакой реальной альтернативы и компания, которая распространяет такую программу, платит учебному заведению за обучение ее продукту. Платить кому-то за продукт для того, чтобы рекламировать его — это определенно несуразность.
Социальные вопросы
Несколько социальных вопросов связаны с выбором одной схемы программ и отказом от другой. Хотя я отмечаю их как социальные, у них есть и экономические аспекты.
Хотя свободные программы, возможно, не дешевле несвободных, если вы вносите в счет свое собственное время, некоторые общества отличаются от других отношением вложенного времени к деньгам. В большинстве развивающихся стран есть хорошие интеллектуальные ресурсы, но мало денег, и обычно у них не самые новые компьютеры. Несвободные операционные системы для них недоступны, но свободные решения осуществимы и эффективны. На самом деле “хеллоуинский” документ поддерживает мою мысль, подчеркивая очень быстрый рост “Linux” на Дальнем Востоке. В благотворительных организациях обстановка обычно такая же: мало денег при хороших человеческих ресурсах. Это прямо ведет к схеме свободных программ для любых информационных задач.
Все это, возможно, наводит на мысль, что свободный доступ к информации выглядит по своему духу левым, точно также, как лозунг “информацию в массы” выглядит очень похоже на старый лозунг “власть в массы”. Что обычно упускают из виду — это сильная правая направленность движения за свободные программы. Арена свободных программ — меритократичная до жестокости среда, идеальная для свободной конкуренции; законы рынка гарантируют, что в этой среде выживают только лучшие идеи и лучшие игроки. С другой стороны, несвободные стандарты ведут к снижению конкуренции, уменьшая инновацию и закрепление полученных результатов.
Пределы схемы свободных программ
Естественно, я знаю, что не всякий пакет программ легко обратить в свободные программы. Я не говорю о канцелярских продуктах — я уверен, что рано или поздно какие-то хорошие проекты удовлетворят эту потребность.
Я говорю о случаях, когда сильная конкуренция между продуктами практически не определяется их программными частями. Например, промышленное оборудование, в которое входит компьютер с какой-то специальной аппаратурой (роботом, устройствами ввода-вывода, периферийным логическим контроллером и т.д.); здесь программа, работающая на компьютере, составляет незначительную часть целого, но ее возможности сильно влияют на ценность всего оборудования. Производство и отладка таких приложений требует обычно больших затрат; таким образом, свободное перераспространение исходного текста не допускается в целях защиты от конкурентов.
Другой осмысленный пример — сотовые телефоны. В них находится много программ, хотя эти программы почти невидимы конечному пользователю, который воспринимает устройство как телефон, а не как компьютер. Такие программы представляют компонент, определяющий возможности устройства в целом; из-за их ведущей функциональной роли в устройстве они строго несвободны.
К сожалению, я не вижу простого способа освободить программы этого рода. Хотя меня не очень беспокоят телефоны (я все равно ими не пользуюсь), мне очень хотелось бы увидеть свободные промышленные приложения, потому что их техническое содержание обычно достойно повторного применения и адаптации к новым задачам.
[*] Алессандро — автор свободных программ по профессии и сторонник свободных программ по призванию. Он надеется, что его растущий ребенок будет оставаться в стороне от компьютеров, как в добрые старые времена, когда такие чудища всегда оставались в своих технических зоопарках. Он читает электронную почту, приходящую на <rubini@gnu.org>, и пытается всем отвечать.
Перепечатывается с разрешения Линукс джорнел.