Google Summer of Code 2013
In an effort to make online neighborhood dialog more accessible, we are looking to create a great posting experience for our mobile users. We are especially interested in making the process of posting a photo from a mobile device as smooth as possible.
In this project, you will implement a front end that easily allows users to make a post from their mobile device. The frontend should be optimized to look good and function well on a smartphone, and should have the specific purposes of allowing a user to select which group to post to, select which thread to post to (or a new thread), author a post, add a photo from their device's storage or camera (if they choose), and submit the post/photo.
See Mobile App for a more thorough description of this idea and its background.
Extracting Evaluation Data
Skills Needed or Learned: Python, MVC, Zope, GroupServer, Basic Data Processing and Analysis, API Creation, Git
Like any other organization, we need to make decisions based on data. There is quite a bit of data stored in the E-Democracy platform about how our users interact with the platform and each other. However, most of this data is not currently accessible outside of database queries. This means that a lot of this data is not available for decision making. A module that makes it easy to request data about our dozens of groups or thousands of members would be hugely valuable to our staff and researchers.
In this project, you will implement the View and Controller portions of a module that retrieves data about the groups, topics, posts, and users of E-Democracy. This module will allow a user to set boundaries on the data retrieved (e.g. posts in certain groups over a certain month) and will provide the user with a CSV for download. Time permitted, an API can be created to export this data in JSON for consumption by other programs, and a simple data preview display can be created.
For more information on the broader evaluation project that this is a part of, see Evaluation Dashboard
Skills Needed or Learned: Python, MVC, Zope, GroupServer, API Creation, Git
There is a lot of content available on E-Democracy, and a lot of potential uses of E-Democracy as a communications platform across devices and platforms. However, the platform that E-Democracy is built on does not provide an API for accessing or interacting with groups, topics, and posts.
This project overlaps a bit with the Extracting Evaluation Data project, except that it focuses on the content of groups/topics/posts/users, and is solely concerned with creating an API.
See GroupServer API for more details on this project.
A good plan for this project is to follow the order presented in the GroupServer API page. The first phase of the project should involve providing access to content that does not require authentication. The next phase of the project should allow for a client to authenticate via the API. The third phase of the project should allow for adding content based on the authentication of the client.
Web and VoIP Blockclub Prototype
Skills Needed or Learned: Drupal; MyVoxBox; VoIP Implementation; Git
We have a dream that neighbors should be able to share community and emergency information on whatever technology they are most comfortable with. Imagine a service where your neighbor could call a number and record a message for her nearest 50 neighbors. Then you could listen to her message on a website, and respond via a text message.
In this project, you will help create that dream :)
Check out Electronic Block Clubs for a lot more info on this idea, including a draft system architecture.