Google Code-in 2018

Monday, 07 January 2019

An amazing adventure.

The thriller-like introduction

It was a rainy and foggy Friday, the last in year 2018. I was home alone. I woke up at 10AM, feeling awfully tired because of playing Battlefield V till late night. I dressed up, washed my face with cold water and checked my phone. There was a bunch of notifications, as always. I would almost delete all of them, but suddenly something catched my eye. A single Gmail notification increased my heart rate by tens of percent. It said…

The actual beggining

I assume you know what Google Code-in is as you’re reading this, but if you don’t, then…

Google Code-in is a global, online contest introducing teenagers to the world of open source development.

I learned about it at the beggining of the summer. I read a post somewhere on Medium and almost immediately decided to take part in the contest. But a week or two later… I simply forgot about it. Ya know, summertime…

Summertime…

It came to my head again in September, but unfortunately I wasn’t doing almost anything to prepare myself. I had tons of schoolwork and other things to do.

And then it came

Twenty-third October

I remember I wasn’t in a good mood on that day. I was sick and lying in bed for a few days, and was even thinking if I should participate in the contest. But eventually I opened GCI website, signed up and examined the list of organizations. I went up for JBoss Community, because they had lots of Android-related tasks and Android is my favorite platform, so the choice was kinda easy. After a while I uploaded the required Parental Consent (filled by my Mum) and was good to go.

I decided to do something easy to start with, but I also kept in mind that quality is more important than quantity. I mean, I was aware I’ll have to do harder tasks in order to have chances to receive something more than a Google T-Shirt ;)

Tasks

At this point it seems OK to talk about one of the essentials of GCI, that is tasks. There were lots of them, about 40% related to Android, 40% to Web Development (mainly Angular), and 20% to “other things”. The difficulty level was differential: some tasks (like the aforementioned “Setup Git and a GitHub account”) were very easy, but most were on the level I’d describe as “medium” and “a bit harder than medium”. By these words, I mean a task that required some research and/or learning a new concept and applying that newly-gained knowledge in practice.

In my opinion, there weren’t any “very hard” tasks.

Overall, I’ve done 38 tasks, the last being submitted 1 hour before the deadline 😂

Coding JBoss app

My favorite task was (I say it without any doubt) creating a JBoss App. I like it that much because it allowed me to be creative and do things my own way. It had three stages:

The task also required to record a short video presentation of the app and upload it to YouTube, which I liked a lot too.

Coding Telegram Bot at school

I also liked the task which required students to create their own Telegram Bot. I found it very interesting and fun to create. I even took my laptop to school and were coding after lessons. Thanks to this task, my JavaScript skills improved and I started using Telegram 👍

Of course there were much more great tasks, but these 2 were the best. Now a few examples of what I’ve learned thanks to the contest:

And much more. There were lots of awesome tasks to do for everybody. If you participate in GCI, you’ll be surely by amazed by how much you’ve learned through the contest.

Fun fact At the end of the contest, there were no Android tasks left for me (I had done everything), so I came up with a few ideas and sent them to mentors.

My plans for the About App screen in Lead Management app

People

It may seem quite funny, but (at least in my opinion) the most important part of Google Code-in isn’t code, but people. Community. Mentors and students. Each of them trying to the their best. It’s incredibly motivating and greatly expands one’s horizons. When I had a problem I couldn’t solve for a longer time, I just asked other students and mentors for help and there was always somebody to give that help. Although we were competing with each other, the atmosphere was very nice and I could feel something I’d describe as the “spirit of brotherhood”.

Now let me mention and thank a few people:

Time

The biggest problem during the contest. This year is my first in a high school and it was difficult for me to stay competitive in GCI and not get a lot bad grades.

Health

I know few people who say they were working on tasks till 3AM and sleeping 4 hours a day. It seems impossible to live that way for me so I tried to sleep as much as possible.

Also, sitting whole days had a negative impact on my condition. I’m not a very sporty person, but I like running. Now, I can’t even run 1km without losing my breath. Fortunately, spring is coming 😎

After all, health is important.

The End

And that’s it. Hope you liked my post. Maybe it even encouraged you to take part in Google-Code in 2019?

I’d also like to thank my family, girlfriend and friends for supporting me. Also, thank you, my parents, for understanding why do I sit so long at the computer.

Oh… I almost forgot to finish the story from the beginning of the post. The email I got on that lazy and quiet winter morning said

Yessss!

I’m very happy with the result, especially because the competition was pretty hard. Hoping to perform even better next year!


2024-08-18 – frp (Fast Reverse Proxy) instead of ngrok
2024-08-16 – Cirrus CI is the best CI system out there
2024-08-14 – Going to Berlin for Droidcon/Fluttercon
2024-06-25 – I was awarded Google Open Source Peer Bonus
2024-06-04 – My journey to Google I/O ’24
2024-05-11 – GitHub Actions beg for a supply chain attack
2024-03-19 – Writing a custom Dart VM service extension (part 1)
2024-02-08 – On using smartphone for things that make sense
2023-11-30 – Semantics in Flutter - under the hood
2023-11-25 – Flutter Engine notes
2023-09-17 – Creating and managing Android Virtual Devices using the terminal
2023-05-27 – Suckless Android SDK setup
2023-05-26 – Let’s start over
2023-05-21 – Short thought on “The Zen of Unix”
2023-05-15 – Notes about “flutter assemble”
2019-01-07 – Google Code-in 2018