- За последние пять лет компания Google выпустила около 1300 открытых проектов, из которых самыми известными являются Android и Chrome. Объём открытого Google кода оценивается в 24-25 млн строк, при этом созданный в недрах Google код можно встретить практически повсеместно, например, наиболее распространены открытые наработки, связанные с компиляторами и программными фреймворками.
- В компании принята упрощенная процедура открытия кода, разработчик имеет возможность легко добиться открытия результатов своего труда. Но никто не навязывает, открывать код или нет. Например, для того чтобы открыть код патча к GCC или другому открытому проекту нужно всего лишь рецензировать его в специальном отделе. После того как патч посмотрят и дадут добро, его можно публиковать. Если после рецензирования нескольких патчей будет ясно, что разработчик понимает, что от него требуется, то ему предоставляется свобода и он уже может отправлять патчи без предварительного рецензирования. При работе над новым открытым проектом необходимо пройти проверку на соблюдение патентов и торговых марок, при этом на выдачу заключения отводится не более трех дней. Если за три дня ответ не получен - проект автоматически считается одобренным. Обычно бюрократические проверки удается совершить еще до завершения разработки и они никак не сказываются на процессе формирования релиза.
- В качестве рекомендуемой открытой лицензией в Google используется лицензия Apache. Если разработчик желает использовать другую лицензию и готов аргументировать, что лицензия Apache в его случае не является оптимальной, то можно использовать и другую лицензию. Лицензия Apache выбрана, так как она является современной и отражает аспекты передачи прав на использование связанной с разработкой интеллектуальной собственности, не ограничивая сторонние компании и сообщества в использовании и модификации продукта. Ключевой причиной выбора лицензии Apache является возможность делегировать право безвозмездного использования патентов, затрагивающих используемые в программном продукте технологии. При этом, в случае судебного иска против разработчика, истец утрачивает право использования данных патентов.
- В прошлом интервью Кристофер упомянул, что MySQL является одним из наиболее важных открытых проектов, используемых в Google. В нынешнем интервью, он заявил, что сейчас это уже не так. MySQL пока ещё используется для обеспечения работы некоторых подсистем, связанных с показом контекстной рекламы, но для объемов Google MySQL плохо масштабируется, поэтому компания перевела большинство использующих MySQL служб на собственные БД BigTable и Megastore.
- В качестве наиболее важных для Google открытых проектов в нынешнем интервью назван набор компиляторов GCC и Linux, а также инструментарии и языки для разработчиков, такие как Java, C++ и Python. Кроме того, среди очень важных проектов отмечены OpenSSL и FFmpeg;
- В Chrome и Android используются принципиально разные модели разработки. Процесс развития Chrome полностью открыт и каждый патч сразу появляется в публичном репозитории. Android развивается немного иначе, код вначале развивается за закрытыми дверями и публикуется только после готовности релиза. Подобные различия объясняются ориентацией проектов на разные рынки. В случае Android, имеются обязательства перед большим числом партнеров, среди которых производители чипсетов, сотовые операторы и производители мобильной техники, многие из партнеров конкурируют между собой. Все заинтересованные платформой Android партнеры желают получить для себя какую-то уникальную особенность и конкурентное преимущество. Если централизовано не контролировать выпуск релизов Android и полностью открыть процесс разработки, на рынок будет выплеснута волна некачественных, собранных на базе не готовых к релизу исходных текстов, и несовместимых между собой продуктов, которые дискредитируют идею единой платформы Android. Именно по причине возможной фрагментации в настоящее время задерживается выпуск кода Android "Honeycomb", который будет открыт только после синхронизации веток для планшетов и смартфонов. Все LGPL и GPL компоненты Android "Honeycomb" изначально открыты, в соответствии с требованиями данных лицензий, задержка с открытием кода наблюдается только для частей под лицензией Apache, но это временная мера и в конечном итоге код будет полностью открыт.
- Компания заинтересована в увеличении числа разработчиков открытых проектов. По мнению Google открытые разработки позволяют поддерживать свободный и конкурентоспособный характер сети интернет. Для способствования роста открытых проектов, Google ежегодно проводит мероприятие "Summer of Code", в рамках которого студентам и наставникам из открытых проектов уже выплачено около 28 млн долларов. Более того, благодаря "Summer of Code" многие открытые проекты смогли привлечь к работе над своими продуктами новых разработчиков, которые продолжают участвовать в разработке и после окончания мероприятия.
Источник: http://www.opennet.ru/opennews/art.shtml?num=31176
оригинал на opennet.ru