Planet Sugar

Planet Sugar is a collection of personal blogs by Sugar Labs contributors. Sugar Labs is a world-wide organization of passionate people working together to solve the same problem: giving everyone an opportunity to learn to learn. Our community members write about what excites them about learning, Sugar, and the Sugar community. In the spirit of free software, we share and criticize—that is how we learn and improve and encourage participation by newcomers. Enjoy and join the conversation.

March 20, 2010

Saigon OLPC

Mario Behling: Part 1

Mario Behling lives in Mekong Delta. I heard about him from Nancie Severs. We met in Saigon in February, but this time it was my turn to travel to Cantho by bus to meet him and discuss Vietnam OLPC. I learned that Mario is Jack of all trades. He runs with his fiancé a marketing company in Cantho, teaches German, English, works on several open source projects.

Here is what I found about him on the Internet: “Mario is a FOSS advocate known in the international FOSS community through his activities with FOSS Bridge, Freifunk and the LXDE Community. Mario, originally from Berlin, has lived in different countries like China, Taiwan, Vietnam, Afghanistan and Australia. He was elected as a president of the LXDE Foundation in 2007. As part of his support of the free wireless freifunk community he maintains different freifunk websites. During his consultant work for FOSS Bridge he advised companies such as Bull, OTRS, Gonicus and Nightlabs on internationalization strategies with focus on Asia.”

We talked about volunteering longevity. Mario told me some people devote themselves fully to non-paid projects to the point of self exploitation as it is truly addicting. But eventually their financial troubles force them to either find paying projects. It is important to have a healthy portfolio of paid and non-paid gigs then you are fine.

Mario mentioned that he hasn’t met any Sugar contributor in Vietnam yet, but there are many opportunities for those who are interested. He wrote in his letter:

“We are starting regular meet ups of a local group in the Mekong Delta and start a cooperation now with the Cantho University for some Open Source events. This cooperation give us the chance to introduce OLPC more in detail as well. And I also am talking to the University of Technology. Even though there is a big interest of course things take time. Particularly, we need to take our time to see which students are genuinely interested and persistent…

Last November we organized GNOME.Asia (http://gnome.asia) and many of the volunteers and participants were excited to hear about OLPC. While there are challenges, progress is fast and many young people (and older ones as well) are open to new ideas and teaching and leaning methods that put learners in the middle.

After learning a lot during my work with OLPC Afghanistan (http://olpc.af) and Mike Dawson I realize even more, that we are facing similar challenges all over the world. And we are profiting a lot from the experience made elsewhere. Just like in Afghanistan, Nepal, Uruguay … we need teachers who can help students to achieve the most, teachers who can also work like trainers. Even more than ever before – with the exploding access to knowledge through the Internet and OLPCs, it is impossible to know everything. The XO as a training device is already helping us a lot to push new ideas of working together, sharing and self motivated learning in the region. So, I can see many opportunities for our goals in Vietnam”.


verhovzeva

by verhovzeva at March 20, 2010 12:59 PM

Tony Forster

Mouse support in TurtleArt

Here is how mouse support can be added to Turtle Art V84. In this example, mouse left click events are registered by setting a flag, the x and y at the mouse click can be read.


It requires some modification of the program code, three new lines need to be added to the file tawindow.py near the beginning:

def __init__(self, win, path, parent=None, mycolors=None):
self.mouseflag=0
self.mouse_x=0
self.mouse_y=0
self.win = None

and three new lines about 1/4 way into the file:

def _buttonpress_cb(self, win, event):
""" Button press """
self.window.grab_focus()
x, y = xy(event)
self.mouseflag=1
self.mouse_x=x
self.mouse_y=y
self.button_press(event.get_state()&gtk.gdk.CONTROL_MASK, x, y)
return True
These changes are necessary so that the programmable block tamyblock.py can "see" the mouse event. Turtle Art's files can be modified with Browse and Pippy or with the Linux command line editor vi see Modifing_an_Activity

Then a bit of code in the programmable block tamyblock.py makes it all happen.

def myblock(lc, x):
if lc.tw.mouseflag==1:
lc.heap.append(lc.tw.mouse_y)
lc.heap.append(lc.tw.mouse_x)
lc.heap.append(1)
lc.tw.mouseflag=0
else:
lc.heap.append(0)
return

Help understanding the detail of Turtle Art's internal Object Oriented Python programming is at Python_code_block

(note: blog does not preserve indents, correct Python indenting is required)

by Tony Forster (noreply@blogger.com) at March 20, 2010 06:00 AM

March 19, 2010

Tomeu Vizoso

Sugar with better Telepathy

After three weeks of little coding but much reading, a reward:



This shows the Chat activity talking to Empathy through link-local xmpp. This was already possible, but the difference now is that Chat is a normal telepathy client, and it has been activated by dbus as would be any other telepathy-enable application in GNOME, Meego or whatever.

The current code is very sketchy, but we are starting to get a good sense of the next challenges. If you are interested in knowing why this is important, see my previous post.

Progress can be followed in this page.

by Tomeu Vizoso (noreply@blogger.com) at March 19, 2010 07:55 PM

OLE Nepal

E-Pustakalaya Initiatives

E-Pustakalaya has come a long way since its public launch in February 2009.

OLE Nepal has managed to build partnerships with contemporary Nepali writers of children and other literature and acquired a large number of their work for E-Pustakalaya. Two workshops were held, in April and in October 2009 at Martin Chautari, for writers. Those present included some of the most prominent writers in Nepali contemporary literature. A large number of authors have readily given their material to the library for free. Given the context of Nepal where reading books, aside from school books for kids, is hardly encouraged, the authors are hopeful that E-Pustakalaya will expand the reach of their books in Nepal and abroad and encourage more Nepalis to read.

With the same intention of expanding readership of Nepali and other literary work, OLE Nepal has joined forces with like-minded organisations with the aim to promote a healthy reading culture amongst children in Nepal through the establishment and expansion of physical and digital libraries in the country. OLE Nepal, together with Nepal Library Foundation (NLF), Help Nepal Network (HeNN), Room to Read, Kathmandu Valley Public Library, Prakash Community Library, CCS Italy, Children’s Community Library group, and READ Nepal have agreed in principle to work on four major areas to develop libraries all over Nepal– advocacy, training teachers and librarians, resource mobilisation, and ICT issues. This close collaboration amongst the various partners will help overcome hurdles in the fight against widespread illiteracy, and highlight the importance of reading culture and libraries in Nepal’s development. The group also plans to collectively attract the Nepal Government’s attention towards the importance of libraries and its importance in enlightening and developing a nation. OLE Nepal is the leader in Nepal in the development and deployment of digital libraries, and has developed a first of its kind education-centred digital library, E-Pustakalaya. OLE Nepal hopes to expand access to E-Pustakalaya and other reading resources in Nepal through this alliance.

OLE Nepal has also set up an advisory board for E-Pustakalaya. This board consists of prominent members from Nepali literary circles: Geeta Keshary, Chudamani Bandhu, Dhruva K. Ghimire, Rambabu Subedi, Vinaya Kasajoo, Bishwambhar Chanchal and Hiranya Kumari Pathak. Given that E-Pustakalaya is not just a repository of any and all materials, but a specifically education-focused library, it was deemed necessary to have an advisory board to suggest worthy materials for addition as well as to review existing and other additions to make sure they fit OLE Nepal’s vision to create a unique education focused digital library. The first advisory board meeting took place on March 19, 2010.

E-Pustakalaya can be accessed at www.pustakalaya.org. For more information on E-Pustakalaya please also visit: http://olenepal.org/e_pustakalaya.html

by Astha Thapa at March 19, 2010 10:26 AM

OLE Nepal Newsletter published

OLE Nepal has published its first bi-monthly email newsletter that intends to keep its readers uptodate on the organisation and its activities. It includes an introduction to OLE Nepal as well as updates on the recent visit by the Director General of the Department of Education to Dadeldhura and on the OLE Global Assembly. The full newsletter can be accessed at:

http://www.olenepal.org/ole_newsletter/OLENepalJanFeb10.pdf

Watch out for more newsletters in the future! The next newsletter will feature in detail the second round of deployment of E-Paatis (OLPC XO) laptops in Nepal.

If you wish to subscribe to the newsletter, please email newsletter@olenepal.org.

by Astha Thapa at March 19, 2010 08:49 AM

Saigon OLPC

Update on other projects

Since I left, I didn’t have much time to follow what Nancie Severs, Bernie Innocenti and Beth Santos were up to, but eventually looked up their blogs. So right after Nancie got back she was presenting at the OLPC office on Feb 7. Check out her 21 page presentation at  http://wiki.laptop.org/images/5/5b/VVV_Power_Point_Presentation_PDF.pdf   And the official entry about Nancie’s work on OLPC blog site http://blog.laptop.org/2010/02/11/olpc-in-vietnam/

Since Nancie returned home from Asia, she has been doing on a lot: giving me advice, communicating with other current and prospective volunteers, brainstorming on how to continue to support VVV project from abroad. She learned a lot of technical things from Ian from the Olin Chapter who runs a service/repair center for XOs. I’m going to VVV in in two-week to run updates on 12 XOs that are there and install Vietnamese language packs together with Vietnamese keyboard.

Beth Santos was still actively doing PR and fundraising to buy more XOs for the kids in São Tomé. Her press release is here http://bethstepsup.blogspot.com/2010/02/press-release.html Beth attended a DC event  and wrote about it http://bethstepsup.blogspot.com/2010/02/olpc-learning-club-program-is-great.html From what I know, she is heading to Haiti to work on the massive XO deployment there with Waveplace.org led by Tim Falconer. Good luck, Beth!

I was glad to find out that on March 14 Bernie was finally presenting about his Sugar Deployment in Paraguay. I would love to hear his talk and attend other Sunday meetings, but time difference is 12 hours and I just can’t make myself get up at 4 in the morning :(

As always, Adam had a nice introduction of the guest speaker:

Meet the guy volunteering his life for OLPC/Sugar on 4 different continents, almost 4 years later. Meet retired R&D director, founder, VP, CTO of embedded technologies at http://codewiz.org/wiki/DevelerCompany Meet Sugar Labs’ lead global sysadmin and Harvard School of Education part-time student. Meet a 21st Century Italian Cowboy, who foolishly misses his Commodore 64… http://wiki.laptop.org/go/Bernie_Innocenti_interview Meet Bernie Innocenti, original promoter of the $200 laptop that makes Microsoft tremble: http://codewiz.org/wiki/TwoHundredDollarLaptop 

But please first, review Bernie’s beautiful recent 95-page photo-presentation (14.5 MB)
http://people.sugarlabs.org/bernie/sugar/slides/sugar-paraguay-v6-es.pdf
And his “kids need cute customizable software” cultural anthropology:
http://codewiz.org/wiki/blog/2010/03#mon-mar-8–children-want-sugar-084-for-the-wrong-reasons
http://lists.sugarlabs.org/archive/iaep/2010-March/thread.html#10317


verhovzeva

by verhovzeva at March 19, 2010 08:20 AM

March 18, 2010

XO in Palestine

First Visit To Schools

Today, Thursday March 18, 2010 PaleXO had its first visit to “Ab-Falah” (مدرسة ذكور أبو فلاح) elementary school for boys. The visits aim to teach little kids how to use the XO laptops and deploy them to ease their education and make it more fun. Our first “PaleXO visiting schools” day was long, busy and exhausting but it was worth every smile we saw on the kids’ faces.



The day did not start very well. We first headed to “Al-Fajr Al-Jadeed” school like we were told to do by the ministry. Apparently, the school had no idea we were coming and only 17 out of 72 kids had their XO laptops with them. We were really disappointed since we were all very prepared and excited to have our first visit. We were also expecting Brazilians to accompany us in our visit and planned to meet them in the school. In a try to save the day, and after several phone calls, we contacted the principle of “Abu-Falah” school who also had no idea we were planning to visit his school. Luckily enough for us, the kids in “Ab-Falah” school were not allowed to take the laptops home with them, so we got going to “Abu-Falah”.

We reached the school around 10:00 am. We had 52 laptops that needed updates and only 12 or 13 flash memories. The update process took very long, by the time we were done updating it was 11 something. As a tip for next visits, try to have the updates done a day before or be in the school very early in the morning so that you will have the rest of the day for the activities. After finishing updating the laptops, it was now time to go to the classrooms. We had 52 students divided into 2 classrooms. The Brazilians were contacted back again to meet us in “Abu-Falah” school and were there through all the updating and part of the classroom activities. They were glad to see the progress we are making and told us about their own successful experience with OLPC in Brazil, they also offered to answer any “football” related questions ;-).

Who said that dealing with third graders was fun and easy? Kids in that age are hyper, love to move, play, and ask A LOT of questions … It is not easy to control them like adults or expect them to be quiet. But the one thing for sure about them is they are fast learners and love to explore what is in the laptop. They were happy to see us, and even more delightful to spend time their XO laptops. We had a schedule to follow, but due to the kids’ nature there was a twist in the schedule for the classrooms. Each classroom tried to do as many activities as possible during the 2 hours but did not make it to the half. In spite of all that, the kids were all involved in the activities. They did not wait for our directions but were eager to explore the activities themselves. Some of them were really very smart and were very fast to catch up with us while some were slower; but bottom line is there was not one child that was left out or was not enjoying the experience.

Finally, it was time for evaluation. We handed out the evaluation sheets to the kids to fill in. After that, the class was dismissed and it was all quiet again.

That was the summary of our day, but there are still few things to point out. First, for next school visits we will need more supply. The supply as in flash memories, cables & some treat for the kids. The PaleXO members had to bring this stuff themselves and still were not enough for all the number we had. Second, before each visit we should contact the class teacher and discuss with him/her what the kids already know on the XO laptops so that we won’t waste the day by going over things they already know. I am sure there are more things to consider but these are the things that were on the top of my head.

One more thing worth mentioning is the fact that this trip reminded us with how beautiful Palestine is. We enjoyed the ride along with the green mountains and the olive trees. We also got to know some villages, a refugee camp and settlements that we did not know before.

In the end, I wanted to thank the principles of the 2 schools we visited for their good reception, and the teachers & kids for cooperating with us today. I would love to thank the Brazilians who made the effort to attend our first visit and showed their support. Most importantly I want to thank (ordered alphabetically) Asma, Aya, Ayman, Hanin, Manar, Maysa, Mohammad Khatib, Noura, Rasha & myself Safaa who participated in the actual visit and of course Alaa and Tamer who were supervising for making this day happen. Not to forget “Abu-Faker” the driver who drove us to and from “Abu-Falah”.

It was one GREAT experience; we had so much fun and cannot wait to have our next visit to schools.

Original post by Safa' Halahla on PaleXO FB Fan Page.

by Mohammad N. Khatib (noreply@blogger.com) at March 18, 2010 07:38 PM

Saigon OLPC

Cambodia: Part 5

Back in Boston, right before I left, Adam send me his summary of the January 2010 Harper’s report “Shipping for Sweat: The Human Cost of a Two-Dollar T-Shirt” by Ken Silverstein. “This report was truly depressing — quite honestly it broke my heart that Cambodia’s famous 10-year-old “fair trade” story is largely if not entirely false – 33cents/hr is the average textile wage there, which is the 2nd lowest in the world, above Bangladesh’s 22cents/hr.  The good news is they might have $20 leftover at the end of the month to send to their families, after spending $10/month on rent in a crowded mud hut and $1/day on food — if they save Every single penny and Never make a single mistake!  Meanwhile each such diligent worker generates something like $175,000/year (?!) in sales for brand names we know very well.  The apparel is delivered to the US for less than $2 – well over 90% of the item goes to someone else…”

As I was thinking about that report I also realized that there are good people too, who care and do their best for Cambodia and its people. While I spent several days with Roger and Sarith in Siem Reap I learned more about good people and NGOs, working in Siem Reap and Cambodia. I saw a hospital built by a cello player Beat Richner, who hires local people, pays them very good salaries and provides free health care for half a million children a year. I found out about Bernie Krisher (MIT grad), who built more than 400 schools in Cambodia. Thousands of people are doing good work around the world, just like Greg Mortenson, whose book “Stones into schools” I’m reading right now. And every person’s story is inspirational.

I wrote to Bernie Krisher asking about his schools and whether he is utilizing any computers.

Dear Polyachka,
Thank you for your message.  My website is:  www.cambodiaschools.com.  We are also mentioned quite favorably in the book, Half the Sky, by Nicholas Kristof and Sheryl Wu Dunn.  Who also wrote about us in Oprah and the Rotarian, the official magazine of Rotary International.  We do not use the OLPC because Nicholas Negroponte, the former director of the Media Laboratory, who developed this computer did not think I shared his vision for using it.  His computer also has no warranties and we don’t know where to repair them if they have a malfunction.  We assemble our own low-energy computers with a Khmer keyboard and browser using an intel chip.  We call it the Compudia (computer + Cambodia) and sell it for $450.
Best regards, Bernie Krisher

Thank you, Nicholas, Bernie, Beat, Roger, Sarith, Greg and many other people for your efforts so that millions of children in the world have happy childhood, good education, good healthcare and good jobs when they grow up.


verhovzeva100_3907

by verhovzeva at March 18, 2010 10:43 AM

Cambodia: Part 4

 After about 5 min warm up, children were going wild. I couldn’t get to the tables to help them with activities or see what they do. I knew it was the moment, when I can take a break. Their action was speaking for itself: children loved XOs and Sugar!

I went to see inside the school. There were several neat classrooms with wooden desks. A whole group of children followed me and I took their pictures with my camera.

There is a garden by the school where locals grow vegetables. Breakfast is served for all pupils in the morning. I saw a water pump and outside oven, which were also built by the Project. I brought one hand crank with me and gave it to Sarith. Immediately the hand crank was tested and approved by the men, who said it is a good physical exercise.

At the end two teachers and the school principal tried several activities, and the elders of the village came to watch. I showed to the principal how to create and copy files to the USB drive.

It looked like both Roger and Sarith marveled at how popular computers are and how quickly children get comfortable with them and look for more to learn, and get super excited. Normally quiet and reserved, kids were curious, active and experimenting.

As we all decided, it is not just a computer, it is a school and a play station in a box. And children like it as there is no punishment if you do something wrong, it just will not work. Roger, as a psychologist, thinks that while working on the XO, children better develop their problem solving skills. While teaching Sugar, I noticed better collaboration results among children.

It is true that Khmer culture is very traditional and often initiative, different thinking and innovation are not welcomed or encouraged. That is why very often people are not willing to go beyond what they have to do. But we think that with new ways of teaching it is possible to change.

We visited the sewing shop and I took a picture of both Roger and Sarith, when they were giving annual bonuses to the sewing girls.

If you are looking for a place to donate your money to, the Khmer school project is the place to do it. From what I’ve seen, every single dollar goes to the Khmer people in need and their children http://khmerschool.com/Site/Donate.html


verhovzeva100_3913100_3898100_3973

by verhovzeva at March 18, 2010 06:40 AM

Cambodia: Part 3

So there they were, a tall American guy with more hair and a short guy with less hair, respectively Roger and Sarith, waiting for me at the Siem Reap Airport. They had a car with AirCon, which is great on an unbearably hot day.

I asked Roger and Sarith, what are their main objectives with the XOs. They said they see computers as a tool to teach Khmer children English and major computer skills, to become eligible to compete for the jobs in town. Right after lunch we went to the café and I showed them what children can possibly do on the XOs: digital book storage, Internet, pictures, educational games, etc. They admitted that it is far beyond what they had in mind, and they probably will not have the resources to teach all the activities to kids. We decided to go to one of the schools they built and let children try the XOs. We had 3 computers; two were bought by Roger on eBay, and one that I brought.

So on Friday morning we headed to Poum, a village just outside of Siem Reap, where The Cambodia School Project www.khmerschool.com built one of the schools. In total they built 4 schools and are sponsoring them going forward: providing for the schools, pupils (created a sewing girls cooperative), fixing bridges, roads, etc. Roger worked one year in a hospital in Vietnam back in 1969, and Sarith was a guerilla fighter against the Khmer Rouge (see his full story here http://www.khmerschool.com/Site/Sarith.html).

As we arrived in Poum, I realized that it is a place like I’ve never seen before, a rural school with no electricity or running water, but where 280 children get educated 6 days a week. They are happy to go to school as it is so close to their homes, right in the village! They are taught in two shifts: morning and afternoon.

In the beginning we picked 6 students (for 3 computers) and decided to show them several activities, while others were standing nearby and watching foreigners and their green things with horns. We started with Speech activity. Children typed in “hello”, “dog”, and other words they know in English. Some typed “I love you” and all were surprised to hear the XOs say it back to them.  Next, I showed to them Hanoi, Implode and Missing Letter activity to practice their English, then music making in TamTamMini and finally how to take pictures… That was a major hit. Children were very serious, when posing for the camera, no one smiled, as maybe they thought that it was the right way to have a picture taken – serious means respectful? Surely they laughed watching other kids do it, and dragging the shyest ones to sit in front of the computer to get a snapshot. Then more children joined in. They were ecstatic about pictures as well, as none of them have probably ever seen a camera or a computer before.


verhovzevaIMG_1685100_3868IMG_1665

by verhovzeva at March 18, 2010 05:20 AM

March 17, 2010

SugarLabs Argentina

Obama y los recursos educativos abiertos

Hace unos meses RedHat creó un sitio llamado http://opensource.com, que tiene notas excelentes, en áreas como Negocios, Educación, Gobierno, Ley y Vida.
Alli podemos leer en el recientemente presentado plan del gobierno de Obama, que se propone invertir 50 milllones de USD por año durante los próximos 10 años para crear un Laboratorio en Linea de Conocimientos. Estos materiales estaran disponibles para su uso y adaptación en la menos restrictiva licencia Creative Commons.


by Gonzalo (noreply@blogger.com) at March 17, 2010 09:06 PM

Walter Bender

Sugar Digest 2010-03-17

Sugar Digest

1. Simon Schampijer announce that our 0.88 Release Candidate is ready for testing. We are in “Code Freeze”, only critical bug fixes can be landed now. Any testing would be greatly appreciated. You can access the latest bits for testing using sugar-jhbuild (update and build) or downloading a Sugar-on-a-Stick image. There is also a Karmic-based ppa for testing on Ubuntu.

Simon has begun pulling together release notes.

Many thanks to Simon, our release manager, and the many community members who have contributed to this release, including Sascha Silbe and Aleksey Lim, both of whom have been relentless in closing tickets.

It is worth noting that many of the new features and “under-the-hood” improvements in this release have come from “local lab” efforts. For example, teams in Uruguay and Paraguay have led much of the development efforts. This is due in large part to the steadfastness of Tomeu Vizoso and Bernie Innocenti, both of whom have been working hard to help local efforts better integrate with the Sugar upstream project. This highly distributed model, where problems are identified on the ground and largely addressed locally, but then integrated with the upstream project is a powerful and sustainable model for Sugar.

2. Tim McNamara, our Google Summer of Code coordinator has been hard at work. He has submitted our application and is now busy with the recruitment process. You can learn more about how you might participate in this year’s program by visiting Summer of Code. Please help spread the word to potential candidates.

3. Josh Williams has been working on a new skin for our wiki. See http://wiki-devel.sugarlabs.org/ to get a sense of where he is heading. The new theme is simple, clean, and more in keeping with the Sugar style used on our other sites.

In the community

4. LIBREPLANET begins on Friday, 19 March. You can learn more about these three days of Free Software activism at LibrePlanet2010. (I’ll be participating in the program on Saturday.)

5. Ken Haase, a former colleague of mine at MIT, has been working on a new ebook reader that may be of interest to the Sugar community. You can play with it by visiting sbooks.net. It is built in Javascript and it has offline reading capabilities as well, which, with Lucian Branescu’s patches to Browse (which hopefully will land in Release 0.90), it might make a very interesting Sugar activity. Ken is also developing a site for having children add metadata to ebooks (See beebooks.org for more details).

Help wanted

6. We are now advertising some “new easy to fix tickets” on http://bugs.sugarlabs.org/ for anyone looking for an introductory Sugar-related programming project. (Developers, you can use the tag “sugar-love” to get tickets added to the list.

7. Bernie and Stefan Unterhauser (dogi) have asked if anyone would be willing to step forward to take over maintenance of any of the following:


Tech talk

8. Bert Freudenberg has been working on Sugar-Journal integration of Scratch.

9. Matt Gallagher has been working on Gnome-desktop integration of Turtle Art.

Sugar Labs

10. Gary Martin has generated a self-organizing map (SOM) from the past week of discussion on the IAEP mailing list.

by Walter Bender at March 17, 2010 02:56 PM

March 16, 2010

SugarLabs Argentina

Traduciendo FoodForce

En La Rioja, Jorge Cabrera me contó una idea que me pareció muy buena, modificar el Food Force para adaptarlo a una época de la historia de la provincia. Mientras pensaba como hacerlo, se me ocurrió que sería mejor comenzar por trabajar en la internacionalización (i18n) del juego, y una vez que supieramos bien como funciona y como está programado, sería mas facil modificarlo. A su vez, es un juego interesante para que usen los chicos.
Nos contactamos con Mohit Taneja, uno de los desarrolladores y se mostró interesado en la i18n.
Como puede ser util para otras actividades, detallo aqui el procedimiento aplicado, aunque está bien explicado en http://wiki.laptop.org/go/Internationalization_in_Sugar

Si iniciamos el juego vemos esta pantalla (haciendo click en las imagenes pueden ver mejor los textos)


Para empezar por los textos que se ven en esta pantalla, en primer lugar busco en que archivo del programa se encuentran. Desde el directorio de la actividad (Activities/FoodForce2.activity/) en la linea de comandos escribo:


[gonzalo@nautilus FoodForce2.activity]$ grep -n "Start New Game" *.py
Foodforce2.py:304: self.start_button = gui.Button(position = threades.resize_pos((475,500)), size = threades.resize_pos((250,50)), parent = desktop2, text = "Start New Game",style = self.button_style)


Esto me indica que el texto que busco está en la linea 304 del archivo FoodForce2.py. Ahora lo tenemos que editar con cualquier editor de texto.

Para poder hacer la i18n de ese archivo, debemos agregar al comienzo del archivo, donde estan los imports, una linea que importe la libreria necesaria

import pygame
from pygame.locals import *
from pygame.display import *
from pygame.mouse import *
from gettext import gettext as _


ahora buscamos las lineas donde se encuentran el texto de los botones y reemplazamos el texto, por ejemplo "Start New Game", por _("Start New Game")

En este caso vamos hasta la linea 304 y modificamos para que quede:


if self.pause_flag:
self.start_button = gui.Button(position = threades.resize_pos((475,500)), size = threades.resize_pos((250,50)), parent = desktop2, text = _("Start New Game"),style = self.button_style)
self.start_button.onClick = self.startup_text
if self.init_game_save_flag == True:
self.resume_saved_level_button = gui.Button(position = threades.resize_pos((475,430)),size = threades.resize_pos((250,50)), parent = desktop2, text = _("Resume Saved Game"),style =self.button_style)
self.resume_saved_level_button.onClick = self.resume_saved_level
else:
self.resume_button = gui.Button(position = threades.resize_pos((475,500)), size = threades.resize_pos((250,50)), parent = desktop2, text = _("Resume Game"),style = self.button_style)
self.resume_button.onClick = self.resume
#Save Game Button
if proceduralFlow.storyboard_level != 1:
self.save_button = gui.Button(position = threades.resize_pos((475,430)), size = threades.resize_pos((250,50)), parent = desktop2, text = _("Save Current Level"),style = self.button_style)
self.save_button.onClick = self.save_current_level
self.controls_button = gui.Button(position = threades.resize_pos((475,640)), size = threades.resize_pos((250,50)), parent = desktop2, text = _("Controls"),style = self.button_style)
self.exit_button = gui.Button(position = threades.resize_pos((475,710)), size = threades.resize_pos((250,50)), parent = desktop2, text = _("Exit"),style = self.button_style)
self.instructions_button = gui.Button(position = threades.resize_pos((475,570)), size = threades.resize_pos((250,50)), parent = desktop2, text = _("Guide"),style = self.button_style)
self.about_us_button = gui.Button(position = threades.resize_pos((1000,20)), size = threades.resize_pos((150,40)), parent = desktop2, text = _("About Us"),style = self.button_style)


Ahora, como la actividad no lo incluye, agregamos un archivo setup.py con el siguiente contenido:
from sugar.activity import bundlebuilder
bundlebuilder.start()
y lo ejecutamos:

python setup.py genpot

Esto nos genera el directorio y archivo con las traducciones.
Nos movemos a ese directorio

[gonzalo@nautilus FoodForce2.activity]$ cd po

Y creamos el archivo para las traducciones en español:

[gonzalo@nautilus po]msginit -l es

Me pide mi mail y genera un archivo es.po
Tenemos que editarlo y agregar las traducciones a los textos, en este caso queda:


# Spanish translations for FoodForce package.
# Copyright (C) 2010 THE FoodForce'S COPYRIGHT HOLDER
# This file is distributed under the same license as the FoodForce package.
# Gonzalo Odiard , 2010.
#
msgid ""
msgstr ""
"Project-Id-Version: FoodForce 2.activity\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-16 00:04-0300\n"
"PO-Revision-Date: 2010-03-16 00:06-0300\n"
"Last-Translator: Gonzalo Odiard \n"
"Language-Team: Spanish\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ASCII\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#: activity/activity.info:2
#: /home/gonzalo/Activities/FoodForce2.activity/activity.py:8
msgid "FoodForce2"
msgstr ""

#: /home/gonzalo/Activities/FoodForce2.activity/Foodforce2.py:307
msgid "Start New Game"
msgstr "Comienza Nuevo Juego"

#: /home/gonzalo/Activities/FoodForce2.activity/Foodforce2.py:311
msgid "Resume Saved Game"
msgstr "Retoma Juego Anterior"

#: /home/gonzalo/Activities/FoodForce2.activity/Foodforce2.py:316
msgid "Resume Game"
msgstr "Retoma Juego"

#: /home/gonzalo/Activities/FoodForce2.activity/Foodforce2.py:321
msgid "Save Current Level"
msgstr "Graba Nivel Actual"

#: /home/gonzalo/Activities/FoodForce2.activity/Foodforce2.py:325
msgid "Controls"
msgstr "Controles"

#: /home/gonzalo/Activities/FoodForce2.activity/Foodforce2.py:326
msgid "Exit"
msgstr "Salir"

#: /home/gonzalo/Activities/FoodForce2.activity/Foodforce2.py:327
msgid "Guide"
msgstr "Guia"

#: /home/gonzalo/Activities/FoodForce2.activity/Foodforce2.py:328
msgid "About Us"
msgstr "Acerca de"


Ahora tenemos que preparar el archivo de traducciones compiladas, que usará finalmente la actividad, para ello necesitamos saber el service_name de la actividad, hacemos:


[gonzalo@nautilus po]$ cat ../activity/activity.info
[Activity]
name = FoodForce2
activity_version = 4
host_version = 1
service_name = org.laptop.community.FoodForce2
icon = activity-foodforce2
exec = sugar-activity activity.Activity


Ahora creamos el directorio para las traducciones compiladas


[gonzalo@nautilus po]$ mkdir -p ../locale/es/LC_MESSAGES/


Y creamos el archivo compilado, con el nombre que tomamos del service name:


[gonzalo@nautilus po]$ msgfmt es.po --output='../locale/es/LC_MESSAGES/org.laptop.community.FoodForce2.mo'


Ahora si ingreso en la aplicacion veo:


Bien, este es el comienzo. Segun nos explica Mohit Taneja, la mayoría de los textos se encuentran en los siguientes archivos:

texts.py : These are the texts which are shown at the start and end of the game.

display_panel.py : It contains the texts regarding the resources panel, manpower resources and stuff.

storyboard.pkl : It contains the strings regarding the chats and mission messages being shown in the game. This file is created by write_storyboard.py script. This file is not present in the XO bundle but is present in the svn repository of foodforce2.

gui_buttons.py : this file contains the strings which are displayed when you open windows regarding setup facility, upgrade facility, and buy sell button.

Comenzaremos por los archivos .py y luego veremos como hacemso con el archivo storyboard.pkl

Alguien está interesado en colaborar?


by Gonzalo (noreply@blogger.com) at March 16, 2010 02:26 AM

March 15, 2010

Tony Forster

Turtle spirograph



The following version displays the formula, it also shows that the formula for a python block can be a variable (and could be modified during execution)


by Tony Forster (noreply@blogger.com) at March 15, 2010 10:03 PM

Saigon OLPC

Class Fourteen: Long Live the Internet!

Today was a happy day! Mathieu and Huy (local volunteer) went to District 1 and bought a TP-link router for $30. Then Huy and I drove to the Ba Chieu shelter to install the router so that the girls have wireless Internet. It was so random, that both founders Daniel from New Zealand (IVHQ) and Phuong from Hanoi (VPV) were visiting the shelter at that same moment. They were visiting their projects. I let Daniel try the XO. He browsed the web, opened several activities and took a picture. Both Phoung and Daniel were very interested in the program and inquired about the ways they can continue the program after I leave. Minh, Ken and Andy were there a well. They couldn’t believe we bought the router so cheaply and asked for the shop’s address, so that they can buy two routers–one for the Peace House and the other one for personal use.

Andy said: “it is probably the first shelter in Vietnam that has wireless Internet”. It is because there are a lot of shelters/orphanages with no computers, few with one computer (no Internet) just for the staff to use, and very few with a computer and Internet connection. Usually there are no financial resources to have computers and Internet beyond clothing, food, etc. I found out that the computer in the girl’s shelter was donated by the Minister of New Zealand, and somehow the shelter is able to fund DSL Internet connection, which is very advanced! Thanks to the teachers for being so up-to-date with the technology!

In the evening only 4 girls were present. I decided not to show them more of Scratch but teach them major Internet skills.

  1. First, I told them about my experience using Internet years ago, and how I was excited and spent whole nights secretly browsing the web, clicking on random websites and learning about other countries, jobs, schools, etc.
  2. We went through safety rules on-line: do not trust strangers, because sometimes people pretend to be someone else and can take advantage of inexperienced young girls on-line (whether it is a chat activity, emails, etc.). I told them about incidents via craiglist.org in the States and how they should never give their real address and phone number to other people, unless they know them very well. And always be cautious: not give out  a lot of info …
  3. We saved the help@laptop.org address to write to if something is wrong with their computers. I told them that it is OK to write in Vietnamese as it is possible for the help group to use Google translator to translate their letters into English.
  4. I made them save my address in Contacts, and each other’s email addresses. They saved me as a Teacher.
  5. Next I asked Thao to send us en email with Terminal command to switch between languages in the Write activity. And Ctrl+C to copy, Ctrl+V to paste.
  6. Then they wrote me one more letter, as I wanted to make sure they remember how to write and send letters via mail.yahoo.
  7. Next, we discussed different possible uses of the Internet: to create a blog, create a model portfolio, cooking class on-line, learn English, get books, make friends…
  8. At last we again found my blog (not available through wordpress, as it is probably banned, but googled it) and they saw their pictures from our class out on the International Women’s day!

verhovzeva

by verhovzeva at March 15, 2010 02:17 PM

Mel Chua

Simplest possible setup

Question: what is the simplest possible ecosystem one could put together for a Sugar on a Stick (SoaS) pilot? I suspect it would consist of the following elements:

  1. An enthusiastic classroom teacher who “gets” Sugar and open source, is excited about integrating Sugar into her curriculum and having her students participate in the upstream Sugar Labs community, and is in constant contact with…
  2. …a local deployment support team with ties and familiarity with the Sugar Labs and Fedora communities and the ability to introduce the teacher and her students to them, hands-on troubleshooting experience, the ability to document events so that they make sense to both educators and engineers, and a quick QA feedback loop with…
  3. …SoaS developers with expertise in creating and customizing not just the SoaS software but the build and release engineering infrastructure needed to get it out the door on a regular and timely basis, who are aware of and responsive to the needs of the students and willing to adjust the software frequently and on-the-fly to make things work out for that classroom, and…
  4. …the small number of students in it, who all have their own SoaS stick (small number, 100% coverage) and are working to not just understand the open source community but to actively participate in it, with the blessing of…
  5. …school administrators and parents, who remain fully aware of what is going on at all times so that the learning can, when possible, extend into their homes (which all have computers) and beyond, and…
  6. …the hardware for the pilot itself chosen specifically for its compatibility with SoaS so everything will work out-of-the-box, with…
  7. …no funding/resource problems with all hardware purchased ahead of time, time volunteered, and a bit of discretionary budget for other needs that might crop up at…
  8. …a series of weekly deployment check-ins between developers and the support crew, between the support crew and the teacher and her students, between the deployment and support crew and the larger Sugar Labs community, between the teacher and the parents of her students, but only…
  9. …for a limited time, with the understanding by all parties that this is an experiment and that our biggest contribution to the Sugar Labs community is finding out whether it works or not, and demonstrating how and why – and of course,
  10. wonderful, supportive, informed upstream communities – in this case, Sugar Labs and Fedora (since SoaS is a Fedora Spin).

Which is exactly why the CFS pilot was set up the way it’s been set up. We’re not really working under realistic limitations – what we’re doing will largely not scale. But much of it will. And we’re trying to pull together the different components and show how they interrelate – by blogging, by slowly starting to find the right mailing lists to talk on, by experimenting with different ways we can all cope with data overload (for instance, Lynne May didn’t really start blogging until I put scribefire on her laptop – the tiny decrease in activation energy was enough). 

Now if only we had a test case system. Note to self: stop being such a slacker in this department and get smw up already! If anyone would like to help me pick up on the smw-based test case management system project, let me know. It’s something I can easily mentor, but don’t have a lot of time to actually do myself.

I’m also having some trouble getting a good VM-based test setup going so I can quickly verify SoaS bugs being reported without having to get a spare stick, a spare laptop, boot things, etc… I’ll try again when the next nightly build comes out, and if that doesn’t work, will actually post a detailed trouble ticket. (Right now the chances that it might be the image’s fault rather than my setup’s fault are reasonably high.)

And Trac mail notifications have been… inconsistent, at best. Sometimes, when a ticket is created or commented on, and I own that ticket, I do not get email notices. It’s not my spam filters; I checked those first. Still trying to track this behavior and narrow it down so that it isn’t intermittent; I am not sure what triggers this (apparent) bug, or if there’s a way to see (on Trac’s end) whether it thinks it’s sending me an email each time.

Good things happening, always more things to fix – such is the nature of life, and the nature of satisfying work.

by Mel at March 15, 2010 04:14 AM

March 14, 2010

Saigon OLPC

Class Thirteen: Scratch and More

Today both Minh and I were not feeling well, but we still came to teach Scratch. There were few bugs in the old version, that we had, like “change size to” didn’t work.

Scratch functions were easy for the girls as they are similar to the Turtle’s. Girls made the cat dance and  say meow, then  changed “sprites” to horses, elephants and other animals. I also showed them sample activities and cartoons.

At last, they learned how to upload files from the USB drive, as I brought another digital Vietnamese book for them, so they all copied it to their XOs. Girls are very much into reading!

I didn’t go to the Rex hotel for drinks with other volunteers as I didn’t have any energy. I didn’t sleep three nights in a row due to work and the heat…

I spent hours looking for the websites to get free eBooks in Vietnamese. Then more hours to register at various sites to start downloading books only to find out that not all formats could be useful. Some books were not real, as their links didn’t work. Not many books were actually in Vietnamese even though they were on the Vietnamese eBook sites. Then it was hard to get some of them to the XOs.I found 11 websites to download ebooks from, but it took me long time to go through them all… Some websites charge fees. Some have only educational books, but no fiction. Here are the most helpful:

www.ebook4u.vn – only first couple of books are free, others are for a fee

http://ebookvietnamwebsite.net – about 100 books for free

Mathieu spent had his fair share of hard work, trying to install flash media player so that the girls can go to YouTube, download and play mp3 files.  He tried many different files, but they didn’t work. We still want to show them audacity and recording of singing over music… We also have to learn how to change IP addresses so that they can use real Facebook…


verhovzeva

by verhovzeva at March 14, 2010 05:25 AM

March 13, 2010

OLPC Learning Club

March Meeting Workshops: Scratch 101, XO Repair

The Scratch Viewer for iPhone

A fan of MIT Scratch has developed a project viewer for the iPhone!

This month, we are back at the Arlington Career Center (ACC) with an introductory workshop on the MIT Media Lab’s fabulous (and free) Scratch 1.4 interactive animation software and a reprise of last month’s XO laptop repair clinic.

When: Saturday, March 20th, 2010, 1 pm to 4 pm
Arlington Career Center
816 South Walter Reed Drive,
Arlington, VA 22204
(
Contact Page, Map, Aerial Photo, Bus Info)

We will start the meeting with an 90-minute introductory workshop on Scratch, the multimedia interactive programming software developed by the MIT Media Lab Lifelong Kindergarten Group and used by thousands of children, parents and teachers all over the world. The interface and features of Scratch will be covered, and participants will be able to create and upload an animated greeting card. The Scratch software runs on Windows, Macintosh and Linux, so it can be used by virtually anyone who owns a computer. As pictured above, there is even a viewer app that runs on Apple’s iPhone, iTouch and the upcoming iPad.

Luke Faraone, who runs our OLPC DC Repair Center, will do another XO repair clinic to review the takeapart and reassembly procedures (bring a philips head screwdriver and an XO if you want to participate) and help with any specific repairs visitors may need. We have limited quantities of spare parts for purchase. Some of the new early production XO-1.5 laptops have arrived and we will have some on display.

Upcoming

A few of us will gather at the Arlington Career Center the weekend of March 27-28 to update the text and some images of the old web start pages for the XO-1 laptop. More info here: http://wiki.laptop.org/go/Start

Our next meeting is tentatively scheduled for April 17 at Gallaudet University.

On May 22nd, we’ll spend the entire day celebrating Scratch Day 2010 at the Arlington Career Center. Please save the date!

by Mike Lee at March 13, 2010 04:25 PM

L.M.Y.Lim

First Week

This being the first week of our SoaS project, I started each session with a mini-lesson. The mini-lesson focused on the “job” of the students as a Q. A. engineer. I listed responsibilities,  one  per day:

1) Blog to tell others what you did and what you are thinking;

>> On day one, I reminded them that blogging is a way to communicate and be connected with the Sugar Labs community. The community is interested in what they did, what they discovered, and what they are thinking. The three children who were on the netbooks that day dove right in and explored. Maze was a big hit, while Colors! was a source of (low to medium) frustration to one student who likes to paint and draw. The two other students were more patient and simply chose a different activity when one activity did not work. Two of the children actively exchanged information about what they are discovering about the different activities and how to navigate the environment.

2) Explore and notice;

>> Day two: I likened the Sugar learning environment to their classroom learning environment, particularly when they were in pre-Kindergarten and Kindergarten, where activity areas called learning centers were clearly defined, e.g., the water table, the discovery table, the dramatic play or house corner, the art easels, the writing and drawing table, the math center, and the block area. In those classrooms, they were encouraged to freely explore materials and make discoveries. I said that the Sugar learning environment, with its array of icons representing various activities, encourage them to do the same. The three children who were on the netbooks this day explored Mazes, Flipsticks, and Implode. No frustration expressed by any of them. They shared information with one another as they explored.

3) Detect bugs and report them.

>> Day three: I showed everyone the 42 seconds video clip of a real life engineer named Max (Mel’s colleague) talking about the work of QA engineers. It was perfect! They immediately gathered around my laptop (mine from home) when Max introduced himself. When he said that a lot of times software engineers make mistakes just like they do on their math homework, eyes widened, ears perked up, and some sat up straighter. I think one child even exclaimed, “What?” They could not believe their ears! The video clip was just awesome and a very effective teaching tool to use. (Thank you, Max and Mel.) I then expanded the list of their responsibilities as QA engineers: I encouraged them to be explorers and detectives at the same time when engaging in Sugar activities. The three children who were on the netbooks on this day explored. At the end of the session, one of them expressed a little disapppointment that an activity she was looking forward to explore did not work. I acknowledged her feelings and then complimented her a second time on what she did the moment she found the bug- She wrote a bug report soon after discovering that Speak did not work, and wrote what she did that led to the discovery of the bug, and what the bug looked like.

Later, during our large group meeting, I complimented everyone for their good work during our morning work time and told everyone about the bug report that this one student wrote up upon detecting a bug. When the children wrote their blog posts, about half of the children told about discovering a bug. One child used the word “detected.”

The children and I also began a list of icons and words that users will be seeing and using a lot, e.g., the stop and shutdown icons, the word “Activity,” the check mark, and the button that leads back to home screen.

Other thoughts and/or observations:

  • Only two children expressed some frustration (low level) that the two activities they wanted to engage in did not work. The rest of the children did not linger over non-working activities. They simply got out of it and looked for other activities to explore.
  • Children are teaching and learning from each other. Hooray!
  • The children like having a blog of their own. Their families left comments and seemed just as excited as they are about this project, including grandparents! For some children, it is clear that their blog is part of “school.” When I suggested to a student that she and her father check out her blog at home  so that over the weekend she can read the comments her dad had written, she looked puzzled at first and then said that she would rather do that at school, even if she has to wait until Tuesday to see the comments. It was clear that at this time, she has categorized the SoaS project and blogging as part of her school life and work, not to be mixed into her life at home.
  • Time – specifically in managing and maintaining the children’s blog. Ideally, I would like to have them input their blog posts themselves after they edit their writing. At this time, I edit their writing (spelling mostly) and post it for them. I would like to turn over that job to the writers and their peer editors once I teach them about editing. My problem is finding the time for them to do this because of limitations in time and resources. I will keep thinking about this and figure out a way that will work.

Overall, it had been a very good week on the Sugar front.


LMLim

by LMLim at March 13, 2010 04:34 AM

March 12, 2010

Saigon OLPC

Class Twelve: Mathieu Maurice

Today I convinced Mathieu to come with me and show Tam Tam Mini and Tam Tam Edit to the girls. Mathieu graduated from college (one year in Marseille and two years in Cannes), where he studied cinema and music making. He is a former actor and now works on shows as a sound engineer. He creates music for TV, does sound design for animated movies and video games. I thought it was a good opportunity for the girls to learn from Mathieu. In advance he studied several music activities for the XO.

When we first came, he explained beats and loops, drew an octave on the blackboard, and where music notes are on the XO keyboard. He showed how to change complexity, length and tempo for the beats and loops, and how to generate new ones.

He made them clap to understand the beats. Then Mathieu showed how to create music by changing instruments,  adding good loops and removing bad ones. Girls tried to play music on their own and it was fun. He also showed his version of Tam Tam Edit and manually wrote music notes, mixed several instruments and recorded what he wrote.

Girls were very curious about him. I asked them to find on the map the city he is from – Marseille. They all did.

I uploaded 4 eBooks for them: Without Family by Hector  Malot, Message in the bottle by Edgar Poe and two books of short stories. I’ll give them more books next time. And when we have  the Internet I’ll show them where to get free eBooks.

They asked when they are going to have Internet and email? I said probably next week, as we (Mathieu and I) are going to buy the router. They already have DSL Internet connection which is only available for the teachers.

Today new volunteer Huy came with us instead of Mia, his English is good and he is going to help us buy the router or new modem for wireless Internet.

At the end we went to talk to the teacher Thanh, she was concerned about the wireless Internet, saying that at school there is a problem with viruses. We said we have better system Linux on the XOs, and it will be good for the girls to upload free eBooks, do lessons when I leave and look for jobs.

Then Ha and I played real piano downstairs, she played Bésame mucho…. which was great…


verhovzeva100_4536100_4546

by verhovzeva at March 12, 2010 11:19 AM