This page summarizes various activities that have been a part of the development process of game based typing turtle activity.
May 1-May 7, 2008
- Introduction period with my mentor Mr. Wade Brainerd and co-developer Ms. Kate Scheppke
- Laid out plans with my mentor. Kate will work on basic typing activity and I'll work on game-based typing activity.
- Studied various current typing games like TuxType.
- Wade conducted a survey to examine our present technical background.
- Wade prepared a short tutorial for us to refer to equip ourselves with required technical skills.
May 8-May 19, 2008
- Went into university exams. No progress.
May 20-May 27, 2008
- Started reading about Sugar HIG and Sugar Activity Tutorial
- Switched from Ubuntu to Fedora.
- Emulated the Sugar environment on my PCs.
May 28-June 4, 2008
- Started working on the game designs.
- First mock-ups released.
- Received my XO-1 on June 3
- Dedicated 2 days to explore the XO environment.
June 5-June 11, 2008
- Attended a Python workshop on June 7, 2008 at IPEC College, Ghaziabad  jointly organised by CSI and ILUG-D. This event really set the tone for the project.
- Almost final mock-ups released. Still scope for improvement.
- Converting the mock-ups into Python classes and methods.
- Documented all the work on wiki.
June 12-June 19, 2008
- Started working on Python and PyGTK by referring to respective tutorials.
- Working on art work required in the activity interface.(like turtle, bubbles etc.) mock-ups will be uploaded soon.
- Browsed the source code of existing activities in XO. I was unable to comprehend the code due to lack of python experience
June 20-July 2, 2008
- Learnt Python from byteofpython.org and the official tutorial from python.org
- Studied PyGTK tutorial from pygtk.org and completed all the related exercises
- Studied JSON from json.org
- This period involved learning all the technologies related to the project so that I can start coding.
July 3-July 10, 2008
- Again browsed the source code of existing activities in XO. I could easily understand each and everything.
- Studied the Activity Tutorial again and also the latest Sugar Handbook from OLPC Austria.
- Successfully completed my first activity- "HelloWorld" as per the guidelines in above mentioned two tutorials :)
- Finally started my project- TypingTurtle.activity. A great relief for me :) But it was just the beginning of a roller coaster ride ahead
July 11-July 18, 2008
- First "Welcome" screen developed:
- gtk.VBox() and gtk.HBox() as containers
- gtk.Button(), gtk.Image(), gtk.Label() as main child widgets
- Struggled a lot with multiple-screen interface implementation. To explain a little:
Screen 1->Click button->goto Screen 2->Click button->goto back to Screen 1.
- I was unsuccessful to implement this, despite consulting with many people including tomeu, eben, cjl and many more in #pygtk channel. The whole week went searching for a possible way to do it but could not find it.(I'm sure there is a way that I'm missing)
- During my quest to satiate my hunger for above implementation, I stumbled upon an interesting finding: most of the activities in XO are single-screen based; everything happens within a single canvas, there's no shifting of canvas etc..
July 19-July 27, 2008
- After a hard week, I pondered over the weekend and finally dumped my idea of multi-screen UI to settle for gtk.Notebook() as my main canvas with following functionality:
Screen-1(tab1)->Click button->goto Screen 2(tab2) and vice versa.
- This provided an instant acceleration to my project, although on the expense of my earlier UI.
- Started designing the exercises now: Alphabets, Words and so on.
- Welcome screen was looking to plain and simple from kid's perspective. Did a major overhaul of the whole GUI so that it looks more kiddish.
- Added a tutorial(HowTo) tab for the activity.
- Completed inter-navigation between all the screens.
- XO's resolution is 1200*800, I got to know this now!!
July 28-August 5, 2008
- Created .exer files(Exercise files like alphabets.exer)
- Working on randomly reading content from exercises' file
- Figured a way out of how to unset focus flags from score, timer(gtk.Entry). A little code snippet:
score = gtk.Entry() score.unset_flags(gtk.CAN_FOCUS)
August 6-7-8-9, 2008
- Presented my research paper in an international conference
- No development progress
- Sample Tutorial added
August 10-August 14, 2008
- Mapping of exercises with the GUI.
- Applied for OLPC Git Project Hosting. Set-up local git repository on my PC.
- Started Working on documentation
- I can't forget my search for multi-screen GUI.period.
- Past couple of weeks(July 15 onwards) saw most of the development progress
- Python is the coolest thing in programming!
- Learnt to use PyGTK references at every second :)