Отчет с финала Google Code-In, Калифорния

:

Привет, Хабрахабр.

Начнем с предисловия. Меня зовут Илья Ковалевский, я ученик 8-Б класса киевского лицея. Недавно я принял участие в конкурсе по разработке опенсорсного ПО Google Code-In 2012. Получил победу и стал финалистом от KDE. Гранд-призом была поездка в США, а если быть точнее, в Сан-Франциско, а после в Мантин-Вью (подробнее в предыдущем моем посте). Перелеты, перемещения, проживание оплачивает Google.

Я решил, что буду писать этот пост по мере моих приключений в Штатах. К сожалению, тут находиться я буду только 5 дней, но это не страшно :)


День 1. Приехали!


San Francisco International Airport. Прошли паспортный контроль, сели в такси (которое обошлось нам ужасно дорого — $150) и поехали в Sunnyvale. Почему именно туда? Программа предполагала перемещения: SFO -> Sunnyvale -> Mountain View -> SFO. Мы (я и моя мама) поселились в Domain Hotel, получили замечательный однокомнатный номер (2 двухместные кровати по 10 подушек на каждую). Нужно преодолеть временной барьер, так что пришлось до вечера много гулять, чтобы нормально лечь спать и нормально проснуться. В Sunnyvale улицы приятные, нету индустриальных запахов (что меня смущает) и солнечно. Погода теплая и ветряная. Люди добрые и доброжелательные. Я, оказалось, классно знаю английский, меня все американцы понимают, пару раз сказали что у меня хорошее произношение. Смотрим Doctor Who сейчас…

День 2. General meeting & Free day


Утро. Целый день нужно гулять (до 06:30 PM), ну что поделаешь, погуляем. По крайней мере, интересно что же будет происходить на вечеринке… Момент истины. Открываются двери Apex зала, Google Stаff уже тут, замечательно!


Не успел тортик сфоткать — разрубали...

Во время вечеринки проходили различные мероприятия (аля «Давайте-ка познакомимся») и объявления. Фотографировать много не получилось, освещение не совсем хорошее, да и времени особо не было. После всего этого, нас напичкали swags (мелкие побрякушки), пару футболок, игрушек:


Классика: фарш вещей из swag bag на кровати

Я всегда думал, что еда — это основная составляющая корпораций, таких как Google, Facebook, Twitter, Microsoft. Так вот, я не ошибался. Кормили нас сильно, сильно и много — не представляю как там в Googleplex люди сохраняют вес и не превращаются в больших дядь и тёть. В любом случае, я еще не ел еду оттуда, завтра будет такая возможность!

День 2. Googleplex


Первое, что я увидел, когда приехал в Googleplex — много велосипедов. У гугла свои велосипеды — называются Googlebike (по-крайней мере нам их так представили). Они встретели нас возле входа в лобби:

Далее нас провели в конференц-зал, где должно проходить награждение победителей. Прямо перед входом стоит линия еды — снеки, содовая, печенье. Внутри — стоместный зал с парочкой людей. Одна из них — Stephanie Taylor, глава Google Code-In и член команды Google Opensource.

Talk 1. Chris DiBona о Google Opensource

Chris, как глава Google Opensource обязан был сказать, что в наше время, опенсорс — это очень классная штука, и что все это очень важно, что мы большие молодцы, и что попали сюда не по приколу. Потом последовало награждение (я — слева):

Особо оно больше ничего не говорил, рассказал как ездил на Аляску, и все такое :) Короче говоря, шутник.

Talk 2. Jeremy Allison о Engeneering в Google

Оказывается, Джереми пришел к нам, рассказать как работают инженеры-гении в Google. А чтобы это было интереснее, он решил построить с нами design протокола передачи данных, based on TCP. Это должен быть прротокол работы с файлами на удаленном сервере, с поддержкой «мульти-пользователькости».

На доске изображены наши идеи, причем из зала, где сидело 20 человек, говорил только я и один китаец. Он разработал stat-open-close, etc, а я семифорный storage с внешним API (все должно работать на два процесса) и систему спасения, в случае падения одного из коннектов или малвари в запросе.

Talk 3. Justin Mattson о Android

Джастин пришел, чтобы рассказать о том, как работает Android на уровне железа, о его истории, о том, какой он опенсорсный, и что это реально очень хорошо что есть те, кто контрибьютит в него. Еще он очень много говорил на тему приложений. Пересказал часть гайдов разработчиков андроида.

Промотивировав людей не нагружать main thread и пожелав нам подрасти и идти работать в Google, а точнее в Android Team, Джастин ушел.

Talk 4. Дмитрий Долгов о Google self-driving cars

Дмитрий, из России, и может быть даже есть на хабре. Он рассказал нам как работает навигация машин Google с «автопилотом», рассказал историю таких машин и вывел наружу — поглазеть на образец:

Потом Дмитрий сел в машину, и уехал далеко-далеко… Это было круто.

Talk 5. Nathaniel Manista о том, как он попал в Google

Этот talk был самый душевный, о том, как Натаниэль попал в Google, о том, что именно ему офисы Google обязаны своей легкостью и открытым, я бы даже сказал прозрачным рабочим пространсвом. Свой путь он прошел со старой школы, через ускоритель электронных частиц и софтварную компанию нелегко. О этом он и говорил в своей презентации, которую он построил на результатах поиска в Google, картинками.

Помимо этого, Натаниэль очень хорош в Python, долгое время в него контрибьютил и очень грамотно его критикует. Он рассказал о том, как однажды ему пришлось построить на нем сложную вычеслительную систему, которая считала физические процессы — познавательно.

Talk 6. Mark Diaz о Google Glass

Shawn рассказал о том, как на нем сидят очки и продемонстрировал нам их работу, пока кто-то из зала отчаяно выкрикивал «ok glass shutdown», который, конечно же не сработал. Если быть точнее, Шон нашел высоту горы Эверест (по его словам «сверху вскочила фотография горы») и приятный женский голос сообщил высоту!

Talk 7. Shawn Pearce о Git и Gerrit

Суть в том, что Gerrit — это очень удобно, и что он отвечает за его использование в Google. Внутри они используют Git, Perforce, Mercurial, SVN. В форме демонстрации научил ревьюить код на Gerrit-сервере. Как-то так, в основном вопросы задавали мы, на тему Git-а, и о том, как постигнуть Дзен в его использовании.

Любимое место Шона в Мантин-Вью, рядом со входом в столовую Big Table, на шезлонгах в траве, там он и работает. Любимый спорт: плавание.

Talk 8. Grant Grundler о Google Chromebook

Грант занимается разработкой интерфейса хромбуков для железа. От него мы узнали, как на примере датчика освещения можно отлаживать приложения низкого уровня (таких способов 4) и о том, что кромбуки стопроцентно займут свою нишу на рынке, особенно Pixel.

Нам подарили модель Google Chromebook Samsung Series 3 (по одной на призера). Я использую его в качестве серфера, печатной машинки (на нем пишу эту статью) и станции разработки (да-да. иногда делаю быстрые багфиксы через cloud9 и через него же деплою проекты на Heroku).

Между прочим, не самый плохой нетбук. Я целый день прошел с ним на батарее и пару раз деплоил проект через Cloud9 -> Heroku в макдональдсе, параллельно поигрывая в Little Alchemy.

Talk 9. Sudhakar Chandra о важности i18n

Судкахар рассказывает о том, какие есть способы интернационализации и упрощения ввода для людей из разных стран, и что самый лучший из них — голосовой ввод. Он дает очень много советов по интернационализации в Google и в целом. Интересно и познавательно

Любимое место Судкахара: кафешка в центре кампуса. По его словам, там достаточно сытно и тихо. Спорт: волейбол.

Talk 10. Carol Smith о Google Summer of Code

Кэрол, как и Стефани, организатор этой поездки, она вместе с остальными принимала в ней активное участие. Под конец она решила рассказать о том, что такое GSoC и почему студенты-программисты должны принимать в нем участие.

Google Summer of Code (GSoC) — инициативная программа компании Google, в рамках которой ежегодно проводится отбор проектов с открытым исходным кодом, в которых могут принять участие студенты. Победителям выплачиваются денежные гранты. Проекты должны предложить будущим участникам задания по программированию в рамках проекта. Каждый проект получает $5500, из которых $5000 достаётся студенту-участнику, выполнившему задание, а $500 — самому проекту.

Google использует данные участников для рекрутинга, так что это отличный вариант попасть туда на работу!

Google Tour

Опять-же, времени особо не было, успел сделать только несколько фоток с тура, среди них:

День 3. Google Summer...Day of Fun


Google решили, что лучше дать детям и их родителям отдохнуть после всего это программерского барахла и решили, что им стоит посетить бывшую тюрьму на острове Алькатрас или прокатиться по Сан-Франциско на сегвеях (это такие машинки на двух колесах, с платформой для ног и стволом).

Я выбрал сегвеи, и оказывается не напрасно. Как мы примерно провели день в фотографиях:

image

image

image

image

image

image

image

image

Заключение


Поездка была замечательная, мы очень много поели и получили кучу подарков от Google. До Nexus у меня никогда не было серьезного телефона, тем не менее я умудрялся собирать приложения под Android. Теперь этот процесс стал гораздо легче. Организаторы были просто замечательными: Stephanie, Carol и Cat сделали свою работу идеально хорошо!

В америке я купил макбук и возникло несколько вопросов по нему (может кто поможет):

  • Есть какой-то нормальный пакетный менеджер, по-серьезнее homebrew?
  • Можно как-то настроить действия компа при закрытии крышки?
  • Как вы делаете все эти .dmg которые монтируют диск и ставятся чисто в Applications?

Спасибо за внимание, и используйте Qt!