Поддержи Openmeetings

понедельник, 19 октября 2009 г.

Учимся в Intel

Наша компания с 2009 года является партнёром компании Intel в области разработки программного обеспечения. Это означает, что процесс разработки наших продуктов в обязательном порядке обеспечивает их качественную и быструю работу на платформе Intel. Чтобы успешно оптимизировать производительность наших программ для этой платформы, новые сотрудники нашей компании прошли двухдневный курс обучения современным технологиям оптимизации и новым процессорным архитектурам у Вадима Сухомлинова. История нашей дружбы с Интелом продолжается и много дальше.

Мы начинали с того, что работали над Java в компании Sun Microsystems. И вот в 2004 году компания Sun, радуясь успехам и цене процессоров AMD, начинает закупать для своих знаменитых серверов микроэлектронику конкурентов. Intel делает ответный шаг и покупает нашу команду для того, чтобы мы создали свободную машину Java, и надавили на Sun. И действительно, исполнительный директор Sun Microsystems Джонатан Шварц лелеет хитрый план переименования невзрачного биржевого индекса SUNW своей компании в JAVA, символ уверенности в себе и сказочного богатства. И действительно, только очень уверенный в себе предприниматель может инвестировать в открытую технологию, продвигающую всё мировое сообщество вперёд, несколько тысяч человеко-лет.

Целый год наши зарубежные начальники думали, к кому примкнуть из свободных проектов примкнуть. Рассматривали ORP, SableVM, Joeq, Japhar и ещё нескольких свободных проектов. Один — в поле не воин! Анализ включал дату последнего релиза, активность обсуждений в списке рассылки, количество выданных κῦδος, анализ дружественности лицензии и бизнеса, стоящего за каждым проектом. В конце концов примкнули к могучему IBM, и выбрали для совместной работы Apache Software Foundation, где у больших корпораций действует пакт о патентном и лицензионном ненападении.

Инкубация Apache Harmony в ASF началась в 2005 году, продолжалась год и была с успехом завершена. В рамках проекта были созданы Java библиотеки, которые Google продолжает использовать в устройствах Android. Компания Intel передала сообществу виртуальную машину DRLVM (известную прежде, как ORP) и современный динамический компилятор StarJIT. На этой базе наша команда продолжает оказывать услуги по созданию бинарных компиляторов паре высокотехнологичных стартапов.

Интел хорошо вложился в производительность Apache Harmony. Мои коллеги, которые улучшали производительность интеловской машины на стандартных бенчмарках, сегодня продолжают эту работу в компании Oracle, пару лет назад купившей Sun. Таким уникальным оказался их опыт.

Чтобы разрабатывать сложное технологическое решение в рамках свободного сотрудничества нескольких компаний, была создана модульная архитектура и надёжная система автоматизированного тестирования, обеспечивающая монотонное повышение качества в процессе разработки. В дополнение к интеграционным тестам были разработаны функциональные тесты со 100% покрытием и тесты на надёжность, не допускавшие появления сложно воспроизводимых ошибок в коде. Одной из необычных технологий тестирования было автоматическое создание тестов на покрытие по результатам анализа графов данных и управления. Главный идеолог этой технологии Павел Петроченко сегодня продолжает свою работу техническим директором небольшой новосибирской компании, разрабатывающей расширения для среды разработки Eclipse.

Как видно на рисунке из Google Trends, сегодня экосистема Java сплотилась вокруг проекта OpenJDK. В этом есть и наша заслуга. Хотя проект Harmony перенесён в чулан Apache Software Foundation, всё же он сыграл свою роль в освобождении технологии Java от монополии единственного производителя. Под влиянием давления со стороны свободного конкурента создательница технологии компания Sun Microsystems основала своё свободное сообщество.

Сейчас наши разработчики, учтя опыт и ошибки, полученные в Intel в результате работы над Apache Harmony, продолжают разрабатывать свободное программное обеспечение. В содружестве с немецкими коллегами мы работаем над новым элементом экосистемы Java — свободным решением для видеоконференцсвязи. Мы только недавно начали его инкубацию в Apache Software Foundation, поэтому у читателя есть замечательная возможность присоединиться к нашему проекту одним из первых — и сделать его ещё успешнее.

Комментариев нет :

Отправить комментарий