It's been a while...

Hi!

I know I said I'll make a Google Code-in review post around a week after the contest ended, but I had 2 rounds of mock final exams in Jan and Feb), and I just had to work on that. After that, the actual finals came along (March), and then the pandemic.

My school started online classes, and those have been going on since the beginning of April till now.

I had AP exams in May, and I had to rush the syllabus in April. Now, after the storm of work I had, I finally have some free time.

And by some, I mean some. I have an exam tomorrow. Ugh.

So, I've been busy with schoolwork, classic excuse. When's the GCI post?

Well, I ended up as a Runner up. I hoped I'd be a winner but welp, can't change that now, can I?

Also, I came across another extremely sad news: Google Code-in is dead.

In all honesty, that small competition taught me almost everything I know about code. Let me just rewind a little into my code journey:

I started coding in 6th grade (2014). I started learning QBASIC. I wish I had my old programs today, but they're gone. The hard drive they were on failed, the read/write head smashed into the plate, and all my old code was scratched into nothingness. However, the knowledge I acquired about loops, conditions, jumps, and basic data structures stuck with me.

In 7th grade (2015), I started learning Visual Basic, and I started making Windows Apps. It was fun. The most useful and maybe the most memorable app I wrote was an ASCII keyboard code displayer thing. You pressed a key, and it showed you the ASCII code for that character. The UI was completely compliant with the new Material Design guidelines Google had then put out, and that was probably one of the best programs I've written to this day. I do have some code from this time, but I'll really have to look for it. Most of this code was also on the same hard drive though.

In 8th grade (2016), I decided I wanted to move to mobile apps since Desktop apps are generally games or productivity work. More casual and smaller apps are used by mobile users. So, I tried learning Java for Android Studio. Needless to say, I had no idea what I was doing, and quit.

I moved on to C/C++ and again, rookie mistake: Jumping from "Wow I just learned what Strings are" to "Ooh what are pointers, and OwO what's this? memory allocation?" So I quit again. I did make some bug-riddled text adventure games and some other small console programs.

 Later that year, I started learning Unity3D with C# to make some games, and I had quite a bit of fun. I made the classic ball rolling tutorial, a flight simulator, an open world car driving simulator, some platformers, and my first mobile game! I participated in Ludum Dare 42, and I did quite well for a first-timer!

I continued writing Unity games during 2017, except for a little break in November, when I participated in Google Code-in for the first time. I was introduced to GitHub, and I made an account then.

I made numerous blog posts, and documentation work, since I really didn't have a good amount of experience in any programming language. I finished 5 tasks, for 3 organizations, and needless to say, I didn't get anything except for a shirt.

My Unity3D game dev journey continued till June of 10th grade (2018), and I tried making my first real mobile game. I tried, but I had very little knowledge of Vectors and basic Physics. I couldn't debug this monster.

I still know Unity3D and 2D well, and I still maintain that mobile game project. It's not quite ready yet, but it has been on GitHub since April 2018. I have solved most of the bugs, it runs ok, but it does have an occasional problem where it makes the game unplayable for some moves. I think it's because of the order in which the scripts are running for each GameObject, but to fix that, I'll have to restructure almost all of my code. I don't know if the time I spend on that will be worth it.

So, now it's October 2018. Google Code-in is happening again, and this time, I was in it to win it. I found Catrobat, and I decided I'll work with them. They didn't have much code on GitHub, most of their tasks were just making projects and publishing the source code on their website. I did extensive UI design and Graphics editing and design for my apps.

I worked day and night on every task, and in the end, I won the title of finalist and a hoodie.

It was fun for sure, and I learned a lot, but I wasn't happy with the result. Obviously, I believed my work was much better quality than the winners. I had done all my app graphics on my own, while the other winners used default graphics, and finished more tasks than me. It felt unfair.

Well, I couldn't do anything about it. I moved on.

That December, I noticed Python. I decided that this was it. The syntax, the indentation, the nonexplicit types, the flexibility, the availability of packages, the simplicity, and the ability to do so much in so little code, just amazed me. This still is and maybe will be my favorite programming language.

I started learning Python and got into intermediate-expert topics. I could finally code and write something useful.

All through 2019, I was pretty busy, but I had gained proficiency in Python. I started doing competitive programming in python, but I had little knowledge of Data Structures and algorithms, so I ended up finishing 0-1 questions in each competition. This was still okay, and I ended up with a 2-star rating on CodeChef.

At the end of 2019, however, I learned Julia and jumped into Google Code-in. This time, I learned essential Computer Science concepts. JSON, Markdown, basic HTML, text parsing, APIs, hosting on GitHub, Pull Requests and Issues, Forking, and basic version control, RegEx, and so much more.

All my other friends I worked with in Google Code-in know a lot of web development, and they inspired me to learn web development.

Now, during the pandemic, I have been learning a lot of web development, and it has been fun. I built my own API, a website that interfaces with the API, and some other side projects. It has been a lot of fun, and to be honest, Google Code-in gave me direction in what I wanted to learn.

And for that, I will be eternally thankful to Stephanie Taylor and all the people at the Google Open Source team that organized Google Code-in.

Also, Blogger just updated their site, and now it's much better than it was before, so my plans to move to a GitHub Pages Blog are now greatly foiled.

Comments

Popular posts from this blog

Google Code-in 2019: Week 5

Google Code-in 2019: Week 1

Google Code-in 2019: Week 2