The Public Lab Blog


stories from the Public Lab community

About the blog | Research | Methods



Public Lab Code Community Report: April 2019

by warren | about 2 months ago | 1 | 3

Jan-Mar 2018: This year we have been buoyed by the growing size of our community and have turned towards larger projects on a year-round cycle, supported by funds from a variety of grants and fellowship programs. Our overall goal this year is to reduce the technical overhead of maintaining systems, and build a sustainable community leadership team that can carry these projects forward responsibly in a more distributed way.

This is "applications season" for our outreach programs, and we've seen a huge response this year (#call-for-proposals), and many applicants for summer fellowships who have already been engaged in our community for months.

Diversity, inclusion, and community growth

We've worked to improve and expand community facilitation and mutual support, as well as build on our commitment to diversity and equity in our work by supporting and encouraging a leadership group with strong representation by groups traditionally excluded in technology development; for the first time, a substantial proportion of our community leaders are women, and greater gender and racial diversity is reflected throughout our community. Our 2019 Software Contributors Survey helped us to better understand both our demographics how our approach to welcoming has worked.

Our community survey shows that ~33% of respondents identify as female or non-binary, which compares favorably with OpenSourceSurvey.org's report that only 4% of the broader open source community are identifying so. In addition, 87% of our community identify as non-white. (cited from our Software Contributors Survey)

We hope that the rich results from this survey can help us to improve even more, and look forward to the deep discussions and plans that will come out of this new information.

MapKnitter

With support from Google's Office of Open Source, we are in the middle of a major, months-long project to rebuild and restructure the MapKnitter website and mapmaking toolkit. This has been a great opportunity to build out our leadership team, with five fellows leading projects which engage newcomers while solving substantial technical problems. We hope to begin public testing of the new systems in May.

Upcoming

In the next quarter, we will see a substantial reboot of the MapKnitter project, expansion of the Image Sequencer system (including a colorimetry app), implementation of major UI redesigns, and much more. Thanks to everyone who's helped make this a great quarter for Public Lab software!

Read more » Subscribe

website web-development software outreach


Draft Sand Sentinel Program

by stevie | 2 months ago | 1 | 0

Logo above courtesy of Pat Popple

Back in September, a number of people from around the Midwest who are fighting frac sand mining issues hosted a couple check in meetings on how things were going, sharing notes on some projects to date (you can read about the conversations here and here). We also had an opportunity to loop in on pathways forward people were seeing that were new, or could use some more attention.

I want to post an update on one of the projects that came up in those September conversations. With support from a number of groups and individuals, we've started to work on the Sentinel Program, originally conceived of by @Pat. This project is aimed at making reporting suspected violations from the frac sand mining industry easier to do.

So far on this project we have:

  • Collected materials people have used in the past in filing suspected violations,
  • Compiled a list of violations that could be observable by people,
  • Collected resources on where materials can be reported to,
  • Compiled a reporting form with information on what could be collected to support people's observations, and
  • Created a draft reporting form folder.

I wanted to share out the materials so far, and am looking for edits, ideas, and further suggestions. You can comment below or in the doc itself here. We'll also be going over some of this material at the event on Saturday in Arcadia.

Read more » Subscribe

wisconsin blog frac-sand pm


Texas Barnraising: Brainstorming the Emergency Response Toolkit

by Bronwen | 2 months ago | 0 | 2

This past February at the Barnraising in Galveson Texas, we began the process of brainstorming about ways that we could equip ourselves better to respond to environmental disasters. We arranged our tools, methods and needs on a poster: a summary of which is below. Because many of the suggestions overlapped or fit into multiple categories, I've If you suggested something and don't see it, or would like to offer your own suggestions, please add your thoughts to the comments below. We'll be expanding this into a wiki page as well, and hope that folks will keep this conversation moving forward!

We'll also be looking to this list to see what kinds of environmental monitoring tools we can assemble so that inexpensive/DIY options exist. Please let us know what's missing!

Emergency Response Needs (Methods, Tools, Resources)

**
**

  • Advance Planning for transportation needs
  • Know how to MacGyver with duct tape
  • Know how to use and repair durable medical equipment
  • Create paper backups of phone trees and ways to contact people
  • Mutual Aid: know what skills and resources exist in your neighborhood.
  • Resource Mapping (in general)
  • Community Tool Sharing
  • How to use plants: medicinal uses, food, natural mosquito repellent.
  • Have methods for community organizing / conducting meetings
  • Setting up communications plans and resources (mesh networks, satellite phones, other)
  • Bio Remediation Tools
  • Evacuation plans: pets, children, elderly, mobility impaired, etc.
  • Soylent (or efficient and lasting emergency food supplies in general)
  • Super Glue, duct tape, wire cutters, batteries, head lamps, etc.
  • Creation of rescue teams, with knowledge and skill to intervene without endangering self/others.
  • How to asses building safety/integrity/water damage (mold)
  • How to start a fire
  • Conflict de-escalation skills
  • How to perform mental measurements
  • Disaster reporting: financial, environmental concerns, baseline reports
  • Self Help/resource guides. things you might have in your home that serve dual purposes.
  • Microbial tests for water (for drinking/bathing/etc)
  • DIY water filtration kits
  • DIY water remediation kits
  • Solar power generators for communications, chargers, cooking, heating water, etc
  • Having access to medications (including morning after pills)
  • Waterproof containers of various sorts
  • Bleach for sterilizing
  • General sanitation tools
  • Oil detection (soil and water).
  • Disposable cameras (in case phones/electricity are unavailable)
  • N95 maks
  • Ham radio networks
  • How to skills, especially for electronics (assembly, programming)
  • DIY refrigeration
  • Construction skills
  • Hotwiring vehicles
  • Safe removal/disposal of hazardous materials.

**
**

Read more » Subscribe

barnraising blog texas emergency


Introducing Leaflet Blurred Location Display Library .

by sagarpreet | 3 months ago | 5 | 6

Hello everyone ,

Public Lab takes utmost care in making sure that the location of a person is exposed to the extend he/she wants . Hence we here at Public Lab are working on giving people the power to safely share their location on the web .

I am happy to announce two new libraries that we are working for the past few weeks that helps in achieving this vision of ours .

In this post , i wish to introduce these new Public Lab open source software projects on Location Privacy .

Leaflet Blurred Location Display :

Leaflet-blurred-location-display (LBLD) is an extension of leaflet-blurred-location (LBL) and does the following:

  • Cleverly displays your location, keeping your privacy settings in mind .
  • Color code the markers on the map according to the precision .
  • Shows heat map to analyze number of people at different rectangles of the grid .
  • Fetches data from remote API or you may pass array of coordinates directly into LBLD API .

The demo is live :

1.) Shows Public Lab users location :

https://publiclab.github.io/leaflet-blurred-location-display/examples/index.html

2.) Shows how some locations (markers) are not shown at different zoom levels :

https://publiclab.github.io/leaflet-blurred-location-display/examples/example.html

So at Lower zoom levels , irrespective of the precision of coordinates you shared - your marker is visible on map . But as you zoom in to higher zoom levels , lower precision markers are removed .

To see details on how to use the LBLD library in your project , jump over to our github page : https://github.com/publiclab/leaflet-blurred-location-display

FEATURES AT GLANCE :

1.) Lower the precision , Greater the privacy :

The red markers corresponds to coordinates [23.1 , 77.1] , [20.1 , 76.1] having precision of 1 . At lower zoom level 5**** , these red markers are visible on map . image description

But as you zoom in to level 6 , these red markers are removed from the map whereas other high precision markers are still visible .
image description


2.) Color Coding of the markers :

image description

According to the precision of the coordinates , different colors are given to the markers .

Precision = 0 , Blue colored markers .

Precision = 1 , Red colored markers .

Precision = 2 , Orange colored markers .

Precision = 3 , Green colored markers .

Precision = 4 , Black colored markers .

Precision = 5 , Grey colored markers .

Precision >= 6 , Yellow colored markers .

Also clicking the markers shows a pop-up telling the precision :
image description


3.) Heat map :

Greater the markers in a region , Darker the color .

We wanted to give an easy visualization power , so we implemented this grid heat map .

image description

The default color of grid is : #F3F0C0

If number of markers are in range [1,10] , the color is : #FFA500

If number of markers are in range [11,15] , the color is : #faff05

If number of markers are in range [16,25] , the color is : #FF6347

If number of markers are in range [26,35] , the color is : #FF4500

If number of markers are in range [36,45] , the color is : #FF0000

If number of markers are greater than 45 , the color is :#8B0000

NOTE : Clicking on each rectangle shows the pop-up showing number of markers in that rectangle .


4.) Custom API and JSON parser :

You can pass your own API link to fetch data and show it on the map . Also you need to pass a JSON parser function to parse your API . See our Github page to know more details !



Blurred-Location library :

A JavaScript library to help manage variable location privacy through a "blurred location" model .

This library is an independent module which gives many mathematical functions that one can use on any map (not necessary Leaflet map!) . The library is thoroughly tested using Jasmine framework .

Jump over to the github page for more details of each mathematical function : https://github.com/publiclab/blurred-location

The npm link is : https://www.npmjs.com/package/blurred-location


If you have any suggestions or any doubts regarding the use of this library , kindly open an issue here .

I personally thanks @warren for mentoring me and giving all these awesome ideas .

Sagarpreet Chadha

Thank you :)

Read more » Subscribe

website blog leaflet location


Software Community Growth through "first-timers-only" issues

by gauravano | 3 months ago | 15 | 7

first-timers-only issues are those which are written in a very engaging, welcoming way, far different than the usual "just report the bug" type of GitHub issue. To read more about these, check out firsttimersonly.com, which really captures how and why this works and is beginning to be a movement in open source coding outreach! Beyond the extra welcome, this also includes getting such well-formatted issues out in front of lots of people who may be contributing to open source software for the very first time.

It takes a LOT of work to make a good issue of this type, and we often walk through each step required to actually make the requested changes -- the point is to help newcomers understand that a) they're welcome, and b) what the collaboration workflow looks like. Read more at https://publiclab.org/software-outreach !

Since early 2016, we at Public Lab are working to make our open source software projects more welcoming and inclusive and to grow our software contributor community in diversity and size. Creation of First-timers-only issues was also started at Public Lab near the end of 2016 - https://publiclab.org/notes/warren/10-31-2016/create-a-welcoming-first-timers-only-issue-to-invite-new-software-contributors

Now, as GSoC, Outreachy, and other outreach programs are seeking proposals for the upcoming summer, we put a lot of extra time and work into welcoming newcomers into our community and making sure they are well-supported. We've seen a huge increase in newcomers and wanted to report in about how this process has scaled!

Till now, nearly 409 FTO issues has been created across our projects which shows how many people have been welcomed in the Open Source 🌐 and in our community by the collaborative efforts of all of us.

From March 9, 2019, we started maintaining the list of people who want to work on various projects of Public Lab - https://github.com/publiclab/plots2/issues/4963 through first-timers-only issues. And, we are proud to announce that in past 20 days, we all have created 55 FTO issues i.e., 13% of total Public Lab FTO issues(from beginning) are created in last 20 days. The growth is really tremendous and all this has been possible due to contribution of each community member.

The idea of maintaining the list of FTO issue-seekers is a big success. We have been able to assign issues to nearly 50 contributors in the past 20 days. And, each day the list is growing and we are opening more and more FTO issues for helping new contributors in taking their first-step in Open Source with Public Lab.

Those community members who have shown some tremendous support for creating FTO issues and they really ensured that there is a check mark next to the name of each newcomer: @cess @gauravano @warren @lekhidugtal @Harshithpabbati @divyabaid16 @IshaGupta18 @anan12 @sashadev-sky @madeofhuman @HarshK @Divy123 @Rishabh570 @gautami_gg

Thank you everyone for the great work and cheers to this awesome community growth 🎉 🥂 💯

(The main image is a screenshot taken from GitHub Visualizer. To see the whole visualization, visit the link

Read more » Subscribe

web-development webworkinggroup software blog


Providence, RI software development fellowship

by warren | 3 months ago | 1 | 3

Dates: April-May 2019

Location: Providence, RI

Compensation: $2,500-$4,500, based on experience and qualifications

Terms: Contract

The Public Laboratory for Open Technology and Science (Public Lab) is a community--supported by a 501(c)(3) non-profit--which develops and applies open-source tools to environmental exploration and investigation. By democratizing inexpensive and accessible Do-It-Yourself techniques, Public Lab creates a collaborative network of practitioners who actively re-imagine the human relationship with the environment.

Position Summary

We are looking for a code fellow to work in our Providence office for a term of 6-8 weeks (depending on hours) at approximately 20 hours per week to assist in the upgrading and expansion of the MapKnitter website, which assists communities in creating maps of environmental issues using aerial photos. The fellowship position will be part of a team of 6+ developers from around the world.

MapKnitter.org is a Ruby on Rails website with:

Public Lab's open code community (https://code.publiclab.org) is a diverse, global group of contributors who are committed to respect and mutual support, and to code and community practices which support newcomers. Our goal is to develop and maintain software that supports environmental monitoring and online collaboration in the broader Public Lab community. Our Code of Conduct can be found at https://publiclab.org/conduct.

Responsibilities will include:

  • Setup of a local development copy of the MapKnitter software
  • Installing and testing gem upgrades from https://github.com/publiclab/mapknitter/labels/dependencies
  • Helping to coordinate upgrades with project team members; cooperatively reading and reviewing code
  • Identifying and listing UI issues related to MapKnitter upgrades as the project develops
  • Assisting in Rails version upgrades
  • Designing and building tests for MapKnitter's automated test suite

For context, see our overall project plan: https://github.com/publiclab/mapknitter/issues/300

Candidates should have experience with the following, although we can provide some support and training:

  • HTML/CSS and JavaScript
  • familiarity with Ruby on Rails
  • git/Github workflow

We also ask that candidates have:

  • The ability to balance multiple competing tasks and requests, and enjoyment from efficiently working toward goals and deadlines
  • A desire for and fulfillment from working on a team, but also an ability to work independently on job tasks
  • Incredible interpersonal skills, demonstrating great communication, kindness, respect, and patience within our collaborative work environment
  • An enjoyment of problem solving and the ability to put this to use in areas where project operations could be improved
  • Willingness to work remotely with some colleagues

Application process

Step 1: Please claim and complete one "first-timers-only" issue from the MapKnitter open source project: https://github.com/publiclab/mapknitter/labels/pvd. Our code welcoming program supports newcomers in making their first contribution, and you'll be compensated for your time with a $50 stipend upon completion. This compensation is only available for fellowship applicants from the Providence, RI area, and applicants will need to show that they have successfully installed the application on their computer.

Step 2: Upload your application materials to the following form by March 22. No phone calls please.

https://docs.google.com/forms/d/19co7ngHIRQzOhcmAfC-MONvozyNUg83TdHgYIpVbTvY/edit

Application materials:

  • a paragraph describing your interest in the project
  • an example of non-Public Lab Rails application work (your own project or a contribution towards a project) on GitHub or a similar site
  • a link to your GitHub profile page or equivalent (GitLab, etc)
  • a link to the completed first-timers-only issue from Step 1

Public Lab is an equal opportunity employer committed to a diverse, multicultural work environment. We encourage people with different ability sets, people of color, and people of diverse sexual orientations, gender expressions and identities to apply.

Read more » Subscribe

providence software blog code