Uncategorized

The XO goes to School

Today we went to ‘GoodShepherd School’ to test the learning activities that we had developed for the XO. This was the first time that we got to test our activites with a group of school students. It was a great learning experience for the chidren and for us too.

Apart from the learning activities the children were most interested by the camera on the XO, they were really excited to see themselves on the screen. We feel that it will be more fun and really interesting for the kids when we have more XOs and we can develop learning activities that use the camera and the mesh features.

Thanks to Squeak our software ran without a hitch on each of the four laptops that we had available (Linux, Mac, Windows, OLPC-XO) and it was quick and easy to install on the school’s own computers too.

Special thanks to Bert, Yoshiki, Karl, and the whole OLPC Etoys mailing list for their friendly expert advice!

Working On the Library

I have put a lot of work these two weeks into building a prototype library for Nepal’s pilot of OLPC. It is my understanding from an e-mail conversation with S.J. that OLPC hasn’t decided on a system for the library. For the time being I am much more concerned about the back-end of the library than the user interface. I don’t think that it will be incredibly hard to design a simple user interface for kids to search a repository. The harder part is to find a powerful back-end that will be able to accommodate our needs as they grow over time.

After some cursory research, there appear to be three leading open-source repository systems

Being the incredibly lazy person that I am, I did not go to the trouble of installing and testing each one of these repositories. Instead I spent half a day reading reviews, blog posts, and news group discussions comparing various repository packages. After reading this evaluation of the leading three repository systems and watching this video, I decided to try out fedora.

After many painful hours I got fedora set up. Actually, it is quite easy to set up fedora, which is a pure web service. I found installing the most popular UI Fez rather difficult to get set up. I see this decoupling of service and UI as a strong positive in fedora’s favor. We need a very simple kid-friendly UI for kids, a more advanced one for teachers, and a very advanced one for the people who will load materials into the library.

I would love to hear from someone who actually knows about repository systems and can explain to me the benefits of one system over another. I will be in the US for 5 weeks starting Dec 16th and one of my goals will be to really understand online libraries so I can build an awesome one for Nepal.

I have put a rough install guide on how to set up fedora with the Fez UI on Ubuntu. There are already install guides for fedora and Fez but I encountered several problems during the install.

So, I would love to hear from people who actually know about these kinds of systems.

By the way, e-Pustakalaya means “e-Library” in Nepali. The title in the upper-left of the screenshot reads the same in Devnagari script.

We welcome Two New Volunteers to Nepal

We are very excited to have two new volunteers working with us to
advance the OLPC project in Nepal. They come from very different
backgrounds but with the common goal to improve education for the
world’s poorest, and umm, of course they are also excited to work with
super cool technology.

Dev Mohanty (left) and Ties Stuij (right)

Ties Stuij comes to us from Rotterdam in the Netherlands. He is a
long-time Common Lisp hacker who knew Luke Gorrie from Lisp
conferences. He also has a background in journalism and hopes to do a
good bit of writing about the OLPC project in Nepal. You can read
about his work with Common Lisp open-source projects at his personal
website [1]. Ties will be working very closely with
our Development team to build exciting learning activities. He expects
to stay in Nepal for approximately five months.

While the technical aspects of this project fascinate Ties, he is
motivated by a larger social concern. “I have always been concerned
with the problem of inequality. OLPC has an exciting opportunity to
address the problem of inequality in education and I am here in Nepal
to contribute as best I can.”

Dev and his lovely lady friend Manisha

Dev Mohanty is originally from Bangalore but has lived for many years in France, Singapore, and Bangkok. He has an extensive background in
mobile communications, primarily with Ericsson Corporation. He is
particularly interested in using WiMax technologies to connect rural
communities to the Internet. Recently he participated in the WiMax
installation in Cambodia.

Our Director of Networking, Mahabir Pun, has been dragging Dev around
rural Nepal for the last several months, connecting rural villages to
the Internet as part of the Nepal Wireless Project. For the next several months, Dev will be working with
myself and Sulochan on connecting the pilot school to the Internet,
hardening the mesh network, and improving the School Server. Due to
his experiences connecting rural Nepali villages to the Internet, Dev has
seen first hand how Internet access can improve the quality of life
for rurall communities. “I am excited about working on this project in
Nepal and I hope that the work I do here will help similar efforts in India.”

We are always looking for talented contributors to come work with
us in Nepal, but you don’t have to come to Nepal to make a big impact on the OLPC project. Tony
Pearson of IBM has been extremely helpful in developing our school
server configuration. Greg Smith has helped with project
management and finding out what other pilot sites are doing.

Meet the Team!

We lost electricity for a period this afternoon and were at a loss about how to occupy ourselves without Internet access. Om ji volunteered his camera for some team photos. The OLE Nepal team spends so much time together and come so far that it was time we document how the team has grown. Nepal’s pilot starts on April 13th so we have a lot of work ahead of us.

Up, Up, and Away! Bon Voyage Luke!

This Saturday, Luke leaves us for good to embark on a new adventure as
a firmware hacker. He has been with us since early September 2007. He
stayed at my house, drank all my beer, stole my girlfriend(s), and
made an invaluable contribution to the cause of OLPC in Nepal and
perhaps internationally.

When Luke arrived, we were struggling to define a technical
direction. The defining question was, How can we create a lot of great
learning activities quickly? This was important because we had to show
that laptops weren’t just a great tool for adults but an essential
part of education. We looked at creating activities in Python, but it
proved to be very time-consuming to create graphical activities in
Python. Further, we found it difficult to modify them on the fly using
Python. Luke chose Etoys as our primary development tool because it
both offers an excellent interface for rapid development of
graphical activities and it had all the power of Smalltalk underneath.

We were a bit wary of choosing a less well-known language for
development. Luke was not wary at all. He has made a career out of
working with lesser known but powerful tools. He was an active contributor to the Erlang community and one of the lead developers of the SLIME development environment for Common
Lisp.

Luke trained our first two developers, Ram and Surendra, how to
develop with Etoys and Squeak. But Luke was a novice developer in
Squeak himself and the team quickly reached the point where we needed
tutelage from a Squeak expert and moreover how to use the XO’s special
features in our activities. In December, Luke brought Dr. Bert
Freudenberg, OLPC’s Etoys expert, to Nepal to ramp up our development
process. It worked. Our development sped up and the team learned how
to create more interesting learning activities.

In January, I was at OLPC offices for the January Learning
Conference. I was immensely proud of our team when Walter Bender of OLPC told me
that “You are definitely on the right track with Etoys. These [activities] are great.” I was also proud when the delegation from Birmingham city schools
told me that they loved our activities and would like to use English
language versions of them in Birmingham’s pilot.

In large part due to Luke’s efforts, our development team is very tied
into the Etoys and Squeak communities. Ram and Surendra are in freqent
contact with core developers such as Yoshiki Ohshima and Scott
Wallace. We have a new volunteer, Ties Stuij, that knew Luke from the
Common Lisp community.

We will remember Luke for many things, not just that he is an uber-hacker. Here are a few of his exploits:

Completing the Kathmandu Half-Marathon on a Unicycle
Trekking to Rara Lake
Wearing Rainbow stockings while running in the streets of Kathmandu
Teaching the office how to juggle
Being best friend to Hara, Bukhu, Bujho, Kali, Bangi, and Max (all dogs).
and too much more for this blog
We will all miss him but perhaps no one will miss him more than the OLE Nepal puppy Bujho

Bujho Says Goodbye to Luke

Almost 6 months after his arrival, Luke is ready to take on
a fresh technical challenge. His work with OLPC introduced him to the
Forth programming language and now he is embarking on a new career as
a firmware hacker. He leaves this Saturday for Sweden. He will very
much be missed. Luke, you are welcome back any time. Take care brother.

First Visit to Nepal’s Pilot Schools

Today we visited what will be Nepal’s first pilot schools for OLPC. We have put a lot of work and planning into these pilots and now is it pretty exciting to meet the teachers and kids that will benefit from OLPC. Both pilots will begin on the first day of the Nepali School year, April 14th.

Shree Bashuki Lower Secondary School

Bashuki school has grades 1-8 and roughly 320 total students. It is located roughly 30 km east of Kathmandu at the top of a very steep ridge. Most of the teachers walk over an hour to reach the school. It is a poor school and most of children belong to the Tamang indigenous group, one of the historically disadvantaged groups in Nepal. We will pilot OLPC in grades 2 and 6 at this school.

This is the main building that was built with financial assistance from a German charity.

Here is a view of the older school buildings used for grades 1-3

The School is located high upon a hill ridge roughly 1 hours walk from the main road. There is a coarse gravel road leading to the school that is only accessible by motorcycle or a 4-wheel drive vehicle. Here is a view from the school roof down at the Kathmandu Valley.

Ram is in charge of power distribution and backup for the school. He has experience connecting solar panels and micro-hydropower generators in rural parts of Nepal. He also is one of the lead developers for E-Paati, a suite of learning activities for Nepali kids.

Josh Seal of Belkin International took these pictures. He is helping OLPC develop power-related products. He was very helpful to us for the week he was here in Nepal. We were very impressed with the Xoctoplug that he showed us.

Here is the room for Class 2. We were happy to see that the desks are relatively close to the ground so there is less distance for the XO’s to fall. We plan to reorient the desks so the desks so that the kids face each other. We thing this will facilitate collaboration and make it less likely for XO’s to fall off the desks. Each desk is roughly 1.5 m X 1.5 m. Saurav told me that these desks are significantly wider than desks at many schools. Kids would have difficulty typing at smaller desks. We expect there to be roughly 37 kids in Class 2 at Bashuki at the start of the school year. The room is roughly 6 meters by 5 meters.

Ram and Rabi decided that we will install a “charging rack” at the back of the classroom. The children will unplug the XO’s and use them at their desks untethered by power cables. There will be a space and charger for each child’s XO in the rack. We do not plan to run power cables to the desks. The chance that kids will trip over power cables is just too high. Further, the power strips available in Nepal are of very low quality, there is high chance that children will shock themselves while removing their plug from the power strips. It is not uncommon to see a spark when you insert a plug into the particular power strip available in Nepal.

We would love to use the Xoctoplug for power distribution should it become available. It is much more elegant and safe manner of distributing power than regular power strips. We would place the Xoctoplug in the middle of 4 desks and the kids would plug into the Xoctoplug. Since the Xoctoplug distributes DC current it is much more efficient and safer than an AC power strip. Additionally we could daisy-chain two Xoctoplugs together so that we would only have live power cable per 8 kids, as opposed to one live power cable for every 3 kids which we would need for power strips.

Here is the room for Class VI. About 37 kids will fit into the room, roughly 4 kids per bench. This room is physically smaller than the Class II room. The classroom measures roughly 3.5 meters by 5 meters. The surface area of the bench is quite narrow and only just wide enough to accommodate the XO. We were concerned that the XO’s would easily fall off the benches. It is very important that we rearrange the benches so the kids are facing each other and it will be less likely for the XO’s to fall forward onto the ground. We will put the charging rack to the left of the blackboard as it is the only space available for it in the room.

We spent a lot of time today with school principal Shiva Hari Dahal (center). These discussions were very productive. We discussed power distribution, classroom arrangement, community involvement, and teacher training.

Here is a rough sketch of the schools layout.

There are only 5 amps of power coming into the school. Josh says that we need at least 7.5 amps to charge 110 laptops. Ram estimates we need 10 - 15 amps because of power loss and distribution inefficiencies.

We would like to thank Josh Seal for the help he gave us in planning for power distribution and safety, and for these photos. He is off to India to meet with Amit Gogna and the OLPC India team there. Happy Trails Josh!

I have create a wiki page with the technical details for the school entitled Bashuki Journal. I will try to keep it updated with details of the implementation.

That’s all for now. Later I will post notes on the 2nd pilot school, Bishwamitra School.

Visiting Nepal’s Pilot Schools, Part II

Later in the afternoon we visited the second pilot school, Bishwamitra Lower Secondary School.

Bishwamitra Lower Secondary School

The school is roughly 30 minutes walk from the main road. This school is more accessible than Bashuki School. It is a poor school with a mix of Dalit (untouchable), Chettry, and Brahmin children. It is physically much smaller than Bashuki school and has a smaller student population. It is also much more secure location. There is a barbed wire fence encircling school, this made us worry a little less about the risk of theft of power equipment and the School Server.

The teachers here were quite enthusiastic. Rabi and Saurav Discussed aspects of the pilot with the teachers for several hours.

The school is nestled into a hillside, making it a poor location for a wireless antenna. We are placing the wireless equipment that will connect the school to the Internet on the hillside from which this photo was taken.

The owner of this house has generously agreed to allow us to place a point-to-point antenna in his home. We will likely place it in the high window, which is in line of sight with our multipoint antenna located at the Department of Education, 10 km east of here. We will place an omni-directional antenna on the side of the roof facing the school. The Omnidirectional antenna has a range of 12 km in optimal conditions. We have yet to determine if conditions are “optimal” at this location. We plan for the School Server and XO’s to connect to the Internet and each other using the access point we will connect to the omni-directional antenna.

Above is a closer view of the school. It is physically very small and serves roughly 240 kids, classes 1-8.

The school borrows power from a neighboring house and does not have its own power line. The school administators are arranging to get their own power line rated at 15 amps at our request.

Below is the room for Class 6. It measures 5.15 m x 4.21 m. The desks are 1.57 m in length and 25 cm deep. Here again it will be very easy for the laptops to fall forward off the desks. The Class 2 room has the same dimensions.

Two Class 2 students. Today was exam day and exams had finished before our arrival.

Discussing the implementation with the teachers. Dr. Saurav Dev Bhatta of OLE Nepal is in the center. Dr. Dev Bhatta is Education Director for OLE Nepal. To the left wearing sunglasses is Rabi Karmacharya, Executive Director of OLE Nepal. I (Bryan Berry) am the Director of External Relations which means I write blog posts and wiki pages detailing their work :).

A rough map of the school.

Power Distribution at Bishwamitra

Josh Seal of Belkin International took these photos. Thanks to Josh for his assistance on power issues for the pilot schools.

Welcome Kamana Regmi to the Content Development Team

We are very excited that Kamana Regmi recently joined our content Development Team. Mrs. Regmi has over 14 years of experience teaching mathematics and science at the primary level, as well as training primary school teachers. Her duties will include assessing the applicability of existing open-source education materials, guiding the development of new materials, and determining how to best integrate our materials into Nepali classrooms.

OLPC has helped bring to light many great open-source educational materials, but it is not immediately obvious how to integrate many of these tools into the Nepali classroom. Etoys are a great example of this. We can’t just tell teachers that they should use Etoys to teach mathematics and science. We have to give them examples that help them teach basic concepts — particularly ones that they currently have difficulty with — and guide them through the process of using these new tools. This is something I really like about the Waveplace Foundation. They are putting a lot of effort into showing kids and teachers how to use Etoys and developing courseware to support this process.

Kamana has already spent some of time this week using GCompris, Etoys, E-Paati, EShiksha, and other tools. I can’t wait to hear her observations.

I've already bookmark this article and will definitely refer this article to all my close friends and colleagues. Thanks for posting!

Nepal: ICT in Education and OLPC

Huge disparities in quality of education and access to education characterize the Nepali school system. Schools in rural areas, mostly government run, compare poorly to schools in the cities. These government schools not only suffer because of the digital divide, but also lack the quality in teaching and tools to enhance the learning process. In fact, forget the “Digital Divide.” The “Quality Divide” between “school-haves” and “school have-nots” is far more pressing. As the majority of students at primary and secondary level attend government schools, these discrepancies translate to poor outcome, and low quality of education. Thus, it is important to introduce reforms that aim to not only provide equal opportunity of education, but also to improve the overall quality of education for all. But how to achieve this goal? It is a daunting task, especially for a developing nation like Nepal to consider radical changes to its educational policies. I believe that Nepal can use Information and Communication Technology (ICT) to improve the quality of education, and expand access to education. OLPC, along with e-libraries, open-courseware, and other initiatives can radically enhance the quality of education in Nepal.

What we know

A major indicator—although, it can be argued that it is a poor one—of the status of education up to secondary level (grade 10) in Nepal, is the School Leaving Certificate (SLC). Students take the SLC exam at the end of grade 10 to mark the completion of requirements set by the government, that a student has successfully completed at least 10 years of primary schooling. The data compiled over the last decade shows that on average a meager 38 percent of the total examinees pass the test. Among those who appear for the exam about 80 percent come from public institutions, of which only about 41 percent succeed. The 20 percent that come from private schools have around 88 percent pass rate, and on average score 18 points higher compared to those from public school. What it shows is the lack of quality, and disparity in education among schools in Nepal. Equally deterring is the lack of use of technology—chiefly computers—in public schools. While most private and some public schools in the cities boast a meaningful incorporation of computer courses in their curriculum, it comes as no surprise that most others claim to have never seen one. The answer, to how to improve the quality, and narrow the digital divide in education is not simple, but ICT seem to have answers to some of the problems plaguing the education system of Nepal.

The value of ICT in education lies in their capacity to deliver educational material that induces a self-learning process that simulates creative and innovative thinking. It is generally agreed upon that it induces a collaborative, and self learning environment that teacher-centered and whole class lecture methods lack. Indeed, examples are abound in American, and European institutions where this method is already preferred. Teachers simply act as facilitators rather than instructors. The idea is not to curb the need of a teacher, but to let students learn through discovery.

It is important to understand that the role played by ICT in the educational system of a developing nation like Nepal. It would be naive to think that by simply providing a technological tool to some kid in rural Nepal will actually improve his learning ability and outcome. In fact research already shows that “educational materials in electronic form are most useful when it is directly linked to curriculum”. It becomes more relevant to teachers, and students when it has components of curriculum in it. The growing popularity of the use of ICT in e-libraries, e-learning, and distance learning are good examples.

There is no statistical evidence, however, that proves a positive impact of ICT on the quality of education, or on the learning outcomes. However, it is no reason to conclude that it can not. Only a few decades ago the notion that the internet would change the way do business, interact and communicate among other things would have been a laughable proposition. For most the internet has now become ubiquitous.

Technology has the ability to bring change, and for developing nations it can become a cost effective, and accessible tool to improve the quality of education. Many countries are already focusing on implementing ICT in education. A majority of educational projects funded by UNESCO, World Bank and other private organization (some resources) contains an ICT component. It is done with a belief that ICT is a viable option that has the potential to improve both education and lives of many in these developing countries.

One Laptop per Child in Nepal

The OLPC initiative can play a vital role to make ICT-based education sustainable in Nepal by becoming a cost-effective, and affordable means to reach population in rural areas. More importantly it has a large open source base, that enables localization, and modification, which adds a sense of ownership. But the challenge is more than to simply give laptops to children, it is to understand how it can enhance the teaching and learning process. The laptop by itself is a great tool for learning. It is durable, and child friendly, and is all about collaborative learning, sharing and communicating. But the best thing about it is that it empowers local groups like OLE Nepal to make this project our own Nepali, Thai, or Nigerian project.

So whats going on with the OLPC project in Nepal?
OLE Nepal and the Department of Education of Nepal along with other local organizations are working on various aspects of the OLPC project. OLE Nepal is implementing the OLPC pilot (read about the schools) in April 2008, and is steadfastly working with various sectors of the community to take the project forward. The Danish IT Society have supported OLE Nepal’s efforts by signing a MoU with OLE Inc., to raise funds for laptops for Nepal. The Danish government through its embassy in Nepal is funding the pilot. The Ministry of Education along with its partners is also actively involved in build infrastructure required for the project. A few remoteMakwanpur districts are is already connected to the Department of Education through wireless technology, and work is in progress to connect more.

OLE Nepal is also putting major focus in developing learning activities—that are linked to the national curriculum—to be used with the laptops. Constructionist Education does not mean giving children a blank slate and expecting them to invent the calculus. So teachers and curriculum experts are guiding the development of these activities. In fact OLE Nepal is partnering with the Department of Education of Nepal, to develop such activities. The two signed a memorandum of understanding (MoU) to work together to create these activities that meets the learning objective specified in the curriculum while allowing the students to use their abilities to learn by their own.

The activities are interactive in nature, and can be modified by teachers even with minimal programming knowledge. This gives the teachers the ability to change things according to their needs, enhancing the teaching process. One can easily find the similarity between these activities and the actual text book, only now it is more fun to learn. Not only does this help to convince the government, the teaching community, and the parents who would otherwise find few if any reason to spend the already stretched budget on OLPC, it more importantly promises to students a chance to better education and creative endeavor.

The OLPC project has received a positive reaction from different sectors of the community. Teachers like the potential the project promises, students who have the used the activities like what they see, and the government seems enthusiastic about implementing it. One point that critics usually raise about the OLPC project is its lack of attention to actual educational activities in the laptop. But the OLPC is looking to put its laptop on hands of population around the world, and creating educational material that addresses global population is not best done by an organization based in a wealthy western city. This work is best done by local organizations. The work done by OLE Nepal can be taken as an example, and similar work can be collaborated for localized use with the laptop.

The initiative taken by the Ministry of Education to integrate the OLPC project into the national system has already taken some steps forward. But much more needs to be done to actually see the results. Network infrastructure, internet access, long term financing, human capital, the general awareness about modern technology are a few things that needs immediate attention. Training teachers to effectively utilize the technology is equally important. We need more people to come to Nepal to work for projects like this, especially young Nepalese living abroad. I give example of all our volunteers who have the vision, and the commitment to make a difference.

Teacher Training Starts - Technical Notes

I will be writting alot about this weekend’s 4-day teacher training program. We are training 24 teachers from Bashuki and Bishwamitra schools and roughly 7 individual from Nepal’s government education bodies. Here are just some quick technical notes.

The Classroom Setup. We have the teachers facing each other just as we want the students to face each other in the classroom. This will reduce the risk of XO’s falling forward off the front of their narrow desks.

That’s the Library server on the left and the XS on the right. Less than elegant I admit.

Power is the bane of our existence. Not just generation but distribution as well. Xoctoplug, We need you now! After that, XS instability, particularly EJabberd and the networking. Neither Sulochan nor I are expert linux sysadmins, so problems that may be simple for experienced linux sysadmins are quite difficult for us. We have start the ejabberd service manually after the XS starts up. Jabber sometimes does weird stuff that confuses me. I have had to restart jabber twice because the sharing didn’t appearto be running properly. Chat invitations didn’t seem to show up. The problem might not have been in jabber but in my overrall ignorance about these systems work.

The AZTech WL830RT4 wifi router wasn’t up to the job. It couldn’t support more than 25 clients when we tested it on Friday. We had to go back to using the Active Antenna. Hopefully the Deliberant access point that Dev chose will be able to support 70 concurrent users.

Random hardware failures are very frustrating - XS hardware, switch, etc. Nothing to do w/ E-Pustakalaya software - Apache + PHP + MYSQL + FedoraCommons - or the XS software but the poor quality of hardware available on the local market I don’t understand IPv6 and at this moment and it is hard for me to tell which ipv4 address my XO is using. This just adds to my general technical confusion.

Looking at the top command, only about 45 MB of memory free for activities, system svcs take up 205 MB of memory QA and imaging the XO’s was incredibly time-consuming. It took Sulochan and I much more time than we thought. During the QA process about 4 XO’s out of 45 failed. Two XO’s had jumpy touchpads that jumped to the right-hand corner when you released your finger, one XO had a touchpad that only allowed vertical movement, and one I couldn’t get to boot at all. At first the XO had a screwed up display that was all fuzzy. Rebooted once, back to normal for about 20 minutes of use. Then the screen went fuzzy again. Rebooted and on reboot it failed to boot at all. Hopefully I can fix the touchpad problems by pestering Richard Smith, my favorite Tennessean.

OLPC hardware and UI are incredibly well thought out. Hardware usability is fantastic. Sugar requires optimization esp. in loading activities and closing them. they run fairly well once they start, excepting our own Etoys-based activities that have persistent memory issues.

All in all, things are going really well. These are just the technical gripes, many of which I hope to solve before April 24th when we give the kids their XO’s.

Teacher Training Begins!

Saurav Dev Bhatta, Bipul Gautam, and Kamana Regmi designed the teacher training program. Sulochan Acharya and Bryan Berry provided technical assistance. Bipul is the lead teacher trainer and is steeped in the theories and practices of different educational schools but Vygotskian Social Cognition and Piaget’s theories of development have influenced him the most.

The session started with an opening ceremony. Our guests of honor were by the Director
of the Department of Education Mr Mahashram Sharma, Executive Director of the Curriculum Development Center Mr. Hari Bol Khanal, and Mr. Sambhu Dahal of CDC. Arjun Aryal and Kha Gha Raj Poudel of the Department of Education were also present.

Baburam Paudel, Deputy Director of the Department of Education and head of Nepal’s OLPC program.

Mr. Mahashram Sharma, Director of the Department of Education called the teachers participating in the training program “pioneers”

Training Begins!

Dr. Saurav Dev Bhatta explains the keys on the keyboard

Day One:
The first day of training focused on basic use of the XO and its functions. Saurav spent a lot of time explaining the functions of the different keys on the keyboard. This was much appreciated by many of the teachers who had minimal experience with computers. Later in the day, Saurav led the teachers in exploring E-Paati and other activities on the XO.

Day Two:
On the morning of the second day Bipul focused on the theories of Piaget and Vygotsky that underpin constructionism. The afternoon of the second day returned to the activities in the XO and how they reflect the ideas of Piaget and Vygotsky.

Day Three:
details to come . . .

Day Four:
details to come . . .

What’s missing?

We want to train the teachers how to use Etoys, Scratch, and other programming tools but there is only enough time for us to scratch the surface here. Teachers are just now on the third day learning how to use drag-and-drop using the touchpad. We hope to steadily build up to using Etoys and programming tools as standard parts of training and teaching/learning.

Teacher reactions

Some teachers dove right in and weren’t hesitant to try out different features. Many others were very hesitant and waited for direction before proceeding. I am very happy that we invested so much time in building up the E-Paati activities. They embody the same educational ideas as the XO and are based traditional Nepali cultural themes. Many of the teachers that seemed a bit wary of the XO initially later told me that they really like E-Paati and felt very comfortable using it.

I am really happy that we chose to have extensive teacher training ahead of handing out the XO’s. We have 4 days off-site of teacher training, followed several weeks later by 3 days on school premises. The off-site training is critical because it gives us many more hours per day with the teachers. on the first day we started at 8 am and ended officially at 6 pm. However, after dinner most teachers wanted to return to the classroom. Almost all teachers were back in the classroom by 8 pm and we had to make them at leave at 10 pm so we could get some sleep!

If we had started with on-site training, most teachers would have lost roughly four hours of training per day to commuting to their home schools. Many teachers had trouble using the touchpad. Often they used too much pressure and released their finger quickly. We need to spend more time on touchpad, particularly that touching the touchpad inadvertently with additional fingers.

XO or E-Paati?

Many of the participants found the term “XO” for the XO confusing. The teachers discussed this matter for some time and came to a consensus on calling the XO “EPaati.” This still causes some confusion as we call our activity suite E-Paati. Guess we will have to find a new name for the activities. E-Paat basically means E-blackboard.

I know the OLPC Nepal guys like to call the XO “Mero Sanu Saathi” or my small friend. The teachers were not so fond of this name as it seemed to place too much emphasis on the machine itself and not on the social learning environment that it enables. Saurav stressed again and again that the XO is not meant to replace them but to empower them like the”Paati” (blackboard) does currently but in a much more compelling way.

School Cooperation

Several teachers from both schools approached us and told us that they would like to set up regular meetings between teachers at both schools so that they can support each other and share solutions.

Manoj Ghimire of Bishwamitra assisting his colleague Kapil Gautam. The Peer-to-peer interaction has been amazing.

More news to come later! This has really been exhilarating and more than a bit exhausting.

Integrating math and XO

The second day of the training by OLE Nepal had a session to give the participants a touch of how the Xo can be integrated in the class. An activity on developing the concept of addition was done for about one and a half hour.The activity was about developing the concept of counting and adding. the first thing they did was colour pictures on picture cards. Then they used the same cards to play a winning and losing game by drawing a card, counting the number, counting the same number of beans, adding the beans, writing the mathematical sentence. The player who got the larger number won all the beans. Then came the role of the XO where a game with the same concept was played and students got to assess themselves through the score that was displayed in the screen.

Participants were really excited about the whole activity and said it raised their confidence on the use of Xo in their calss. Today, the third day of the training, the participants are making their own lesson plans and conducting sample classes. Hope this will raise their confidence even more.

Piaget’s Theories in Practice

The four day long training organized by OLE Nepal introduced the concept of a Job Chart to be used in the classrooms with Xo’s. Assigning jobs to the students for keeping the classroom organized means trusting them and making them responsible. Students first make their own classroom rules. Then they discuss and suggest possible jobs. They make a job chart with various jobs written on the pockets. The name of a student assigned for a job enters the corresponding pocket and they make sure that their job is done and the rules followed. Jobs are rotated every week so that every student in the classroom gets to do all the jobs. We believe that as students have come up with their own rules and jobs they will make sure that they are followed.

The participants heaved a sigh of relief. Taking care of the Xo’s was one of their main concerns. They said that their job would be a lot easier with the introduction of job charts in their classrooms.

Another activity in the training was Jean Piaget’s conservation test. Six children from the village were taken as sample. The floor was open for discussion after the test and a lot of analytical discussions took place. The conclusion was: Learning becomes meaningful for children if it is derived through the use of concrete and hands-on materials. This meant that the Xo was not to replace the teacher and the real experience which children needed to go through in the process of learning but only to be an aid to learning where learning becomes more meaningful, abundant and fun.

Showing how kids perceive the Conservation of Matter

Manoj Explains how he intends how to use the Job Chart in his classroom at Bishwamitra

More Technical Notes from Teacher Training

Sound failed on one of the XO’s. Rebooted twice and
now it works. Weird.

It is not intuitive how to add new activities to the XO. We really
need a Synaptic-like activity manager for removing and adding
activities.

Adding activities from a USB is not intuitive. Even if the Journal is vastly
improved, a file manager is not the best tool to add/remove
activities. Open-source hackers of the world, please assist!

Currently you can add activities from the command-line with
sugar-install-bundle or from a USB. To remove activities you have to
rm -r the activity’s install directory and then restart
Sugar. Restarting Sugar isn’t so bad but it is not practical for most
users to have to ‘rm -r /home/olpc/Activities/Read.Activity’ every
time they want to free up space.

It is also very confusing how to remove content once the SSD fills
up. Perhaps C. Scott Ananian’s olpcfs addresses these issues. I guess
I should read his wiki page before I write any more

I am a heavy command line user and I still like using Synaptic package
manager. The whole point of Sugar is that kids don’t need strong
literacy and numeracy skills to use a computer. If we require them to
use the command line, we are expecting them to already be both literate and
numerate.

We need a GUI for changing the XO’s nickname. Besides adding and
removing actitivities, this is command-line intensive

The proper screw drivers for XO maintenance were missing from our
toolbox. Argh! Rabi will bring them tomorrow.

Once you download something in the web browser, the “Download
Completed” bar won’t go away.

Read Activity won’t work on any of the XO’s. We are using version 44. Or maybe I have screwed up the launching mechanism. I have created a custom web browser bundle that points users to the E-Pustakalaya “E-Library.”

We need to do a lot more testing for the library and School
wikipedia. Since we did virtually no testing it will be easy to
improve. We also need to use Moodle, really need to use Moodle.

Manoj from Bishwamitra School and Neema from Bashuki School will join us for three days of technical training next week at our office. I am so glad that we have found two technically inclined teachers. They will make Sulochan’s life and my life much easier over the next few months.

The Teachers Fascinate Me

Neema Lama and Kamal Lama both from Lakuri Bhanjyang and ethnically
Tamang. Neema teaches English at Bashuki and Kamal came to the training as a representative of the Bashuki community. Kamal is a member of the Bashuki School Management Committee and earns his living making furniture and handicrafts out of bamboo. He has taught
bamboo handicrafts to the children of Bashuki school.

Neema leads the student singing group at Bashuki. Recently they competed in a regional competition. Bashuki finished second out of 30 other schools, many of which were wealthier and larger. Neema was extremely enthusiastic and really enjoyed exploring the
various activities, particularly English activities. He excelled when it came to taking apart the XO. I can tell that he has a natural talent with mechanical things.

It has been a tremendous pleasure to get to know both of them. This morning Neema led a very energetic English lesson that used the XO. I wish I had had more teachers like him when I was growing up.

Neema will be joining us at OLE Nepal office next week for three days of technical training. I can’t wait!

Rajan Chand Cares about His Kids

Rajan teaches social science at Bashuki. He is one of the most
enthusiastic participants in the program. Currently his only tools in
the classroom are chalk, a blackboard, and the government textbooks.

He gave us a lot of constructive feedback. His favorite game was the photographic adding game. He says that the English activities were good but not nearly as good
as the maths games. The maths games have competitive elements, sound,
and some animation. Rajan liked the English games but they lacked
sound, timers, and animation. We need to create some great English
games that are just as fun as the maths games that kids will play over
and over again.

Kamana and I emphasized to him that the teachers themselves are the experts here
and we will work in partnership with them to develop the best
materials, teacher training program, and support system.

One of the subjects Rajan teaches is geography and we discussed a
jigsaw puzzle where the student first had to put together the
geographic zones of Nepal, then the districts, then the major cities.

I suggested a game where you had to place the different ethnicities in
their ancestral regions. Rajan very politely disabused me of this idea
as it would certainly cause ethnic tensions to flare. Good thing
Nepalis are in charge of this operation and I just handle some
technical matters and documentation.

Rajan approached me about the need for educational games about
culture, particularly the large festivals like Dashain, Holi, and
Tihar. In time we need to cover the festivals for different ethnic
groups such as the Tamang, Rai, Sherpa, Tharu, etc. He also would love
to see “thematic” modules that teach English, Nepali, social studies,
and mathematics.

Day 4 and I am Exhausted . . . And Energized

We have been working from 8 am in the morning until at least 11 pm for the last 4 days. The experience has been nothing short of exhilarating. The teachers have been fantastic to work with and have many good ideas how to implement OLPC. This is great as they ultimately are the implementers of this project.

They really appreciate the training program. I don’t think this pilot would be nearly as successful if we didn’t put as much effort into the teacher training. The teachers will have a two week break from training after today. We hope this break will help them absorb what they have learned. On April 13th we will have 3 days of onsite training that will involve the kids. During this training the teachers will lead a meeting with community members explaining this program. The teachers are designing this program themselves.

We had persistent problems w/ the touchpad on several XO’s. We held how the keys in the 4 corners of the keyboard and this seemed to fix the problem temporarily. I need to better understand this issue.

XO Maintenance and Repair

In the evening, I got to lead one section on my favorite subject, taking apart the XO
and putting it back together. I was at OLPC headquarters back in
January for a learning conference. During the conference, I took apart
3 XO’s in one morning. I think some staff at OLPC cringed a little
when they saw the mess that I created. Luckily, I put all three back
together.

Manoj, Neema, Kamal, and Saurav participated in the XO disassembly. Neema showed a
facility for disassembling the XO. Manoj did well also but worked too
quickly. I emphasized the importance of keeping all the screws in one
cup. We also put the screens aside in a safe place once we removed them.

We had several tools but it became apparent that you need two tools to
take the XO apart, 1 small philips head screw driver with a good grip
and one small flat head screwdriver for disconnecting the smaller
connectors. Manoj and Neema had difficulty disconnecting some of the smaller
connectors with their fingers and needed the flat head screwdriver.

Neema worked very quickly and was only held back by the fact we only
had two screwdrivers for three people. Manoj also did well.

We took apart the entire XO, including the keyboard.

We started disassembling the XO at 8:45 pm and put it back together by
11:30 pm. This matches my previous experiences. It takes about 3 hours
to disassemble and re-assemble the XO on the first try. Subsequent
tries require about 1 hour.

Manoj puts the keyboard back together

Back to Work

I took yesterday off after 10 days of working from 8 am to 10 pm. No e-mail, no computer besides listening to LUG Radio and LinuxActionShow.

Some reflections. Teacher training was amazing. The excitement, enthusiasm, and commitment of the teachers was inspiring. The next time I hear someone put down Nepali teachers I will be hard pressed not to smack them upside the head. Teaching is not a well-paying job in Nepal and these teachers chose teaching over better-paying options, such as emigrating to the West or the Gulf Region.

We saw many elements of constructionism, experiential-learning, whatever you want to call it in the teacher training. We introduced topics and gave some brief training and then left ample time for Peer-to-Peer interaction where the more advanced teachers trained others. Once a few teachers understood how something worked, they taught their colleagues. I can see how this works among “peers” and I don’t think it will work so well among non-peers. I can’t see the kids training the teachers how to use the XO. That is why it was essential to have teacher training well in advance of the actual deployment.

Schools are not blank slates where we can go in and impose a completely new way of doing things. We have to work with the existing system. OLPC is about getting education the masses, not to set up special laboratory schools that experiment with methods that never make it to the mainstream. That means we have to work within the existing systems.

It is key to incorporate school leadership and community leadership in the training program. The School Supervisor for the District, two District Education officials, the school principals, and members of both communities participated. If school management doesn’t support this project, it will be difficult for the teachers to muster sufficient resources to maintain it.

The teachers had the most difficulty learning how to use the touchpad, many were just learning how to “drag-and-drop” by the end of training. The extremely small size of the mouse icon in Etoys, EPaati, and Scratch made this more difficult.

The most consistent technical problem was a jumpy cursor. We were able to solve this by regularly pushing down the keys in the four corners of the keyboard. This was more of a problem on some XO’s than others. I need to better understand this issue.

Problems with the Active Antenna: The active antenna couldn’t handle large downloads. It started generating timeout errors when students downloaded files larger than 3 MB. We will have a 1 Mbps connection between the schools and the E-Library and we don’t want to the local wireless router to be the weakest link. Many items in the E-Library are full color pdfs that are quite large.

The teachers consistently said that they wanted sound, animation, and competitive elements in the learning activities. We need to apply these more to our English activities.

Busy with post training review.

We are back to work after the training and busy revising the activities. We hadn’t realized that the rush before the training had left a lot of flaws in the activities meant for children. In some places the audio did not match the picture. For example the sound for the picture of a doctor was cock and so on, quite jumbled with the sound for another activity. Other things were the instruction bubbles. They were typed in Nepali but the presence of a weird spelling, created by forgetting to toggle from one font to another, made the class hilarious. Some pictures need to be enlarged whereas some need to bereplaced or completely removed as we felt that with the presence of so many items in the same picture a lot of confusion could be created among children. The whole of the content development team is busy in an attempt to send the Xo with no flaws.

A hilarious sample class

Although late i’d like to share what happened at the sample class that two of the teachers gave during the training. all of us, the trainers as well as the trainees played the role of Grade two kids. It was wonderful to see how adults could be kids given the opportunity. Although the whole atmosphere was hilarious, teachers realized how difficult their class was going to be with the presence of the Xo. Problems regarding the flaws in the activities to complaints of kids pushing and nudging each other and messing up with another child’s Xo, were vivid. Complaints like “Sir, his activity is already open and there is nothing in mine” to “Sir, he is pushing me” and “Sir, he is playing another game in the Epati” made us go back to our own childhood. It was a good thing that we planned to put this activity in the training as it prepared the teachers on what to expect once they start using the Xo and not be too overwhelmed.

Technical Training for Teachers

Manoj and Neema are in our offices today for technical training. Manoj and Neema were the star students in last week’s teacher training session. Unfortunately, Neema will only be w/ us today and return on Friday for more training. We’ve got Manoj for the next three days.

Here is the rough training schedule we have in mind

Monday (today)

How to update the firmware, use test-all, and test individual hardware pieces

how to install an os image and customize the bundles in it

Fix two bad XO’s we have in our office

Basic wireless networking

Basic use of Etoys

Tuesday

Review flashing firmware and OS

Add and Remove activities

How to free up space on the XO

Basic linux utilities and troubleshooting

More Etoys

Play w/ additional activities they haven’t had the opportunity to explore

School Server - start and restart XS services. How to restore the XS from backup

Wednesday

More School Server, more networking

Time w/ Kamana if possible

Explore issues Manoj is interested in

By Wednesday I hope to have a two-page cheat sheet for basic maintenance tasks for Manoj and Neema.

Suggestions are most welcome!

Manoj and Neema learning basic Forth

QA is Killing Me

Our pilot starts in less than 10 days and I am mired in Software and Hardware testing (QA). We were supposed test 70 XO’s against our access point yesterday but early into testing we noticed that activities were crashing on startup w/ build 703.

I spent 3 hours on IRC troubleshooting the problem w/ the help of Sugar gurus Tomeu Vizoso and Simon Schampijer. They were incredibly patient w/ my complete ignorance of Sugar actually works. The only thing I know about dbus is that it produces a lot of errors. I still haven’t figured out what is causing the problem and I can’t reproduce the problem.

I am so glad I only have to deploy 150 XO’s next week and not 5,000. The amount of QA for that would be staggering. I will take it personally if a single kid gets his first XO and it won’t boot, connect to the network, or launch activities.

Other problems encountered: USB key inserted doesn’t show up in Journal, XO keeps trying to connect to the mesh networks while connected to an AP, wasting precious power. I promise I will create tickets for both of these issues.

So here is the significance of my current situation. In my respects I represent Joe system administrator - your prototypical sysadmin - I slept through my CS classes at university and earned a respectable C+ average. I have an MCSE in Windows 2003 and have a moderate level of linux knowledge but never compiled my own kernel. The guys rolling out OLPC for implementations will look more like me and less like linux gurus.

The technology underpinning OLPC is so novel that it is hard for work-a-day sysadmins to support this project. Unfortunately, the XS is still in a lot of flux so enhancing the documentation for it right now would be a waste of resources. So what’s my point?

1 I am tired and need a nap

2 We need to make it easier to load activities, customize builds, connect to AP’s reliably, get the XS up and running so the average sysadmin can do the rollouts. More stable XO builds would be an important first step. I believe there is already discussion of this on the developers list.

I really want to thank Tomeu Vizoso and erikos for their help. They have been extremely helpful and patient. They should also visit a pilot site soon. It will give them sense of how important their work is and of what their users need. I humbly welcome the Sugar guys to Nepal.

nap time

Post Nap: Looks like 703 wasn’t at fault after all. A corrupted .olpc.store/index/config file on my usb key crashed the datastore-service every time I inserted it. My apologies, os703

Falling in Love with the XO All Over Again

I got involved with OLPC back in June of 2006. It’s hard to believe that was almost two years ago! I got involved for a lot of reasons but I have to admit I was tremendously excited about the technology in the XO. Over the last two years this enthusiasm waxed and waned. I first got to use an XO when Walter Bender shipped me a B-2 back in early 2007. I was tremendously excited but also afraid to mess with the little thing. It was far to precious to seriously tinker withk. We used it more to promote OLPC than to actually use as a computing or learning device.

From June to December 2007 I was almost 100% consumed with the problem of getting funding for Nepal’s OLPC pilots at Bishwamitra and Bashuki schools. It was only in January of this year that I really got to use the little device. At OLPC offices I disassembled and reassembled two XO’s. What fun! Probably the most fun I had had taking something apart since I tore apart an IBM compatible PC when I was 10. Taking the XO apart is a marvelous experience. You really see how amazingly well the hardware was designed.

Over the last two weeks I have been testing 130 XO’s and two school servers ahead of our upcoming pilots at Bashuki and Bishwamitra. At times it has been extremely frustrating but also extremely rewarding. The presence service is extremely cool is somewhat unstable. The jabber server is a super cool technology but a pain to install. More and more I appreciate the Sugar UI and its design features. I also appreciate the incredible amount of work that the Sugar team puts into making Sugar a very exciting user experience.

The social aspects of Sugar are what make the XO so fun and so compelling. You just don’t experience it with a few XO’s in one place. David Cavallo is right when he says that the key to OLPC is saturation and integrating it into the fabric of education. I experienced this second aspect very clearly when I was at the OLPC Learning Conference in January. There were 25 participants from a variety of backgrounds, primarily from American school districts. We all had brought our own laptops to the conference and continued to use them as our primary devices through out the conference. Using the XO just wasn’t as exciting as I had hoped. I contrast this with my experience at our 4 day teacher training program where the teachers used XO’s as their primary medium throughout the program. The excitement and enthusiasm were palpable. I abandoned my own Dell laptop halfway through the program to work full-time with an XO.

The work this week . . .

Today we got 40 XO’s connected to a generic wifi router, the Lantech WL54G BR, which roughly costs about $20 USD. All 40 were pinging the network gateway and none were disconnected. Then we tried to really saturate the networ. On 20 XO’s we started streaming a 78 MB .ogg video of Rob McQueen’s talk about Telepathy at Linux.conf.au. We were jubilant and amazed. Then we pushed harder. We got 25 XO’s streaming the video, then 30, and then 37. At 30 the video stopped streaming on a number of the XO’s but we were quite impressed.

This result also made us extremely happy because we had tested the Prolink WGR1004 which wouldn’t allow more than 15 clients to associate. It’s a frustrating process to procure equipment in Nepal because the local selection is quite limited.

Tomorrow we are going to add a second lantech to the office and see how well 70-80 XO’s fare in dense environment. We will also do our best to crash Jabber using sharing. It should be a lot of fun. It’s also great that we have two volunteers in our office helping us with QA, Prasoon Karmacharya and Ram Poudel.

I hadn’t expected to still be so deeply involved in stress testing the XO network so close to our pilot. I expected to be working on Moodle, the E-Library, an online English-Nepali dictionary, etc. Still, I will be working on this project for the next couple of years here in Nepal so there should be plenty of time for that ;).

My thoughts on OLPC in 2008

I really feel that the general momentum around OLPC has slowed down. To me, this is a good thing. Expectations regarding this project were so atmospheric that nothing short of the outbreak world peace could have met them. The core folks behind OLPC — both working for OLPC and in the community — are going to create some great stuff this year that will wow everyone. 2008 will be a quiet year in terms of publicity and a productive one in terms of work: the mesh will become stable, sugar will become more predictable, and we will see some rocking learning activities emerge. Deployment teams around the world will take a cool, sexy prototype device and find the practical, unsexy methods to make it meet the needs of kids and teachers in the developing world.

For us in Nepal, 2008 is the year of we hope to get the implementation right. We hope to create an implementation model that works and do a proper evaluation of this project to prove to the naysayers what we ourselves know to be true: XO’s + Constructionist Education can really transform how kids (and adults) learn according qualitative and quantitative measures. Our pilot is tiny compared to those in Peru, Uruguay, and Mexico but we believe that we are laying the groundwork for implementing this project across Nepal.

I’ll get off my soapbox now and get some dinner. Mmm, buffalo choila and chura.

The XO Charging Rack

Here below we see Ram; not only software developer extraordinaire, but also electrical engineer extraordinaire, who in his spare time is known to make and install small micro-hydro installations for rural villages in Nepal. For our pilot schools we needed XO loading stations that were low-cost, practical and cheap. So we set Ram to work.

We didn’t want to run power cables to each child’s desk. 1) There would be substantial power loss using regular AC power strips 2) kids would trip on them, esp. the second graders. 3) Most power strips in Nepal are of quite poor design and frequently cause sparks when you insert a power plug. 4) We feel that tethering kids to power strips would limit much of the ad-hoc collaboration that the XO inspires.

Ram Krishna Singh standing proud with his creation, the XO charging rack. It accommodates 25 XO’s. We will put a step in front of it so the second graders can reach the top shelf. The power rack will go in the back of the class. Kids will place the XO’s inside the rack in the morning and take them out as needed.

In the top part of this picture you can see the cutoff switch. We want to minimize the number of times the child has to plug in and unplug the XO power connector, thus minimizing the possibility of electrocution.

We need a more elegant way to tie down the cables so they won’t get tangled.

The XO goes in front first so the child doesn’t have to reach in to far to grasp the DC portion of the plug.

A large number of students at the pilot school don’t have electricity at home, but some do. Ideally we would like to have two chargers for each XO, one that stays at the school and one at home. This would be one less thing for the kids to carry around, we are especially concerned about the second graders. We don’t want them frequently plugging in and unplugging XO’s from various power outlets. Most power outlets in Nepal are of quite poor design and often emit sparks. We will have to build our power adapters and/or harrass OLPC to send us a lot more power adapters.

First Significant Technical Problem: Jumpy Cursors

It is hot in Lakuri Bhanjhyang, the site of Bashuki School, approximately 29 C every day. That’s 95 Fahrenheit for you Americans. AND it is very dry and extremely dusty. If you leave your XO alone for 20-30 minutes, it will have a fine layer of dust a top the keyboard when you return. These factors may be contributing to the first significant technical problem we are having in the pilot so far, the dreaded jumpy cursor. You know, that’s where the touchpad doesn’t follow your orders.

We are seeing the jumpy cursor on approximately 25% of the XO’s at Lakuri Bhanjhyang.

Rabi reports that the cursor seems to jump to either the upper-left hand side or to the middle. The kids find it very frustrating. The ‘four finger salute’ which typically works in our office isn’t working out at the school. Rabi says the problem clears for a while after he reboots the machines but not for very long. He has also had the kids clean their hands but the problem still occurs. Rabi has run the command ‘test mouse’ from the firmware and had interesting results. Apparently, the firmware shows that pressure is being applied after he has raised his finger. Hmm, interesting.

Bishwamitra is not manifesting the same problem but it is not nearly as dusty nor hot as Bashuki.

I have been sick in bed much of this week but now I am back in action. I will be spending much of the next 2-4 days trying to resolve these issues. I have gotten some good advice from Bernie Innocenti, Steve Holton, and Andres Salomon that I will have to read through carefully.

I have been playing w/ two XO’s from Bashuki that Rabi said showed persistent problems. Unfortunately, they are working perfectly fine in the office. I may have to steal some sand from a construction site tomorrow to try to replicate the environment at Bashuki.

A little background: We are running Build 703 w/ firmware Q2D14.

Notes from first few days at Bashuki and Bishwamitra

[Notes from first few days at Bashuki and Bishwamitra]
May 2nd, 2008 By: bryan

From an e-mail written by Rabi Karmacharya

Here are few observations and suggestions from the first few days at Bashuki and Bishwamitra:

Hardware:

1. Cursor has been a nuisance, especially in Bashuki. Bryan is working to resolve this. A combination of dirt and moisture (sweat and finger licking by kids) could be the problem. This will seriously compromise our activities since we have relied heavily on drag-and-drop action. Bryan/Sulo

2. Battery: No report on battery malfunction from the kids yet. There was a problem with one teacher’s (Manoj) battery whereby the battery indicator was not working (both light and on screen). Bryan

Sugar:

1. Frame: We have ask OLPC to stop the frame from popping up when the cursor is moved to the sides or corners. It is really annoying for the kids, especially when they are having cursor problems. Bryan/Sulo

2. Volume Indicator: It would be nice to have a volume indicator that shows up when kids press the volume keys so that they can see what level they are at. Bryan/Sulo

3. Sleep mode: Teachers often ask the children to fold the laptops in the middle of a lesson when they need their attention directed towards the teachers. When the kids open the laptops, and press the START button to resume the activity, the XO hangs from time to time, forcing them to reboot the machine. This wastes a lot of valuable class time. I was able to replicate it once at the school. Bryan/Sulo

4. Would be nice to have the volume level display when you change the volume. Not critical

E-Paati:

1. Make the selected Class and Subject more distinct so that users know where they are. Right now it is difficult to tell. OM

2. Make a numbering scheme on the main E-Paati page so that it is easy for the teachers to instruct which activity to open. We should do this in line with our future plan to categorize the activities of each class/subject into weekly bundles. OM

3. Instead of the small “Loading” notice, we should put something bigger with animation while the kids wait the activities to be loaded. OM

4. The volume of the sound clips have to be consistent. Right now one sound clip is louder than another. OM

5. The pronunciations have to be more un-American. OM

6. The spelling has to be consistently British (Color is spelled in the American way on the E-Paati main page) OM

7. There is a spelling error in geometry memory game. (Obtuse is spelled Abtuse) OM

8. The blue triangle cannot be dragged in the Triangle game. OM

9. Game Over is two words, not one. OM

10. Go Shopping: There should be an error if the user clicks the wrong button, and not just when the wrong number is entered. OM

11. Trash Can appears in few activities: Quick Multiplication, How Many Sheep. OM

Long Term:

1. We have to include some mechanism by which the teachers can check the HW that kids do on the E-Paati activities.

I have assigned the change/bugs to the individual in RED. You can change the assignment to the another person where appropriate. But this should to into our internal management system. Bryan/OM

--
Rabi

First Week in Classroom

We have just finished the second phase of the teacher’s preparation programme by the starting of this week.It was a onsite programme and we were prepared for making the lesson plans while implementing the E-paatis in the classroom.I was rather concerned to the time management while using the E-paatis during teaching,since in the very first day,it was quite difficult to finish the class in more than one hour and fifteen minutes ,which was planned for fourty-five minutes.

The students were quite excited. Thats why, the children were not listening towards teacher.In fact,after opening the E-paati,their one eye was looking the teacher but another one was still looking the screen.

But,by the second and third day, there was a drastic change in the students’ behaviour.We hadn’t thought about that.By the third day,students were able to open other activities which we didn’t taught them.

They are enjoying the class.

The first week seems to have gone well.Students are not satisfied with the fourty minute class,they want a double period.

A long way to go. Hope that this programme will convey a good message through the whole country.

Working on Internal Systems

I haven’t been nearly as active in the OLPC mailing lists discussions and software testing for the last weeks due to a 10-day illness and then some internal office systems stuff that I am still working on. About a day after the glorious start of the Bishwamitra and Bashuki schools, my lower lip started mysteriously swelling. It kept swelling and swelling despite my sweet coaxings and entreaties to shrink. It swelled so large that I couldn’t close my mouth and was extremely was painful. The infection also caused a nasty fever that kept me in bed. I was too tired to do any serious work, but not too tired to learn some super cool vim plugins! like MiniBufExplorer, python omnicomplete, and I finally learned to fully appreciate Visual Mode.

Once I got back to work, I had to attend to some internal systems issues that I had never attended to. After 7 months in business, we didn’t have a file server, print server, contact manager, shared calendar, nothing. So I have been pretty consumed w/ these matters in addition to working on some touchpad issues that are dogging the kids at Bashuki.

At heart I am an IT Manager/sysadmin and probably always will be. I really enjoy this kind of work and don’t really like being a leader, proposal writer, or schmoozing. I am slowly trying to work my way out of OLE Nepal leadership. I always intended for this organization to be entirely led by Nepalis. When I was still a member of OLPC Nepal, I was one of the leaders their and not entirely comfortable w/ that role. I don’t pretend to know what’s best for Nepal. I have always seen my role to enable talented Nepali leaders to reach their goals. In the case of OLE Nepal, those leaders are Rabi Karmacharya, Saurav Dev Bhatta, Mahabir Pun, and Rajeev Adhikari. And they are extraordinarily talented. When Rabi, myself, and Mahabir started OLE Nepal, I was involved in every single funding proposal, every strategy, and every big decision. The other day, Rabi, Saurav, and Rajeev held a long-term strategy session. I wasn’t involved at all and extremely happy not to be. Instead I created a Debian init script for Fedora-Commons, got the Redmine project management app, up and running, and learned how to use update-rc.d. I am infinitely more happy working on the latter type of problems than the former.

So sysadmin stuff:

Office Wiki

I have set up MoinMoin for our internal officewiki. The problem with Mediawiki is that it has no access controls. We need to document our hiring process but those not involved don’t need to see that information. I don’t want to make all internal the sysadmin documentation accessible to all staff. They don’t need to see what security settings I have on X server and probably don’t want to. MoinMoin does have access controls and it is pretty easy to backup.

Project Management:

I looked at Trac, installed it, and well . . . I don’t like it. At all. It was a pain to configure and pretty esoteric. I set up Redmine and it was an absolute breeze and offers a lot more functionality. I was bit wary because it is aRuby on Rails app and I have heard that Ruby on Rails has stability issues. I haven’t really stress tested it yet, so we shall see. I am using Redmine w/ mod_rails and apache. Mod_rails requires the pre-fork version of Apache 2.2 . I don’t really understand the difference between prefork and mpm but I do understand that the Apache documentation is consistently confusing.

Redmine is great. Each project gets its own wiki, forums, roadmap, gantt charts, and calendar. We aren’t using it w/ Subversion or git yet. We will see how that works.

I would like to use the OLPC Trac but it is reallly slow across our office Internet connection. We also intend to use redmine for our internal testing of apps. The folks doing the application testng will be fairly non-technical and I think they will have a quite a bit of trouble using Trac. Also OLPC’s Trac only have milestones for the Sugar releases. I can’t create milestones for E-Paati releases.

Also, we will use Redmine to manage sysadmin and office administration tasks. Examples of this are: buy me 3 adapters! My mouse doesn’t work! I need a ride to the pilot school on Monday together w/ the Secretary of Education, please arrange.

It is easy to lose track of this stuff even w/ a small office. But — the office is growing rapidly. We are hiring 5-6 more folks in the next couple months. That should put our total full-time staff up to 22 people. We also have a # of folks that want to volunteer on a regular basis, we have two interns right now. So all these people requires more structure! I am amazed that we have a lot of people compared to OLPC organization itself. Well, I can tell you we aren’t slacking. We’re here from 9 am - 7/8 pm. Rabi and I usually log 12-14 hour days, Om works for several hours before he even shows up to the office, I constantly harrass Ties to do something amazing w/ Squeak.

We have a lot of people because content development and implementation are extremely resource-intensive! We have 4 developers + 2 graphic designers + 1 curriculum designer working full-time on content development. We have 3 technical people working on systems administration + networking and will add two more sysadmin/network admins in the next two months. We will also hire a power engineer to work on sustainable power solutions for rural schools.

I digress, back to sysadmin stuff. I have set up zimbra for our shared calendar and shared contacts but I am wondering if we should just use a shared Google Calendar and Google Contacts if they exist. Zimbra is awesome but it requires its own server because it has specially customized version of Apache that won’t play well w/ other versions of Apache. So maybe it will be back to google calendar, which does have a plugin for redmine . . .

I still need to set up a Samba file and print server, document our internal office and school network, and source control for our E-Pustakalaya application, yadda yadda. But I am making progress

My next goal after Samba server will be to set up an LDAP server using EBox. It promises to be a user friendly tool for LDAP management. And I really need to learn LDAP but it needs to be easy for others in the office to manage, i.e. someone in addition to me like Sulochan or Dev.

A few more thoughts in this ramble. I am extremely impressed w/ Redmine and probably w/ Ruby on Rails in general. Redmine is less than a year old and it already has a ton more functionality and ease of use than Trac. I have looked at the code and it appears that redmine is able to easily reuse code from other rails apps rather than creating it from scratch while most of the code for Trac seems to have been created for Trac. Perhaps Django provides this same advantage.

I am working on the touchpad issue but sidetracked for this week so I could finally get some internal sysadmin stuff done, otherwise it may never get . Thanks to Mstone, sj, tomeu and others for looking at this problem.

Activity Descriptions

I have just about finished writing the activity descriptions. The descriptions are meant specially for the teachers who would be using the Epaati activities in their classroom. You might wonder what these are. Well, each Epaati activity has a description of its own. It mentions the aim and objective of the activity, which part of the curriculum it is related to, which topic from which book it can be integrated with, supplementary materials, related website, related part of the Epustakalaya etc. etc.(although we are not yet applying some of them). Most time consuming part is the instructions on how the Epaati activity is done and a suggested pre-activity and post-activity lessons.

A detailed instruction is written for each activity. Besides, details of a non-Epaati activity are also given. This activity is suggested to be done before any Epaati activity is introduced so that the teacher does not feel lost on what background children should already have before they start the Epaati activity. Another non-Epaati activity is suggested to be done after the Epaati activity. This is done to reinforce the topic covered by the Epaati activity. It did take a long time writing all these descriptions but they are not yet ready to be delivered to the concerned teachers as they need to be translated in Nepali. Bipul Gautam has already started the translation and we hope to finish it soon.

It’s Going to Be a Great Summer

The office is getting crowded, really crowded. On Monday, we will have a total 21 people in the office full-time. That doesn’t count volunteers that come in and out of the office. What do we do w/ 21 whole people?

Upaya, who handles all things administration including finance (he’s the guy who keeps this place functioning )

Rabi our exec director

Dev, our network engineer

Sulochan, sysadmin and E-Pustakalaya (E-Library) developer

Me

Mahabir Pun, In charge of network infrastructure and community relations.

Then there is Christine, Punyasheel, and Bipul who help out w/ activity design and teacher training.

We still need to hire a full-time network engineer and a full-time power engineer. These guys will be focused on building the network and power systems we will need to expand olpc throughout Nepal.

Amazing that w/ all these folks we are all still working our butts and I often feel like I am way behind. Implementation is a big job.

Prasoon Karmacharya will be here for the next month full-time as a volunteer to help w/ testing and all things IT. Deepak Shrestha of Subisu has been incredibly helpful w/ all things networking.

Doug Mayeux joined us this summer as our summer intern. I am really impressed w/ him. Very energetic and intelligent. He will be doing several things. Primarily though, relaying our particular needs for content and activities to the larger olpc community and getting his hands on all documentation and materials related to using Etoys in the classroom. We want to use the Etoys environment in a granular fashion to introduce individual concepts from math and science. To do this we need all the lesson plans we can get. For example, you can use Etoys to model gravity but what if you have no idea what gravity is? We need a lesson plan that introduces the high level concept and then guides the kids into working w/ it themselves using Etoys.

David Van Assche will joing us some time in July for a period of at least five months. He’s a Moodle expert and will help us build a custom Moodle setup for Nepal. We will happily relay all work and lessons we gather to the larger olpc community.

Last but not least, Bernie Innocenti will be joining us here in Kathmandu for the summer. I am extraordinarily excited about this. We really can use his help to make our learning activities collaborative and his expertise to better understand Sugar. We also want him to interact w/ Nepali kids and teachers so that he can make Sugar better meet their needs.

that’s all for now, I have to go back to my day (writing) job for olpcnews.com

Load/Stress testing web server

Stress testing a web/application server is never an easy task. Having never done any intensive server testing before I got into load testing our e-library server with some obvious but important questions in my mind. What kind of tools are available? What kind of tests can i perform? Will I be able to make sense of the data from the result? and Will it actually apply to real scenario–will my server behave exactly the way it would during the test?

These are simple questions for an experienced administrator, but for someone just getting into performing such test, it seemed a fairly daunting task. So lets start with the things we want to test and the server side applications to test.

The e-library is an online library system that run on Ubuntu 7.10 desktop (I am planning to change this to Ubuntu 8.04 server–mainly because I don’t want the desktop applications to take up valuable
memory away from the server applications). The e-library uses fedora commons as its library engine, and has Fez as its GUI. Fedora commons also uses Tomcat a Java application that talks to apache, but can also act a server on its own. More on “e-pustakalaya” or e-library later.

So the things that we really want to test are.

1. Avaliablity of the web-server: One of the main thing (among others) that we want to make sure that apache does or does not– depending on the way you look at it– is the way it handles max client and the keeepalive time for clients connected. It is a good practice to set the max clients to a high number ( = total memeory/5Mb), and keep alive time to as low as possible(=2). Take a look at this virtualthread blogpost for a good overview of how these parameters effects your server.

2. Resource Utilization: One thing i have noticed is that my server had a huge overhead on CPU and my memory was down to 12Mb free, which caused the server to crash. This happened when i simulated a 100 user connection making one new connection every 10 sec….fetching a 1.4 Mb pdf file. So hardware really matters, and it is really a good idea to optimize apache and any application service for your hardware specs. Reading memory usage and CPU load is a tricky thing. I found out that the memory information that say $top gives for a process is not actually correct view of what that process is doing. Similarly, making sense of load average and CPU% requires a little more knowledge of the Linux system.Load average = Is the CPU load. It gives information on the number of processes waiting to run + the number of processes executing. It is not about CPU utilization but the total queue length.

3.Response time test, Throughput test and Error rate test: These are probably the main areas to focus while performing a load test. To do these one should look into one or all of the following.

a)User-based testing: Where you get many users to use your server and monitor the performance.
b)Standard benchmarking: I used Apache benchmarking tool for this. Apache benchmark can give you an idea of how many request per second your apache server can handle.

Similarly,
$ab -t 60 -c 10 http://www.yourdomain.com/index.html
Will have 10 concurrent users for 60 secs with as many hits as possible, by default when you
don’t use the -n option, ab sets to default 50,000.

Apache JMeter

From Apache website:
“Apache JMeter may be used to test performance both on static and dynamic resources (files, Servlets, Perl scripts, Java Objects, Data Bases and Queries, FTP Servers and more). It can be used to simulate a heavy load on a server, network or object to test its strength or to analyze overall performance under different load types. You can use it to make a graphical analysis of performance or to test your server/script/object behavior under heavy concurrent load.”

So lets take a look at some of the thing we can do with JMeter. After the installation of JMeter, run it under a Linux system with /path to your jmeter/bin/ ./jmeter
A JMeter window will open, which looks something like this:

Use the Options->Expand All option to see your full tree.
Now set up a test scenario (refer to JMeter user page). After you run the test you will see (if you use the output graph result as one of the listener) something like this (Two pictures for two different run with same number of users and loop).

So when I am doing stress test, I am mostly paying attention to the throughput and average output results for now. Needless to say you want your server to handle as many request per minute with less error rate (you can check this by adding a summary report to your listener)and high KB/sec throughput, but you also want to see consistency. If you look the two runs it shows a similar result. Thats exactly what we want to see. We want to see a consistent pattern for load, memory and other things. Any erratic behavior should indicate a poor performing server. I would say its a good idea to check both load with $top or $uptime and memory and cpu usage while performing these tests. This will give you an idea about your server’s threshold before it overloads. JMeter is pretty cool because you can run different kinds of test on your server. Once again check out the JMeter page for more information.

Other tools for performance and functional testing can be found at opensourcetesting.

For Load Balancing:
1. mod_backhand is used to redirect requests from one server to another. Is used for cluster load balancing.
2. Load balancing with cluster apache setup with Round Robin DNS.

Say you setup two machines with ip 192.168.1.1 and 192.168.1.2.
Now on the DNS server have two entries for your server:
www.yourserver.com A 192.168.1.1
www.yourserver.com A 192.168.1.2
The DNS will distribute incomming requests between these two.

Any corrections to these or new ideas and methods for server load/stress testing is welcome.