SoK Project – Week 1 & 2

With all the happiness after being selected for SoK 2018, I was looking forward to start working on my project with whole dedication. My project aims to complete port of a brain-boosting memory activity called “Railroad” (in which kids have to observe the given train and memorize it within given time and then try to rebuild it) from Gtk+ to Qt version. It is a part of project GCompris(a high-quality educational software suite, including a large number of activities for children aged 2 to 10). My mentors are Timothée Giet and Rudra Nil Basu, along with them I’d like to thank a lot to Johnny Jazeix and Divyam Madaan for helping me with my project. My SoK proposal can be found here –> SoK Proposal. And my progress can be tracked at –> Railroad branch.

I started with introducing myself to the GCompris community and discussing my implementation plans with the mentors. My mentors helped me to get my KDE developer account and setup git. First error which I encountered was during git clone, after googling about it and discussing with mentors I got to know that it was due to the firewall(thanks to my college).

My main task for first two weeks was to create a new layout for the activity, make the activity look better in small screen devices and remove horizontal scrolling. This activity was already started during previous SoK, so most of the code was already written. I compiled the activity and started understanding its code, my previous contributions on GCompris helped me to understand the code fastly. Previously it was hard-coded to have a fixed no. of wagons in fixed no. of rows which caused horizontal scrolling. I implemented a GridView based layout which helped to remove the need for horizontal scrolling and made UI look more beautiful.

1. For Horizontal Screens

2. For Vertical Screens

After working on UI, I created five levels based on increasing difficulty and fixed some issues in UI based on reviews from my mentors. Every error opened an opportunity for me to learn something new. I’ll be working on implementing keyboard navigations next week.

Some of the new things which I learned during this project so far
> Importance of Version Control System.
> Quality of code is more important than Quantity of code.
> Dividing a big task into small tasks and then proceeding.
> Using SSH keys.
> An image when opened with a text editor shows real mystery behind it.

In conclusion, SoK proves to be a great experience thus far, being a pleasure to work on a project focused mainly on Education. For further updates, stay tuned!