Sok’22 Week 11: Finalizing the Left-Right Click Activity
In my previous blog, I discussed the random placement of the animal cards and avoiding the overlap between two animal cards.
As we are moving towards the end of the SoK period. I want to thank my mentors for resolving all my doubts(mostly silly) and helping me improve.
Update on tasks mentioned in my previous blog
Adding multiple datasets
The activity was still a single-level activity, so the next task was to add multiple datasets to the activity to make it more interactive. After discussing with my mentors, we agreed to add five levels to the activity. We’ll have four animals cards on the first level, and after that, we to increase two cards for each level. So at the final (5th) level, there will be 12 cards. But after that, we decided to have three levels only as there is not much difference in the difficulty of the activity level wise. We’re only increasing the number of cards, so three levels are ideal. And level 1 has more right-side animal cards, level 2 has left-side cards, and level 3 has an equal number of left and right side animal cards.
Other small improvements
The in-display mouse is completely functional now. It provides feedback for every click. For every correct click, two events are happening. The first is that the animal card moves towards its suitable house, and the second is the left or right click of the in-display mouse, depending upon the nature of the click (if it’s correct). The left or right side button changes its color and demonstrates a pressed effect.
I also added the activity description, improved a few variable names, and made the code clean. So it’s ready to be merged (after a few final checks).
Current Progress
Here’s a visual representation.
Learnings from Season of KDE
I’ve learned so many things during these months that it’s impossible to mention each of them. But I will tell you about my two significant learnings.
1. Trust the Process – At first, I was very nervous and skeptical about me completing this activity. Because before this, I had only worked on a minor issue (implementing the undo-all button in chess activity), and this was going to be my first significant contribution towards GCompris. But mentors helped me understand Qt/Qml. In the first few weeks, I was really slow because all this was too overwhelming for me, but after giving it time, I started making progress. Understanding the documentation plays a huge role because after this, I converted my thought process into code and discussed with mentors to understand the optimal way to implement a certain thing. I also improved my communication with mentors during this time.
2. We are writing code for the future – What I mean by this statement is generally, when we are working on something, we don’t really care about the quality of the code and tend to name variables literally anything, but when we are writing code for an application which has so many active users, then we need to keep in my mind that the code needs to be clean and easy to understand even if a beginner is trying to understand or someone who is having no context about it.
What next?
- To find a way to detect if a mouse is connected to the device or not. (As this activity is suitable for mouse attached devices).
Thank you for taking out the time to read this.