Public Lab Wiki documentation



WhereWeBreathe Planning

This is a revision from June 13, 2014 20:37. View all revisions
1 | 11 | | #10555

« Back to WhereWeBreathe

June 15th status of WhereWeBreathe design process:

This document is in progress; it needs:

  • all the latest design decisions
  • wireframes, etc copied in
  • merging of the top and bottom docs, or cleaning up of the one with time estimates and replacing the top one with it

WhereWeBreathe

Public Lab is collaborating on a project to enable people facing indoor formaldehyde air contamination to better understand the effects of exposure, exacerbating variables and potential mitigation techniques. Participants can advance and collectivize scientific knowledge of chronic formaldehyde exposure's effects by selectively sharing health and symptom information with others experiencing similar issues. The site will feature a series of questions related to exposure and symptoms, and site users will be able to tell their stories and exchange information with others, anonymously if they wish.

We are planning for a Node.js website with:

Design process: https://github.com/publiclab/wherewebreathe/issues

Web development timeline:

Basic application setup, front page and layout templates

  • express, mongodb/mongoose, jade or HTML/CSS

Database design phase

  • models, futureproofing & planning for future possible PublicLab.org integration
  • planning for possible future incorporation of lending library logistics, sensor data input and a multipication of toxins
  • possible anonymous aggregate database download formatting in both conventional csv/excel and bianary so each possible answer can be a 1, 0, or "," if not answered for analysis in stata

Main HTML implementation

  • Dashboard, question form, graph and narratives display, privacy settings page
  • UI/UX testing/review of question form

Graph design

  • likely d3, aggregate data serving and display for different question types
  • privacy review

User registration

  • username & password creation & recovery
  • security/privacy
  • UI/UX testing/review of registration

Beta production server setup

  • security/privacy audit if possible?

Melissa's Rough Time Estimates

From the GitHub discussion (https://github.com/publiclab/wherewebreathe/issues), I can get a general sense of what is intended for WhereWeBreathe, however there are some pieces below where further clarification would be useful.

My estimates below are based on doing the same tasks with technology that I have used in the past. Any time I spend bringing myself up to speed on basic foundational skills not extremely specific to this project will not be billed for, but will affect delivery time.

I look forward continuing to work during the mentoring phase to familiarize myself with the tech stack desired for the WhereWeBreathe website!

Web Development Timeline Rough Estimates

Communication/interpretation:

  • Initial: Communication on what the minimum viable product (MVP) for this phase of development is. Ideally there will be a summarized document of what features the MVP has, wireframes of some sort to communicate interface, details about current desired survey questions/data to go into the database. Etc [1-20h]
  • Ongoing: As needed [1-30% of total time]
  • Documentation: not referring to in-line code comments, but to extra documents. [As allocated].
  • is this documentation you'll create, or for you to read? I'm assuming the former.

Basic application setup, front page and layout templates

  • I wouldnt mind using part of the unpaid mentioning phase to get started on this piece of work. [8-16 hours total]

Database Design

  • WhereWeBreathe: assuming final survey is similar to this. [8-24 hours]
  • Models, futureproofing & planning for future possible PublicLab.org integration [unknown, need more information]
  • this will be mostly just thinking about database scalablity and how we store answers to questions. I'm happy to provide guidance on this as we go, but it'd be great to have a phone session to hash this out. Models basically refers to database tables, in an MVC model of Model/View/Controller.
  • ok

  • Planning for possible future incorporation of lending library logistics, sensor data input and a multiplication of toxins. [unknown, need more information] This was put in by Nick, but is related to futureproofing discussion - but besides accommodating future additional questions and such, we don't need to do much or any coding/dev work on this until a later phase.

  • possible anonymous aggregate database download formatting in both conventional csv/excel and binary so each possible answer can be a 1, 0, or "," if not answered for analysis in stata [4-24hours] (need clarification desired format for 'binary')
  • i guess we mean boolean. I think this is Nick's addition but we can think of it mostly as providing standard .csv downloads based on our database, in which I think we'll be using JSON to store responses.

Main HTML implementation

Graph design

User registration

username & password creation & recovery [8-24 hours] security/privacy [does this mean integration of security preferences into sign up, or the actual security of the database itself?] both, more on the database end of things though. UI/UX testing/review of registration [depends on resources allocated] would like to run through the signup process and "new user experience" a few times with varying types of users. I'm thinking ~10 hours?

Beta production server setup

Could probably do this with a VPS form Digital Ocean for $5/month in under 8 hours * we have VMs available via our hosting provider and a donation from Rackspace... mostly this will be meeting/communicating with Dogi our sysadmin and getting login credentials, installing packages etc.

  • security/privacy audit if possible?
  • yes, let's see how much time this is total and think about how much to dedicate to this.