Global Pulse Recipe Manager NY

From Random Hacks of Kindness
Jump to: navigation, search
"One thing to bind them all!"

Contents

[edit] Team

Team working on Global Pulse Recipe Manager at New York are:

  • Sara Farmer @bodaceacat
  • Graham Brooks
  • Evangelia Berdou
  • Daphne Chen
  • James Andino
  • Chenai Mparutsa

Chenai and Evangelia are looking at existing data sources and application inputs/outputs, working out how to characterise these so we can input, search and match between them. Jen Ziemke is helping them as an SME at the moment.

Sara and Graham are paired up as a coding team

Daphne and James are paired up as a coding team

[edit] Resources

Project name is Oliver (as in the chef).

Where to find things:

  • github: User account is globalpulse, organisation is Global-Pulse, First project is Oliver, first commit has just happened!
  • Google App Engine account is globalpulselab, at http://globalpulselab.appspot.com/
  • Team are listening in on #rhok twitter

Languages etc:

  • Working in Java, CSS, javascript, html and possibly jsp. Also using Ant and Java SDKs.
  • Stack is Google App Engine (with data stored in Big Table and code in Java), linked to HTML/CSS/JavaScript browser. This ties us to a server for the moment, but since this is a prototype, we can live with not being able to walk around with it for now.

How to join in with the coding environment:

[edit] Tasks

  • Setting up github, app engine etc. - done

Stories

  • Hello world
  • Enter datastore name and store
  • Show list of datastores
  • Show datastore details
  • Add datastore fields
  • Search by name, tags, use
  • GitHub discovery
  • Secure Oliver app with username and password

[edit] Sketch designs

Why are we doing this stuff?

The coders are concentrating on the registry of databases and feeds at the moment. This is because the core of the recipe manager is the ability to search and compare database descriptions.

[edit] Mock-up interfaces

  • input database details
  • view
  • search

[edit] Registry of databases and feeds

a data source is "something you can extract info from", and probably has:

  • fields
  • structure
  • where it is
  • who owns it
  • name
  • permissions
  • standard
  • schema
  • tags
  • comments
  • geolocation

[edit] Registry of Modules

We decided that 'application' had too many connotations, so we used 'module' instead. A module is something that converts data into something else (where 'something else' could be data, a feed, or a gui).

[edit] Restful API

  • datasources/new
  • datasources/id
  • datasources/nothing

Also using Bvira reference architecture.

[edit] What's out there surveys

The non-coders are working out what the questions we need to ask about data stores should be, then taking these questions and asking them of the other rhok project teams. We are working from the perspective of a developer interested in developing "adaptors", i.e. software, that allow data stores and apps to" talk" to each other through the data that they generate. The idea is that within Global Pulse users would be able to build data flows that string together different data and analytical tools, depending on their needs and aims. Over time users would be able to share insights about these composite chains, which we call recipes, creating demand for more apps and adaptors and motivating data suppliers to facilitate access to their data.

[edit] Questions about data stores:

  • What kind of data is available online?
  • Are they freely available? What are the terms of use?
  • Where are the data being stored?
  • What formats are the data in?
  • How well is the data documented?
  • Are the data sources following accepted data and metadata standards? What are they?
  • What programming language is the database in?
  • Who is the data useful for?
  • Is there an open API?
  • Who are the data experts (contact info)?
  • Who is using it?

[edit] Example data sources to investigate are:

[edit] Examples of apps to investigate are:

  • Risk mapping team (Chris Nicholas)
  • Open Street Maps (@harrywood)
  • Ushahidi (Jen Ziemke)
  • CRMAT Sudan team (Helena Puig Larrari)
  • 311 Adapter team ()

[edit] Interview and online search findings:

One thing that we came to realise pretty quickly is the enormous amount of work that has been done to facilitate the exchange of socio-economic data (e.g. see [[1]]. Programmers would need to be aware of these standards, as well as those in place for other scientific communities (meteorologists, GIS specialists, medical professionals, etc).

[edit] Questions about apps:

  • What types of data are being collected?
  • What language is the app written in?
  • What platforms is the app running on?
  • Is the source code for the app available?
  • Does the app have an API?
  • What types of data are generated through the app and in what format?
  • What data can be shared and with whom?
  • Who are the users of this app (people AND services)?
  • What types of data does the app consume from other services?
  • Key contact person for the app

[edit] Interview and online search findings:

CRMAT Sudan Team

The project collects four types of data:

  • Incidents and events (collected from key partners)
  • Community perceptions of risks (collected via focus groups)
  • Basic services location and functionality (water, health, education)
  • Ongoing projects implemented by national and international actors

For each type of data, information is collected on who, what, where and when. Information on the "who" and "what" categories change depending on the type of data. For incidents, for instance, information is collected on who the perpetrators and the victims are. For activities, the "who" can be national, international organisations and NGOs.

The app is written in C#. It currently runs only on Windows. The source code for the application is open. CRMAT does not have an API. It currently exports data in CSV and XML formats.

Data sharing: this is something that needs to be followed up with Helena. Conflict data are extremely sensitive and we are expecting that they will have safeguards in place.

Users for the app: In this instance: the Sudanese government, international agencies and NGOs operating in the region.

At the moment the app works in standalone/offline mode and does not consume data from other services.

OpenStreetMap This is a very well-documented project with lots of information online. The developer's page [[2]] provides good overview of OSM's building blocks.

Personal tools