Nicolás di Tada

Nicolás di Tada

Nicolas spent most of his life as a software developer and project manager with a strong background in scientific and technical applications of software crafting. Since founding Manas in 2003 he has built an incredibly talented team and worked to transform it into a self-managed horizontal organization.

Harnessing information flow to empower survivors

(cross-posted at InSTEDD)

‘Information is a vital form of aid in itself […] Disaster-affected people need information as much as water, food, medicine or shelter. Information can save lives, livelihoods and resources.’ (World Disasters Report 2005)

During 2009 we have been working with Thomson Reuters Foundation on a free and open source information management system designed to be deployed in emergencies caused by sudden onset natural disasters.

The first and basic rationale for the system is that people caught up in disasters are not helpless victims and that life saving, actionable information is as important as blankets and tarpaulin. As first responders, they need reliable information to make decisions and minimize the impact.

The aim of the system is to streamline the communication flow and collaboration between the affected population with media, aid workers and government agencies, to help citizens get verified, accurate and actionable information that will enable them to make decisions and recover from the disaster.

The EIS system also provides means for affected population and field workers to channel vital data back up into aid response.

The combination of crowd-sourcing features with collaborative analytics and machine learning tools, in the hands of a team with a vast experience on humanitarian news opens up unprecedented opportunities in the area.

This tool is part of a free information service run by Thomson Reuters Foundation to help survivors of natural disasters called EIS.

Design objectives

There is an article from Bruno Giussani that provides a very interesting insight into the future role of journalism and which I believe describes perfectly what we have been trying to do:

The new power of editors and journalists will depend on their ability to take on new tasks: to animate a group of people; to develop ways to organize how information is gathered and used, with the participation of what used to be called “the audience;” and to help people navigate an information landscape that’s increasingly crowded and constantly shifting.

In line with this idea, our objectives were:

  1. Collect reports originated from the very first layer of affected population – survivors; combine that with information received from the field including aid agencies, local media and government.
  2. Provide fast and reliable means to filter, search and detect important information in the pool of reports.
  3. Streamline the flow of information inside a distributed editorial team including local translators.
  4. Reach out to affected population with useful and actionable information in a timely manner.

1-Subscription and Collection

Citizens can report their location by sending an SMS to the system with the name of the village they are. That simple action registers them in the system to receive alerts targeted to that village.

Every citizen, either registered or not, can report information to the system through SMS.

The system allows submission of raw reports through several channels:

  • SMS: through mobile aggregators (like Clickatell) or plugged-in phones. People can send information to a specific number, which then stores the message in the system.
  • Twitter: both streams from particular users or certain hashtags can be imported.
  • Email: any number of email addresses can be checked by the system and directed to specific collection baskets or inboxes
  • RSS: feeds can be checked periodically and new articles will appear in the system.
  • Web: any user with permissions can post information using the web interface.

Bounded and Unbounded Crowd-sourcing

Through the use of a feature we called “Working groups” and in combination with the “Baskets”, both bounded and unbounded crowd-sourcing processes can coexist in the stream.

Identified users can be assigned to “Working Groups” and the reports coming from those groups, can be configured to go to specific baskets. Therefore, some baskets can be monitored more often or by different people, depending on the working groups (bounded crowd) putting reports there. An unbounded basket could be even configured to be self-filtered by the same unbounded crowd and items with 10 or more people marking them as “alert” or a specific tag could then be pulled by another basket which is monitored by some agency.

The possibilities are endless and it is yet to be discovered which patterns work better depending on each situation. There is probably no silver-bullet and it’ll be up to the expertise of teams deploying this to find-out, share and adjust for cultural, social and political contexts.

2-Selection and Filtering

Through a number of different tools, users monitoring the pool of raw reports can filter important information. The goal in this stage is to try to deal with as many situation awareness “demons” as possible, being data overload and context stress the most salient ones in these kinds of scenarios. These tools include search, tagging and automatic extraction of the location the text refers to. Other features that can be added to customize the experience and workflow include flagging documents, hiding them, commenting and relating them. The objective of these features is to aid in the process of collaboratively selecting useful information to initiate the editing workflow.

The platform is completely modular, allowing the customization of each collaboration space, based on the balance of features vs. simplicity.


The system allows for a flexible and tailored workflow by the use of a simple but powerful metaphor:

A module called “Baskets” allows the configuration of a custom workflow tailored to the specific team and situation. The module works based on the concept of baskets. Each basket is a collection of pieces of information (items), that acts both as inbox and outbox. Each user in the system is given permissions to read, write, move in or move out items from one or more baskets.

Typically, a user would monitor one or more baskets based on his role. As new items appear, he will decide what to do, act on the item, flag it as urgent, write a comment, create a new alert or translate it to another language. He would then put the new item or the edited one in another basket for someone else to do his part of the job. The administrator is allowed to configure “baskets” and determine who can put, view, edit and remove items from those baskets. Users can then perform given tasks on the articles and move them to the next step.

The flow improves when people have not only direct access to information, but the benefit also of credible intermediaries to help discover, gather, compare, contextualize, and share information. (Knight Commision)

Different flows can be created and tuned during a deployment, ranging from a completely crowd-sourced citizen journalism to a standard editorial workflow involving translation, editing, approval, etc.


Once an alert is ready to be sent out to relevant recipients, the system allows the user to target affected population by location through a map with references of clusters of citizens. The user sees a map with the different groups of citizens and the number of citizens in each group.

The objective of targeting by location is not only to keep the information relevant to everyone, but also to avoid that people in a desperate situation end up traveling to a distant location just because they received a message saying there is food or blankets there.

The alert can be sent through SMS and Email, and can also be addressed to specific working groups, like aid workers, local media or government agencies.


The EIS system was built on top of RIFF (, an InSTEDD platform tool developed as a general collaboration environment for content creation, social metadata annotation, and automated analysis with potential applicability in a wide range of areas.


A recent pilot of the system in Tomohon, North Sulawesi Indonesia, in partnership with the Local Red Cross and the Search and Rescue Team, has proved the validity of our assumptions. Even if the incoming stream of reports from the field contained (by design) a low signal/noise ratio, the editorial team managed to process the information, select relevant topics and going through a quick but reliable loop with local translators could provide alerts with verified data.

A short summary of the pilot can be seen here


We have built a tool that can handle information collection, flow and reach out in a wide range of deployment scenarios in disaster situations, providing the support for channeling information up and down as needed among a heterogeneous ecosystem of stakeholders. The system will serve as the basis for further learning, development and work on the subject.

Lecture at Mahidol

Last week I had the chance of giving a lecture with Taha in the context of an InSTEDD presentation about Machine Learning applied in Biosurveillance at the Public Health Informatics course at the Mahidol University in Bangkok. It was a great opportunity to meet people working in public health from all around South East Asia. Slides included below.

Visualizing multi-dimensional data

A couple of days ago we started working on a new visualization for Riff’s acitivity. The requirement was to find a way of representing the relationship between items tag with two or more tags, the users who were tagging and the evolution of the tags along time. With the help of our designer Luigi and Juan we crafted a nice visualization.

Riffdetail Tagactivity Related


Tag Activity
Given a certain filter by any possible combination, we end up with a resulting set of items inside a Riff. Every tag belonging to any item in the resulting set is drawn around a circle. An arc is created between two tags, when there is an item that has both tags, the arc get thicker as the number of items with those two tags increases. Each user that has tagged an item in the resulting set is depicted in the visualization as a green circle, the greater the number of items he has tagged, the bigger the circle gets. The circle is positioned near the tags he has used the most. Below a timeline allows the introduction of the time as an additional dimension. So, basically the following information and patterns can be detected by this visualization:
- Hot set of tags: A thick group of arcs connecting 3 or 4 tags can indicate something particular going on with that subject, using ontologies or a Bayes Classifier we might be able to suggest related diseases.
- A bunch of users tagging a certain tag more than the average: If the color of the circle were the reputation of the user, you might find that a lot of well-known doctors are tagging a particular tag. As the stain around a tag gets bigger, a special consideration or care should be taken.

Hovering over a tag
Displays the summary of the related items, circles the users that had used that tag and highlights the tags used in conjunction with the highlighted one.

Hovering over an arc
Displays the amount of items with that pair of tags and also circles the users who used both tags.

Hovering over an user
Displays the amount of items that the user tagged and circles the tags he used.

Yet another Holy Grail (3-column css liquid layout)

In the quest of creating a rocking and flexible layout for Riff‘s redesign, I’ve started looking for the Holy Grail of the CSSs, the perfect 3-column css liquid layout. My requirements (self-imposed) where:

  • No tables (of course)
  • Use 100% of the available width
  • Fixed width left column
  • Right column with a minimun width, but scaling up when available width is enough. (This is because a site displayed on a 1900pixels wide screen, it’s useless to have the central pane with 1500px, the right column should start using some more space)
  • Both right and left columns should expand to the bottom, the content cannot wrap around them
  • Both columns must be collapsibles and the layout should continue working
  • Central pane should expand itself to the available width, regardless of the content not forcing it. This discards using “display: table” for the content div. (I had to add the display: table, otherwise the content wraps around (and behind!) the columns)

After digging in serious similar implementations like Matthew Levine’s which did not make it for me, because the content class uses padding at left and right to provide space for the columns and I need them to be collapsible, and the columns are not equal in height, or Faux Columns and this, and using the “padding: x/margin: -x” trick for the columns height, I ended up learning enough to put together something that (for the moment I think) works perfectly and satisfies my initial requirements.

Below are the Layout HTML and style with comments:

<div class="container">
	<div class="column left">Lorem ipsum</div>
	<div class="column right">Lorem ipsum</div>
	<div class="content">Lorem ipsum</div>

min-width: 500px; /* This avoids the html being compressed beyond this width */

overflow:hidden; /*This hides the exceeding portion of the columns created by the padding/margin trick, thus avoiding the scrollbar of the browser to extend more than needed*/

position: relative;
border-style: solid;
padding-bottom: 30000px; /*This extends the height of the column so the main content does not wrap around it*/
margin-bottom: -30000px; /*This 'reclaims' the extra height created by the padding*/

float: left;
background-color: #0f0;
width: 200px;

background-color: #ff453f;
width: 200px;
min-width: 25%; /*This makes the column start growing when the total width is greater than 200px / 25% = 800px.*/
float: right;

border-style: solid;
background-color: #242eff;
display: table;