Bossa Nova in Banaras

In my previous post, I had written about unencumbered codecs that ship on the OLPC XO, versus the popular demand for video in MP4 container (usually H.264 video). This post has a strange twist with another container: WebM.

WebM is a container put forth by Google. They also proceeded to embed the codec support within Chromium/Chrome. Firefox supports it natively as well. So, videos in WebM will play in Chromium/Chrome and Firefox without a plug-in.

When I travel, I download my favorite tunes from YouTube by using the “FlashGot” plugin. I prefer to download these in WebM (the irony!). Perhaps I am violating some “Terms of Service” somewhere, but that’s a rant for another day.

After my Bhagmalpur visit in Jan 2015, I headed back to Hyderabad. I took a train from Shahganj to Varanasi (aka Banaras) and then after a short stop, I was scheduled to take a flight out of the Varanasi airport in Babatpur (rural Banaras). As fate would have it, or rather as Indigo airlines would have it, their pilot wasn’t experienced enough to land the aircraft in the fog, and so, we had no return aircraft. I was stranded at Varanasi airport with no way to take another flight. Long story short, I ended up spending the night at the airport (usually a No No, but we had special permission!) along with two other travelers. They turned out to be visitors from Brazil and Italy. We had a great conversation that evening and the next day, hanging out at a small airport, eating stale cheese sandwiches. I got reminded of the Langoliers!

Waiting for the Langoliers at Varanasi airport!

Waiting for the Langoliers at Varanasi airport!

Towards the afternoon, I recalled that I had a copy of some “Bossa Nova” tunes downloaded in WebM format. What luck! Here were two people who spoke [Brazilian] Portuguese, stranded in the thick of rural India, and I had “Desafinado” and “Girl from Ipanema” on my laptop! We sat down and listened to a somewhat strange rendition of “Desafinado” by

1) Nova Music LA and

2)  an interesting version of Girl (actually Boy) from Ipanema by Dionne Warwick and Sacha Distel

(with appropriate apologies to Vinícius de Moraes, Antônio Carlos Jobim and João Gilberto).

Such great coincidence, or perhaps I’m just cool like that :-) Shortly after that, we thankfully got onto our respective flights and headed our different ways. After keeping in touch with my new friends, it turns out they are biodiversity researchers. I hope they’ll come visit us in California to see the Redwoods for themselves! I hope the Langoliers will enjoy the Bossa Nova when they get to the Varanasi airport ;-)

 

 

Desafinado on the OLPC XO-4 in HTML5

Desafinado on the OLPC XO-4 playing natively on YouTube in HTML5

Leave a comment

Filed under general, music

To Ogg or not to Ogg, that is the question

In this recent trip to Bhagmalpur, Anish Mangal and I discovered something interesting. We’ve strived hard to keep the content available through unencumbered formats such as Ogg Vorbis for audio and Ogg Theora for video. Unsurprisingly, the OLPC XO laptop supports these out of the box, but will not run MPEG 4 videos.

Some kids were upset. How would they watch Shah Rukh Khan on their XOs? These kids go to a repair shop nearby and get videos copied over to a USB stick for a small sum of money. However, the videos are in MP4, and they don’t play on the XO.

Yet, we found a Shah Rukh Khan song number on a XO. How did that happen? Did they install the MP4 codec on the laptop? Some conversations later, we found out. They first figured out that the TED videos that do play on the XO are in OGV format. Next, they asked the guy at the shop to convert the Shah Rukh Khan MP4 to OGV. That’s it. Simple as a samosa. Now Shah Rukh Khan lives in OGV! Richard M. Stallman and Shah Rukh Khan are happy together in some universe :-)

SRK in OGV

SRK in OGV

Leave a comment

Filed under general

“Whatever we don’t know, we learn by ourselves”

Here’s an interview with the kids in the village talking about their experiences of using the XO laptops and the XSCE server.

P.S. Please excuse my horrendous voice and pitiable interviewing skills :-)

Leave a comment

by | November 23, 2014 · 11:23 am

Mission accomplished?

When I teach IT strategy, one of the first things I emphasize on, is that the mission is a more abstract, long term concept, and anything that changes the mission with changes to the market, competitors, collaborators, and other forces is probably not the mission to begin with. The mission is supposed to be like a lighthouse, guiding the ship through troubled waters and fog. Imagine your lighthouse changing coordinates every time the seas got rough! Your mission needs to be stable, so that you can hope to achieve it! If your “mission” changes that often, it ain’t mission; it’s just operational fidgeting. You’d be surprised how often organizations have trouble getting the operational mixed up with the strategic. Don’t believe me? Check out what Prof. Michael Porter has to say!

I use a simple tool in my class to describe driving towards a strategic goal, and how one can get derailed. The Mission and Core Competencies (MCC) matrix was published in the mid-nineties. It’s a comparison between the mission and core competencies of an organization. For simplicity’s sake, the author has divided the “mission” and “core competencies” scales into poor and good. This results in a 2×2 matrix, giving us four possible places we can be. We should be in a drive position, where the fit with both mission and core competencies is good. However, that’s not always the case. The organization can be in a drain, dilution, or distraction quadrant. While MCC was created as a tool for strategic management in organizations, it’s also a good approach for making decisions about everyday situations.

Mission and Core Competencies Matrix

Mission and Core Competencies Matrix

For instance, if the project at hand is a good fit with the mission, but we lack the competencies to get the job done, it becomes a dilution. In such a case, we usually hire new talent to improve competencies (long-term), or we outsource to an external agency. Working with open source software gives outsourcing a whole new meaning. Think about how much of the work at OLPC is “outsourced” (in a sense) to Sugarlabs, where volunteers build, test, debug and produce software for all the XO laptops worldwide. It’s a fascinating mechanism, but more on that some other time.

Of course, nobody wants to be in the drain quadrant. It’s a whole lot of fiddling and fidgeting, usually fuelled by hubris and/or groupthink. Once again, open source plays interesting angles here. Because open source encourages tinkering, (scratch an itch), getting focus can be hard, and hobbyist tinkering can do more harm than good, especially for getting the project out of the drain box. The early stages of XSCE comes to mind, when I think of this quadrant. Things have gotten much better, but we aren’t drive‘ing yet.

If the competencies are there, but it does not fulfil the mission, many organizations will take on the project to earn revenue (with a promise/commitment of doing so short term, until things get better), and then they slide down to modifying their mission to make it all fit. The dreaded distraction quadrant! This works short-term, but the trouble with this approach is that you end up solving the wrong problem. Lowering the bar (or raising it, if you are into limbo) makes it easier to “succeed”, but you may end up cheering the wrong kind of success.

Perhaps it’s simpler to think of it as a tale my grandmother used to tell us (aka streetlight effect). In short:

Once upon a time, a man got home late at night, and lost his keys while trying to open the door. It was quite dark there. So, he went searching for the keys by the lamp post. When asked why, he said “I know I lost my keys by the door, but the light is better here.”

For us, in the Bhagmalpur project, the mission is for the children to learn. The ways are via critical thinking and problem-solving, hence the focus on Sugar.  The computers double up as information delivery channels, hence our focus on offline servers and Internet access. That’s a plus, but it’s more of a consequence. If the critical thinking and problem solving parts go well, the community will be better at using the newly-acquired information to make better, informed decisions. Thus far, Sugar and XO laptops have been the most viable for us. Therefore, that’s the way forward. We are not really grounded/concerned directly about cheap tablets or Android, or next newfangled thingamajig, or even about “what Santa may bring for Christmas”. What we are concerned with, is that the upcoming generation learn to solve their problems locally and thrive.

Searching for these keys in the dark is going to be very difficult, but unless we get the correct set of keys, we can’t really open the door!

Onward and upward into 2014.

49

2 Comments

Filed under children, education, general, outreach, software

Jugaad. The Indian way.

Jugaad (जुगाड़) is the Hindi word for figuring things out. It’s been the Indian way for a long time now. Lack of resources push people to figure things out. I remember, when I was in high school, I used to ride three different buses for over two hours, so I could go to an electronics repair shop and get my hands on a broken motor.  All for the love of science experiments, of course, unsanctioned by my parents! Now, I live a short walk from Radio Shack, but it’s not the same. Hack, make, fix. It’s all jugaad.

I just got off the phone with folks in Bhagmalpur, and they were all beaming. The kids had figured out something. While visiting Bhagmalpur in January, I had copied a whole bunch of music for them. Some of these were in MP3 format. I know the XO is not geared to play MP3 out of the box, but I had little time, and I figured they’d skip it and move on to the Ogg ones. Guess what? They sure did play the Ogg files, but for the MP3 ones, they got a microSD card reader, copied the files onto the microSD card, moved the microSD card to someone’s mobile phone, and got to play it there! Did I teach them about copying files? No. Did I show them how to copy files from the Journal to an external card? No. They figured it out on their own!

Next, they’ve gotten onto Facebook, but the XO-1 is slow to load, and Facebook can make the network connection slow. They spotted on some visitor’s mobile phone that if you tack on a “m.” in front of facebook.com it loads faster. Now, everyone is browsing Facebook using the m.facebook.com address!

Give the kids an inch, and they’ll take a mile. I hope they go far! Welcome to the new jugaad. Same as the old jugaad, only better :-)

m dot

3 Comments

Filed under children, music, network, software

Hello world! from Bhagmalpur… part-2

Following on from the first visit to Bhagmalpur, a second round of software development, bugfixes and finally deployment took place in the ensuing three weeks or so. There were some lessons we had learned watching the server in action:

  • Power is a huge issue. A server needs to come across as a reliable ‘always-on’ kind of appliance, and the situation in the village was not helping on this. While there are efforts to install solar panels to provide uninterrupted power, I took a UPS containing two 7.2 AH batteries, enough to supply continuous power for 12-14 hrs on average.
  • Since the server (xo-1.75 laptop) was not installed in a readily accessible place, as would normally be the case, it was important it would turn itself on as soon as AC power was supplied. Thanks to Richard Smith for helping get around this.
  • The server shouldn’t go into suspend when the laptop’s lid is closed. A simple setting change sufficed.
  • If for any reason, some of the services being hosted by the server go down, they should be brought back up automatically. For this we experimented with a tool called monit, which proved itself to be quite useful. Monit can be smartly configured to restart many types of services.
  • The service that converts the collected statistical data into usable information needs to run on the server itself, so we don’t have to transfer large amounts of data to do a proper analysis.
  • A reliable method of updating and installing new server software. Since doing a vanilla install while present in the village was a cumbersome task, we had to come up with a mechanism to install all these updates/fixes in a robust, fast and repeatable manner. We used a tool called ansible to carry this out. (Hint: you will hear a lot more about ansible in future XSCE releases).

This slideshow requires JavaScript.

We also installed power backup to a second ubiquity picostation working in repeater mode to increase the available server uptime. The picostation consumes about 5W, so a single 7.2AH battery provides decent backup. In the evening while we were testing the range of both the AP’s, unknown to us, a bunch of kids gathered on the rooftop of Dr. Verma’s house, and started collaborating through various sugar activities and the internet.

Earlier during the day, some kids brought in a broken screen, and asked me to replace it. However, being the constructionist project that OLPC is (and the lazy person that I am), I told them to figure it out on their own. One of the kids already knew how to fix the screen, so he taught the other kid all by himself to remove the battery, unscrew the relevant parts, gently remove the display and it’s cables, plug in the new one, screw everything back in and voila! Instant joy. Just for the fun of it, a few more kids got into this hardware debugging exercise.

One byproduct of constructivism, which is often ignored is the inculcation of qualities like grit, determination and confidence, which Paul Tough has explored at some length. Having been to the village 3 weeks ago, and a year ago, I could see the change in the way the kids went about themselves and around the laptops. We will only be able to see the true effect of such changes in learning methods a few years down the line, however, we hope to carry out research analyzing the data we collect. (and discussed at length in a soon-to-be-published blog post :-)).

At night, I took a few moments to pause and reflect on a job well done, and the part everyone played to perfection. Sameer, with an accurate assessment of what was needed, and his expert insights; Santi, Nitika for handling the technology side of things, the XSCE community for providing us with a stable base, Upendra and Tripti-ji without whose everyday effort, the deployment wouldn’t even exist, the parents, who encourage their little ones to learn “the computer” even if they don’t themselves understand it’s implications and finally; the never-ending passion and curiosity of the children of Bhagmalpur. To me, the true power of democratized, community driven efforts made itself as conspicuous as the brilliant shimmering stars in the sky that night!

The Milky Way galaxy (or akash-ganga/आकाशगंगा) visible from the crystal clear night skies of Bhagmalpur

The Milky Way galaxy (or akash-ganga/आकाशगंगा) visible from the crystal clear night skies of Bhagmalpur

The following morning, I had to get up early and leave for the airport, since I was unable to find a train reservation on the way back. The newly spruced up airport named after Shri Lal Bahadur Shastri  at Varanasi was a 2.5 hour bus ride away from the nearby town of Shahganj (which is also the nearest railhead to Bhagmalpur). It was interesting to note that there was no functional WiFi internet at a national airport, while we had quietly empowered the kids in a remote village unknown to the rest of the world. Saludos, Anish

6 Comments

Filed under books, children, education, hardware, network, school, software, tech

Hello world! from Bhagmalpur… part-1

This is a long long overdue post about the trip made by Kartik Perisetla and your’s truly to Bhagmalpur in an effort to install a new school server in the village.

To give you a background, the XSCE or the School Server Community Edition project has been gathering momentum over the past few months, and it has gotten to a point where pilots in remote places are conceivable. So, as a part of my summer internship, Dr. Verma graciously agreed to let us do a pilot of the server in the village (heck, I’d still have gone there if it wasn’t part of the internship).

Anyway, I roped in Kartik, who has been very interested to contribute to OLPC efforts in India, and both of us decided to head to the village around the last week of May (yes, that’s how long overdue this post it :-P). This plan took shape just before one of the periodic XSCE community sprints (this one was held at Adam’s parents’ home outside of Toronto). Working with Santiago Collazo (aklis) and Nitika Mangal from Activity Central we setup a roadmap for developing and testing the server before the actual trip to the village happened. We based our platform on the under-development 0.3 version of the XSCE and went about making sure that everything worked well out of the box and reliably so. After many conversations with Dr. Verma, we created an identical testing setup to the one which was in the Village.

May 22 came, and it was time to make it all happen in the real world. After surviving the Indian Railway’s ticket booking website and the actual train-journey itself, we made it to the village the following morning. Dr. Upendra Verma (Sameer’s uncle) was there to receive us and their son Utkarsh (traveling from Banaras). We knew the weather was going to be hot, but it was quite a bit more humid than we had expected. To top it off, there was no power in a major part of the village (including Upendra-ji’s house) for the last month or so, because a local transformer had burnt out and Indian bureaucracy was taking it’s usual ‘forever’ to fix it. Thankfully, sweet cold water from a hand pump in Upendra-ji’s house brought much needed respite!

After exchanging pleasantries, we soon got down to business and went about installing the new XO-1.75 based server replacing the old fit-PC based one. This was the most critical part of our trip and Upendra-ji turned on the diesel-powered generator so we could carry on with our work. We double and triple checked everything since if anything went wrong with the installation, the whole trip would be in vain. Also, we were facing problems getting the 3G modem↔TP-Link setup working, but thanks to Utkarsh’s smart thinking we got past that hurdle. The rest of the server installation went very smoothly. I can’t thank Santi and Nitika enough for their work in making sure we got past all the problems in our testing environment so we didn’t have to face any while in the village.

Soon, we were online, and sure enough, the server “called-home” to Dr. Verma’s openVPN server in SF. A server’s way of saying “Hello world!”

Following this eureka moment, we transferred all the 25 GB or so of content (ebooks, music, ted-talks and more…) into a 64GB pen-drive plugged into the XO-1.75 laptop. Then we placed the laptop neatly inside a briefcase along with all the other hardware. Working through the night, we installed software updates on all the available XO laptops (+ the five I took along with me, thanks to Arjun Gupta). Next, we registered them to the school server, so they could start sending journal backups. Another important part of the XSCE is statistics collection, where software running on the laptops records anonymous usage statistics and synchronizes them with the server. This data can then be researched to make useful analyses about usage patterns, software defects, and so on. 

After we were done with most of our tasks on Day-1 itself (phew!), we took a stroll through the village, this time during the night. My trusty sigma 30mm f/1.4 lens was a wonderful companion and took some great pictures, which can be seen here. While we were walking back to Upendra-ji’s home, we saw some lights blinking on their rooftop. He explained to me that those were the LED’s on the Wireless Access Point connected to the server. He told me a little story that when it was initially installed, the villagers were a little afraid of the strange blinking night-lights, and thought that it was some kind of a time bomb. Well, that time-bomb has now exploded! When they see those strange blinking lights again, they’ll know that internet is in the air, with all it’s wonders and wonderful content cached locally for their learning and joy. Talk about a shift in perspective!

School Server in a briefcase!

School Server in a briefcase!

Updating the software on the XO laptops.

Updating the software on the XO laptops.

Look at the top left corned of this image. Those LED's blinking on the rooftop indicate that the local access point is switched on, and the server is powered on.

Look at the top left corner of this photograph. Those LED’s blinking on the rooftop indicate that wireless access is present, and the server is powered on.

The following morning, we gathered the kids from the village so they could get their first taste of the internet and the new server. It was interesting to see some of them requiring a slight bit of hand-holding while others taking to it like a duck to water. Mostly, we left them alone to figure it out and learn from one another. An interesting fact: we had to buy a new, much bigger data plan just after a couple of hours. An interesting trend that started to emerge was kids downloading local content (already present on the server), and researching bits of it on the internet. Before all of this happened, though, we had to address concerns of their parents about being exposed to malicious content, so we had already setup dansguardian.

Note: The server has been online for some two months now, and there will be another blog post deeply analyzing the usage and the benefits it has brought to children’s learning and the village in general.

Stay tuned for part-2 of this post and other updates from the village!

Stay tuned for part-2 of this post and other updates from the village!

4 Comments

Filed under education, general, hardware, network, software, tech