GSoC/2017/StatusReports/RudraNilBasu

From KDE Community Wiki
< GSoC‎ | 2017‎ | StatusReports

GCompris: Finishing started activities

GCompris is a high-quality educational suite which aims at making learning easier for children aged 2 to 10. GCompris currently has 137 activities on various topics such as science, maths, games with which it has successfully created a great learning environment for children. However, there were few activities which was started previously but was not yet complete. I strongly believe in what GCompris stands for and in this project, I aimed at taking GCompris one step forward by finishing three started activities: Pilot a Submarine, Family and Digital Electronics

View my full proposal here: GSoC_2017_KDE_Proposal

View my GSoC Project link here: GSoC_Project_link

Current Status

For Google Summer of Code 2017, I planned to finish the following started activities:

       1.  Pilot a Submarine
            Status: Merged
       2.  Family
            Status:  Implementation done, currently in testing phase
       3.  Digital Electricity
            Status:  Proposed implementations are done, currently in testing phase

All the activities are complete, with one activity being merged with master (Pilot a Submarine) and the other two (Family and Digital Electricity) are in testing phase.


Pilot a Submarine

Introduction

The Pilot a Submarine activity is aimed at teaching how a submarine works, focussing on the basic three elements of a submarine: the engine, rudders and the ballast tanks. It was originally started in the gsoc-submarine branch and this activity was present in the gtk+ version of GCompris. My task was to port the activity to the Qt version of GCompris.

Goals

Broadly, the items that were implemented for the task are listed as follows:

       1.  The components required for the levels in the submarine activity [DONE]
       2.  Implement tutorials for the initial levels [DONE]
       3.  Basic layout of the first 10 levels of the submarine activity [DONE]
       4.  Submarine components: Engine [DONE], Ballast Tanks [DONE], Rudders [DONE]
       5.  Collision detection [DONE]
       6.  Determine Win-Loss scenario [DONE]
       7.  Implement UI for controlling the submarine components [DONE]
       8.  FInal bug fixes and improvements [DONE for first version]

Related Blog Posts

Links

The Pilot a Submarine activity was developed in the gsoc_rudra_submarine branch of Gcompris-qt

Phabricator task: https://phabricator.kde.org/T1529

Commit Links:

Merged with master: 4e5b91e9942a872f294a726ebf9897c648235091

View commits in the gsoc_rudra_submarine branch here

Screenshots

Submarine activity in action Pickups in the form of jewels in the Submarine activity

Family

Introduction

The Family activity is aimed at helping children understand how they are related to their relatives. It was started in GsoC-Family branch. My task was to improve the overall layout of the activity keeping same generation members at the same level in the tree representation, making the relation easy to understand, along with some cleaning up of the codebase. Additionally, I worked on adding another activity extending the "Family" activity, where given a relation, the user will have to click on the correct pair


Goals

Broadly, the items that were implemented are listed as follows:

       1.  Improve the current layout of the activity [DONE]
       2.  Implement the extended activity [DONE]
       3.  Test both of the above activities for possible improvements/bug fixes

Related Blog Posts

Links

The Family activity is being developed in the GSoC-family branch of Gcompris-qt

Phabricator task: https://phabricator.kde.org/T6096

Commit links:

View my commit in the GSoC-family branch here

Mockups

Current layout of Family activity Expected final layout

Screenshots

Few "Before and After" screenshots for the Family activity

Left: Before

Right: After

           

Working of Family_find_relatives activity


Digital Electricity

Introduction

The Digital Electricity activity is aimed at simulating digital circuits real-time. A Free Mode already exists, and my task was to implement a Tutorial Mode which is aimed at teaching the children about how each of the components work in a digital circuit and their behaviours.

Goals

Broadly, the items that were implemented are listed as follows:

       1.  Create two modes accessible via the config option in the bar  [DONE]
       2.  For tutorial mode, import level components from dataset  [DONE]
       3.  Implement pre-built circuit for tutorial mode  [DONE]
       4.  Complete tutorials levels  [DONE]
       5.  Increase Toolbar button size  [DONE]
       6.  Increase playArea size, zoom in and out [DONE]
       7.  Navigate through the playArea  [Testing / IN PROGRESS]

Related Blog Posts

Links

The Digital Electricity activity is being developed in the gsoc_pulkit_digital_electricity branch of Gcompris-qt

Phabricator task: https://phabricator.kde.org/T1524

Commit Links:

View my commits for the activity in the gsoc_pulkit_digital_electricity branch here

Screenshots

Tutorial Modes of Digital Electricity activity:


Tutorial on using BCD counter using a signal generator and displaying the count on the seven segment display


A Basic tutorial on the NOR gate

Contact

Blog: http://rudranilbasu.me/blog/

IRC nickname: rudra

IRC channel: #gcompris