July 04, 2015

Juan Chacon Free Software & Education | El Salvador

Updating the Firmware on my Pyboard

Before I begin the post proper, an aside...

Larry Cuban just made a wonderful blog post titled Fixing Schools Again, and Again in which he says,
"If amnesia were like aphrodisiac pills, policymakers have been popping capsules for years. Memory loss about past school reforms permits policymakers to forge ahead with a new brace of reforms and feel good."
To an educator of 24 years these words ring so true!  Time and time again I've watched my own school system move from one initiative to another, never stopping for a moment to look back at where we've been so that we might learn something from our journey.

In this intensive Summer of learning, I've been trying to juggle several learning goals, each associated with either NOVA Web Development or the future IT curriculum at Arlington Tech (or hopefully, both):
  1. GIS, specially web GIS mapping of LIDAR data
  2. Firefox OS App development
  3. Django and django CMS
  4. MicroPython programming on the pyboard
This post will document the process of updating the firmware on the pyboard.

I'll be using the Pyboard Firmware Update guide my dear friend and co-conspirator Kevin Cole mentioned in a blog post, along with the instructions Kevin documented in the same post.

The first step in the process is to connect my pyboard physically to my to my desktop workstation by USB cable and verify that I can interact with it. When I connected the cable, a filesystem named PYBFLASH auto-mounted, showing these contents:
Kevin says to run screen, when I checked, I didn't have screen installed, so I ran:
$ sudo aptitude install screen dfu-util
    When I tried to connect to the pyboard using screen, it failed:
    $ screen /dev/ttyACM0
    [screen is terminating]

    So I checked to see if the device was there:.
    $ ls -l /dev/ttyACM*
    crw-rw---- 1 root dialout 166, 0 Jul 4 15:39 /dev/ttyACM0
    Ahh, I bet I'm not in the dialout group.
    $ groups [username]
    [username] : [username] adm cdrom sudo dip plugdev lpadmin sambashare
    $ sudo adduser [username] dialout
    [sudo] password for [username]:
    Adding user `[username]' to group `dialout' ...
    Adding user [username] to group dialout
    $ groups [username]
    [username] : [username] adm dialout cdrom sudo dip plugdev lpadmin sambashare
    That's better.  I still needed to restart my machine before I could connect, but after that screen /dev/ttyACM0 gave me a blank screen, and after I hit <Enter> I saw:
    Traceback (most recent call last):
    File "
    <stdin>", line 1
    SyntaxError: invalid syntax

    I'm in! Now let me move on upgrading the firmware.  Typing ^D (that's Ctrl+D) at the python prompt gave me:
    PYB: sync filesystems
    PYB: soft reboot
    Micro Python v1.3.10 on 2015-02-13; PYBv1.0 with STM32F405RG
    Type "help()" for more information.
    Kevin's next instruction says, "Next, disconnect the USB cable, jumper the BOOT0 and 3V3 pins, and reconnect the USB cable".  There is a picture of this on the Pyboard Firmware Update guide:
    The problem is that I'm at my grandmother's house in a rural part of South Jersey without a car. Just how am I going to "jumper"?  Kevin and I asked our friend Paul Flint in Vermont, who has a knack for solving these sorts of problems.  He suggested a paper clip.  Why didn't I think of that?
    My pyboard with paper clip jumper
    I downloaded the latest micropython image (pybv10-2015-07-04-v1.4.4-65-gb19d273.dfu at the time of this writing) and reconnected by pyboard by USB.
    $ lsusb
    Bus 003 Device 002: ID 8087:8001 Intel Corp.
    Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
    Bus 001 Device 003: ID 8087:0a2a Intel Corp.
    Bus 001 Device 009: ID 0424:2228 Standard Microsystems Corp. 9-in-2 Card Reader
    Bus 001 Device 008: ID 0424:2602 Standard Microsystems Corp. USB 2.0 Hub
    Bus 001 Device 007: ID 0424:2514 Standard Microsystems Corp. USB 2.0 Hub
    Bus 001 Device 006: ID 413c:3016 Dell Computer Corp. Optical 5-Button Wheel Mouse
    Bus 001 Device 005: ID 046d:0825 Logitech, Inc. Webcam C270
    Bus 001 Device 004: ID 413c:2003 Dell Computer Corp. Keyboard
    Bus 001 Device 002: ID 050d:0234 Belkin Components F5U234 USB 2.0 4-Port Hub
    Bus 001 Device 012: ID 0483:df11 STMicroelectronics STM Device in DFU Mode
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
    I've highlighted in green the line we are interested in.
    $ sudo dfu-util -l
    [sudo] password for [username]:
    dfu-util 0.8

    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org

    Found DFU: [0483:df11] ver=2200, devnum=12, cfg=1, intf=0, alt=3, name="@Device Feature/0xFFFF0000/01*004 e", serial="346135523333"
    Found DFU: [0483:df11] ver=2200, devnum=12, cfg=1, intf=0, alt=2, name="@OTP Memory /0x1FFF7800/01*512 e,01*016 e", serial="346135523333"
    Found DFU: [0483:df11] ver=2200, devnum=12, cfg=1, intf=0, alt=1, name="@Option Bytes  /0x1FFFC000/01*016 e", serial="346135523333"
    Found DFU: [0483:df11] ver=2200, devnum=12, cfg=1, intf=0, alt=0, name="@Internal Flash  /0x08000000/04*016Kg,01*064Kg,07*128Kg", serial="346135523333"
    Again, I highlighted in green the line we are looking for, the internal flash.
    $ sudo dfu-util --alt 0 -D pybv10-2015-07-04-v1.4.4-65-gb19d273.dfu 
    dfu-util 0.8

    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org

    Match vendor ID from file: 0483
    Match product ID from file: df11
    Opening DFU capable USB device...
    ID 0483:df11
    Run-time device DFU version 011a
    Claiming USB DFU Interface...
    Setting Alternate Setting #0 ...
    Determining device status: state = dfuERROR, status = 10
    dfuERROR, clearing status
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 011a
    Device returned transfer size 2048
    DfuSe interface name: "Internal Flash "
    file contains 1 DFU images
    parsing DFU image 1
    image for alternate setting 0, (2 elements, total size = 273128)
    parsing element 1, address = 0x08000000, size = 13580
    Download [=========================] 100% 13580 bytes
    Download done.
    parsing element 2, address = 0x08020000, size = 259532
    Download [=========================] 100% 259532 bytes
    Download done.
    done parsing DfuSe file

    After disconnecting the pyboard, removing the jumper (paper clip), and reconnecting the pyboard and starting a screen session to it, and typing ^D, I was rewarded for my efforts when I saw:
    PYB: sync filesystems
    PYB: soft reboot
    Micro Python v1.4.4-65-gb19d273 on 2015-07-04; PYBv1.0 with STM32F405RG
    Type "help()" for more information.

    Now let's see what Kevin and the MicroPython interns can do with our newly flashed pyboards...

    by jelkner (noreply@blogger.com) at July 04, 2015 10:33 PM

    Installing Django CMS on Ubuntu 14.04

    NOVA Web Development is a web design and development coop I started with my friend Kevin Cole about three years ago.  I was motivated by a desire to make the IT program at my school relevant to my mostly working class, immigrant students.  As a career and technical education teacher, I'm suppose to be helping students find career paths, but despite the large number of IT jobs available, my students are caught in the catch-22 that they need experience (most want adds list three years) to get a job, but they need a job to get experience.  NOVA Web Development was created to find a way out of that bind.

    Three years into the project, I would say we have been successful in getting off the ground, given we started with only funding I could provide and very limited experience.  We now have two former students (both of whom are in college) who are emerging as young web professionals, and who will soon be able to act as mentors to future students.

    Our business focus is offering web design and web application development using mostly the Python web application framework Django. One of my goals for this Summer is to develop skills needed to help out with NOVA Web Development projects. To do that I'm going to need to learn how to setup and manage django CMS.

    Since I want to be able to experiment without fear, the first thing I did was install VirtualBox on my Ubuntu 15.04 host machine using:

     $ sudo apt-get install virtualbox

    Then I created a virtual machine (VM) through the GUI interface and installed Ubuntu 14.04 server on it.  I only selected SSH Server from the package installation menu during the install process to keep the machine minimal to start.  After the installation I logged into the VM and ran all the package updates, and then made a copy of the virtual hard drive (the file with extension .vdi in the VM's directory).  This will save me a lot of time in case I mess things up on the VM and want to start over (that's the "experiment without fear" part).

    I always setup my virtualbox VMs with bridged network adapters:
    Which gives the VM an addressable on the same network as the host machine.

    With my VM server ready to go, I went looking on-line for some good reference material and found How to Install the Django Web Framework on Ubuntu 14.04. This guide discusses four alternative methods for installation. Of these I choose Install through pip in a Virtualenv (giving me a virtual environment on a virtual machine ;-).

    Here's what I did:
    • $ sudo aptitude install python3-all-dev python3-pip
    • $ sudo aptitude install libtiff5-dev libjpeg8-dev
    • $ sudo aptitude install libfreetype6-dev liblcms2-dev
    • $ sudo aptitude install libwebp-dev tcl8.6-dev tk8.6-dev
    • $ sudo aptitude install python3-tk python-tk
    • $ sudo pip3 install virtualenv
    • $ mkdir cms1
    • $ cd cms1
    • $ virtualenv env
    • $ source env/bin/activate
    • (env)$ pip install django
    • (env)$ django-admin --version
    • (env)$ deactivate
    With Django 1.8.2 installed, I left the virtualenv to return later after a break to install django-cms.
    (note: This is an updated version of this post with modified installation steps.  When I ran the following process the first day, I encountered show stopping errors with lack of support in Pillow for jpeg and png -- described by others here. Today I copied over my virtual hard disk image to start with a fresh VM and began the process anew with the modified installation instructions above.  It worked. That's "experiment without fear" in action!)


    To continue the installation process, here is what I did next:
    • $ cd cms1
    • $ source env/bin/activate
    The Django installation guide continues with instructions on how to setup a project, but I want django-cms, so I switched to Installing django CMS for the next steps:
    • (env)$ pip install djangocms-installer
    • (env)$ mkdir testproj
    • (env)$ cd testproj
    • (env)$ $ djangocms -p . testsite
    • Now give the following to the installer's questions:
      • Database configuration (in URL format): sqlite://localhost/project.db
      • django CMS version: stable
      • Django version: stable
      • Activate Django I18N / L10N setting: yes
      • Install and configure reversion support: yes
      • Languages to enable. Option can be provided multiple times, or as a comma separated list: en, de
      • Optional default time zone: America/New_York
      • Activate Django timezone support: yes
      • Activate CMS permission management: yes
      • Use Twitter Bootstrap Theme: yes
      • Use custom template set: no
      • Load a starting page with examples after installation: yes
    • Create admin user when prompted
    • (env)$ python manage.py runserver

    I then opened a web browser in the host machine and pointed it at the virtual machine. Here is a screenshot of part of my desktop showing this:
    In the screenshot of my desktop above, my host machine had address and the VM has address  I used ssh from my host machine to login to the VM, since the terminal program on the host is nicer to use than the one you get logging in directly from virtualbox.

    You have to add[port number] to the end of the runserver command to allow web connections to the VM from other machines.  I then point the browser on my host machine to[port number] (8000 in this case, but you can use any port number above 1024 you like) and am rewarded by the Welcome to django CMS home page!

    Tomorrow I'll start learning how to use django CMS.

    by jelkner (noreply@blogger.com) at July 04, 2015 01:58 PM

    July 02, 2015

    Technology for Ghana

    Farewell Part I

    Today, Thursday, was my last day of teaching at both the Edinaman School and the Abura house, and it was by far the most rewarding day yet. At Edinaman I had the students spent their last lesson learning more about Scratch. After I finished teaching, they brought me to the front of the classroom as one of the students very kindly thanked my father and me on behalf of the students and the school for the work we had done. Then a couple of the teachers said a few words and thanked us for finding the time to come to Ghana, bring the Internet-in-a-Box and other technology to their school, and teaching the students and teachers how to use it. Madam Cynthia, one of the teachers, gave my father, Maureen, and me each a personal gift of locally crafted jewelry, and we all put it on right away! Another one of the teachers reminded his students that I am only seventeen years old, the same age or younger than many of the students in the class. He told his students that I am proof that each of them can change the world for the better by helping others if they truly put their minds to it. I believe that these words of gratitude may very well be the kindest and highest form of praise that I have ever received. Over these past two weeks, all of my hard work over the past months and even years has paid off more than I ever could have imagined, but hearing it put so beautifully into words by these teachers and students was unparalleled. If this wonderful morning wasn't enough, my day continued to get even better!

    July 02, 2015 10:17 PM

    Juan Chacon Free Software & Education | El Salvador

    Getting Started with JOSM

    Today I completed the next lesson in the LearnOSM tutorial, which describes the installation process for JOSM, the Java 7 OpenStreetMap editor.  Here is what I did to install JOSM:
    1. Checked the JOSM package page for Ubuntu 15.04 and found it has version 7995.
    2. Visited the JOSM home page and saw that the recommended version is 8491.  Visited the Ubuntu package repository and read that it contains the JOSM package only, so it won't mess much with my system.
    3. After deciding the JOSM Ubuntu package repo was the way to go, I did the installation dance:
      • $ sudo vi /etc/apt/sources.list
      • Add these lines to the end of the file:
        # JOSM Ubuntu package repository
        # (see http://josm.openstreetmap.de/wiki/Download#Ubuntu)
        deb https://josm.openstreetmap.de/apt vivid universe
      • $ wget -q https://josm.openstreetmap.de/josm-apt.key -O- | sudo apt-key add -
      • $ sudo apt-get update
      • $ sudo apt-get install josm
    4. Launched JOSM
    A short while later in the tutorial and I had downloaded a sample file and opened it in JOSM.

    Some OSM Terminology

    I've learned previously that vector data in GIS systems is represented by three types of objects: points, polylines, and polygons.  These three types are described well in QGIS Introduction section on Vector Data.

    OSM uses its own terminology for these same types of objects:

    Nodes - points
    Ways - polylines
    Closed Ways - polygons

    Despite the different names, these objects are interchangeable with their QGIS (and ArcGIS) equivalent, and I plan to learn to use python tools like GDAL, pyproj, Shapely, and Mapnik to work with these files and convert them among the different formats.

    Without using the terms, the tutorial also introduces the concept of meta-data, using the word "tags" that describe information about the nodes, ways, and closed ways.

    It ends with an exercise to create a new map from scratch.  Just to test what is going on, I made the simplest one I could think of with one node, way, and closed way.  I saved it as three_places.osm.  Then I opened it in a text editor to see what it looked like (I used gedit for the benefit of this screenshot):
    Great, a simple XML file!  Before looking at the tutorial any further, tomorrow I'll explore what I can do with this file using Python.

      by jelkner (noreply@blogger.com) at July 02, 2015 05:58 PM

      A Fun First Experience with Learning OpenStreetMaps

      OpenStreetMap is the Wikipedia of geospatial information. It is a vast map of the world editable by anyone with an account, and like other free software and open data projects, it is fundamentally about creating use value for human beings. It thus stands opposed to the commodification of everything pushed by the dominant neoliberal economic regime which has been running our civilization rapidly toward self-destruction since the late 1970s.  Through projects like Map Kibera, it offers the possibility of providing voice to the voiceless and tools of change to the dis-empowered. It is part of the broad movement of democratization of information and citizen science that I hope will enable our civilization to mature and endure for our children, grandchildren, and their children and grandchildren.

      I decided to start my Summer GIS study by going through the LearnOSM tutorial.  I made it through The iD Editor lesson today, and had a great deal of fun in the process! After a bit of background, I'll describe the little project I completed.

      What I'm Doing in New Jersey this Summer

      June 6 Larry James Legacy Fund Bike Ride

      My grandmother (who I call "Mom-mom"), Helene Young of Cologne, NJ, turned 100 last February 18th. While she is in pretty darn good shape, she won't live forever, and I've been vowing to spend the Summer with her for years.  This Summer I am finally doing it.

      My first night here we went to the Egg Harbor City Historical Society meeting.  Mom-mom goes every month, but while I've been a member for years, I've never been to a meeting before. Our family's history has deep ties with Egg Harbor City.  Mom-mom's great grandfather, Philipp Mathias Wolsieffer, was a founder and the first mayor of the city in 1858.

      Choosing a Meaningful Project

      At the end of the second lesson of the tutorial, Getting started on OpenStreetMap.org, learners are suggested to "Move the map to a place that you know very well, such as your town or neighborhood. A good idea is to ensure your home (or your neighbour’s home) and workplace are drawn and given the correct address." Mom-mom was born in a house that her father built at 352 Baltimore Avenue, as was her brother Alfred and her famous sister, Peace Pilgrim.  In the spirit of my visiting with her, I decided that house would be an ideal one to check.

      Darn, It's Not Right! (I Mean, Cool, It's Not Right, So I Get to Fix It ;-)

      Typing in the address: 352 Baltimore Avenue, Egg Harbor City, New Jersey, OSM showed my this map:
      Click on the image to see a large version
      The house, which has an address on the paper road, Baltimore Avenue, is really located on Buerger Street, not one block over on Beethoven Street as in the map.  In case anyone has any doubts about that, I rode my bike into town this afternoon and took a picture of the house:

      So following instructions, I selected "Edit with iD", which gave me a satellite view of the area, and I could see the house. I used the "Draw shape (polygon)" tool to create a polygon near the outline of the house.
      Then I filled in data about the polygon, including giving it a title of "Birthplace of Peace Pilgrim". When I clicked "Save", I saw this:
      A few minutes later I did another search for 352 Baltimore Avenue, Egg Harbor City, New Jersey, only this time OSM returned:
      How cool it that? Obviously I'm feeling empowered and I'm greatly encouraged to keep learning about OpenStreetMap!

      Hmm... What About Mapping History?

      As soon as I labeled the house "Birthplace of Peace Pilgrim", I started thinking about other locations important in Peace Pilgrim's life I could label on the map.  Then I tried searching in OSM for "Peace Pilgrim", and wouldn't you know it, I got this result:
      Building Birth place of Peace Pilgrim, 352, Baltimore Avenue, Egg Harbor City, Atlantic County, New Jersey, 08215, United States of America
      Wow! Then I did a search to see if I could find other folks already using OSM to record history, and I came across Mapping History (Starting with Manchester) by Frankie Roberto.  Frankie says a few slides into his presentation, "I'd like to be able to add a time-slider to maps, so that you can see how the places themselves have changed over time." It is simply mind boggling to think about all the new ways of seeing things that are becoming possible with tools like OpenStreetMap.

      by jelkner (noreply@blogger.com) at July 02, 2015 03:37 PM

      July 01, 2015

      Technology for Ghana

      Holding a Dried Chameleon? Check.

      Today is Republic Day, a national holiday in Ghana, so none of the schools were in sessions. It also happens to be Canada Day! Anyways, it actually worked out well for my teaching at the Abura house because they were home from school all day, so I was able to head over to teach around 10:00instead of 3:30, as usual. Today's entire lesson was on Wikipedia, and the questions I gave the girls were the trickiest yet! I also gave the girls some time to think of their own questions to ask each other, and they eagerly accepted the challenge! Many of the girls asked questions, with several of the girls even giving out two or three, and the rest of the girls worked diligently until they found all the answers. After teaching, Kathryn, Muhammad, John, and I went out to lunch near the Cape Coast Castle. John used to live at Kathryn's house before relocating for his teaching position, and Muhammad still lives at Kathryn's and works for Anansi. Then we all headed into the market, which was a very interesting place to see! Like any market, it was full of strange sights and smells, but this one included pig legs and dried chameleons! We bought the ingredients for tonight's meal of yam balls and also met Muhammad's mother, who works at the market. It was a very fun, busy day!

      July 01, 2015 10:12 PM

      June 30, 2015

      Technology for Ghana

      Scratch, and Sprites, and Squares, Oh my!

      Today I was back at Edinaman to teach my first lesson of Scratch! Teaching this program to a large group of 22 students posed a few challenges, but the class went very well. First I explained what Scratch is: a programming language that makes it easy to create your own interactive stories, animations, and games and teaches important computer programming skills. Next I went over the basic functions within the program, and then we got into our first project! We started off simple by programming our "sprite" (the little character) to draw a square. I explained to them that programming the sprite is no different than telling the person sitting next to you how to walk in a square, step-by-step. I even had two of the students demonstrate this idea, with one student acting as the sprite and the other as the programmer. Drawing the square helped introduce the important concept of repetition. The students quickly realized that the steps to make a square (for example, walk five steps and then turn to the right) repeated four times. I showed them how the same idea can be used in Scratch instead of putting in each step three extra times. The students seemed to catch on very fast, and, as I walked around the room to watch their progress, offer advice, and answer questions, I noticed that many of the students were already exploring other functions and trying to discover what they could be used for. I was so happy to see this demonstration of curiosity about the computer programming because that desire to explore will be EXTREMELY important after I leave. I can only teach these students so much in these short two weeks that I am in Cape Coast/Elmina with them, and that curiosity and exploration is what will enable them to continue to learn from their computers after I leave. At the end of the day, we all walked to a restaurant in town to enjoy fufu, a Ghanaian dish made of cassava and plantain. Even better, we got to watch and help them make the fufu! It involves pounding the cassava and plantains in a wooden mortar with a wooden pestle. It's hard work, but the result is definitely worth it!

      June 30, 2015 11:40 PM

      OLE Nepal

      Visit to Gorkha

      Another crucial task was completed with assessment of the most affected area, Gorkha district. Our team was there last week. We did a thorough assessment of the schools which were severely damaged by the earthquake. After spending almost a week…

      by Sofila Vaidya at June 30, 2015 04:06 AM

      June 29, 2015

      Technology for Ghana

      Who says Mondays Are Boring?

      Today was a very fun day of browsing the stores in Cape Coast and teaching the girls in the Abura house. First we went to Woodin's, a fabric store, and then we browsed several art shops, where the vendors' products ranged from large, vibrantly colored paintings to bracelets and wooden elephants. I purchased a few small souvenirs after some aggressive haggling over prices on my part. I'm only kidding, of course. I quickly discovered that this back-and-forth process of arguing over prices is much too stressful for my liking. In fact, " I mostly stood there without saying a word until the vendor lowered the cost of my small wooden elephant to a price that I hoped was somewhat reasonable. So, yes, "aggressive" may be a bit of an exaggeration. I was still quite proud of myself, though! After lunch, we headed over to the girls' house in Abura and I did some more IIIAB scavenger hunt questions using Wikipedia, Project Gutenberg, and OpenStreetMap. I am absolutely amazed at how much they have learned in such a short period of time. At the beginning of last week, none of the girls had even heard of Wikipedia, and now they surf the IIAB web like trained professionals! I am so proud of what they have already accomplished in our time together, and I feel so lucky to call myself their teacher.

      June 29, 2015 11:39 PM

      June 28, 2015

      Technology for Ghana

      testing, Testing, 1-2-3

      We left the beach hotel today and picked up the IIAB technology from Edinaman Senior High School to bring back to Kathryn's and run some tests. According to Adam, the server had been running slower than desired over the weekend. Once we got back to Kathryn's, my dad replaced some of the thinner wires with the thick wire we purchased last week in Ghana. We also set up the Axim IIAB to test at the same time, and Tim was able to get Khan Academy working on the Edinaman server (previously it said the "page was not found" when clicked on). Even better, this fix means that the SIM card in the Netgear modem is working because Tim and Adam are successfully able to access the server through it from Canada and the United States. By the end of the call, both servers were working very well!

      June 28, 2015 11:13 AM

      June 27, 2015

      Technology for Ghana

      relaxation day

      As promised, today was a great day of relaxation. We spent most of the afternoon sitting by the water and reading. It was great to sleep in past six in the morning, take a shower with hot water, and use air conditioning. However, I am excited to get back to Kathryn's and prepare for next week's lessons and new adventures!

      June 27, 2015 07:58 PM

      June 26, 2015

      Technology for Ghana

      Ghanaian Games, Internet-in-a-Box Style

      We were back at Edinaman today to finish off our first school week, and I continued my IIAB lessons with the students. It was a day full of fun competitions using Wikipedia, Project Gutenberg, and Open Street Maps. The first person to answer each question correctly won a pen with the logo of Cardinal Health, my dad's employer, and the students were very excited to receive them! At the end of class, I had the students think of their own Internet-in-a-Box scavenger hunt questions, and some of the questions they formed were quite challenging. I was impressed with how quickly they solved each other's questions, though! After the lesson, several of the students hung around in the ICT lab and asked me questions about how I became involved in my work and what my role was in creating and preparing the IIAB server. I also gave them a preview of Scratch, the program that I will be teaching them next week, and they seemed very excited to dive into the world of computer programming. After I finished teaching, my father and I headed over to Elmina Beach Resort, where we will be spending the weekend. It will be a great chance to relax after an action-packed week and spend some time along the beach!

      June 26, 2015 07:55 PM


      Today we were back at the Anansi Abura house to teach the eight girls from the University Practice School. I was finally able to deliver their XO-4 laptops, and the girls were thrilled to open them! They had a lot of fun customizing the color settings and backgrounds of their computers after I showed them the basics, and then we got started with the IIAB material. Again, I gave an overview of the technology we had brought and what Internet-in-a-Box is, and then I had them do some work with Wikipedia. The students had never heard of an encyclopedia, never mind Wikipedia, so I explained it to them as an online book that is similar to a dictionary, but with entire articles explaining the words instead of short definitions. By the end of our lesson, they were experts at searching whatever topic they pleased, ranging from Hermione Granger to the United States of America. I was also pleasantly surprised to see how quickly they began using Wikipedia for Schools and Khan Academy to enhance their educations. It's great that they understand how helpful it is to have access to thousands of educational articles and videos at their fingertips. On the way home, we stopped at a convenience store to pick up some snacks, and Maureen and I had a great time trying to figure out what some of the crazy flavors of cookies were. My dad and I couldn't agree on which snacks to buy, so of course we had to buy it all. We ended up taking home mango cookies, chocolate, some sort of Pringles-like chips, and two different types of Fanta! It will take a while to get through it all, but I am excited to see how it all tastes!

      June 26, 2015 01:28 AM

      June 25, 2015

      Juan Chacon Free Software & Education | El Salvador

      "Measure Twice and Cut Once" - An Open Request for Help Planning LibriFox Development

      I'm making this post as an open invitation to anyone who sees it who either can offer advice themselves or who knows someone who could offer good advice to please send it our way!

      As I described in a previous post, I have commissioned a former student to create a Firefox OS app for me that will download and play books from the LibriVox audio books website.

      My motivation for funding this project is twofold:
      1. To get a usable app for playing LibriVox books on my Firefox OS phone.
      2. To explore free software development best practices that we can then use in future projects.
      I'm acting as the on-site customer on the project, but I have to admit to being in a bit over my head.  Alex sent me this email today:
      Hey Jeff,
      Dominic [one of the Firefox OS Music player app developers] hasn't responded to me yet, but I've been thinking more about how the chapter files' metadata should be stored.  I'm actually thinking that maybe json stored in each chapter folder isn't the best solution.  I think sticking with localStorage is the better option, because it is reliable (we'll never have to worry about not having localStorage, whereas json files can be deleted) and only LibriFox can modify its own localStorage, whereas json files could be modified by other apps. 

      The downside to using localStorage, of course, is that the metadata doesn't follow the data, but is instead tied to the device.  But how often are you really going to be swapping sdcards between devices? Worst case scenario, you might have to just redownload the chapters through the app on the new device rather than having them pop up automatically.
      Depending on how much you care about the portability use case, I can also attempt to have it do what you were suggesting and pull data from the server based on the book id, assuming the files were originally downloaded through the app.  Otherwise, it could fall back on ID3 tags if they are present.  This gets pretty complicated, though.

      Also, I know you were concerned about keeping the metadata in sync with the data, so I'm working on metadata validation.  The latest commits to the repo have an object that scans the metadata and verifies all the paths when the app is started.  It looks like there are filesystem events that I can hook into as well.
      Let me know what your thoughts are!
      I don't know how to respond to Alex.  I don't want to go down a path that is "expensive" both in time now and maintenance costs in the future, but I think that switching SD cards may happen more than Alex thinks, or at least it is not at all unlikely that an SD card will be removed, and when that happens, how should LibriFox behave?

      Alex is a terrific young programmer.  He has great instincts and very high standards, which is why I was so happy about him taking on this "Summer of Code" project to begin with.  But he did just graduate high school, and he lacks the wealth of experience that a veteran programmer would bring to a project like this.

      I want to make the best contribution to Firefox OS that I can.  As a teacher by trade, I also want this to be the best learning experience for Alex that it can be.  For both of those goals to be realized, however, input from programmers who do have the experience Alex lacks will be required.  I've been trying everything I know how to do reach out to the Mozilla and broader free software communities to ask for the help we need.

      This blog post is part of that reaching out.  If you think you can provide meaningful feedback to the questions Alex raises in his email, please send it our way.  Thanks!

      by jelkner (noreply@blogger.com) at June 25, 2015 07:07 PM

      Technology for Ghana

      the door of return

      Today was my first day of teaching, and it went great! I taught the students at Edinaman from 7:30-9:30 and the teachers from 10-12. The students were all extremely attentive and eager to learn, so they made the teaching easy for me! I gave them a general overview of the databases available on IIAB and briefly explained the technology that we had installed. Then we dove deeper into Wikipedia through some fun little challenges. I gave them various questions, such as "What is the population of Cape Coast?," and the first person to give me the answer for each question round would win. Some of the questions proved to be a bit trickier, such as trying to find the national sports of Canada, but they all did very well. We had a slight delay at the beginning of class because Internet Explorer was not able to run the server properly and not every laptop had Google Chrome or Mozilla Firefox installed, but we solved this problem quite quickly. In fact, the students used some of the flash drives that I had given them the day before to install Google Chrome on those laptops! It was great to see all the technology being put to good use so quickly. Several of the students are actually very tech-savvy, and they helped me a lot in trying to get all of the computers working properly. Teaching the teachers was also very fun, and they asked me some good questions that I hadn't thought to teach to them, such as how to save web pages to their computers so that they could access them without connection to the IIAB. I didn't have time to show them this tool today, but I promised that we would go through it on Friday. After teaching, my dad and I decided to take a tour of the Cape Coast Castle. Ghana was largely involved in the Triangular Trade, and Cape Coast Castle was one of the places where slaves were held before being loaded onto ships and taken to the Americas on the Middle Passage. Standing in these dark, hot cells were thousands of slaves were held at a time was surreal, and the stories of the conditions were horrific. The first Anglican church in Ghana was actually started directly above the men's cell, so Heaven existed above ground and Hell below. The door leading from the dungeon to the ocean and ships was referred to as the "Door of No Return," as the slaves were beginning a new life of servitude and suffering. However, the opposite side of the door now reads "Door of Return," as the descendants of these slaves can now return to the homeland of their ancestors  as free citizens. Cape Coast Castle was a very difficult place to visit and learn about, but it exists as a very important part of a tragic history. 

      June 25, 2015 01:27 AM

      June 24, 2015

      Tabitha Roder

      iMoot15 and mootau15

      At #iMoot15 Miriam and I facilitated as session aimed at getting a conversation going and gathering information in the Moodle community about how we manage enrolment, access, and semester rollover. Miriam and I hoped that this would feed into the working group at #mootau15 on archiving and roll-over.

      Our institute is reviewing how we manage enrolment, access and course rollover in Moodle. We have struggled to find solutions that work across the board and maintain an exception list that we see increasing. Initial conversations with other institutes suggested that the perfect solutions are yet to be established. We hoped this iMoot discussion would build on the work started at https://docs.moodle.org/28/en/Year-end_procedures and in the forum https://moodle.org/mod/forum/discuss.php?d=50298 and that we could find out more from the Moodle community about what the issues we collectively have so as we can understand them better and work towards resolving them.

      Our iMoot presentation is here and the details on the Moodlemoot working groups are here. Note there are two working groups, so check out the assessment analytics working group too.

      If you are able to share your institutes current enrolment/access/rollover practice please complete our form here or get in touch with us.

      We have so far found that most institutes do not automate creation of groups, and many duplicate courses each time they are run. Each institute has their own approach to where the teacher’s role starts and ends.  With everyone using different student management systems, and having different strategies around re-use of courses and access periods for students to their learning resources (and artefacts the students create!) it is very helpful to share ideas on how to meet the requirements of your institute and your learners.

      You can also comment on this blog post if you prefer. Looking forward to further discussion.

      by tabitharoder at June 24, 2015 11:45 PM

      Moodlemoot Australia 2015

      MoodleMoot Australia 2015I hope you have all registered for mootau15 and I will see you at Monash University in (Clayton) Melbourne, 6 to 8 July 2015. This is going to be one very exciting Moot, boasting an impressive range of keynotes and with a new schedule format that makes the most of the time together. The introduction of working groups to the Moot format brings together users, researchers and developers to work together to make Moodle better.

      Monday 6 July is professional development day. There will be keynotes and sector based sessions, working groups, and drinks reception.

      Tuesday 7 and Wednesday 8 July are community days, focusing on the interests of users in different roles. More keynotes, role based sessions, new features and roadmap, and more social activities.

      Thursday 9 July is developers’ day. Even though the main conference is over, this will be a day of action for working group members and developers. There will be new developer training and a hackfest with working group interaction.

      See you there!

      by tabitharoder at June 24, 2015 11:25 PM

      June 23, 2015

      Technology for Ghana

      tuesdays are for tweaking

      On Tuesday we went back to Edinaman and replaced some of the wires in the IIAB system with more reliable cables that we had purchased in Cape Coast. We also delivered twenty new laptop chargers to the headmaster, who accepted them and thanked us on behalf of the school. The headmaster and the teachers were so grateful and appreciative, and these small moments are why I have come to Ghana and worked so hard over the past few months to provide this technology to the schools. Later in the day we went back to the Anansi Abura house and installed the second IIAB. This installation went even more smoothly than the first, and we were in and out in no time at all. After getting back to the house, I reviewed my lesson plans one last time and prepared myself for Wednesday's big day of teaching!

      June 23, 2015 11:20 PM

      OLE Nepal

      Portraits in relief center

      Our volunteers from OLE Nepal have been working with children in Tundikhel relief camp for over a month. They bring interactive learning materials in child friendly XO laptops for the children. The children can explore various learning activities in Math, English…

      by Dovan Rai at June 23, 2015 07:13 AM

      Honduras: The Owen Project

      Be It Ever So Humble…..


      We returned to Santa Rosita on Thursday and it was like returning home. The long ride in the back of a truck.;the early morning mist still obscuring the steepest hillsides; the distinctive scent of ripe fruit, dew-drenched vegetation and rotting leaves; the cool draughts under the pine trees: all of these brought back very distinctive and very pleasant memories. The first school in Santa Rosita that we saw five years ago was a mud and wattle structure covered in mold and smelling of mildew. There were twenty ramshackle desks for the 50 students and 2 teachers. I’ll show you what we saw this time below:

      IMG_1239  IMG_1244 IMG_1233

      IMG_1224 IMG_1214IMG_1225 IMG_1235 IMG_1237

      The transformation was stunning. What was most changed were the students themselves. Instead of the shy, reluctant and hesitant participants of the past, these students were bright-eyed, confident and openly curious. They took to the tablets immediately. More later.





      by mkeddal at June 23, 2015 02:43 AM

      June 22, 2015

      Juan Chacon Free Software & Education | El Salvador

      Providing Developer Debugging Feedback on Firefox OS

      I reported a bug on Alex's LibriFox app which is preventing book files from playing.  Alex has been unable to reproduce the bug, since the downloaded book plays on his phone, but it won't play on mine.  He sent me an email this morning detailing the steps I need to take to provide him with useful information from my phone about the bug.

      Since this process will be generally useful, I'll describe in detail what he told me to do and what happened (Alex's instructions are in green).

      1. First, go into developer tools and make sure Console enabled is checked.  For whatever reason, it won't log errors to console without that checked (even though it seems to log console.log statements just fine).  We want errors to be logged, so enable that.

      After clicking on the "Settings" icon on the home screen, and then the "Developer" link, I arrived at the screen above and confirmed that "Console enabled" was already checked.

      2. Next, open the app via the IDE (with your flame connected and set as the USB device) and click the wrench to open developer tools.  Go to the console tab.

      Don't do any app navigation until you have opened the console!
      Once the console is opened, tap your downloaded book, then the downloaded chapter to take you to the (not working) player page.

      It is so cool how well this works!  I connected my device via USB, then selected "Firefox OS (Flame)" from the "Select Runtime" in the Web IDE.  After giving permission on the phone to connect, I was able to select the installed LibriFox from App menu in the upper left of the Web IDE. I didn't even have to click on the wrench, it was already selected, and I saw what is in the screen shot above.

      3. If there is an error being thrown somewhere, your console might look something like this.  I've added a throw statement in my code to try and simulate your issue.
      Inline image 1

      If the file can't be found, your console will look something like this:
      Inline image 2

      Both of these cases will result in a non-functional player and no chapter title in the header, so without seeing console I can't tell which is which.

      Clicking my way through the app as instructed, I saw this:

      Now I'll wait and see what Alex can do with this information.

      What I keep liking about this OS is how friendly it is to developers.  That really isn't surprising, given Firefox's mission of "making the Web better and more accessible for everyone everywhere", but it is great to see this mission being carried out so well!

      by jelkner (noreply@blogger.com) at June 22, 2015 10:24 PM

      Nancie Severs

      Pain is Inevitable; Suffering is Optional. — Lebanon, NH

      Lebanon, NH

      I’m finally home from Boston. I went to Boston with a suitcase. After 2 months, I somehow had a full car to move home. My sister Lynn was a huge help. I woke up feeling like I could make the move; we rented a car, she packed it and drove me home. Thank you Lynn!

      My Update: I’ve completed 4 cycles of chemo, 6 weeks of daily external pelvic radiation, &amp; some brachytherapy. 2 more chemo cycles to go and my Boston oncologist will re-evaluate things. After the last chemo &amp; Neulasta shot to boost my white counts, I was again under the weather for about 6 days. Now I can pretty much plan on a “sick” week, and then I feel better until the next chemo. Before I started treatment, a Dartmouth doctor told me "those last 3 chemos will be BRUTAL because your bone marrow will be so depleted by then." So I began this round of treatment with trepidation. Frankly, I was ready to quit, and just say I've done enough already. That was not a helpful thought to put into my head. But I trudged forward and guess what? Not "brutal." It's not so bad. Mind over matter does work and as long as I prioritize my exercise and yoga, I'll get through this part too. I am avoiding crowds as my white counts have been low for months. I have to be extra careful not to be exposed to illness or infection. That could cause a serious setback. So if you see me around, please greet me with an "elbow bump" or a "virtual hug" instead of a handshake, kiss or hug.

      Thanksgiving week: Fall has quickly turned to winter in New Hampshire. We already have a foot of snow. Lynn left to meet Elana and friends in the Chicago/Michigan area. After much debate Mark and I decided on a quiet Thanksgiving at home with home-cooked turkey. It was quite a bit of work to cook for just the two of us &amp; we had enough food for company. But we enjoyed the day and we are enjoying the leftovers.

      Last year I was in Bangkok for Thanksgiving. I recall fond memories of Noah’s friend, Josh’s beautiful and delicious Thanksgiving party. As you can see from my other Travelpod blogs, I love to travel, and have done so often in the past 8 years. My need for cancer treatment now has altered the vehicle. Now I’m traveling in a comfy chair.:)

      Over the past few weeks I have enjoyed following the blog of my friend's Craig &amp; Jeri's trip to Japan &amp; SE Asia here: http://seasiajeriandcraig.blogspot.com/

      And, I have been reading the famous travel writer, Paul Theroux, again. This time I chose his “Ghost Train to the Eastern Star.” when I found the delicious hardback copy at a local used bookstore. 30 years ago, the author traveled overland &amp; water from London through Europe and Eastern Europe, through Turkey, Georgia and the Russian “Stans” all the way to India. From India, Sri Lanka, through Burma, Thailand, Vietnam, China, Japan and back to London via Russia, and then Germany and France. Hundreds of thousands of readers have been privileged to travel with him on “The Great Railway Bazaar.” In 2006, 30 years later, Paul wonders “how has the world changed? and recreates the trip in the “Ghost Train to the Eastern Star: On the Tracks of the Great Railway Bazaar”

      I have been reading it slowly over the past couple of months, accompanying Paul on one or two trip legs at a time. It’s colorful and moody evoking all of the emotions that seasoned travelers well understand. I have enjoyed the visions he creates of places I have never been and his global cast of characters. When “we” arrived in Burma, now Myanmar, Malaysia, Thailand, Cambodia (this was his first visit there as Cambodia was at war during his first trip) and Vietnam, I “came home with him.” In Vietnam where Paul had been during the “American War,” he is often asked what he thinks about that. Eloquently, he says something like “I am glad to see Vietnam prospering and I am sad about the bombings.” I’ll have to remember that one.

      Now we are in Japan where I have never been. Thank you Craig (see link above) for your wonderful photos of Japan. They dovetail with my reading. I have been savoring each leg of the journey. We are touring Tokyo. Paul’s friend, the famous author, Haruki Murakami (Underground) takes us on a city tour. I’m hungry for noodles in the “old shop” on a small back street near the Kappa Bashi, where traditional Japanese kitchen tools are sold. Old is relative. All the shops, and every building are post WWII of course.

      We went Underground and find contrast to what “seems to be a world of order and decency and restraint.” At one point, Paul observed that “someone said pain is inevitable; suffering is optional.”

      That’s my thought for the day. I might have pain but I refuse to suffer. I know that as long as I keep myself moving, walking and practicing yoga, I can do this! Reminiscing on my past trips, and the ones to come will keep me smiling. I've chosen "a few" of my favorite photos from my trips for "this travelogue." Enjoy them.

      Wishing you lovely holidays with family and friends! Nancie:)

      P.S. Click any photo to scroll through all of the photos in larger images. And please respect my "copyrights." If you would like to share or use one, please ask first and give a photo credit.

      June 22, 2015 09:17 PM

      Juan Chacon Free Software & Education | El Salvador

      Problems with Media Files in LibriFox and the Need to Find Good Support

      As I mentioned in my last post, Alex Hirschberg is working on a Firefox OS app to play audio books from LibriVox. While his "Summer of Code" is just beginning, he has already made significant progress on the LibriFox app.  Because of this, we are now confronted with a problem we've encountered for the whole time we've been working with the platform -- it is very difficult to navigate mozilla's labyrinthine network of forums and irc channels to actually find someone in the know who can answer questions.

      I'm hoping we are able to at least partially resolve this problem sooner rather than later, or I fear we may not be able to make the most of Alex's contribution this Summer.

      LibriFox is designed to play audio books, which on the LibriVox website are stored as mp3 files. The problem is that music files are stored in the same format, and the Music app finds these files and automatically loads them into the menu:

      Alí Primera and Johann Sebas[tian Bach] are music albums, Victor Hugo and Unknow artist are not. As Alex continues working on LibriFox, I would like it to support at least two ways to install books:

      1. Direct download from the LibriVox website using the app.
      2. Copying the audio files from a desktop computer to a USB connected phone.
      To make this work well, we will need to resolve the problem of having the audio books appear in the Music app, and figure out a good place to put the files that get downloaded so that both methods of adding books can be supported.

      I have a 32 Gigabyte SD card in my phone, and I plan to put a lot of books on it as LibriFox develops.  For a first go at this, I created a directory named AudioBooks and copied the audio files for Les Miserables into a subdirectory:

      That's where Victor Hugo is coming from.

      It would save us a lot of time and expense if we could get some guidance from someone at Mozilla on how best to approach this problem.  Our first experiment using a recommended irc channel did not work for us at all.  We posted the same question on each of two successive days, waited 6 hours for someone to answer, and did not get an answer on either day.

      Since I'm hoping these blog posts I'm making will be of use to other folks interested in contributing apps to Firefox OS, I promise to post recommended help resources once I find some that work well.

      by jelkner (noreply@blogger.com) at June 22, 2015 02:43 AM

      June 18, 2015

      Honduras: The Owen Project

      Andy Warhol Was Right

      Somewhere Andy Warhol wrote that everyone will be famous for fifteen minutes. If he is correct then the eight of us are finished with our moment of fame. Last night after a glass of wine at the home of Dr. Oscar Gross, we were invited to be interviewed at a local television station. We imagined a hand- held microphone and a portable camera. Instead we went on live television on a set reminiscent of Good Morning America.


      Sally and I had to sit on high  barstools, making us feel like Dean Martin and Sammy Davis Jr.at a night club. The moderator was a long-legged young lady in short shorts who spoke faster that I ever thought humanly possible. Linda acted as translator and Oscar Ochoa introduced us and gave a summary of the project so far. What was most off-putting was that we could see ourselves on several monitors. Sally got the giggles and soon we were all trying not to laugh aloud. Many of the questions were about our emotions, and how we remembered Owen as we visited the schools. Thank goodness we were so disconcerted and full of hilarity because I might have cried on live television. Instead it was a surreal experience worthy of Warhol.


      by mkeddal at June 18, 2015 11:53 PM

      One Laptop per Child

      Coming: 7 Schools with your help! – Marina Orth Foundation

      Friends, Amigos,
      I have an exciting update! Not only are we a little over a week out from the best fiesta of the year, we are so close to reaching our goal of $110,000! If we reach this goal we will be able to implement the foundations program into two more schools for a total of seven!
      Your past support has made the program thrive from initially supplying basic needs to providing thousands of children with access to personal computers. These computers have helped our children learn to code, get access to the English language, and figure out how to build robots! I know I can count on you to help us grow and get the program into our seventh school.
      I look forward to seeing you and celebrating this major feat over cocktails/rumba at the fiesta!
      Copyright © 2015 Marina Orth Foundation, All rights reserved.

      by mariana at June 18, 2015 08:34 PM

      Honduras: The Owen Project

      El Dorado


      Spanish conquistadors sought a fabled city of gold. They may even have been in Honduras in the central mountains where we were today. They were unsuccessful because they were looking for a treasure contained in rocks. We have been looking for a treasure found only  in faces and smiles.

      Here’s what we found in El Dorado:


      The picture in the center of the collage shows what awaited us as we walked into the school. What it cannot show was the air of hushed anticipation, of welcome and excitement. There is a part of the Episcopal service that reads ” Let us join our voices with the angels and archangels and all the company of heaven who forever sing this hymn of praise and thanksgiving..” I now know what the company of heaven means after being greeted in this way. It was as if we were all part of something transcendental,  full of mystery and meaning; of some endeavor that called us to be our better selves. It was so innocent and pure. I felt weightless and free. Natalia, Casey and Mimi were equally caught up in some mystery they could not explain.  We all visited El Dorado today.


      by mkeddal at June 18, 2015 03:56 AM

      June 17, 2015

      One Laptop per Child

      CONVOCATORIA ABIERTA PROYECTO: Espacios abiertos con tecnologías. – Bogotá, Colombia –

      olpccolombiaOLPC es una organización internacional comprometida con el desarrollo de una educación de calidad a través de la inclusión de las nuevas tecnologías en los procesos de aprendizaje.

      La misión de OLPC es crear una nueva cultura educativa en la que los niños “aprendan a aprender”, usando las tecnologías digitales que revolucione la forma en que educamos a los niños del mundo.

      Entendemos las TIC como las Tecnologías para la Innovación y la Creatividad, así es que gestionamos recursos con empresa privada para hacer realidad el proyecto: ESPACIOS CREATIVOS CON TECNOLOGÍAS, que beneficiará a 600 niños, niñas y jóvenes de 7 a 14 años, de 5 colegios de escasos recursos de la ciudad de Bogotá, en los que se desarrollarán clubes de tecnología en donde niños y niñas participarán en proyectos de robótica, programación de videojuegos, animación y computación física, que serán facilitados por 30 jóvenes líderes universitarios.

      No te pierdas la oportunidad de hacer parte de un proyecto innovador que involucra a instituciones educativas y organizaciones sociales que podrán en marcha los clubes de tecnología, a estudiantes universitarios que facilitarán los clubes de tecnología, y a niños, niñas y jóvenes que podrán participar en proyectos para crear con la tecnología.

      Objetivos del Proyecto:

      – Desarrollar habilidades de creatividad e innovación en 600 niños y jóvenes de 7 a 12 años, de 5 colegios y organizaciones sociales de zonas de escasos recursos económicos de la ciudad de Bogotá, a través de la implementación de proyectos de Robótica, Programación y Animación en espacios de jornada complementaria.

      – Consolidar una plataforma de voluntariado y de prácticas sociales en la que jóvenes universitarios puedan liderar proyectos creativos de construcción con tecnologías en jornadas pedagógicas complementarias.

      – Dotar a 5 colegios con 30 computadores XO, 20 Kits tecnológicos y guías de proyectos de robótica, programación, animación y computación física, para que desarrollen Espacios Creativos con Tecnologías en jornadas complementarias o en la jornada escolar.

      Convocatoria para Estudiantes Líderes Universitarios:

      Estamos buscando jóvenes universitarios interesados en generar impacto social a través del voluntariado o prácticas sociales. Bienvenido al proyecto ESPACIOS CREATIVOS CON TECNOLOGÍA que beneficiará a 600 niños y jóvenes de 7 a 14 años, de 5 colegios de escasos recursos de la ciudad de Bogotá, a través de la implementación de clubes de robótica, programación y animación en espacios de jornada complementaria, que serán facilitados por 30 jóvenes líderes universitarios como tú.

      Si estás interesado(a) postúlate aquí.

      Convocatoria para Instituciones Educativas y Organizaciones Sociales:

      Estamos buscando 5 instituciones educativas y/o organizaciones sociales líderes para implementar proyectos educativos con tecnología en jornada complementaria a la escolar, para que estudiantes de 7 a 14 años aprovechen su tiempo libre, desarrollen su potencial creativo y realicen proyectos de tecnología en Animación, Robótica, Programación de Videojuegos, y Computación Física.

      ¡No te pierdas esta oportunidad de hacer de tu institución educativa y organización un espacio para promover la creatividad e innovación a través de proyectos con tecnologías!

      Postúlate aquí.



      Más información:

      Aura Estela Mora Montero

      Gerente de Proyecto




      by mariana at June 17, 2015 08:23 PM

      Honduras: The Owen Project

      Whereof One Cannot Speak, Thereof One Must Remain Silent

      The title of this post comes from Wittgenstein’s work the Tractatus Logico-Philosophicus. It appears at the very end when Wittgenstein says that there is much about life that is beyond the power of language to convey. I was reminded of this when we went to our first school in Siguatepeque. It seems that Honduras and Texas are experiencing heavy rains and flooding. We couldn’t get to our school in the mountains near Tegucigalpa because of washed out roads so we set up shop at the Zari Hotel in Siguatepeque and visited a special needs school nearby. Most of the students there were deaf ,which was initially a bit disconcerting. We were already laboring under language difficulties because of our basic Spanish. This seemed to complicate matters even more. I couldn’t have been more mistaken. The teachers at the school translated our lessons into sign language, moving around the classroom facilitating interactions with the children in an unobtrusive and effortless manner. Sign language is full of passion and beauty. Being an Italian, I talk with my hands, but their communication was of a higher order. The yearning to make contact with another human being radiated from their fingers. The register of emotions on their faces,  the light in their eyes, the intensity of their gazes were more expressive and full of intent that any words might have conveyed. I suddenly realized that Wittgenstein may have been wrong about silence. Here silence was full of wonder and love. I can’t quite explain it but we all felt bathed in love. It seemed as if the students were surprised and gratified that we had come, that we had thought of them. When we started to move among them, to direct them to interesting applications, they reached out to touch us. Their touch was electric, totally vulnerable and trusting. Their enjoyment of the games and music on the XOs was just as innocent and heartfelt as everything else they did. Surely this is what Jesus meant when he said that only those who can become as children can enter the kingdom of God. Once again we came to teach, but it is we who are taught. I’m sure that I was not the only one moved by this special atmosphere. At first Casey and Mimi were a bit reserved, looking on and themselves the center of much interest. Yet very soon they too threw themselves into the experience, laughing and sharing; their eyes just as bright as those of the students. What a beginning!!!


      IMG_1138 IMG_1123 IMG_1117 IMG_1115IMG_1136

      by mkeddal at June 17, 2015 03:30 AM

      June 16, 2015

      Juan Chacon Free Software & Education | El Salvador

      FireFox OS App Development "Summer of Code" Begins

      I love my Firefox OS phone!

      Despite being an IT teacher, I'm often not an early adopter of new technologies, for several reasons:
        • I'm not a gadget person, and I'm not interested in technology for technology's sake.
        • I'm repulsed by consumerism, and completely turned off by technologies that view me as a consumer rather than a human being.
        • My interest in technology has from the beginning been rooted in the role it can play in social justice, broadening access to information and communication and expanding the possibilities for participatory democracy. I thus won't adopt new technologies that are proprietary consumer items. I am perfectly willing to wait for versions that emerge in the land of freedom in which I wish to dwell.
        I did get a mobile phone for a brief period several years back, but I didn't like it and the bill the first month was way too high, so I got rid of it and haven't had one since.

        I have a phone now running Firefox OS, and it is just what I want in a phone:
        • It is simple and easy to operate.
        • It let's me do the things that are important to me: make phone calls, send text messages, look at my calendar, look up contacts, listen to music, listen to FM radio, take pictures, find my location and get directions, with a clean, attractive interface that is a pleasure to use.
        • It lets me access its file system from my Ubuntu desktop machine through a USB connection, making it easy for me to add and remove music and other data.
        • It treats me like a human being, not a consumer -- it offers me useful tools and resources without constantly try to sell me stuff!
        I love my Firefox OS phone so much that I am commissioning one of my best and brightest former students, Alex Hirschberg, for a local "Summer of Code" type internship writing Firefox OS apps between now and August.

        The first app he will be writing we are calling LibriFox.  It is an audio book player for Librivox audio books. Since I don't have a car and either take the bus, walk, or sometimes bike to work, I like to listen to audio books as I travel.  This app will provide me with hours and hours of pleasure, and point me in the direction of listening to some of the large collection of classic literature available on the LibriVox site.

        I want to experiement during Alex's internship with the Extreme Programming processes to manage goals and maintain code quality. We'll specifically focus on user stories, iteration planning, unit tests, and refactoring.  Alex has already been schooled in the last two practices by his programming mentor.  This Summer will give him experience working with an on-site customer (me).

        Alex will be posting his code to his github repo. As soon as he sets it up for me, I'll begin using the issues tracker for user stories.

        Since we are planning a six week process with weekly iterations, I intend to make a new post after each iteration meeting to document how we do.

          by jelkner (noreply@blogger.com) at June 16, 2015 01:09 AM

          June 15, 2015

          Project Rive: Reaching Students in Haiti

          Parents’ Meeting

          Last week, we had our last parents’ meeting. At every school where we’re working, I asked the directors to organize a meeting with the parents so I could present the project, hand out consent forms, and take questions. In the … Continue reading

          by Sora at June 15, 2015 01:38 PM

          First Laptop Workshop

          Originally, we’d been planning to start laptop stuff Monday, or even the week after that, but I decided to have a preliminary thing on Saturday in order to give them more time to get used to the computers. That affected … Continue reading

          by Sora at June 15, 2015 01:20 PM

          AFAL’s Story

          The other night, I translated Bernadette’s explanation of how her organization came to be founded, which was also my opportunity to finally get the whole story. Today, I stopped by my first meeting of the organization. Here’s what I’ve learned. … Continue reading

          by Sora at June 15, 2015 01:19 PM

          Workshop Reflection: First Week

          We just got through our first week of workshops, and I’m anxious to see what the teachers will have come Monday. We’ve been groping towards an answer this whole time, and I think we’re getting closer but it all depends … Continue reading

          by Sora at June 15, 2015 01:19 PM

          June 14, 2015

          Project Rive: Reaching Students in Haiti

          Buried Treasure: Last Class Observation

          The first time I went to Yolande’s 5th grade classroom at the Catholic school, something strange happened. The sister introduced me and said I was there to observe her lesson, and she commented, “But I’m supposed to be done at … Continue reading

          by Sora at June 14, 2015 01:13 PM

          June 13, 2015

          ICT4D Views from the Field

          50 Solar Digital Libraries Ready for Vanuatu and Micronesia!

          Cal Poly LAES 411 students posing with the completed solar digital libraries

          P1160865 brightened

          This was the final week of classes at Cal Poly, and it was a busy one for the students in this Liberal Arts and Engineering Studies (LAES) project-based course, with the students completing the build of 50 solar digital libraries.


          Four of these students will be traveling with me to the Federated States of Micronesia (FSM) and Vanuatu later this summer. We are partnering with the US Peace Corps in both countries, to provide these 50 libraries to Peace Corps Volunteers stationed at remote, rural schools with no electricity or connectivity. The Cal Poly students will be leading trainings for the Peace Corps Volunteers in the use, maintenance, and troubleshooting of the libraries.


          The dates have been set for the travels: August for FSM and September for Vanuatu.

          by ljhosman at June 13, 2015 03:25 AM

          Project Rive: Reaching Students in Haiti


          The other day, two members of my team, Aidan and Zhane, arrived. You can expect to be seeing a lot more photos and maybe some guest posts from now on as they help me document what’s going on. I wanted … Continue reading

          by Sora at June 13, 2015 02:28 AM

          June 10, 2015

          One Laptop per Child

          Knowledge by OLPC reaches children in rehabilitation – Rwanda

          P1130394The Center CECYDAR/FIDESCO RWANDA was founded in 1992 by a Rwandan couple, Cypria and Daphrose RUGAMBA. The Center has welcomed children from very disadvantaged backgrounds.

          When children arrive at the Center, they enter a process of physical and psychological rehabilitation, as well as an intellectual and spiritual one. The goal is to heal the whole child and ultimately reunite them with their families, whenever possible. As soon as the home and family situation permits, children are reunited with family and reintegrated into their community.

          The more than twenty years of experience in the field have provided the Center with real expertise in the rehabilitation of children. The center is truly an expert organization in the successful reintegration of these children into their families and communities. It now has an effective, proven methodology, which has helped many children return to their families and to education.

          CECYDAR/FIDESCO RWANDA is convinced that the most natural and ideal living environment for a child is always his or her family. The Center seeks to reintegrate the child as soon as possible in a family environment (nuclear family, extended family or foster family). This reunification is accompanied by certain measures aimed at improving the economic situation of the family. After reunification, the Center monitors the short, medium and long term needs of the child. The Center can accommodate up to 50 children at a time. The average stay for a child lasts 3 to 6 months.

          While living in the Center CECYDAR/FIDESCO RWANDA, children have the opportunity to participate in the One Laptop per Child Program. Through an Open OLPC Learning room known as the “OLPC Corner”, children have the opportunity to participate in three week camps. This is often the first time many of these children have attended school. During these camps, children have the opportunity to acquire “Knowledge by OLPC” by the use of OLPC laptops as they explore the learning process.

          Participating children have the opportunity to learn to read, write stories, play educational games such as typing Tuttle, memorize, maze and dare, using the OLPC laptops. Other students have the opportunity to learn simple programming languages, including Scratch and Turtle Art. Celestine Ngarambe, of OLPC, is in charge of leading the children in their educational journeys. She assesses each child to ascertain his or her educational level and guides them as they learn to use the OLPC laptops.

          P1130393 P1130400 P1130404 P1130408 P1130456


          by mariana at June 10, 2015 05:14 AM

          June 09, 2015

          ICT4D Views from the Field

          Building 50+ Solar Digital Libraries

          We have reached the production stage for our Solar Digital Libraries! We’ve built 50 and counting….



          The hands-on work involved drilling, wire-cutting and wire-stripping, soldering, heat-shrinking, gluing, and Velcro-ing.


          The students were energetic, and showed up for four separate build meetings, which flew by, as someone would volunteer to play deejay, and then the music would play and the conversations would start. I’d like to thank these Liberal Arts and Engineering Studies students for their enthusiasm and perseverance—not just on this build, but for the entire quarter of hard work on all the various aspects of this project.


          There were many opportunities for Learn-By-Doing in this initiative/adventure, which was my first of building a product at a larger, assembly-line scale. Some of the challenges included ordering items in bulk, the unavailability of certain items, and various shipping challenges (What? The box has been sitting in Van Nuys for 10 days? Are you kidding?).


          I also discovered—the hard way—how extremely difficult it is to glue polypropylene plastics—which our waterproof box is made of! (Thank you 3M for saving the day!) This learning was in addition to what we learned earlier in the quarter about 3D printing, prototyping, and pricing. But this is just the tip of the iceberg of the things we learned once we jumped feet-first in to this endeavor and figured things out as we went along. By the way, this iteration is about our 4th or 5th version of the solar digital library. And there will be more to come, for sure…


          We’re very happy with how the libraries turned out, and look forward to bringing them to Peace Corps Volunteers in Vanuatu and the Federated States of Micronesia this summer.



          The library consists of:

          Banana Pi Microcomputer with WiFi Dongle and 32 GB SD Card
          10W Eco-Worthy Solar Panel
          Voltage Regulator
          10,000 mAh Rechargeable Battery
          Micro USB Connector Cords


          I also couldn’t resist adding this lovely photo of our team presenting our work at the Cal Poly Engineering Expo on May 29th  2015.


          by ljhosman at June 09, 2015 07:24 PM

          Project Rive: Reaching Students in Haiti

          Working For Free

          They put two chairs for us at the front of the room, in front of the bar that separated the heightened dirt-stage with the pulpit from the floor where the congregation sat. I sat in the chair, and one of … Continue reading

          by Sora at June 09, 2015 12:55 AM

          June 08, 2015

          Project Rive: Reaching Students in Haiti

          If The Mountain Won’t Come To You

          When Bernadette’s daughter, Martha, invited me to hike up a nearby mountain with her, I was excited. Even when I heard we’d be leaving at 6:30 in the morning and the trip would be three hours uphill. I know these … Continue reading

          by Sora at June 08, 2015 03:35 AM

          June 07, 2015

          Sugar Digest / Walter Bender

          Sugar Digest 2015-06-07

          Sugar Digest

          1. I am en route to the Google Code-in meet up in San Francisco. Looking forward to meeting Ignacio and Sam, our two finalists. I am hoping we’ll get some coding time in amidst all the activities that Google has planned.

          2. I was home for less than 48 hours, having just returned from Tel Aviv, where I ran a Turtle Blocks workshop with 30 children. The workshop was organized by the Center for Education Technology — many thanks for Ilan Ben Yaakov for all of his preparations, including completing the Hebrew translations. The kids did great, as expected, and where as this was only the second time I had run a workshop using the Javascript version of Turtle Blocks, things went more smoothly than I had expected. I did make one change to the UI as a result of my observations during the workshop: I disable screen-dragging by default as it was definitely confusing some kids, who would accidentally drag their blocks off the edge of the screen. It is not really necessary for the smaller programs that novices tend to write; experienced users can presumably enable dragging in order to have more room to organize their stacks of blocks. Tip-of-the-hat to Larry Denenberg from Trip Advisor, who also helped with the translations and has contributed to the design. The Turtle Blocks workshop was the quid pro quo for participating in four days of meetings with CET.

          The first two days were spent at MindCET, an incubator for educational technology in Yeruham in the Negev directed by Avi Warshavsky. Avi had organized a hackathon: we formed fifteen teams to work on project ideas. My team — Arnon Hershkovitz, Revital Rauchwerger, and Shachaf Sagi — worked on an extension of Turtle Blocks that opens up the opportunity to explore the power of “big data” by providing a “Cloud-service” for data collection and a new block, “fetch”, for programmatic access to the data. Our specific use-scenario was to address environmental issues through research-based learning, enriched via actual data collection and investigative programming. Together with the staff at CET we built a working prototype: an Arduino-based weather station that feeds data to the Cloud and the client-side Turtle code. I think the potential for such services is enormous: students engage in critical thinking in the process of being active citizens; they experience computational thinking and purposeful programming; and they collaborate on local and global levels. At the end of two days, each team presented to a panel of youth critics. Their reaction to our project was to ask, “Isn’t programming hard?”, to which I had an opportunity to quote Marvin Minsky: “Learning is hard fun.”

          Back in Tel Aviv, I participated in a conference, Shaping the Future, where I had the opportunity to hear a wide variety of perspectives on education technology. The focus was on going beyond the screen. The morning session was a series of presentations from the commercial sector: Cisco, Microsoft, Intel, and ???. Lots of impressive wares, but none of the presenters made a compelling case for learning potential of their technology. Indeed, the theme seemed to be “look what we built” instead of “look at what you can build”. But things got more interesting from there: Dale Dougherty, founder of Make Magazine and the Makerfaire, gave a nice overview of the maker community aesthetic. In my presentation, I pointed out that 50 years ago, Logo was already “beyond the screen” and subsequently give a quick snapshot of various Turtle Blocks projects involving sensors, robots, web services, etc. In the ensuing discussion, we touched on the issue of privacy. I took the minority opinion on the panel that there was never a reason to risk compromising the privacy of children and that none of the on-line tools that routinely mine identity data from children are necessary to use in the classroom. The audience, which was mostly comprised of teachers seemed to concur with my position. Next up was a presentation by Robert Gehorsam, whom I knew from his days at Prodogy in the 1980s. Robert is executive director of the Institute of Play, which has a intervention in one of the NYC public schools. The kids use game design as the basis of a project-based learning program, where the “core” curriculum is motivated by just-in-time learning. Steve Hodas completed the day’s talks with a description of IZone, an innovation incubator for the NY City public schools. His message: market disruption will not change schools; only organizational disruption will change schools. Something for us to think about as we plan the future of Sugar.

          In the community

          3. Call for papers for the special issue of RED (Journal of Distance Education):”Skills for coding and pre-coding”: The deadline for submitting manuscripts: 31 July 2015. The estimated publishing date is 15 September 2015. Publishing standards and guidelines for authors can be found at [http://www.um.es/ead/red/normasRED.htm#_Toc324610817]. Llamada a contribuciones para el número especial de RED (Revista de Educación a Distancia): “Competencias para la codificación y la precodificación”: * Fecha límite para enviar manuscritos: 31deJuliode 2015 * Fecha estimada para la publicación: 15 de Septiembre de 2015. Normas de publicación y pautas para los autores [http://www.um.es/ead/red/normasRED.htm#_Toc324610817].

          4. We will be holding an additional Sugar Labs oversight board meeting (SLOB) this month (we hold a meeting the first Monday of each month). Please join us on 15 June at 19:00 EST (Boston), 23:00 UTC on irc.freenode.net #sugar-meeting, to discuss strategy and tactics as we move forward as a community.

          5. For those of you who are interested, we hold our GSoC group meetings on Fridays, 11:00 EST (Boston), 14:00 UTC on irc.freenode.net #sugar-meeting.

          6. I am running a Turtle Blocks workshop in Bridgeport, Connecticut on 16 June.

          Tech Talk

          7. Martin Abente has announced that we are now in the testing phase of Sugar 105. Your feedback is important to us.

          Sugar Labs

          8. Please visit our planet.

          by Walter Bender at June 07, 2015 08:13 PM

          June 05, 2015

          Project Rive: Reaching Students in Haiti

          Mangos So Far

          This list is supposed to compliment the mistakes list by documenting all the times I’ve gotten free mangos (or the equivalent). 1. Last-minute tech support Normally, I rely on Unleash Kids volunteers to prepare the servers for me, and I … Continue reading

          by Sora at June 05, 2015 02:01 PM

          Mistakes So Far

          This post is mostly just a way of me getting things off my chest and reminding myself not to do this again. Maybe it will prove useful to someone else who ends up in the same situation; maybe it’ll be amusing for … Continue reading

          by Sora at June 05, 2015 04:08 AM

          June 03, 2015

          Honduras: The Owen Project

          There Was a Time When Meadow, Grove and Stream……

          Dear Friends,imagecropped-photo-41.jpg

          While Boston and the Northeast dig out from under another blanket of snow, here in Texas Spring has sprung. There has  been a generous amount of rainfall, so  Seguin occupies a happy Texas medium, in between drought and flooding. There are meadows filled with wildflowers and the leaves of the pecans and live oaks are fresh, abundant and vividly green. A landscape worthy of Wordsworth. This will be our 5th trip to Honduras. We will land in Tegucigalpa on June 15th and stay with our Honduran director, Oscar Ochoa. On the 16th we will travel into the mountains near his birthplace of Oropoli. Unfortunately, the 175 XO3 tablets that we ordered months ago will most likely not be in country when we are there. We will use already-deployed XO3s to train the teachers and introduce the available programs to the students. We will have to assure them that they will be receiving their own tablets soon. In years past I would have been nervous about this delay, with a head full of negative speculations. Now I feel strangely calm and unworried. Mission work creates reserves of trust and patience; as does teaching! On the 17th we will travel to Siguatepeque to visit 4 other schools, including a special needs school in Siguatepeque itself. The other schools will be in the surrounding mountains. This year we will be joined by two high school students: Casey Smithey and Thuy Nguyen. Linda, Richard and Natalia Grey are coming again, as is Meredith Cockerell. With Sally and I this makes us a party of 8. Good things come in small packages, I’ve heard. There are some rumors that the government will provide WiFi to the 15 schools we’ve been to over the years, which will enable rural students to continue their education after the 7th grade without boarding at a school in some near bye town. The expense makes this prohibitive and most students go to the coffee fields. Access to the internet will fulfill the mission of One Laptop per Child by truly opening up the world to   their curiosity and exploration. Honduran educational practices are still largely hierarchical and based on rote memorization. Access to all the resources of the internet may make rural education in Honduras more discovery-oriented and driven by problem-solving and critical thinking modalities. We can only pray. I’ll write again from Tegucigalpa.

          With anticipation,


          by mkeddal at June 03, 2015 01:34 PM

          June 02, 2015

          Honduras: The Owen Project

          The Tao of Honduras

          There is a line in the Tao te Ching where Lao Tzu writes that the journey of a thousand miles begins with a single first step. Now that I am back in Texas teaching, I’ve been thinking about the journey home, about the last step, the end of the journey. I wonder if the best kind of journey is the one that feels at its end as if you had never left at all. Might this mean that your experiences have changed you profoundly, that you are bringing back more than memories and photos? Could it mean that you can hold both places in your head and heart simultaneously? Can you be in two places at one time? Here I am stumbling around with words again. I found this in T.S. Eliot’s ” Little Gidding”:    We shall not cease from exploration/ And the end of our exploring/ Will be to arrive where we started/ And know the place for the first time.        Much better! My year teaching went so well that the days passed as if I were a Buddhist pilgrim circumambulating around the same temple so often that I lost a sense of the motion. Perhaps I’ve caught a glimpse of that most rare of experiences: contentment. I’ll not tempt fate by resting assured that my current frame of mind will continue.

          School ends this week and we leave for Tegucigalpa on the 15th, of June, returning on the 25th. More later.

          With thanks for your attention,



          by mkeddal at June 02, 2015 06:22 PM

          June 01, 2015

          OLE Nepal

          Finding calmness in the center of devastation

          Tundikhel, an only vast open space in between the city, is now filled with families who lost their homes in the recent earthquake. As we drive, walk or ride pass through the lanes alongside Tundikhel, we can see numerous tents…

          by Sofila Vaidya at June 01, 2015 10:31 AM

          May 31, 2015

          Nancie Severs

          Spring Forward > Summer Recovery! — Boston, MA

          Boston, MA

          Our New England Spring is always short but glorious. I caught the height of spring in Boston on May 8 &amp; 9. Then I went to Florida from May 10 to 18 and when I returned home our front garden was filled with color. Last week I was back in Boston and it was high 80's Fahrenheit. It felt like mid summer this week both here and in NH. How does the time pass so quickly?

          I hope you'll enjoy my recent IPhone photos and that they will catch you up on what I've been up to. In Boston on May 9 I went to the a Survivorship workshop for Gynecological Cancer Patients @the Farber. DF physicians presented the latest research, treatments and trials on these cancers, and a panel of survivors shared inspiring stories. The research presentations about DNA gene tumor studies and clinical trials and targeted and immuno therapies were very technical. I'm fairly informed and I first thought, " this is way over my head." Later when I heard the questions that other folks asked, I realized that everyone there gets this. And that it is important for us patients to get up to speed and to stay informed in order to be able to self advocate for the type of treatment we need. Anyone with questions about the content can get in touch with me. The presentation slides may be available on the Dana-Farber website.

          I flew down to Jacksonville on Sunday. In Jacksonville, we "Goldstein's" had family time as we placed the headstone on Mom's grave in a traditional short memorial service called "the unveiling." A veteran's plaque was also affixed to Daddy's stone and unveiled at the same time. My niece Aliza had applied for the plaque on Dad's behalf. She had to find and submit Daddy's military discharge records to make this possible. The small plaque looks like the folded American flag that is presented to families of veterans at funerals. My Dad fought in World War II in Tunisia and Italy. I just sorted his World War II photos &amp; mementos so that we can scan the better ones. Thanks Aliza. It's a lovely gesture, and we all really appreciate it.

          After the service, we had a beautiful lunch catered by my brother-in-law Lenny. He made great salads, Mom &amp; Berrie's rum cake, and two kinds of mandelbrot and rugelach. It was yummy! Thank you Lenny.

          I came back to Boston for some follow-up appointments. I had a CT scan. I stayed with Adele and Larry
          and Adele and I went to the annual Beacon Hill Hidden Gardens tour. The weather was great, we got lots of exercise climbing those Beacon Hills. We saw interesting homes and Gardens!

          There was a controversial blip on my CT scan. The short story is that my oncologist wanted a repeat scan and colonoscopy in Boston, the following week. So I was back at Adele's last week for more tests.

          For those of you that have read this far:), I heard good news from my oncologist this morning. She says they see "No Evidence of Disease." Finally, a remission has been declared!

          I transcribed the message Dr Wright left me this morning, on her way to Chicago for a big annual medical oncology meeting: She said:
          "Everything looked fantastic - we will get the pathology from the colonoscopy biopsies next week but everything looked normal there. Your CT scan looked terrific. I think this is all a spurious finding that was just normal gut motility that we just happened to catch on a CT scan and I’m sorry I had to put you through repeat imaging but we never want to take a chance and we want to be as clear about what we are dealing with as possible. So I feel very, very, very good about where things are and I feel like we have done a very thorough evaluation and we see no evidence of disease and I’m thrilled about this and I hope you are too."

          Hooray! Yes,I am both relieved and thrilled after a long year of treatment and the stress of the last couple of weeks. Thanks to Adele and Larry for once again being great hosts &amp; good sports with their "sometimes frequent visitor (additional family member); me.:)" Lenny brought me home from the hospital/colonoscopy yesterday in Boston and he is having a lovely NH visit. His timing was good and Mark &amp; I really appreciated his logistical help!

          I've done everything that was recommended to kill this cancer and more. I'm in recovery mode! I'm adapting to living with the side effects of treatment. I use my high energy times to get outside and enjoy myself and my lower energy times to enjoy being home.

          When this "Unexpected Journey" started I said that I've been so lucky and done so much (check my other blogs to share in those adventures) that I didn't have a bucket list! I must be feeling better as I've changed my mind! There are so many places I want to go, dear family and friends across the globe to spend time with and adventures still to be had! Mark and I will now be planning some travel to include a trip to Bangkok October/November and after that, when it gets cold in mid-December, I'll likely visit our West Coast kids. As my daughter Megan says: "You have an entire year's worth of travel to make up for." Indeed I do!

          Spring Forward&gt;Summer Recovery Time&gt;Fall Travel! I am so grateful.

          Treasure Each Day! Love, Nancie

          May 31, 2015 08:15 PM

          May 29, 2015

          Chris Ball

          Announcing GitTorrent: A Decentralized GitHub

          (This post is an aspirational transcript of the talk I gave to the Data Terra Nemo conference in May 2015. If you’d like to watch the less eloquent version of the same talk that I actually gave, the video should be available soon!)

          I’ve been working on building a decentralized GitHub, and I’d like to talk about what this means and why it matters — and more importantly, show you how it can be done and real GitTorrent code I’ve implemented so far.

          Why a decentralized GitHub?

          First, the practical reasons: GitHub might become untrustworthy, get hacked — or get DDOS’d by China, as happened while I was working on this project! I know GitHub seems to be doing many things right at the moment, but there often comes a point at which companies that have raised $100M in Venture Capital funding start making decisions that their users would strongly prefer them not to.

          There are philosophical reasons, too: GitHub is closed source, so we can’t make it better ourselves. Mako Hill has an essay called Free Software Needs Free Tools, which describes the problems with depending on proprietary software to produce free software, and I think he’s right. To look at it another way: the experience of our collaboration around open source projects is currently being defined by the unmodifiable tools that GitHub has decided that we should use.

          So that’s the practical and philosophical, and I guess I’ll call the third reason the “ironical”. It is a massive irony to move from many servers running the CVS and Subversion protocols, to a single centralized server speaking the decentralized Git protocol. Google Code announced its shutdown a few months ago, and their rationale was explicitly along the lines of “everyone’s using GitHub anyway, so we don’t need to exist anymore”. We’re quickly heading towards a single central service for all of the world’s source code.

          So, especially at this conference, I expect you’ll agree with me that this level of centralization is unwise.

          Isn’t Git already decentralized?

          You might be thinking that while GitHub is centralized, the Git protocol is decentralized — when you clone a repository, your copy is as good as anyone else’s. Isn’t that enough?

          I don’t think so, and to explain why I’d like you to imagine someone arguing that we can do without BitTorrent because we have FTP. We would not advocate replacing BitTorrent with FTP, and the suggestion doesn’t even make sense! First — there’s no index of which hosts have which files in FTP, so we wouldn’t know where to look for anything. And second — even if we knew who owned copies of the file we wanted, those computers aren’t going to be running an anonymous FTP server.

          Just like Git, FTP doesn’t turn clients into servers in the way that a peer-to-peer protocol does. So that’s why Git isn’t already the decentralized GitHub — you don’t know where anything’s stored, and even if you did, those machines aren’t running Git servers that you’re allowed to talk to. I think we can fix that.

          Let’s GitTorrent a repo!

          Let’s jump in with a demo of GitTorrent – that is, cloning a Git repository that’s hosted on BitTorrent:

          1  λ git clone gittorrent://github.com/cjb/recursers
          2  Cloning into 'recursers'...
          4  Okay, we want to get: 5fbfea8de70ddc686dafdd24b690893f98eb9475
          6  Adding swarm peer:
          8  Downloading git pack with infohash: 9d98510a9fee5d3f603e08dcb565f0675bd4b6a2
          10 Receiving objects: 100% (47/47), 11.47 KiB | 0 bytes/s, done.
          11 Resolving deltas: 100% (10/10), done.
          12 Checking connectivity... done.

          Hey everyone: we just cloned a git repository over BitTorrent! So, let’s go through this line by line.

          Lines 1-2: Git actually has an extensible mechanism for network protocols built in. The way it works is that my git clone line gets turned into “run the git-remote-gittorrent command and give it the URL as an argument”. So we can do whatever we want to perform the actual download, and we’re responsible for writing git objects into the new directory and telling Git when we’re done, and we didn’t have to modify Git at all to make this work.

          So git-remote-gittorrent takes it from here. First we connect to GitHub to find out what the latest revision for this repository is, so that we know what we want to get. GitHub tells us it’s 5fbfea8de...

          Lines 4-6: Then we go out to the GitTorrent network, which is a distributed hash table just like BitTorrent’s, and ask if anyone has a copy of commit 5fbdea8de... Someone said yes! We make a BitTorrent connection to them. The way that BitTorrent’s distributed hash table works is that there’s a single operation, get_nodes(hash) which tells you who can send you content that you want, like this:

          get_nodes('5fbfea8de70ddc686dafdd24b690893f98eb9475') =
            [, ...]

          Now, in standard BitTorrent with “trackerless torrents”, you ask for the files that you want by their content, and you’d get them and be happy. But a repository the size of the Linux kernel has four million commits, so just receiving the one commit 5fbdea8de.. wouldn’t be helpful; we’d have to make another four million requests for all the other commits too. Nor do we want to get every commit in the repository every time we ‘git pull’. So we have to do something else.

          Lines 8-12: Git has solved this problem — it has this “smart protocol format” for negotiating an exchange of git objects. We can think of it this way:

          Imagine that your repository has 20 commits, 1-20. And the 15th commit is bbbb and the most recent 20th commit is aaaa. The Git protocol negotiation would look like this:

          1> have aaaa
          2> want aaaa
          2> have bbbb

          Because of the way the git graph works, node 1> here can look up where bbbb is on the graph, see that you’re only asking for five commits, and create you a “packfile” with just those objects. Just by a three-step communication.

          That’s what we’re doing here with GitTorrent. We ask for the commit we want and connect to a node with BitTorrent, but once connected we conduct this Smart Protocol negotiation in an overlay connection on top of the BitTorrent wire protocol, in what’s called a BitTorrent Extension. Then the remote node makes us a packfile and tells us the hash of that packfile, and then we start downloading that packfile from it and any other nodes who are seeding it using Standard BitTorrent. We can authenticate the packfile we receive, because after we uncompress it we know which Git commit our graph is supposed to end up at; if we don’t end up there, the other node lied to us, and we should try talking to someone else instead.

          So that’s what just happened in this terminal. We got a packfile made for us with this hash — and it’s one that includes every object because this is a fresh clone — we downloaded and unpacked it, and now we have a local git repository.

          This was a git clone where everything up to the actual downloading of git objects happened as it would in the normal GitHub way. If GitHub decided tomorrow that it’s sick of being in the disks and bandwidth business, it could encourage its users to run this version of GitTorrent, and it would be like having a peer to peer “content delivery network” for GitHub, falling back to using GitHub’s servers in the case where the commits you want aren’t already present in the CDN.

          Was that actually decentralized?

          That’s some progress, but you’ll have noticed that the very first thing we did was talk to GitHub to find out which hash we were ultimately aiming for. If we’re really trying to decentralize GitHub, we’ll need to do much better than that, which means we need some way for the owner of a repository to let us know what the hash of the latest version of that repository is. In short, we now have a global database of git objects that we can download, but now we need to know what objects we want — we need to emulate the part of github where you go to /user/repo, and you know that you’re receiving the very latest version of that user’s repo.

          So, let’s do better. When all you have is a hammer, everything looks like a nail, and my hammer is this distributed hash table we just built to keep track of which nodes have which commits. Very recently, substack noticed that there’s a BitTorrent extension for making each node be partly responsible for maintaining a network-wide key-value store, and he coded it up. It adds two more operations to the DHT, get() and put(), and put() gives you 1000 bytes per key to place a message into the network that can be looked up later, with your answer repeated by other nodes after you’ve left the network. There are two types of key — the first is immutable keys, which work as you might expect, you just take the hash of the data you want to store, and your data is stored with that hash as the key.

          The second type of key is a mutable key, and in this case the key you look up is the hash of a public key to a crypto keypair, and the owner of that keypair can publish signed updates as values under that key. Updates come with a sequence number, so anytime a client sees an update for a mutable key, it checks if the update has a newer sequence number than the value it’s currently recorded, and it checks if the update is signed by the public key corresponding to the hash table key, which proves that the update came from the key’s owner. If both of those things are true then it’ll update to this newer value and start redistributing it. This has many possible uses, but my use for it is as the place to store what your repositories are called and what their latest revision is. So you’d make a local Git commit, push it to the network, and push an update to your personal mutable key that reflects that there’s a new latest commit. Here’s a code description of the new operations:

          // Immutable key put
          hash(value) = put({
            value: 'some data'
          // Mutable key put
          hash(key) = put({
            value: 'some data',
            key: key,
            seq: n
          // Get
          value = get(hash)

          So now if I want to tell someone to clone my GitHub repo on GitTorrent, I don’t give them the github.com URL, instead I give them this long hex number that is the hash of my public key, which is used as a mutable key on the distributed hash table.

          Here’s a demo of that:

          λ git clone gittorrent://81e24205d4bac8496d3e13282c90ead5045f09ea/recursers
          Cloning into 'recursers'...
          Mutable key 81e24205d4bac8496d3e13282c90ead5045f09ea returned:
          name:         Chris Ball
          email:        chris@printf.net
              master: 5fbfea8de70ddc686dafdd24b690893f98eb9475
          Okay, we want to get: 5fbfea8de70ddc686dafdd24b690893f98eb9475
          Adding swarm peer:
          Downloading git pack with infohash: 9d98510a9fee5d3f603e08dcb565f0675bd4b6a2
          Receiving objects: 100% (47/47), 11.47 KiB | 0 bytes/s, done.
          Resolving deltas: 100% (10/10), done.
          Checking connectivity... done.

          In this demo we again cloned a Git repository over BitTorrent, but we didn’t need to talk to GitHub at all, because we found out what commit we were aiming for by asking our distributed hash table instead. Now we’ve got true decentralization for our Git downloads!

          There’s one final dissatisfaction here, which is that long strings of hex digits do not make convenient usernames. We’ve actually reached the limits of what we can achieve with our trusty distributed hash table, because usernames are rivalrous, meaning that two different people could submit updates claiming ownership of the same username, and we wouldn’t have any way to resolve their argument. We need a method of “distributed consensus” to give out usernames and know who their owners are. The method I find most promising is actually Bitcoin’s blockchain — the shared consensus that makes this cryptocurrency possible.

          The deal is that there’s a certain type of Bitcoin transaction, called an OP_RETURN transaction, that instead of transferring money from one wallet to another, leaves a comment as your transaction that gets embedded in the blockchain forever. Until recently you were limited to 40 bytes of comment per transaction, and it’s been raised to 80 bytes per transaction as of Bitcoin Core 0.11. Making any Bitcoin transaction on the blockchain I believe currently costs around $0.08 USD, so you pay your 8 cents to the miners and the network in compensation for polluting the blockchain with your 80 bytes of data.

          If we can leave comments on the blockchain, then we can leave a comment saying “Hey, I’d like the username Chris, and the hash of my public key is <x>“, and if multiple people ask for the same username, this time we’ll all agree on which public key asked for it first, because blockchains are an append-only data structure where everyone can see the full history. That’s the real beauty of Bitcoin — this currency stuff is frankly kind of uninteresting to me, but they figured out how to solve distributed consensus in a robust way. So the comment in the transaction might be:


          It’s interesting, though — maybe that “gittorrent” at the beginning doesn’t have to be there at all. Maybe this could be a way to register one username for every site that’s interested in decentralized user accounts with Bitcoin, and then you’d already own that username on all of them. This could be a separate module, a separate software project, that you drop in to your decentralized app to get user accounts that Just Work, in Python or Node or Go or whatever you’re writing software in. Maybe the app would monitor the blockchain and write to a database table, and then there’d be a plugin for web and network service frameworks that knows how to understand the contents of that table.

          It surprised me that nothing like this seems to exist already in the decentralization community. I’d be happy to work on a project like this and make GitTorrent sit on top of it, so please let me know if you’re interested in helping with that.

          By the way, username registration becomes a little more complicated than I just said, because the miners could see your message, and decide to replace it before adding it to the blockchain, as a registration of your username to them instead of you. This is the equivalent of going to a domain name registrar and typing the domain you want in their search box to see if it’s available — and at that moment of your search the registrar could turn around and register it for themselves, and then tell you to pay them a thousand bucks to give it to you. It’s no good.

          If you care about avoiding this, Bitcoin has a way around it, and it works by making registration a two-step process. Your first message would be asking to reserve a username by supplying just the hash of that username. The miners don’t know from the hash what the username is so they can’t beat you to registering it, and once you see that your reservation’s been included in the blockchain and that no-one else got a reservation in first, you can send on a second comment that says “okay, now I want to use my reservation token, and here’s the plain text of that username that I reserved”. Then it’s yours.

          (I didn’t invent this scheme. There’s a project called Blockname, from Jeremie Miller, that works in exactly this way, using Bitcoin’s OP_RETURN transaction for DNS registrations on bitcoin’s blockchain. The only difference is that Blockname is performing domain name registrations, and I’m performing a mapping from usernames to hashes of public keys. I’ve also just been pointed at Blockstore, which is extremely similar.)

          So to wrap up, we’ve created a global BitTorrent swarm of Git objects, and worked on user account registration so that we can go from a user experience that looks like this:

          git clone gittorrent://github.com/cjb/foo

          to this:

          git clone gittorrent://81e24205d4bac8496d3e13282c90ead5045f09ea/foo

          to this:

          git clone gittorrent://cjb/foo

          And at this point I think we’ve arrived at a decentralized replacement for the core feature of GitHub: finding and downloading Git repositories.

          Closing thoughts

          There’s still plenty more to do — for example, this doesn’t do anything with comments or issues or pull requests, which are all very important aspects of GitHub.

          For issues, the solution I like is actually storing issues in files inside the code repository, which gives you nice properties like merging a branch means applying both the code changes and the issue changes — such as resolving an issue — on that branch. One implementation of this idea is Bugs Everywhere.

          We could also imagine issues and pull requests living on Secure Scuttlebutt, which synchronizes append-only message streams across decentralized networks.

          I’m happy just to have got this far, though, and I’d love to hear your comments on this design. The design of GitTorrent itself is (ironically enough) on GitHub and I’d welcome pull requests to make any aspect of it better.

          I’d like to say a few thank yous — first to Feross Aboukhadijeh, who wrote the BitTorrent libraries that I’m using here. Feross’s enthusiasm for peer-to-peer and the way that he runs community around his “mad science” projects made me feel excited and welcome to contribute, and that’s part of why I ended up working on this project.

          I’m also able to work on this because I’m taking time off from work at the moment to attend the Recurse Center in New York City. This is the place that used to be called “Hacker School” and it changed its name recently; the first reason for the name change was that they wanted to get away from the connotations of a school where people are taught things, when it’s really more like a retreat for programmers to improve their programming through project work for three months, and I’m very thankful to them for allowing me to attend.

          The second reason they decided to change their name because their international attendees kept showing up at the US border and saying “I’m here for Hacker School!” and.. they didn’t have a good time.

          Finally, I’d like to end with a few more words about why I think this type of work is interesting and important. There’s a certain grand, global scale of project, let’s pick GitHub and Wikipedia as exemplars, where the only way to have the project be able to exist at global scale after it becomes popular is to raise tens of millions of dollars a year, as GitHub and Wikipedia have, to spend running it, hoarding disks and bandwidth in big data centers. That limits the kind of projects we can create and imagine at that scale to those that we can make a business plan for raising tens of millions of dollars a year to run. I hope that having decentralized and peer to peer algorithms allows us to think about creating ambitious software that doesn’t require that level of investment, and just instead requires its users to cooperate and share with each other.

          Thank you all very much for listening.

          (You can check out GitTorrent on GitHub, and discuss it on Hacker News. You could also follow me on Twitter.)

          by cjb at May 29, 2015 04:23 PM

          OLE Nepal

          Continuing our fruitful effort @ Kirtipur

          OLE Nepal’s Earthquake Relief Effort has been sprouting positive results in both Child Friendly Spaces of Kirtipur and Khokana/Bungamati. Our volunteers has been traveling everyday to provide relief for children by engaging them in interactive activities from our education tool.…

          by Sofila Vaidya at May 29, 2015 10:18 AM

          May 28, 2015

          ICT4D Views from the Field

          SPELL Solar Digital Library Prototype Debuts at SLO MakerFaire

          The students in Cal Poly’s Liberal Arts and Engineering Studies (LAES) 411 proudly debuted the SPELL solar powered digital library prototype at the San Luis Obispo MakerSpace Expo on May 9, 2015.


          The Solar Powered Educational Learning Library (SPELL) is designed for remote, rural schools with no electricity or Internet access. It provides an offline digital library, yet through a WiFi hotspot, simulates an online experience for any web-enabled device.


          The team has partnered with the US Peace Corps in the Federated States of Micronesia (FSM) and Vanuatu, to distribute 50 of these libraries to remote Pacific Island schools in August/September 2015. Team members will travel to FSM and Vanuatu to introduce the libraries and provide trainings to the Peace Corps volunteers, who in turn will be using them at the schools where they are stationed as part of their mission to teach English and use technology, where possible.


          The library is designed to be a plug-and-play, all-in-one kit, taking advantage of the miniaturization and decreasing costs of computers and related technology. The technology used in the SPELL library is entirely off-the-shelf, which makes it open access, as well as affordable. The educational content is also entirely open access.

          The goal for the library was that it be as simple and straightforward as possible. The team will meet its target price of less than $150 per unit with this first production run of 50 units.


          The library consists of:

          Banana Pi Microcomputer with WiFi Dongle and 32 GB SD Card
          10W Eco-Worthy Solar Panel
          Voltage Regulator
          10,000 mAh Rechargeable Battery
          Micro USB Connector Cords

          Stay tuned for project updates and developments!

          by ljhosman at May 28, 2015 03:42 PM

          OLPC Tuva

          Memories of Ondar

          Today, I stumbled upon a photo of me with Kongar-ol Ondar, when he visited San Francisco some time ago. We had dinner that evening. It was a memorable evening, thanks to my good friends Phoebe and Ralph. I had listened to Ondar’s music, seen the documentary about him and Tuva, watched Feynman’s videos about Tuva, […]

          by sv3rma at May 28, 2015 06:24 AM

          May 27, 2015

          Ghana Together

          Another UDDT Toilet Going Up in Axim, Ghana! Thank you Axim Youth Alliance!!

          You all remember the famous toilet that the Pacific Northwest Engineers Without Borders Chapter (based in Bellingham, WA) built in Axim at a Junior High, in coordination with Western Heritage Home (our Axim-based partner NGO there) with a little facilitating from Ghana Together. It was dedicated and open for use in Feb 2014. <o:p></o:p>

          Engineers Without Border UDDT Toilet Built at an Axim Junior High School

          We visited this new design urine diversification/dehydration toilet in Feb. 2015—literally. Maryanne can vouch for the fact that IT WORKS, even for senior American females!! She was skeptical, but Colleen Mitchell, EWB engineer extraordinaire, kept reassuring her…
          Anyway, Axim is the kind of place where word gets around, and Headmistress Esther Abbey is the kind of woman who goes after new good things for “her students." So, she requested Western Heritage Home to replace the “old” toilet at her Methodist “Government” Primary/JHS school, with nearly 1000 students.
          Headmistress Esther Abbey, with two of the Axim Library Staff. Her school was also one of the first to adopt the Axim Public Library's Mobile Library to Schools service
          "Old Toilet"---VERY, VERY Old!!
          We of Ghana Together loved the idea of building another UDDT, having seen for ourselves how much of an improvement the first one has been for the students (and teachers).
          This low impact---no electricity/no water---design is so much better than the old “ventilated pit” type commonly built there. We want the knowledge of this worldwide engineering effort to be spread. What better way than to get another 1000 kids familiar with the concept??
          So, we informed James Kainyiah, the WHH Chair, that somehow we’d find the funds, but we requested that the folks there provide volunteer help as possible, keeping in mind that few people there actually have tools like sledgehammers, wheelbarrows, work gloves, saws, hammers, etc. And with the power out a lot, most days are just twelve hours of daylight to do everything, but still…
          Indomitable James engaged the help of the AXIM YOUTH ALLIANCE (AYA).
          Just this past Saturday (May 23) members of the AYA managed to tear down the old toilet. Wow!!! <o:p></o:p>
          Somehow these guys found a truck...and got to work!
          What shall we do with all this concrete?
          Haul it into town...

          ...and use it to fill potholes!!

          Founded in Sept, 2014, this organization of the under-35 age group in Axim has as its mission to work towards the advancement of Axim and its environs in terms of infrastructure, capacity building, and human resource. <o:p></o:p>

          We don’t know much about them at this point, but we are very grateful for their efforts.

          And we think it’s REALLY great that such a group has formed!! Possibilities here…<o:p></o:p>
          Now the new building can commence in the next few weeks. We asked about what the kids are supposed to do with no toilet for perhaps the rest of this term, but we were told that they were not using the old toilet anyway, but were opting for the bush…<o:p></o:p>

          Stay tuned...<o:p></o:p>

          And if you’d like to help top off the toilet fund…we are:<o:p></o:p>
          <o:p>Ghana Together (http://ghanatogether.org)</o:p>
          <o:p>808 Addison Place, Mount Vernon, WA 98273</o:p>
          <o:p>Email: info@ghanatogether.org</o:p>

          by Ghana Together (noreply@blogger.com) at May 27, 2015 02:06 AM

          May 26, 2015

          Sugar Digest / Walter Bender

          Sugar Digest 2015-05-26

          1. It is with great sadness that write these words: Marco Presenti Gritti, the principal Sugar developer from Red Hat from 2006 to 2008 and one of the founders of Sugar Labs, passed away this past weekend after a long illness. Marco was a brilliant engineer whose work still reverberates throughout the Sugar stack and a warm, personable colleague, father, and husband. We will miss you Marco.

          Sugar Digest

          2. For those of you who are interested, we hold our GSoC group meetings on Fridays, 11:00 EST (Boston), 14:00 UTC on irc.freenode.net #sugar-meeting.

          Tech Talk

          3. Peter Robinson, Sam Parkinson, Sean Daly, and Iain Brown Douglas have done a great job of revamping the Sugar on a Stick spin site for Fedora.

          Sugar Labs

          4. Please visit our planet.

          by Walter Bender at May 26, 2015 01:32 PM

          May 25, 2015

          OLE Nepal

          Relief efforts at Khokana and Bungamati

          Last week, our team members had visited Khokana and Bungamati areas to observe the situation of the people, particularly of the children. After understanding the critical environment of the area, our team decided to carry on the relief effort to…

          by Sofila Vaidya at May 25, 2015 05:03 AM

          May 24, 2015

          OLE Nepal

          Sindhupalchowk: ruins and relief

          On May 20, I travelled from Kathmandu to Liskankhu, Sindhupalchowk to help with a relief program. Sindhupalchowk is one of the most severely damaged districts by the earthquake. It had been less than two months that I had travelled the same area…

          by Dovan Rai at May 24, 2015 11:21 AM

          May 23, 2015

          Hands of Charity XO Project | Kenya

          Hands of Charity Technology Center Success

          2013-09-16 17.44.15(2)WP_20141230_054

          Busy weekend marketplace center sessions.

          2014-11-29Marketplace--1 Busy weekend marketplace center sessions.

          Hands of Charity Bukokholo Marketplace Technology Education Center is a hub of activity.  It attracts children from the many villages and homes around the hills north of Bukokholo.  On weekends more than 100 children come to use the 50, now aging laptops that were provided by Small Solutions and funded by students from a high school in Massachusetts.

          During the week these laptops are taken to schools int he area by the Hands of Charity teams.  They serve more than 2000 children through their programs.  This is the success model.   Small Solutions Big Ideas will help others teams in our network develop models such as these.   A new Center has started north of Nairobi on Thika road in the Marurui Estate by Krys Kakoba of the OLPC Alliance, and Maina Kiambigi, founder of the Pleng School. Together we are developing this model  to bring technology the most direct and speedy way to the most number of children.   Below is our strategy premises.

          Why ‘Centers for Technology for Education’

          In Kenya schools where the need is the greatest, we are challenged by the absence of resources to support technology. Waiting for electricity, and every teacher to be ready comprises the furture for the children waiting now. We cannot wait. Our model is setup to be fast and flexible, and to concentrate expertise and technology in these centers. There we can build and deliver programs for member schools as network of technology educators and innovative schools :

          Why? Schools do not reliably have:
          -Electricity (sufficient and reliable)
          -Safe storage for equipment
          -Connectivity (both available and sufficient)
          -Teachers ready to use technology
          -Time for teachers to receive training (demands on their time are already challenging)
          -Experience to select and apply technology to improving learning (integration)
          – Resource staff to maintain technology over the long term

          Why our model of technology delivery and education solves these problems:
          -Concentrate expertise and resources where they can be maintained and enhanced
          -Establish trained teams dedicated to schools and teachers to build strong programs
          -Hire staff with technical expertise to configure, repair, upgrade, and maintain the technology
          -Obtain the latest and best technology solutions for the member schools
          -Teams are dedicated to schools and bring technology with them to implement programs
          -Teachers attend training workshops in the centers or at their schools
          -Teachers are part of a regional technology educators network.

          by smallsolutionsbigideas at May 23, 2015 03:35 PM

          May 22, 2015

          OLE Nepal

          Bringing smiles in innocent faces

          Sabita and Sawal started setting up the laptops and slowly passed each one around. All the children in the room seemed very excited and happy to see the green tool placed in front of them. And that was exactly what…

          by Sofila Vaidya at May 22, 2015 06:03 AM

          May 19, 2015

          Juan Chacon Free Software & Education | El Salvador

          A Brief History of 22 Years as an OER Activist

          Charles Severance (aka Dr. Chuck) just sent Allen Downey and me this video he shot of his first ever meeting with Allen at Pycon last month.  I had met Allen face to face for the first time only two years earlier at Pycon 2013, so I understood his thrill at the moment.

          Both of us had created "remixed" textbooks based on Allen's original 1999 How to think like a computer scientist.  1999 was at the very beginning of what has become the open educational resource (OER) effort, and Allen was a true pioneer.  In translating his Java textbook into Python, I became his first follower, and helped him, in the manor described so well by Derek Sivers' How to start a movement, broaden his impact as an OER leader.

          The book as since been mixed and remixed several times in several different languages, both programming languages and natural languages. There is even an on-line interactive edition.

          Seeing Dr. Chuck's video made me reflect on my 22 year journey as an open educational resource activist, and I thought now might be a good opportunity to write a bit of that history down, so that as old age approaches, I won't forget it all. It has been a joyous journey, and I feel fortunate to have been a part in turn of the free software movement, the Python community, and the open educational resources project.



          I enrolled in a masters degree program at Bowie State University.  The computing environment there consisted of a VAX machine loaded with GCC.  GCC introduced me to the GNU project and the free software movement, which appealed immediately to my left-wing politics and knee-jerk egalitarianism.

          Wanting to run GCC on my home PC, I found GNU/Linux. My first distribution was Yggdrasil followed by Slackware.



          I participated in a Summer workshop organized by Prince George's County Public School's visionary supervisor of Mathematics, Dr. Martha Brown, in which she brought together a group of math teachers from the school system to create our own educational resources.  The experience was both liberating and invigorating, but we failed to develop an effective means of distributing the materials we made once we were finished making them. It occurred to me that the World Wide Web, which was just coming into common use then, could provide such a mechanism for the collaborative development and distribution of educational materials. 



          Motivated by the College Board's switch from Pascal to C++, I went looking for a suitable programming language for our first year programming course and found Python.  Python was wonderful and the community was warm and welcoming, but at the time there were no textbooks using the language for introductory programming (and I don't think another high school anywhere in the world using Python).  Looking on the web, I found Allen Downy's Java textbook, How to think like a computer scientist.  HTTLCS was released under the GNU GPL, and I was thus free to make changes to it.  While I didn't feel competent to write a textbook from scratch, I did feel able to translate Allen's Java textbook into the Python textbook I needed, so that's what I did.  Soon after starting the translation process I setup the Open Book Project on ibiblio to host the work.



          The Knowledge Trust honored me with their Education Award.  I'm not usually one for pomp and circumstance, but I have always treasured this award, since I know it was given in the same spirit in which it was earned.  While I tend to be much more intrinsically than extrinsically motivated, it does feel good to be recognized for my efforts by folks for whom I have the deepest respect.

          As I embark this year on new OER projects for Firefox OS, GIS, and MicroPython, it is great to have the opportunity to take a brief look back.

          by jelkner (noreply@blogger.com) at May 19, 2015 12:37 AM

          May 18, 2015

          OLE Nepal

          Khokana Bungamati

          On Sunday afternoon, Deepa , Sabrina and I visited Khokana and Bungmati to observe ‘Child Friendly Spaces’, temporary playgrounds set up by different humanitarian organizations to address the emotional needs of children whose lives were affected by the recent earthquake in Nepal.…

          by Dovan Rai at May 18, 2015 09:23 AM

          May 15, 2015

          Danishka Navin's Diary

          Blankets give them enough warm but not Education!

          As I mentioned in my previous post, I flew to Nepal on 1st of May 2015 and added Day 2 and Day 3 photos to my flickr  album. It's really hard to explain the situation there but I hope you can get an idea.

          Another evening in Nepal with dark and fear of aftershocks

           Blankets give them enough warm but not Education!

          What's the next step?

          During my visit to Dharding on 3rd of May 2015, I learned that I can do much better work with my experience. There is a small school in the village with 400 students and 8 teachers.

          Yes, I decided to help them with a school lab with Open Source Education tools.

          I have been running a similar project in Sri Lanka and I had a plan to do my next deployment with Raspberry Pi.

          Why Raspberry Pi?

          Simply: Its cheap and portable.
          Its much easier to relocate a lab in case of an emergency and its really cheaper than generic desktop machines.

          What's required?
          Single set need LCD Display, Keyboard/Mouse, Power Supply, Storage/Memory Card in addition to the RPi 2. 

          I bought Raspberry Pi 2 on last evening

          Operating System?
          Hanthana Linux, a Fedora remix bundle with bunch of Educational tools and Sugar Desktop.

          LibreOffice, Firefox, VLC, Educational Tools, Gnome/Sugar Desktop.

          Not in the scope for now.

          I would like to expand this in to several schools, based on the support I get from the community. I can't afford several devices and also I need local community to support by series of workshops to teachers and students.

          They were about to receive new cloths.. 
          Can you imagine if they touch a computer for the first time?

          Wanna join?

          Feel free to contact me if you willing to help this project.

           They have no idea about their future but you can make it!

          by Danishka Navin (noreply@blogger.com) at May 15, 2015 09:38 PM