SlideShare una empresa de Scribd logo
1 de 7
GSoC proposal for GNOME (GCompris)
By Matilda Bernard
E-mail address: serah4291@gmail.com
IRC Nick: RedAdmiral
Blog: matildabernard.blogspot.com
Location: New Delhi, India (UTC + 5:30 Time zone)

Education
3rd year student pursuing Bachelors in Technology in Computer Science at Regional Institute of
Management and Technology, Punjab Technical University, India.

Why GNOME (GCompris)?
I was introduced to FOSS about a year back where I began using Gnome and absolutely loved
it. Since then it has been a total learning experience. GNOME lets me customize things and is
an amazing environment to work on. Things like the Application Desktop Launcher, GCompris,
Gedit, etc. are reasons why I like using it. It is the feeling of having everything at my fingertips
that makes me love it.
I find GCompris a fun and innovative way for kids to learn various basic concepts and the
best part is that it allows free and open source education to students. I would like to work with
GCompris because it uses Python (something I have good working knowledge of) plus it also
gives me the chance to create graphical user interfaces using PyGTK and PyGooCanvas and
make complete games for kids. The very thought of having kids I know (which includes my
cousins) use activities I made to learn new things is one of the most exciting things about doing
this project.

This being my first GSoC I feel it would be a great opportunity to learn a lot more about Python
(something I’ve really enjoyed coding in) and get more closely involved with the GNOME
community.I do not intend on stopping with just this GSoC but plan on continuing to contribute
to GNOME. My exams would end in April itself after which I have absolutely free vacations
for about 3 months. Therefore, I can complete the code on time as per the required schedule and
definitely hope to complete the project in a professional manner. All in all I hope to have a really
good time working on the project.
Abstract

Since GCompris focuses on learning while playing for children, it is important to take note of
what catches the attention of the child. It has been noticed that bright colors and peculiar sounds
keep them engrossed in the activity. The content has to be meaningful and pertain to issues that
are commonly concomitant with society. No doubt the games should be interesting for the kids,
but there should be an attempt that the learning from the games help them in their academic
knowledge, and some games should also enhance their knowledge/awareness on social values.
With cases of child obesity and other health issues being a major concern globally, it would be
a great idea to make the children understand the difference between healthy food and junk food
through interesting games.

There are two sections that I would be focusing on:

- Science section:
The mystery of space is probably one of the most intriguing and fascinating things for kids
of almost all ages but learning about the solar system can be boring if done through static
presentations. GCompris always presents activities that complements a book and for which the
computer may help the child to learn something interestingly. So, keeping these things in mind I
would like to create two space related activities that would experimentally help kids learn more
about –
1) The concept of gravity.
2) The orbital speed - distance relation.


- Miscellaneous section:
1) Environmental pollution is one of the major problems in the world today. The large amount
of waste disposed is one of the major causes of this problem. Classifying garbage can help
reduce environmental pollution and enhance the quality of the recycling and may be beneficial to
domestic recycling industry. My task would be to create an activity that would help kids classify
garbage into various categories thereby promoting the - “reduce, reuse and recycle” motto.

2) The food groups are a simple way for children to break down and understand their dietary
needs, thereby helping them make healthier choices while eating. Foods are classified into five
food groups based on similarity of agricultural base and traditional classification and usage of
the food. Foods within each food group also contain similar nutrients that contribute to an overall
healthy eating pattern. I would like to create an activity that would help kids identify the various
categories thereby, promoting healthy eating.
Proposal:

To create four activities touching two sections of the GCompris software.

1) Land Safe: In this activity children would control a spaceship that moves on the 2D screen.
They would have to land it on the specified landing area without crashing, by controlling the
thrust using right/left/down/up keys. After each safe landing the gravity will change (i.e. they
will land on another planet with a different gravitational force).




                            Fig 1: prototype art for game Land Safe

2) Place your Satellite: A rocket will be launched into space where the escape velocity of the
rocket will be mentioned. Sliding on to the next screen kids will get to place their satellite
in an orbit by controlling the speed and distance from the planet. By doing this, they can
experimentally understand how the gravitational pull and satellite's inertia of motion need to be
balanced for it to stay in orbit.




                     Fig 2: Rough art for game Place your Satellite [19][20]
3) Food Classification: There would be various levels for the various food categories. At Each
level a particular food group would be mentioned (e.g. Fruits) and different food items would
be present. Kids will have to make GMuncher (a character) eat only the items belonging to that
particular category. The importance of these food categories would be mentioned at each level
and at the end of completion of the activity a food plate showing the recommended portions
would also be displayed encouraging a balanced diet.




                            Fig 3: Rough art for game Food Classification
                                 [1],[2],[3],[4],[5],[6],[7],[8],[9],[10]


4) Garbage Classification: The littered garbage will have to be classified into first only organic
and inorganic. In the next level the number of categories would be increased - glass, plastic,
metal, etc.




                   Fig 4: Garbage classification game (rough concept and art)
                               [11][12][13][14][15][16][17][18]
Working Methodology

- Get an insight into the interaction between GCompris core and the activity plugins. Thereby,
attaining a deeper understanding of the internals of GCompris. In order to create a better system,
deeper understanding is required. The interaction between GCompris core and the activity plugin
can be explored by studying the API which includes - GNOME Canvas API and the Plugin API.
- Use pythontest which is a showcase activity to understand code by example.
-Create the activities using python template. Python template which is an empty python activity
project will help to serve as a skeleton thereby, making the process of creating an activity easier.
-Collect content and images compatible with the GNU GPL and free for commercial use.
- Using GIMP and Inkscape, design icons, skins and logos. Basically create all the images that
would be required in the activities keeping in mind not to include original text that cannot be
translated later. The images need to be in sync with the look and feel of GCompris.
-Sketch the UI for the activities so that there is a clearer picture in mind while designing.
-Designing the user interface with PyGoocanvas to implement the canvas widgets and PyGTK
for creating the GUI.
-Develop algorithms for the activities.
-Integrate the algorithms with the code.
- Create menus in xml format providing all the activity information, fields and tags. The
information in the menus needs to be precise as it selects the plugin, describes the activity and
also provides inline documentation.
-While coding for the activity use GCompris API to connect entry point to icon on menu and
implement set of functions in order to be operated by core (both mandatory as well as optional
entry points). Also, make sure that the activity code initializes the control bar with the relevant
buttons and on the event of exit the activity cleansup and end entry connects back to the menu.
The activity plugin should includes

Timeline

April 24th - May 20 (Community bonding period)
-Discuss the project in detail with mentor.
-Go through documentations of PyGTK, PyGoocanvas and learn how a UI is built.
-Create simple applications using python test and python template activities.
-Collect pictures, skins, icons, exact information regarding the activities( like speed - distance
relation for satellites), design logos using GIMP.
-Sketch the UI for various activities to be built.
-Formulate use cases.
-Formulate algorithms for all activities.

May 21st - July 10th (Coding period)
- Design UI of two activities (Land Safe and Place your Satellite) using PyGooCanvas.
-Code for both the activities using python and by implementing the formulated algorithms.
-Complete code integration with UI.
-Test functionality of code written.
-Documenting
July 13th (Mid Term Evaluation)
Deliverables: Submit two completed activities - Land Safe and Place your satellite along with
documentation.

July 14th - August 5th
Design UI for food and garbage classification activities
-Code for both these activities.
-Code integration of activity plugin with UI
-Reduce code complexity
-Test functionality of code written.

August 6th - August 13th
-Code refactoring
-Debugging
-Testing
-Documenting

August 14th - August 20th (Pencils down)
Buffer period (This time can be used for all the last minute tweaks as something can possibly go
wrong)

A bit about me
I am a third year student pursuing Bachelors of Technology in Computer Science discipline at
Regional Institute of Management and Technology, Punjab Technical University, India. I am
well versed with Python and also with the community interactions of OSS projects, I use mailing
lists, IRC and version control systems like Git and host all my code on Github so, I can start
working on the project early.
I have been working with GCompris for some time now and have also reported two bugs
(#662576 [21] and #662880 [22]) and also found a fix for the former. I have also added three
levels in the “Locate the region” activity. From GSoC I hope to gain experience to be involved in
a professionally managed Open Source project and am looking forward to it eagerly.

References:
[1]- http://www.clker.com/clipart-14097.html
[2][3] - http://www.freeclipartpics.com/fruit-clip-art-images.htm
[4][5][6]- http://www.freeclipartpics.com/vegetable-clipart-images/
[7]- http://www.freeclipartpics.com/freecheesewedgeclipart.htm
[8] - http://www.how-to-draw-funny-cartoons.com/image-files/cartoon-tuna-6.gif
[9] - http://www.clker.com/clipart-3921.html
[10] - http://www.clker.com/clipart-29011.html
[11] - http://www.clker.com/clipart-10873.html
[12] - http://www.clker.com/clipart-3929.html
[13] - http://www.clker.com/clipart-3933.html
[14] - http://www.clker.com/clipart-12931.html
[15] - http://www.clker.com/clipart-trash.html
[16] - http://www.clker.com/clipart-3985.html
[17] - http://www.clker.com/clipart-cracked-egg-1.html
[18] - http://www.clker.com/clipart-11816.html
[19] - http://www.clker.com/clipart-2172.html
[20] - http://www.clker.com/clipart-satellite-download.html
[21] - https://bugzilla.gnome.org/show_bug.cgi?id=662576
[22] - https://bugzilla.gnome.org/show_bug.cgi?id=662880

DISCLAIMER : The images above are not to be used for any commerical use and are in the proposal as and for
placeholders only

Más contenido relacionado

Similar a Proposal gsoc2012-matilda-bernard

Open problems "ICT World"
Open problems "ICT World"Open problems "ICT World"
Open problems "ICT World"Monika Schwarze
 
Pac Man: Game Development using PDA and OOP
Pac Man: Game Development using PDA and OOPPac Man: Game Development using PDA and OOP
Pac Man: Game Development using PDA and OOPIRJET Journal
 
Digital pi castlemilk case study
Digital pi castlemilk case studyDigital pi castlemilk case study
Digital pi castlemilk case studyColin Crook
 
The NXT Step - Assessing with Lego Robots
The NXT Step - Assessing with Lego RobotsThe NXT Step - Assessing with Lego Robots
The NXT Step - Assessing with Lego RobotsKenji Lamb
 
3rd Grade Mathematics Lesson Plan
3rd Grade Mathematics Lesson Plan 3rd Grade Mathematics Lesson Plan
3rd Grade Mathematics Lesson Plan KellyOLeary6
 
Material design for android
Material design for androidMaterial design for android
Material design for androidVmoksha Admin
 
32 interesting ways_to_use_an_i_pod_touch_in_th
32 interesting ways_to_use_an_i_pod_touch_in_th32 interesting ways_to_use_an_i_pod_touch_in_th
32 interesting ways_to_use_an_i_pod_touch_in_thGrahamAttwell
 
LSBU PGCE Computing in Primary Schools
LSBU PGCE Computing in Primary SchoolsLSBU PGCE Computing in Primary Schools
LSBU PGCE Computing in Primary SchoolstalkPrimaryICT
 
Coding io1-materials for teachers
Coding io1-materials for teachersCoding io1-materials for teachers
Coding io1-materials for teachersGeorgeta Manafu
 
28 Interesting Ways to Use the IPod in Classrooms
28 Interesting Ways to Use the IPod in Classrooms28 Interesting Ways to Use the IPod in Classrooms
28 Interesting Ways to Use the IPod in ClassroomsHeather Turner
 
ICT teaching and learning framework updates by john mc lear
ICT teaching and learning framework updates by john mc learICT teaching and learning framework updates by john mc lear
ICT teaching and learning framework updates by john mc learjohnyma22
 
Coding io1-materials for students-group5
Coding io1-materials for students-group5Coding io1-materials for students-group5
Coding io1-materials for students-group5Georgeta Manafu
 
Unity in the Classroom for Creating VR Sims and Edugames
Unity in the Classroom for Creating VR Sims and EdugamesUnity in the Classroom for Creating VR Sims and Edugames
Unity in the Classroom for Creating VR Sims and EdugamesSeriousGamesAssoc
 

Similar a Proposal gsoc2012-matilda-bernard (20)

proposal
proposalproposal
proposal
 
Gcompris proposal
Gcompris proposalGcompris proposal
Gcompris proposal
 
Open problems "ICT World"
Open problems "ICT World"Open problems "ICT World"
Open problems "ICT World"
 
Pac Man: Game Development using PDA and OOP
Pac Man: Game Development using PDA and OOPPac Man: Game Development using PDA and OOP
Pac Man: Game Development using PDA and OOP
 
Digital pi castlemilk case study
Digital pi castlemilk case studyDigital pi castlemilk case study
Digital pi castlemilk case study
 
The NXT Step - Assessing with Lego Robots
The NXT Step - Assessing with Lego RobotsThe NXT Step - Assessing with Lego Robots
The NXT Step - Assessing with Lego Robots
 
Tech module 3
Tech module 3Tech module 3
Tech module 3
 
3rd Grade Mathematics Lesson Plan
3rd Grade Mathematics Lesson Plan 3rd Grade Mathematics Lesson Plan
3rd Grade Mathematics Lesson Plan
 
SAMR Scenarios
SAMR ScenariosSAMR Scenarios
SAMR Scenarios
 
Material design for android
Material design for androidMaterial design for android
Material design for android
 
32 interesting ways_to_use_an_i_pod_touch_in_th
32 interesting ways_to_use_an_i_pod_touch_in_th32 interesting ways_to_use_an_i_pod_touch_in_th
32 interesting ways_to_use_an_i_pod_touch_in_th
 
LSBU PGCE Computing in Primary Schools
LSBU PGCE Computing in Primary SchoolsLSBU PGCE Computing in Primary Schools
LSBU PGCE Computing in Primary Schools
 
By two project ict
By two project ictBy two project ict
By two project ict
 
ICT PROJECT (BY PAIR)
ICT PROJECT (BY PAIR)ICT PROJECT (BY PAIR)
ICT PROJECT (BY PAIR)
 
Coding io1-materials for teachers
Coding io1-materials for teachersCoding io1-materials for teachers
Coding io1-materials for teachers
 
28 Interesting Ways to Use the IPod in Classrooms
28 Interesting Ways to Use the IPod in Classrooms28 Interesting Ways to Use the IPod in Classrooms
28 Interesting Ways to Use the IPod in Classrooms
 
ICT teaching and learning framework updates by john mc lear
ICT teaching and learning framework updates by john mc learICT teaching and learning framework updates by john mc lear
ICT teaching and learning framework updates by john mc lear
 
Coding io1-materials for students-group5
Coding io1-materials for students-group5Coding io1-materials for students-group5
Coding io1-materials for students-group5
 
MBTS Round 3, Week 1
MBTS Round 3, Week 1MBTS Round 3, Week 1
MBTS Round 3, Week 1
 
Unity in the Classroom for Creating VR Sims and Edugames
Unity in the Classroom for Creating VR Sims and EdugamesUnity in the Classroom for Creating VR Sims and Edugames
Unity in the Classroom for Creating VR Sims and Edugames
 

Último

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Último (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Proposal gsoc2012-matilda-bernard

  • 1. GSoC proposal for GNOME (GCompris) By Matilda Bernard E-mail address: serah4291@gmail.com IRC Nick: RedAdmiral Blog: matildabernard.blogspot.com Location: New Delhi, India (UTC + 5:30 Time zone) Education 3rd year student pursuing Bachelors in Technology in Computer Science at Regional Institute of Management and Technology, Punjab Technical University, India. Why GNOME (GCompris)? I was introduced to FOSS about a year back where I began using Gnome and absolutely loved it. Since then it has been a total learning experience. GNOME lets me customize things and is an amazing environment to work on. Things like the Application Desktop Launcher, GCompris, Gedit, etc. are reasons why I like using it. It is the feeling of having everything at my fingertips that makes me love it. I find GCompris a fun and innovative way for kids to learn various basic concepts and the best part is that it allows free and open source education to students. I would like to work with GCompris because it uses Python (something I have good working knowledge of) plus it also gives me the chance to create graphical user interfaces using PyGTK and PyGooCanvas and make complete games for kids. The very thought of having kids I know (which includes my cousins) use activities I made to learn new things is one of the most exciting things about doing this project. This being my first GSoC I feel it would be a great opportunity to learn a lot more about Python (something I’ve really enjoyed coding in) and get more closely involved with the GNOME community.I do not intend on stopping with just this GSoC but plan on continuing to contribute to GNOME. My exams would end in April itself after which I have absolutely free vacations for about 3 months. Therefore, I can complete the code on time as per the required schedule and definitely hope to complete the project in a professional manner. All in all I hope to have a really good time working on the project.
  • 2. Abstract Since GCompris focuses on learning while playing for children, it is important to take note of what catches the attention of the child. It has been noticed that bright colors and peculiar sounds keep them engrossed in the activity. The content has to be meaningful and pertain to issues that are commonly concomitant with society. No doubt the games should be interesting for the kids, but there should be an attempt that the learning from the games help them in their academic knowledge, and some games should also enhance their knowledge/awareness on social values. With cases of child obesity and other health issues being a major concern globally, it would be a great idea to make the children understand the difference between healthy food and junk food through interesting games. There are two sections that I would be focusing on: - Science section: The mystery of space is probably one of the most intriguing and fascinating things for kids of almost all ages but learning about the solar system can be boring if done through static presentations. GCompris always presents activities that complements a book and for which the computer may help the child to learn something interestingly. So, keeping these things in mind I would like to create two space related activities that would experimentally help kids learn more about – 1) The concept of gravity. 2) The orbital speed - distance relation. - Miscellaneous section: 1) Environmental pollution is one of the major problems in the world today. The large amount of waste disposed is one of the major causes of this problem. Classifying garbage can help reduce environmental pollution and enhance the quality of the recycling and may be beneficial to domestic recycling industry. My task would be to create an activity that would help kids classify garbage into various categories thereby promoting the - “reduce, reuse and recycle” motto. 2) The food groups are a simple way for children to break down and understand their dietary needs, thereby helping them make healthier choices while eating. Foods are classified into five food groups based on similarity of agricultural base and traditional classification and usage of the food. Foods within each food group also contain similar nutrients that contribute to an overall healthy eating pattern. I would like to create an activity that would help kids identify the various categories thereby, promoting healthy eating.
  • 3. Proposal: To create four activities touching two sections of the GCompris software. 1) Land Safe: In this activity children would control a spaceship that moves on the 2D screen. They would have to land it on the specified landing area without crashing, by controlling the thrust using right/left/down/up keys. After each safe landing the gravity will change (i.e. they will land on another planet with a different gravitational force). Fig 1: prototype art for game Land Safe 2) Place your Satellite: A rocket will be launched into space where the escape velocity of the rocket will be mentioned. Sliding on to the next screen kids will get to place their satellite in an orbit by controlling the speed and distance from the planet. By doing this, they can experimentally understand how the gravitational pull and satellite's inertia of motion need to be balanced for it to stay in orbit. Fig 2: Rough art for game Place your Satellite [19][20]
  • 4. 3) Food Classification: There would be various levels for the various food categories. At Each level a particular food group would be mentioned (e.g. Fruits) and different food items would be present. Kids will have to make GMuncher (a character) eat only the items belonging to that particular category. The importance of these food categories would be mentioned at each level and at the end of completion of the activity a food plate showing the recommended portions would also be displayed encouraging a balanced diet. Fig 3: Rough art for game Food Classification [1],[2],[3],[4],[5],[6],[7],[8],[9],[10] 4) Garbage Classification: The littered garbage will have to be classified into first only organic and inorganic. In the next level the number of categories would be increased - glass, plastic, metal, etc. Fig 4: Garbage classification game (rough concept and art) [11][12][13][14][15][16][17][18]
  • 5. Working Methodology - Get an insight into the interaction between GCompris core and the activity plugins. Thereby, attaining a deeper understanding of the internals of GCompris. In order to create a better system, deeper understanding is required. The interaction between GCompris core and the activity plugin can be explored by studying the API which includes - GNOME Canvas API and the Plugin API. - Use pythontest which is a showcase activity to understand code by example. -Create the activities using python template. Python template which is an empty python activity project will help to serve as a skeleton thereby, making the process of creating an activity easier. -Collect content and images compatible with the GNU GPL and free for commercial use. - Using GIMP and Inkscape, design icons, skins and logos. Basically create all the images that would be required in the activities keeping in mind not to include original text that cannot be translated later. The images need to be in sync with the look and feel of GCompris. -Sketch the UI for the activities so that there is a clearer picture in mind while designing. -Designing the user interface with PyGoocanvas to implement the canvas widgets and PyGTK for creating the GUI. -Develop algorithms for the activities. -Integrate the algorithms with the code. - Create menus in xml format providing all the activity information, fields and tags. The information in the menus needs to be precise as it selects the plugin, describes the activity and also provides inline documentation. -While coding for the activity use GCompris API to connect entry point to icon on menu and implement set of functions in order to be operated by core (both mandatory as well as optional entry points). Also, make sure that the activity code initializes the control bar with the relevant buttons and on the event of exit the activity cleansup and end entry connects back to the menu. The activity plugin should includes Timeline April 24th - May 20 (Community bonding period) -Discuss the project in detail with mentor. -Go through documentations of PyGTK, PyGoocanvas and learn how a UI is built. -Create simple applications using python test and python template activities. -Collect pictures, skins, icons, exact information regarding the activities( like speed - distance relation for satellites), design logos using GIMP. -Sketch the UI for various activities to be built. -Formulate use cases. -Formulate algorithms for all activities. May 21st - July 10th (Coding period) - Design UI of two activities (Land Safe and Place your Satellite) using PyGooCanvas. -Code for both the activities using python and by implementing the formulated algorithms. -Complete code integration with UI. -Test functionality of code written. -Documenting
  • 6. July 13th (Mid Term Evaluation) Deliverables: Submit two completed activities - Land Safe and Place your satellite along with documentation. July 14th - August 5th Design UI for food and garbage classification activities -Code for both these activities. -Code integration of activity plugin with UI -Reduce code complexity -Test functionality of code written. August 6th - August 13th -Code refactoring -Debugging -Testing -Documenting August 14th - August 20th (Pencils down) Buffer period (This time can be used for all the last minute tweaks as something can possibly go wrong) A bit about me I am a third year student pursuing Bachelors of Technology in Computer Science discipline at Regional Institute of Management and Technology, Punjab Technical University, India. I am well versed with Python and also with the community interactions of OSS projects, I use mailing lists, IRC and version control systems like Git and host all my code on Github so, I can start working on the project early. I have been working with GCompris for some time now and have also reported two bugs (#662576 [21] and #662880 [22]) and also found a fix for the former. I have also added three levels in the “Locate the region” activity. From GSoC I hope to gain experience to be involved in a professionally managed Open Source project and am looking forward to it eagerly. References: [1]- http://www.clker.com/clipart-14097.html [2][3] - http://www.freeclipartpics.com/fruit-clip-art-images.htm [4][5][6]- http://www.freeclipartpics.com/vegetable-clipart-images/ [7]- http://www.freeclipartpics.com/freecheesewedgeclipart.htm [8] - http://www.how-to-draw-funny-cartoons.com/image-files/cartoon-tuna-6.gif [9] - http://www.clker.com/clipart-3921.html [10] - http://www.clker.com/clipart-29011.html [11] - http://www.clker.com/clipart-10873.html [12] - http://www.clker.com/clipart-3929.html [13] - http://www.clker.com/clipart-3933.html [14] - http://www.clker.com/clipart-12931.html [15] - http://www.clker.com/clipart-trash.html
  • 7. [16] - http://www.clker.com/clipart-3985.html [17] - http://www.clker.com/clipart-cracked-egg-1.html [18] - http://www.clker.com/clipart-11816.html [19] - http://www.clker.com/clipart-2172.html [20] - http://www.clker.com/clipart-satellite-download.html [21] - https://bugzilla.gnome.org/show_bug.cgi?id=662576 [22] - https://bugzilla.gnome.org/show_bug.cgi?id=662880 DISCLAIMER : The images above are not to be used for any commerical use and are in the proposal as and for placeholders only