Trip report: Google Code-In 2016 Summit at Google headquarter

Heya fellow KDE people,

just a couple of weeks ago I got the opportunity to attend the Google Code-In Summit held in several locations scattered around the San Francisco Bay area. I can tell you first hand: It's been an awesome trip and I encourage anyone else to participate if the opportunity arises.

What is Google Code-In?

Google Code-In (GCI) is a contest which introduces pre-university students (ages 13-17) to open source software development. The event features a wide range of small beginner tasks, which allows students to jump into contributing to open-source no matter what skills they have. Experienced Mentors of participating organizations (hey, KDE!) help out scheduling the work and give useful tips to the newcomers.

This year, GCI has seen 1,340 students from 62 countries, and they completed an impressive number of 6,418 tasks. 17 organizations participated, amongst them were for instance Wikimedia, Drupal, FOSSASIA, (...) and of course KDE!

The summit

Each year, after GCI concluded, Google invites one mentor plus two Grand Prize winners of each participating organization to San Francisco, for the Code-In Summit. The Grand Prize winners of each org are selected by the organizations themselves: those students have completed a huge of number of tasks and/or otherwise performed exceptionally well.

Picture of Grand Prize Winners of GCI
The Grand Prize Winners of Google Code-In 2016

Each one of those Grand Prize winners, including their parents, were flown in to the US west coast for four days this summer to meet their mentors and connect with Google engineers.

The four days were quite packed, I'll try to summarize what happened throughout this event

Day 1: Meetup

Day 1 started late in the after noon, where all students and parents, as well as all mentors were invited to the Google San Francisco office for a first get-together. Remember, most of the students haven't met each other or the respective mentor before. After clarifying why we're here and what we're going to do the next days, Stephanie et. al from Google organized a little icebreaker game so we actually got to know each other.

First time I met my great fellow KDE GCI Grand Prize Winners, Ilya and Sergey, too. Congratulations on your award!

Oh, and of course we all got covered with tons of Google Swag and food afterwards.

Day 2: Award ceremony and talks

The second day started (way too early, yawn) at 7:15 AM, sharp, at the lobby of our hotel. We were transferred to the main Google Campus at Mountain View afterwards, where the Award ceremony with lots of other Google engineers started.

Chris DiBona, Director of Open Source at Google, held a talk highlighting the importance of the Open Source programs Google is sponsoring each year, thanking all the participants -- both mentors and students. Both Google Code-In and Google Summer of Code are immensely successful programs which introduce more and more students to the Open Source world each year.

After this, Chris DiBona and his team went through all the organizations and awarded each Grand Price winner with a trophy. Chris made it very clear that each of those students did his or her job extremely well, which is the sole reason he or she could attend this event. The parents of course were super proud of their children, and took the opportunity to take tons of photos during the whole ceremony.

Picture of KDE's Grand Prize Winners of GCI
Sergey Popov (left) and Ilya Bizyaev (right), proudly presenting their GCI trophy.
I didn't get a trophy, d'oh!

Both Sergey and Ilya completed around 20 tasks during the GCI period and both showed some impressive enthusiasm, commitment and competence.

Again, congratulations to all the Grand Prize winners, but especially to "our" guys of course -- thanks for participating and helping out in KDE!

The rest of the day was fully packed with talks from Google engineers, a couple of them quite interesting even for the majority of mentors. We got an introduction to Waymo, Google's self-driving car and introduction to how 'to become a Kernel developer' by Grant Grundler (from the Chrome team). After that, an introduction to Open Source Compliance by Max Sills (attorney at Google) -- which led to a little heated discussion initiated by attendants about the usefulness of the Affero General Public License -- hint: Google doesn't like it at all) and a serious discussion about the WTFPLDo What the Fuck You Want to Public License, which is despite its funny touch is actually not recommended to use, especially in the US, since it doesn't clearly deny liability. Could get you in trouble.

Lunch time!

... and of course, more photos, and a short walk around the Google campus, checking out all the various cafeterias and other tourist attractions.

KDE Grand Prize Winners with Android mascot
Ilya and Sergey again!
Picture the whole GCI summit attendants
This time, a picture of all the GCI attendants: Students, parents and mentors together (Picture: Josh Simmons)

More talks after lunch: A couple of talks about how working at Google is like, how the recruitment process works. Next was a short overview over Oppia, Google's open interactive learning platform, backed by artificial intelligence by Sean Lip and last but not least, an introduction to TensorFlow, and open-source library for machine learning, by Andrew Selle.

All in all, a couple of pretty insightful talks, surely impressive to the students, I'm happy those Googlers found the time to present their projects.

After that, of course more tasty food, a short visit to the Google visitor center + merchandise store and then we were on our way back to San Francisco downtown again.

Day 3: Activity

Day 3 was the activity day, where one group could spent the day visiting the Exploratorium, the Museum of Science, Art and Human Perception, one of the biggest attractions in SF, the other group could ride a Segway next to the piers.

All of KDE of course opted for the Segway ride, which was a fun experience. Especially for the student's parents of course, which had a couple of initial difficulties (but did well afterwards). At least no-one crashed!

Segway introduction
Segway introduction by a professional -- my take away: The "bootie stop", the quickest way to get your Segway halted.

Later the day, we got to see the good old Golden Gate bridge. And a couple of students took the opportunity to walk the 2.7 km bridge by foot. Crazy youngsters.

Ilya, Sergey and me at the Golden Gate bridge
Ilya, Sergey and me being strong at the selfie game

We were also lucky to see a couple of humpback whales popping up directly under the bridge this day, amazing!

Pictures of humpback whales under the Golden Gate bridge
Humpback whales under the Golden Gate bridge (Picture courtesy: Jack Pan-Chen -- great shot!)

We concluded the end of day with a pretty scenic cruise from Sausalito (the city right next to other side of the Golden Gate bridge) back to SF harbor.

More food and drinks included (yes, Google was trying hard cramming us).

Day 4: More talks, end of the summit

Day marked the end of the whole summit, with a couple more talks from Google engineers -- mentors and students both got the opportunity to talk a bit about whatever they wanted, too.

View from Google SF office
View from Google SF office at the San Francisco–Oakland Bay Bridge

The remaining talks were about the new Google Open Source web page and how Open Source software is managed at Google (hint: every repository is mirrored internally, otherwise wouldn't be manageable). Next was a talk about Kubernetes, Google's container orchestration software, and an introduction to Code Jam, a competitive programming contest hosted by Google on a yearly basis.
The talk about Project Fi, a multi-carrier "wireless" service provider, was super insightful after all. It's fascinating to see the challenges phone operating systems are facing when trying to do clever real-time network/carrier switching on-the-go, and how Project Fi tries to do better by improving the SIM card design at the lowest levels.
Last but not least, one of the Googlers gave us an introduction to LLVM at Google, and how they switched from GCC to Clang internally a while ago, and that they're actually working a lot on performance improvements in the LLVM stack these days.


I'd like to take the opportunity to thank KDE for letting me attend this summit in the first place. Lots of thanks go out to the hard-working GSoC/GCI admins in KDE, namely Valorie Zimmermann and Bhushan Shah, who keep that whole thing running and nag people when deadlines are close!

Also lots of thanks to Google for sponsoring these kind of programs and for inviting people to their premises for gathering together. Thanks a lot to Stephanie, Mary, Cat, Helen, Josh (all Googlers) for their hard work keeping the attendants happy during the whole four days!