Читаем Журнал «Компьютерра» №39 от 25 октября 2005 года полностью

Несмотря на название программы, сам Google оказался только спонсором и посредником, не принимая непосредственного участия в оценке проектов. Этим занимались известные open source-организации (менторы) — Apache Software Foundation, FreeBSD, MozDev и т. п. Менторы составили список идей для проектов, отобрали кандидатов и затем контролировали ход работ. Таких — специально отобранных — счастливцев оказалось чуть больше четырехсот (изначально планировалось двести) из почти девяти тысяч заявок. Пока неизвестно, сколько из них дошло до финиша, но большая часть проектов, похоже, завершилась успешно.

Я вначале не особо заинтересовался SoC. Своих проектов куча, и для чего-то еще найти время невозможно, даже если есть шанс получить 4500 долларов. Тем не менее я зашел на сайт посмотреть, а можно ли получить грант на свой собственный проект. Тогда мне показалось, что нет.

Через некоторое время заметка о SoC появилась в «Компьютерре», и меня привлекла фраза о том, что можно предложить свой проект. Пришлось перепроверять. Возможность была совершенно неочевидной. В конце концов меня убедило то, что Google добавил себя в список менторов с пустым списком идей и что в FaQбыл положительный ответ на вопрос «Могу ли я продолжить работу над уже начатым проектом в рамках программы?»

Далее надо было выяснять, являюсь ли я студентом. Студентами Google считал всех, кто обучается в каком-либо официальном учреждении. В частности, было прямо написано, что аспиранты (PhD students) могут участвовать в программе.

Остальные вопросы обсуждались в google groups "summer-discuss". В той же рассылке можно найти предварительную статистику по странам. Похоже, принадлежность определялась по домену почты, так что данные вряд ли точны. Но на 13 июня было подано 1695 заявок из США, 372 из России (2-е место), 147 с Украины (9-е место).

Чем я занимаюсь

Прежде чем перейти к моему проекту, расскажу, чем я вообще занимаюсь. Многие приложения по большей части состоит из работы с деревьями. В компиляторах это преобразование одних деревьев в другие, в текстовых процессорах — обработка структуры документа. Хотя приложения совсем разные, набор базовых операций над деревьями совершенно одинаковый. Столкнувшись с тем, что мне приходится писать по сути один и тот же код для разных окружений, я подумал, что с помощью XML-технологий мог бы решить эту проблему. Кроме того, мне не нравилось, что кода на такую задачу в принципе требуется слишком много — а вот если бы я использовал XML-технологии, то достаточно было бы написать тривиальные XPath-выражения.

Так почему же не использовать XML-технологии для любых древовидных данных? На мой взгляд, единственное препятствие — отсутствие библиотек, которые могут адаптироваться в зависимости от программного окружения. Эту проблему я взялся решать["Reusing XML processing code in non-XML applications"] с помощью виртуальной XML-машины, байт-кодом которой является язык Scheme, а за основу универсальной реализации XPath/XSLT/XQuery были взяты библиотеки проекта SSaX.

Несколько пилотных проектов показали, что идея жизнеспособна. В качестве финального теста я решил немного модифицировать XSLT-процессор xsltproc, а именно заменить движок XPath на мою версию. После чего можно сравнить результат исполнения сложной XSLT-программы (например, преобразования DocBook) в обоих вариантах и сделать вывод о пригодности универсального кода.

В процессе работы я заметил, что «выход в Scheme» значительно расширяет возможности XSLT и позволяет писать более сложные по функциональности, но более простые в поддержке преобразования. Анонс SoC послужил катализатором. Я записал мысли, оформил их как идею проекта «XSieve: XSLT + Scheme, альтернатива XSLT 2.0» и отослал заявку.

По моей оценке, шансов было мало, а времени до даты ответа хватало, поэтому я подзабыл про SoC. Тем приятнее было получить письмо от Google с поздравлениями. А через пару дней в пустом до этого ящике оказалось более сотни писем. Оказывается, был создан закрытый список рассылки, который наполнился обменом радостями и описаниями проектов, выяснением, кто из какой страны и университета, и вопросами, как связаться с ментором и что делать дальше.

Что делать дальше?

Формальности по работе над проектами зависели от ментора. Где-то достаточно было использовать систему контроля версий, а в некоторых проектах крупных организаций надо было строго следовать инструкциям и письменно подтвердить, что автор выпускает свой код под нужной open source лицензией.

Так как я работал над своим собственным проектом, то мой ментор (Йосики Хаяси [Yoshiki Hayashi] из Google) свел формальности к минимуму. Он попросил выложить проект на SourceForge и подробно описать язык XSieve. Но на всякий случай я посылал еженедельный отчет о проделанной работе.

Перейти на страницу:

Похожие книги

Компьютер для тех, кому за…
Компьютер для тех, кому за…

В наш век высоких технологий без компьютера не обходится практически ни один человек. Но что делать, если вам уже за…, а компьютер вы так и не освоили? Не стоит отчаиваться! Эта книга была написана специально для тех, кто по каким-то причинам не смог освоить его раньше. Легким и доступным языком в книге изложены основные принципы работы на компьютере. Вы узнаете, как создать документ в текстовом редакторе, выстроить таблицы и диаграммы в экселе, освоите графический редактор, который позволит вам рисовать и редактировать фото и рисунки, научитесь самостоятельно подключать принтер и печать, общаться с родными и друзьями по скайпу и ICQ, узнаете, какие бывают игры, как выбрать игру для себя, и многое-многое другое.Никогда не поздно осваивать что-то новое! А уж тем более — компьютер. Он откроет вам целый мир безграничных возможностей. Не упустите свой шанс узнать что-то новое и интересное — дайте компьютеру прочно войти в вашу жизнь. Ведь пользоваться им так же просто, как и обычным телефоном, только в тысячу раз интереснее!

Оксана Грибова

Зарубежная компьютерная, околокомпьютерная литература / Интернет / Программное обеспечение / Прочая компьютерная литература / Книги по IT
Справочник по параметрам BIOS
Справочник по параметрам BIOS

В справочнике в алфавитном порядке приведено описание большинства параметров современных BIOS. В краткой форме описаны большинство настроек BIOS, даны рекомендуемые значения для различных конфигураций компьютеров. Также рассказано, что представляет собой BIOS, какие типы BIOS существуют, как получить доступ к BIOS и обновлять ее.Кроме того, вы научитесь использовать различные функции BIOS, узнаете, как оптимизировать их с целью улучшения производительности и надежности системы.Для более глубокого понимания работы BIOS и детального рассмотрения ее функций рекомендуем обратиться к книге «Оптимизация BIOS. Полное руководство по всем параметрам BIOS и их настройкам» А. Вонга.Книга предназначена для всех пользователей компьютера – как начинающих, которые хотят научиться правильно и грамотно настроить свою машину, используя возможности BIOS, так и профессионалов, для которых книга окажется полезным справочником по всему многообразию настроек BIOS. Перевод: А. Осипов

Адриан Вонг

Прочая компьютерная литература / Книги по IT