Four Villages One Goal: ICT4D

I just came back from a six day trip to four villages in Kaski district. These villages are in the mountainous region outside Pokhara. My mission was to add educational resources like school wikipedia, e-books, and the learning activities, among other things, to the schools in these villages, and to show students and teachers how to use and utilize them to enhance learning. In the process I leaned a lot about what information technology means for these villages, and how it is being used for education and development.


A little information about these villages and schools:

Village name: Chandrakotnetworkmap.jpg
School : Sangam Secondary school
Number of students (approx): 300
Number of teachers: 12
Number of computers: 5

Village Name: Magh Jaun
School : Tanchok Primary School
Number of students (approx): 150
Number of teachers: 6
Number of computers: 2

Village Name: Bhichuk
School: Bhichuk Primary School
Number of students (approx): 100village.JPG
Number of computers: 2

Village Name: Tolka
School : Himalaya Secondary School
Number of students (approx): 400
Number of teachers: 12
Number of computers: 2

All four schools have internet access, and are connected to each other and to a larger network of many other villages through the efforts of the Nepal Wireless project. So what does it really mean for these schools to have computers, and internet? “It means that our kids wont be like us,” says Heetman, a teacher at Himalayan Secondary School in Tolka. “I had only heard about computers until we got one a while back.” Its not about a bigger change. For the villagers it is more about being able to do smaller thing, like reading todays news online, and being able to type a letter. However, we should not expect any positive outcome in education in these schools because of these computers. As a matter of fact, most of the students i talked to complained that, they do not get to use the computers too often. Why? I asked the people in-charge. “We do not have enough people to who know computers to conduct classes,” they said.

What is striking is that the villagers agree that these computers, and the VoIP service will gear them towards development. The value of the technology is understood, at least in parts, that they believe that it is concomitant to development. “We want the information and communication technology to make a positive impact on the village.” But is it? My focus were school kids, the next generation of villagers who would actually be able to make any impact in the village, and sadly young generation here are still far behind when it comes to using technology.
Its not all gloomy though. It is already amazing that these villages have internet and VoIP services. It is only a matter of time before they can really start using it for development. All four villages do have the right idea; use information and communication technology for development.

We’re Looking for a Super SysAdmin

The Problem

Over the course of 2008, OLE Nepal will implement OLPC at a number of schools in Nepal. Some important technical aspects of deployment are the updating the XO’s, back up of student data, maintaining mesh network, and web caching. Much work remains to be done in the general area of the School Server. The School Server is currently under active development and will likely be so throughout 2008. OLPC recently made a great decision in hiring Martin Langhoff to serve as the School Server Architect. Here in Nepal, we need a rockin’ sysadmin that can work with our Kathmandu-based team and with OLPC to implement a school server solution that meets the needs of kids and teachers in Nepal.

We need this person to can commit 5 months full-time here in Nepal. You need to be local because working remotely won’t expose you to the real requirements of schools in Nepal. This is a volunteer position. We operate on a shoestring and volunteers already do a good portion of our organization’s work.

Your Skills

  • You dream in Bash
  • IPv4, IPv6, Wireless Mesh networking? No problem! You know linux networking inside and out
  • Extensive knowledge of BIND, DHCPD, Squid, Apache, security, etc.
  • Experience working with Moodle would be most excellent
  • Adept with Python scripting or could learn it quickly. OLPC has standardized on Python for scripting
  • You look to implement a practical solution that less skilled sysadmins can easily maintain over a cooler but more complicated solution.
  • You play well with others. You don’t alienate collaborators with rude e-mails that assert your technical superiority (even though you are)
  • Your primary concern is meeting the educational needs of kids and teachers. Your rate technical awesomeness a distant second to meeting those critical needs.

What you Would Do

  • Work with our deployment team to set up and maintain School Servers, customized XO builds, and the Active Antenna
  • Collaborate closely with Martin Langhoff and John Watlington of OLPC to enhance the mainline School Server distribution, move our local additions into the main distribution, and communicate Nepal’s requirements to OLPC
  • Over the course of your stay, work to make the School Server as stable and easy to maintain as possible
  • Document our configurations for our own reference and the use of other OLPC deployments

Your immediate colleagues would be

Dev “Where’s the Party Yaar?” Mohanty, in charge of connecting the schools to the Internet

Sulochan Acharya (me), general troubleshooting of all technical problems at the schools

Bryan Berry, leads the deployment team, does planning, budgeting, and basic system administration among other duties

Who Should Not Apply

If you are looking for a vacation in an exotic locale, go to Thailand. We work hard, very hard. We have a lot of fun too.

You are only interested in OLPC’s technology and have little interest in its educational goals. As Nicholas Negroponte frequently repeats, this is an education project not a laptop project. If you are not genuinely interested in meeting the needs of kids and teachers, please do not apply. This is worth repeating. If you are not genuinely interested in meeting the needs of kids and teachers, please do not apply.

You are not able to commit to a 5-month stay in Nepal.

What we can offer you

A fantastic opportunity to work on a really important project. A chance to radically enhance the quality of education in Nepal. A contribution to a larger global initiative. I could go on forever . . .

Now, we would love to pay you but as mentioned earlier our operation runs on a financial shoestring. This is a volunteer position. We can put you up in the OLE Nepal house together with Ties, Dev, and Dev’s lovely lady friend Manisha. Living costs in Nepal are __quite__ low. You can consult our current volunteers Ties, Dev, and Bryan about their expenses.

The Outcome

You walk away from Nepal having implemented a turn-key school server solution that helps kids and teachers collaborate, discover important ideas, and create things that matter to them. Your work will be replicated across OLPC deployments.

If you are interested please send an e-mail to info at olenepal dot org

School Server Network Structure With Squid


Here is the network structure for the school server with proxy setup.

# vi /etc/sysctl.conf

net.ipv4.ip_forward = 1
service network restart

Then ip-forwarding through ip-tables

# iptables –table nat –append POSTROUTING –out-interface eth0 -j MASQUERADE
# iptables –append FORWARD –in-interface eth2 -j ACCEPT


install and cofigure squid


http_port 3128 transparent
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
acl apache rep_header Server ^Apache
access_log /var/log/squid/access.log squid
hosts_file /etc/hosts
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern . 0 20% 4320
acl all src
acl manager proto cache_object
acl localhost src
acl to_localhost dst
acl SSL_ports port 443 563 # https, snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
# Add more acl rules here if we want more
acl purge method PURGE
http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
acl lan src
http_access allow localhost
http_access allow lan
http_access deny all
http_reply_access allow all
icp_access allow all
visible_hostname sugaroffice.ole
always_direct allow all
coredump_dir /var/spool/squid

Direct port 80 requests to squid listen port (On the machine runnning the cache server)

iptables -t nat -A PREROUTING -i eth2 -p tcp –dport 80 -j DNAT –to
iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 80 -j REDIRECT –to-port 3128

Comments , corrections  and  ideas are  welcome.

Get your car to squeak: Second OLPC Game Jam

Today Ace Institute of Management hosted the second OLPC game jam organized by OLE Nepal. Students and enthusiasts from various schools got a chance to learn the basics of Suqeak to create simple applications. Participants were shown how to make a simple car game. Each participants had to get a car moving, with a steering wheel


controlling its motion. A simple script would then give it a more authentic game feel by making the car move faster on the track and decelerate when it strayed out of the track.

Members from OLPC and OLPC Nepal were present at the the event.

Among other things students were encouraged to communicate and collaborate with each other through the Squeak Community Forum. They were also encouraged to make their own activities and post it on the forum. The development team at OLE Nepal will help the forum participants by giving suggestions and by guiding them through problems that they might face using squeak.

ole-game-jam-2.JPG ole-game-jam-3.JPG

More pictures and information to follow in the next post.

Moodle on school server

I am putting a few moodle screenshots, that shows the idea of separate grouping. Lets say there are three users: Admin/teacher, user1 and user2 (students in grade 2 and grade 6).

The teacher will see this on his/her moodle screen:


This is what user 1 who belongs to group class 2 will see:


And this is what user 2 who belongs to group class 6 will see:


When you click on the course class 2 or class 6 it will take you to the modules available within that course. So its not acutally a course design, but an easy way to mange resources for kids who might have very basic or no knowledge of using a tool like moodle.


This grouping is easy to do, and can be used to manage different age group of students. Each grade level can have a separate group and work with in that group. It becomes easier for teachers and administrator to manage resources accordingly. It will be great if we can get a Nepali language package, so that things can be displayed in Nepali. I don’t know if English as a medium of communication will discourage kids to use these features.

So, the idea is to create some sort of auto-login, that will take say user1 (when he tries to access http://schoolserver/moodle) to the page shown above for group class 2 . He need not remember his login, or know how to get to his course pages. If we can somehow tie this auth feature to the XO, that will be even better.

Comments, and ideas are welcome.



Interaction program with teachers

On January 14, 2008, OLE Nepal organized a day-long interaction program with teachers at the National Center for Education Development (NCED), the government body responsible for training public school teachers all over the country. The program was organized in coordination with the Department of Education. The goal of the program was to inform teachers about the development of digital educational material and its implementation through the OLPC program, as well as to gather teachers’ perspective of the OLPC program and the use of digital content to enhance the teaching-learning process. After a short presentation by Rabi Karmacharya, and Dr. Saurav Dev Bhatta about the objectives of the projects, the remaining workshop was carried out on an interactive manner.

The program was attended by 25 public school teachers from 12 public schools from Kathmandu, Lalitpur, Bhanktapur, Kavre, and Surkhet. Deputy Director from NCED Mr. Gorakh Bahadur Singh gave the keynote speech. Four subject specialists from Curriculum Development Center (CDC) were also present to give their views on the development of curriculum based digital content. Nepal Teacher’s Union was represented by one of its central members.

The teachers formed smaller discussion groups to discuss the challenges in implementing the OLPC project in the classroom level. Each group then presented the their views on how to effectively use the laptops in daily teaching, and the types of training and support the teachers would need before and during the project. about OLE Nepal intends to use the suggestions gathered in this interaction program to prepare a teacher training package in cooperation with the NCED

Speech to the OLPC Learning Club of DC — with video

Just last week we had Bert Freudenberg in Kathmandu and last night I met w/ some more Deutsch-speakers. Who would think the German-speaking countries and Nepal would be some of the first movers on OLPC?I especially want to thank Wayan Vota of OLPCNews for organizing the meetup and putting me in touch with Christoph and Aaron.

Here is the text of the speech for anyone who is interested in reading it.


I am really happy to see so many people here are excited about the One Laptop Per Child Project. In fact, at this point it is fair to say that OLPC has graduated from being a “Project” to an international “Movement.”


For just a few minutes, please humor me and play along. Imagine that you have decided that OLPC is an incredibly exciting and important initiative, so important that you actually move to an impoverished country to implement it. Or, you might move to an impoverished region of a developed country.

Once there, you form an OLPC Learning Group with some locals that are just as excited about OLPC as you are. This group successfully lobbies the government to conduct a pilot of OLPC. Your team actually gets some laptops and you test them with kids. Things are going great. You are living the OLPC fantasy. Cheap laptops, mesh networks, and constructionist education are going to save the world. Then you slam into harsh reality, Specifically you run into the three difficult issues.

# 1: There is hardly any content for the XO. I used to think that giving a child a laptop would turn her instantly into a constructing, expressing, analyzing superstar. Well, that has not been the case from my experiences so far. Kids like working w/ the laptop but kids often get bored after about 90 minutes w/ the laptop, some after 10. There is a real shortage of basic activities for learning basic numeracy and language skills.

# 2: Teachers don’t have time for the XO. Teachers everywhere are busy, whether in Kathmandu, Washington D.C., or Vienna. Keeping up with the national curriculum leaves very little time for special projects. Further, parents and school administrators are loathe to spend time on anything that doesn’t help their kids do well on national examinations. As it stands, all the existing activities on the XO are outside of the national curriculum and thus fall outside regular schoolwork and grade-level examinations.

# 3: You have to prove it works! You absolutely, positively have to quantitatively prove to policy makers that OLPC improves the overall quality of education. There is no getting around this. You can convince politicians to approve a pilot but you will not convince policymakers and the general public to make integrate OLPC into the larger education system until you can show that OLPC makes a significant improvement in kids’ educations.

I have just walked you through what has essentially been my experience working on OLPC in Nepal over the last eighteen months. In the little bit of time I have I will tell you how we are dealing with these three issues in Nepal.Before I do that, let me tell you a little bit about myself and the Open Learning Exchange Nepal. I was a career member of the US Foreign Service for 5 years, serving in the Middle East and China, before quitting this last September to work full-time on OLPC. I helped start the OLPC movement in Nepal when I arrived in Nepal in September 2006 and I co-founded the Nepali NGO Open Learning Exchange Nepal. Open Learning Exchange Nepal is working with the government of Nepal to implement the OLPC pilot there. I would love to talk later w/ anyone who is interested in learning more about our pilot strategy and implementation plan.

Enough about me, let’s get back to those three killer problems.

#1 : There isn’t enough content

#2 : Teachers aren’t going to use XO’s if the laptops don’t help them do their existing work better.

#3 : We have to prove that laptops actually improve learning.

Here is how we are trying to create a lot of high-quality content, quickly. We are using the tool Squeak, the same platform that EToys uses. With Squeak, we can develop a learning activity within a few days and literally modify a learning activity on the fly without having to recompile. Additionally, EToys is cross platform. It is absolutely essential that people who don’t have XO’s can develop and test our activities.

We call our methodology “Educator-Driven Development” (Blog post to come on this subject) because we have two seasoned educators on our team that drive the development process. They sketch out learning activities, critique and revise learning activities created by others, and analyze how kids and teachers react to our learning activities. The team develops learning activities in several day long to week-long iterations. We test the activities with kids on weekly basis. Our educators know both Nepal’s national curriculum and more importantly how kids learn. By and large, programmers don’t know how kids learn. Great Teachers know how kids learn. We really see in this how programmers consistently overestimate the difficulty of teaching advanced skills and underestimate the difficulty of teaching basic skills.

Because Squeak is a graphical drag-and-drop environment we can develop learning activities quickly and non-programmers such as educators and graphic designers can manipulate the elements within a learning activity. There is only one tool besides Squeak that offers this functionality, Adobe’s flexbuilder. We are using Squeak because we feel it is inherently more powerful than Flex.

We have avoided developing learning activities using PyGTK because PyGTK applications are not particularly portable and Python code is just not “discoverable” like the graphical scripting environment in EToys or Flex. I do not foresee non-programmers hacking Python code written by others. I can and have seen non-programmers modifying fairly sophisticated EToys, such as the ones we have developed in Nepal.

Alright, on to problem #2: Teachers are busy. They are not going to use the XO unless it helps them do their jobs as specified by the existing curriculum. To manage this, we are aligning all of our learning activities with the national curriculum and for the first year we are focusing on the two subjects that Nepali students struggle the most with: Mathematics and English.

Not to be forgotten, we have to train teachers how to integrate laptops into education. This training has three dimensions:

1. How to use computers in general

2. Learn the principles behind child-centered/constructionist/experiential learning

3. How to use computers for child-centered learning.

Now to PolicyMakers: We have to show them some statistical improvement in the quality of education. This comes right back to content. By focussing on the subjects that students have the most difficulty with, we think we can show significant improvement within a short period of time.

Now I can talk almost indefinitely about the various aspects of OLPC and what we are doing Nepal. I will take your questions now and be happy to speak with you individually. Thanks for your time and thanks to Wayan Vota of OLPCNews for organizing this event.