User:Prakhar/Weekly Updates

From OLPC
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

TYPING TURTLE

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 which 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[1]
  • 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

Major Highlights

  • 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 :)