Public Lab Wiki documentation



GSoC ideas

This is a revision from March 07, 2016 16:38. View all revisions
31 | 221 | | #868

This is the ideas page for Public Lab's Google Summer of Code program. Many are slightly out of date or have already been built! Please go ahead and edit these if you see things that need changing, as well as add your new ideas.

For a quick flashback, see

Our main repositories can be found here: https://github.com/publiclab

Important -- to learn how to contribute to Public Lab software, see: http://publiclab.org/wiki/contributing-to-public-lab-software

Who to contact with ideas/proposals

  • plots-dev - the Public Lab developers discussion list. This is the list for programming related topics. Please use this list!
  • plots-gsoc - the GSoC discussion list, more for GSOC logistics. For logistics once GSoC begins, not for proposals, thanks!

Either of these lists is fine; feel free to CC both.

How to post a proposal

Please first contact the above lists (even both!). Once your idea is more developed, please post a research note describing your proposal in detail. Tag it "gsoc". Here is the template we used last year.

Contribution guidelines

Our Contributing to Public Lab Software page has our preferred guidelines for submitting changes. Please read it over!


Ideas list

Here are the project ideas we're most interested in; however, we are also interested in any major feature request listed in our top project repository issue trackers, at Spectral Workbench, PublicLab.org, or MapKnitter -- so contact the plots-dev list (see above) if anything there interests you!

Mapknitter Annotations

Part of: [Mapknitter.org](http://mapknitter.org]

Description: building on 2014 mapknitter annotations project to get it live and integrated into Mapknitter. Read more on the state of development..

List: plots-dev@googlegroups.com

Prerequisites:

Difficulty Level: hard

Potential mentors: Jeff Warren (jeff@publiclab.org), Liz Barry (liz@publiclab.org)

Rich Profile Pages on PublicLab.org

Part of: PublicLab.org

Description: A major build-out of profile pages on PublicLab.org. Implement profile tagging for geographic data, role, tools, skills, and barnstars -- all highly requested features by the Public Lab community! Including:

List: plots-dev@googlegroups.com

Links:

Prerequisites: Ruby on Rails

Difficulty level: hard

Potential mentors: Bronwen Densmore (bronwen9 (at) gmail.com), Jeff Warren (jeff@publiclab.org), Liz Barry (liz@publiclab.org), Bryan Bonvallet (btbonval (at) gmail.com)


Search and sorting

Part of: PublicLab.org

Description: There's so much going on in Public Lab.org that it can be hard to follow. Choose to implement this project and create much-needed tools for people trying to organize this open science and technology knowledge base. These features will also be used by Public Lab's community managers to help people develop their projects and connect to others.

List: plots-dev@googlegroups.com

Links:

Prerequisites: Ruby on Rails

Difficulty level: hard

Potential mentors: Jeff Warren (jeff@publiclab.org), Liz Barry (liz@publiclab.org), Bryan Bonvallet (btbonval (at) gmail.com), Dan Henry (dhenrydc (at) gmail.com)


Browser-based Arduino sensor data transfer using WebRTC and headphone jack

Description: A way to read data off of sensors from a website, using only an audio cable, building on modem.js and SoftModem (see links). Dramatically eases connecting to a sensor using a laptop or smartphone directly from a web page, no software installation necessary.

List: plots-dev@googlegroups.com

Links:

Prerequisites: JavaScript, Arduino

Difficulty level: medium/hard

Potential mentors: Jeff Warren (jeff@publiclab.org)


Distortable image ordering in MapKnitter

Part of: MapKnitter, Leaflet.DistortableImage

Description: Create simple methods for ordering images in Leaflet.DistortableImage, the heart of MapKnitter, and saving these asynchronously in MapKnitter. Modification of export system to accept an order parameter. This could also integrate disabling images from export using: https://github.com/publiclab/mapknitter/issues/36

List: plots-dev@googlegroups.com

Links:

Prerequisites: Ruby on Rails, JavaScript/jQuery

Difficulty level: medium

Potential mentors: Diana Di Leonardo (ddileona (at) tulane.edu), Jeff Warren (jeff@publiclab.org)


Queue-based MapKnitter export system

Part of: MapKnitter

Description: De-couple MapKnitter main app from GDAL-based export queue to enable better scaling of exports and fewer interruptions of primary MapKnitter.org service during large exports.

List: plots-dev@googlegroups.com

Links:

Prerequisites: Ruby on Rails, GDAL, asynchronous queue-based server architecture, Amazon S3

Difficulty level: medium

Potential mentors: Jeff Warren (jeff@publiclab.org), Bryan Bonvallet (btbonval (at) gmail.com), Dan Henry (dhenrydc (at) gmail.com)


Commenting on specific wavelengths in Spectral Workbench

Part of: Spectral Workbench

Description: Enable comments on specific wavelengths which highlight those wavelengths in the displayed spectrum graph.

List: plots-dev@googlegroups.com

Links: https://github.com/publiclab/spectral-workbench/issues/45

Prerequisites: JavaScript, Ruby on Rails, possibly d3.js

Difficulty level: easy

Potential mentors: Jeff Warren (jeff@publiclab.org)


Expanded Q&A system for PublicLab.org

Part of: PublicLab.org

Description: This is a critical step for moving from a separated email and website structure towards clearly answered questions prominently featured as the knowledge base of Public Lab. This project features a posting form, styling for presentation, answering feature, more outreach display for recruiting, integration with Rich Profiles to feature helpful people, displays of common questions.

List: plots-dev@googlegroups.com

Links:

Prerequisites: Ruby on Rails, JavaScript/jQuery

Difficulty level: easy

Potential mentors: Liz (liz@publiclab.org), Dan Henry (dhenrydc (at) gmail.com)