Открытая система

На пресс-конференции Apple, посвященной очередному успешному финансовому кварталу, Стив Джобс немного прошелся по Google и Android, в частности, зацепив тему “открытости” операционных систем. В частности, там он сказал следующее:

Google любит описывать Android как “открытую” систему, а iOS и IPhone — как “закрытую”. Мы считаем это несколько лицемерным, скрывающим настоящее отличие между этими подходами. Первое, о чем думает большинство из нас, когда мы слышим слово “открытая” — это Windows, которая доступна на множестве устройств. В отличие от Windows, однако, где большинство ПК имеют тот же пользовательский интерфейс и работают с теми же приложениями, Android очень фрагментирован. Многие поставщики телефонов с Android, включая двух крупнейших — HTC и Motorola — устанавливают свой пользовательский интерфейс, чтобы отличаться от общих впечатлений на Android. Пользователь вынужден с этим всем разбираться. Сравните это с iPhone, где каждое устройство работает одинаково.


Стив Джобс еще много говорил о фрагментации устройств, версий операционных систем, о появлении нескольких магазинов приложений для Android, что, по его мнению, может вызвать неудобства для пользователей и разработчиков. В ответ на это Энди Рубин (Andy Rubin) — фактически “папа” Android — в твиттере (там неподтвержденный аккаунт, так что не факт, что это на самом деле Рубин) ответил Стиву Джобсу, что он считает понятием “открытая” система:

Эта команда, насколько я понимаю командную строку, позволяет получить исходный код операционной системы Android из сетевого репозитория и собрать из него версию системы. Безусловно, частично это отвечает на аргумент Джобса, поскольку сделать такое же с iOS невозможно, она выдается разработчикам и пользователям уже в полностью готовом виде, и отвечает за ее разработку команда в Apple. Однако, в таком ответе нет информации о других аргументах Джобса, которые, как мне кажется, являются вполне актуальными (сюда я бы еще добавил тот бардак, который устроили производители телефонов с обновлением версий ПО в телефонах).
[ad#intext-inside]
И вот у Джобса неожиданно нашелся союзник, Джо Хьюитт (Joe Hewitt), весьма известный в Кремниевой Долине разработчик, участвовавший в разработке Firefox, в разработке приложения Facebook для iPhone, мобильной версии сайта Facebook и тд. В серии твитов и ответов другим, он высказал несколько интересных мыслей по поводу открытости Android, которые я хочу перевести для сегодняшней заметки:

– Как вообще Android может заявлять об “открытости”, если ее исходники не открыты до большого релиза, и никто, кроме Google, не может влить свой код в репозиторий?

Здесь речь о том, что Google производит разработку очередной версии Android у себя внутри, и выкладывает исходный код, только выпустив очередное большое обновление, после чего оно доступно разработчикам. Традиционно в проектах с открытым исходным кодом репозитории доступны разработчикам всегда.

Сравните модель “открытого кода” Android с Firefox или Linux, если хотите увидеть, насколько лицемерным является это заявление об открытости.
До той поры, пока Android не является открытым на чтение/запись, для меня он не отличается от iOS. Открытые исходные коды означает разделение управления с сообществом, а не указывание.
Я думаю, что меня больше беспокоит в Android отсутствие видения ежедневного прогресса, чем отсутствие доступа на запись.
Отказ в показе вашего видения и прогресса до следующего большого мероприятия… как открыто.
@mclazarus настоящие проекты с открытым исходным кодом содержат процедуры получения права на вливание кода.
Я пытаюсь сказать, что эта потасовка Рубина с Джобсом — это фарс, поскольку оба отказываются поделиться тем, что важно — контролем.
@risaacs99 Я говорю, что они делают некий минимум, но при этом заявляют, как будто они находятся на одном уровне с Linux, Firefox или даже Chrome OS.
@risaacs99 Можно подумать, что хвастовство Рубина о том, как можно загрузить исходный код месячной давности — это определение открытости.

[ad#intext-inside]
В общем, если резюмировать то, что пытается сказать Джо (а с тех пор он еще написал пост с более подробным объяснением своей точки зрения, не все то открыто, что таковым кажется (или его пытаются подать). За последнее время термин “открытого кода” приобрел некую рассеянность, многозначность, а Google активно его эксплуатирует так, как будто ничего более открытого, чем Android, в мире нет. Да, iOS нельзя собрать из исходников и поставить на любое другое устройство, но только эта возможность не делает систему абсолютно открытой и прозрачной. Не говоря уже о том, что в долгосрочной перспективе это может оказаться не преимуществом, а недостатком ее.