текст: Дмитрий Шурупов
Крупные конференции позволяют взглянуть на давно знакомых людей с другой стороны. На прошедшем в конце июня мероприятии Interop Moscow представилась возможность пообщаться с лучшими представителями IT-индустрии, прямым образом повлиявшими на ее положение сегодня. Один из них – Марк Спенсер.
Благодаря своей увлеченности открытым ПО и стечению обстоятельств он смог совершить маленькую революцию в телекоммуникациях и подарил миру мощную, а главное – свободную замену дорогостоящим коммерческим PBX – Asterisk. Марк поделился мыслями об этом продукте и об открытом ПО в интервью нашему корреспонденту.
Asterisk создавался для использования в рамках одной компании как продукт с ограниченным набором необходимых функций. Выбирать для такого ПО свободную лицензию – явление незаурядное. Почему Open Source?
Это не первый мой программный продукт подобного рода. Мое увлечение Open Source возникло еще задолго до того, как появилась необходимость в подобном приложении. Например, раннее я написал открытый IM-клиент Gaim. Поэтому открытый исходный код казался мне чем-то естественным. Кроме того, важным фактором в пользу Open Source было и то, что ПО создавалось для Linux.
Если это так, то не совсем понятно, почему же ныне здравствует политика двойных стандартов (двойного лицензирования) в отношении к Asterisk, ведь проблемы с кодеками вроде G.729 можно решить публикацией продукта под какой-нибудь BSD-подобной лицензией, позволяющей совмещать закрытые разработки с открытыми.
Мы стремимся сделать продукт гибким, насколько это возможно. Таким образом, пользователи в зависимости от своих потребностей получают либо полностью открытую версию, либо редакцию, которая поддерживает все (в том числе технологии, требующие внедрения закрытого кода), но за дополнительную стоимость.
Открытость кода – главный фактор, сделавший Asterisk таким популярным?
Факторов, конечно же, много, и не стоит ограничиваться одной открытостью. Все зависит от того, кто использует Asterisk. Для небольших компаний более важным фактором является существенная экономия, получаемая при выборе Asterisk. Для крупных компаний стоимость не играет столь существенной роли – для них действительно важнее возможность самостоятельно изменять код под свои запросы, что и обеспечивается моделью Open Source.
Монолитная модель программы традиционно является препятствием на пути к включению новых возможностей. Как удается сохранять высокий уровень стабильности и своевременно совершенствовать продукт, отвечая на потребности пользователей и рынка?
Asterisk разрабатывается как Linux-ядро. Важно следить за тем, чтобы добавляемые части кода не влияли на правильность функционирования написанного ранее. Благодаря подключаемым модулям Asterisk является масштабируемым, его можно начинать использовать с прицелом на расширение набора выполняемых функций в будущем. При этом в небольшой объем удается вместить все необходимые возможности.
Но в прошлом году от Asterisk ответвился проект OpenPBX. Чем это вызвано? Реакцией сообщества на медлительность в добавлении новых функций, недовольством общим направлением развития?
Очень важно соблюдать постоянный баланс между включением новых возможностей в код продукта и сохранением его стабильности. Естественно, находятся люди, которые считают, что в Asterisk не всегда достаточно быстро появляются какие-то новшества. Но ведь мы еще заботимся и о стабильности, и о чистоте кода. Это непростая задача, впрочем, еще ни один из ответвившихся проектов не был успешным.
На последовавшее предположение о существовании каких-либо серьезных каналов связи между Asterisk и его ответвлениями Марк ответил отрицательно, добавив, что это только на первый взгляд (создаваемых проектов) так просто поддерживать и развивать подобную кодовую базу, но стоит только взяться за дело, как возникает множество трудностей. В полушутливой манере он отметил, что не хотел бы возникновения ситуаций вроде иска SCO против IBM/Linux.
Вашей компании Digium удалось добиться заметных успехов в телекоммуникационном бизнесе. Не ожидаете ли вы, что это может привести к появлению множества компаний, которые попробуют повторить ваш путь, а в итоге – к Open Source-революции в телекоммуникационной индустрии?
До тех пор пока наш проект не провалился, достаточно трудно выйти на рынок телекоммуникаций с собственной открытой PBX. Asterisk делает свою работу, оперативно получает новые возможности, за долгое время существования продукта сложилось сильное и крупное сообщество. А начинать с нуля подобный проект сложно, и ему потребуется не один год для того, чтобы достич серьезного уровня. Кроме того, многие компании уже сейчас зарабатывают на Asterisk.
Способствует ли резкий рост популярности Linux (в том числе и в телекоммуникационной среде, где открытую ОС продвигают организации вроде лаборатории OSDL) распространению Asterisk?
Пожалуй, текущая ситуация носит диаметрально противоположный характер: скорее, благодаря Asterisk пользователи переходят на Linux. Постоянно встречаются клиенты, которым по тем или иным причинам симпатичен Asterisk и они мигрируют на родную для него платформу. В свою очередь Linux-пользователи не так часто отказываются от уже применяемых ими решений в пользу Asterisk.
Ответ на вопрос о поддержке Asterisk гигантами IT-индустрии не удивил упоминанием таких компаний, как IBM и Intel, на blade-серверах которых прекрасно функционирует свободная PBX. Здесь все логично: раз они продвигают Linux-серверы для предприятий вообще, то почему бы и не обеспечивать поддержку предназначенного для них ПО с открытым кодом в виде Asterisk, что может пригодиться практически любой компании. Пришло время подискутировать на более отвлеченные от главного детища Спенсера вопросы.
Вы являетесь автором другого популярного Open Source-проекта – Gaim. Что он для вас значит сейчас, помогаете ли вы его развитию?
Теперь я его только использую. На мой взгляд, это пример фантастического успеха программного обеспечения с открытым кодом. Разработкой Gaim я занимался около трех месяцев – просто для экспериментирования в применении GTK+. Однако опыт, полученный в ходе его создания и работы с сообществом, стал очень полезным в будущем – он демонстрирует, насколько значительной может оказаться любая Open Source-практика.
Каким вы видите будущее программного обеспечения: полностью открытое, полностью проприетарное, или эти два направления будут как-то смешиваться?
Перспективы мне видятся в смешении продуктов с открытым и закрытым кодом. Модель Open Source успешна по двум причинам: такое ПО может быстро захватывать огромную часть рынка и оно может совершенствоваться благодаря поправкам и новшествам, добровольно добавляемым людьми со всего мира. В то же время на рынке настольных ПК сложилась такая ситуация, что люди знают, как использовать Windows – им обычно не представляется интересным переучиваться на что-то другое. Зато им нужны инновации, а здесь уже лидерство на стороне Open Source.
В конечном итоге для любого потребителя есть три критерия оценки продукта: цена, производительность и простота использования. Поэтому производители стремятся ориентироваться на достижение наиболее удачной комбинации этих критериев, выбирая соответствующие запросам программные средства.