Riccardo (ruphy) Iaconelli – blog

This is my main weblog.

Voices from the first WikiToLearn sprint…



Thanks to the support from KDE e.V., the WikiToLearn (W2L) community gathered for its first sprint in the beautiful setting of Bormio, in the middle of the Alps. The main goal of the meeting was to prepare the WikiToLearn website for the new year. Courses are starting for many students so we want to provide an open structure for people who would like to share and spread the knowledge. The sprint took place from Saturday 28 Sept to Monday 30 Sept. It was only three days, but productivity was set on high so we were able to complete all our self-assigned tasks.


Our setting was a private home that was like a castle: a shower with color therapy, mattresses for everyone and wonderful views of Bormio’s mountains. We brought food so we didn’t have to go out and stop working. Machines that turned pizza into code. Serious workers. The group was diverse, and except for Riccardo, who has been working on the project from the beginning, we have only been working on the project just since April.


Some sprinters worked on software development, some with infrastructure, others with content. Some people were brand new to the project, bringing nothing but their interest, commitment and willpower. On the first day we started with brain-storming and planning the work with a strange new method proposed by Riccardo. As usual for him, in the beginning the method seemed messy and turned out to be successful. We developed some stories with the form ” as a <user>, I want to <goal>, to <reason>”. We then split up into small groups and transformed the stories into real tasks that went into a big “to-do” column. One by one, we moved them to “in progress” and finally to the “done” column. Our objective was get every task of every story into the last column by the end of the sprint.


Riccardo gives the opening presentation

Working, working and working, the days passed by, while a silent enemy was slithering in the house and making the work harder: The Cough. In the beginning there was just one Infector and everyone else survived, protected with strong immune defenses. One night we realized that our project was being blessed with a sign from the gods—The Red Supermoon. We went out between 2 and 6 AM to see the lunar eclipse (and to do more brainstorming), floating in some natural pools with thermal water. It was a wonderful experience, but the day after everyone was ill.


Under the moon, we got a magical transfusion, expanding our will, our force, our wisdom. The next day we realized that most of the stories were in the “done” column. Had it been us? Or some supernatural power? They were completed tasks; nothing else matters.


A slightly malfunctioning piece of code makes coders desperate… or as we screamed at the meeting: “È TUTTO ROTTO!!!” (Everything is broken)

The Vision

Before we could start developing the infrastructure, a vision of the project was required. This is fundamental, because it’s like the constitution of the WikiToLearn Project. Having a clear purpose gives a focus and the motivation to persevere.

While walking around the town, we discussed, and between a dish of pasta and a pizza, we finally came to a well-defined vision:

“WikiToLearn wants to provide free, collaborative and accessible text books to the whole world. We provide a platform where learners and teachers can work together to complete, refine and reassemble notes and lecture materials in order to create textbooks that are tailored precisely to needs. Knowledge only grows if it is shared.



WikiToLearn concentrates on providing educational content in the most efficient way. Content reliability is assured by a integrated peer-review system and a quick wiki method for correcting mistakes.

It was also important to develop the structure of the work we have to do. Everyone had a role and was clear about what to do and who to address when something was beyond their own capacities/competence. We created 6 stories, based on what we thought were the most important features for W2L. They were written on the blackboard.

Every story was then divided into tasks. Each task was assigned an effort score (a unit of effort was 25 minutes of intense, focused work with a 5 minute break). Then we divided into teams, and each took a task.



The meal/conference/hacking/sleeping/everything room




A key feature for people who want to contribute to W2L is to have a way to use their LaTeX lecture notes as-is without rewriting the entire notebook. We managed to build a script that parses LaTeX files into an XML file that can be imported by WikiToLearn. It was a hard task that required more work than expected, including hacking through many different programming languages. In the end, the success was worth the effort. In the process, the development team learned to act as one, and is now able to kick every inch of WikiToLearn until it works like a charm.


showing the sysadmin the love he deserves...

With the infrastructure, our sysadmin relentlessly tried to dockerize every step of the development procedure to enchance our DevOps. There was one minor incident where Luca (our sysadmin) went a little too far and dockerized Sofia within the webserver container. Fortunately, the bug was discovered quickly and Sofia got rescued.


Sofia still showing signs of compression after being pulled out of the docker container

The user journey

The user journey was an important, yet subtle change that we implemented. We fully redesigned and adapted the path that most users will follow on the W2L site. This work was guided by Niccolò, who is a professional designer and communicator. It’s not important to describe all the little changes. The user experience is now quite polished and direct. Try it to see for yourself.

Full content review and restructure

Sofia and Simone took up the monumental task of reviewing and restructuring all of the content. So Sofia gathered statistics on edits, outnumbering every other contributor by far. Riccardo tried to cheat by committing a lot of find&replace substitutions, but was promptly discovered and disqualified from the competition. The result was a complete revamp of the available content. While at it, they also wrote a book to guide new contributors to WikiToLearn. We anticipate that the guide will be useful because it has already attracted a few contributors.