Archive for June 2013

Generating documentation for OppiaMobile

This afternoon, I’ve been figuring out how to produce some nice documentation for the OppiaMobile Django server. I recently got the Django app published on PyPi, at: (it’s still very much under development, just in case you’re inclined to install!), so wanted some docs, especially for the installation, upgrading and REST API.

Using Sphinx, I successfully got it to build a local documentation set of html files, but rather than manually post these to a static website evry tiem I update, I looked to use ReadTheDocs to dynamically create my documentation from my source code on Github. My first mistake was to assume that ReadTheDocs would just read the built html files… it doesn’t… it generates it’s own set of docs from the Sphinx /docs/ file.

So although my first attempts at building the docs from ReadTheDocs appeared to successfully complete, I was getting errors in the build output log about not being able to find my Django settings, modules etc – so the documentation was only partially complete, since it had skipped over any of the .rst files which linked to Django modules. I eventually found the answer to set up a local file in my docs directory and edit my sphinx slightly – details here.

So I now have the documentation upa nd running at: – although at the moment the docs are rather sparese at the moment – I need to spend some time getting these written correctly.

Visit to Addis, Raspberry Pi and OppiaMobile

I realise it’s been quite a while since I’ve posted anything up, over a month. Usually I like to post regularly, but I seem to have got a little behind, probably mainly because much of the work I’ve been doing recently hasn’t been particularly blog-worthy (project set-up, documentation, paperwork etc).

I was recently back in Addis for a couple of weeks, we still had funding for travel left from our previous project so needed to use it or lose it. We spent quite a lot of time with AMREF and the Ministry of Health, we’re hopefully going to be running a project with them – but I’ll give more news on this once the funding is properly confirmed. I also had chance to catch up with a lot of people, although we only stayed in Addis, no trip up to Mekelle. Addis is changing very quickly, every time I go there are many new buildings (either completed or under construction), and this time they’ve started to put in a tram system (not sure when this is due to be completed). What was interesting was the number of smartphones around now, many people now have one. OK, this was Addis so maybe the situation isn’t the same out in the rural areas, but it is a big change from only 18 months ago. One of the master students from Adama Uni who I met up with estimated that over 30% of the students in his class now have (Android) smartphones, up from 0% about a year ago.

I’ve also been working a bit with my Raspberry Pi, I got one of the camera modules, so have been having a play around with that, creating some time-lapse videos and a motion dectection (using this script), but as yet nothing quite good enough to post up here.

Finally, I’ve been doing some work on the OppiaMobile Android app and server. For the app there were a few bugs that I needed to get fixed up, and are now released over on Google Play, but the main work I’ve been doing is to restructure the server side. Before the focus was all on quizzes and the mobile learning courses seemed to be hidden away. So I wanted to reverse the focus so the course became the main focus, I’m in the process of putting up the updated site at:, but I’m still working on it right now so not everything may work. I’ve also been learning about how to package up and distribute django apps (reference) and I now have a first verison of the OppiaMobile server side released onto the Python Package Index, at: