SummerOfCode2012

De Pontão Nós Digitais
Revisão de 02h16min de 10 de março de 2012 por V1z (discussão | contribs)
Ir para navegaçãoIr para pesquisar

LabMacambira is applying to be a mentor organization for Google's Summer of Code 2012. This page lists all the projects with associated mentors. Our mentors are very approachable and include world-class experts in web, audio, and video software technology.

Information for potential students

You may choose from the following list, but feel free to submit a proposal for your own idea!

You can also discuss your ideas in #labmacambira channel on IRC network irc.freenode.net

Our bugtracker is a good starting point to be inspired about new ideas, please take a look!

Project Ideas

The mentorings named below for each idea corresponds to individual affinities for the trend. In practice, Fabricio Zuardi, Renato Fabbri, Ricardo Fabbri, Vilson Vieira and Daniel Marostegan will be mentoring together.


AA (client)

AA Console Client

AA is a social system for coordinating distributed teamwork where each participant stays logged for at least 2 hours a day, publicly microblogging their development activities related to assigned tickets. At the end of each daly session, a video log is recorded and uploaded to a public video channel, the text log is also published on the Web and is peer-validated for quality. The AA system and its underlying software engineering methodology enables self-funding for distributed collectives of developers working on FLOSS projects.

Objective: AA is a distributed system following a client-server architecture. Each AA client is Python application in textual or GTK+ form that communicates with the AA server, the web instance. Through the client each developer can send messages and log his activities. Currently, AA client is a simple program written to run just in Linux. Being a software that aims to be used by everyone it would be important to be multiplatform (perhaps as a web client) and to have additional functionalities such as better Trac and Git log integration, RSS/Google+ developer feeds, and automatic videolog watermarking. A student working on AA could work on these features for the program.

AA GTK2 Frontend

Suggested Roadmap: 1) Understand the AA architecture; 2) Use AA in its current form to understand, as a developer working in a collaborative group, what features are most needed. These features could be implemented during the summer or documented for a future developers; 3) Research about how to make AA multiplatform - we are planning to make a Web client; 4) Implement the features on the TODO of the project and some of the features listed by yourself if possible. 5) write a paper about the AA methodology and experiences with the implemented system.

Repos: git clone git://labmacambira.git.sourceforge.net/gitroot/labmacambira/aa

Languages: Python, Javascript, Shell script

Mentor(s): Renato Fabbri <renato.fabbri@gmail.com>

pAAinel (AA server)

AA

AA is a distributed system for coordinating decentralized teamwork, as described above. We need to develop the server side of AA, which already includes an aggregator of logs, and a master aggregator of all the team information in a dashboard which is similar to iGoogle: pAAinel. Currently, pAAinel merely displays information about logs registered by the AA server.

Objective: We desire to rewrite the AA microblog server (actually written in PHP) as a module inside pAAinel, a Django application.

Suggested Roadmap: 1) Understand the current AA architecture; 2) Read both pAAinel (made in Django) and AA server (in PHP) code and associated documentation, planning how to rewrite AA server as a module inside pAAinel; 3) To develop and test the new pAAinel together with members of LabMacambira; 4) Continuouslly document the process.

Repos:

git clone git://labmacambira.git.sourceforge.net/gitroot/labmacambira/paainel 
git clone git@gitorious.org:macambira_aa/macambira_aa.git 

Languages: Python, PHP, Javascript

Mentor(s): Vilson Vieira <vilson@void.cc>

AirHackTable

AHT

The AirHackTable is an art project - an interactive music instrument based on advanced computer vision algorithms that track flying origamis, associating their trajectories, color, and shape to different musical properties. The recycled coolers inside a cardboard table (itself an origami) generates a layer of air on top of which colored origamis float around and make track patterns depending on their geometry. A set of webcams on top then captures those patterns through our own color detection and 3D reconstruction algorithms, and then generate and modulate sounds based on the trajectory, color, and shape of the origamis. Many are the technological spinoffs of this project, most of which were accepted officially into well-established software such as the Pd/Gem real time multimedia programming system and Scilab.


Objective: The AHT project is an opportunity to develop and spread cutting-edge technology in a playful manner, which may seem otherwise too hard/unapproachable. We plan to improve geometric recognition to be used for generating sounds for modulating voices that are in agreement with the geometry of the origami. The goal, then, is to implement algorithms for 3D edge/curve reconstuction from the mentor's research, in order to recover the origami's edges in 3D, thus recovering the true geometry of the origami. Other techniques such as 2D recognition of origami silhouettes should also be developed. This playful project is expected to generate technological spinoffs which will be incorporated into other well-established FLOSS projects such as Pd, Scilab, OpenCV, and VXL. Some of the Google projects that can benefit from the underlying machine vision technology include Google Streetview, Google Book scanning, Google Image Search, and Youtube.

Suggested Roadmap: 1) compile and run the current system after downloading the large set of repositories and watching our screencasts; 2) brush up on the background: Pd, C++, and Computer Vision, by talking to the mentors and watching our screencasts; 3) get the 3D reconstruction system up and running isolatedly 4) optimize the system to run in real time 5) incorporate the 3D reconstruction system into the AHT system; 6) write up documentation and papers on the core technologies.

Repos:

git clone git://github.com/rfabbri/pd-macambira.git
git clone git://github.com/rfabbri/Gem.git gem.git
git clone git://github.com/wakku/Hacktable.git hacktable
git clone git@github.com:rfabbri/pd-macambira-utils.git
git clone https://github.com/gilsonbeck/beck-repo.git

Languages: C++ (strong), Pd (intermediate), Scilab (familiarity)

Mentor(s): Ricardo Fabbri (rfabbri at gmail)


SIP

SIP toolbox
Leptonica Image Processing Library from Google

SIP stands for Scilab Image Processing toolbox. SIP performs imaging tasks such as filtering, blurring, edge detection, thresholding, histogram manipulation, segmentation, mathematical morphology, color image processing, etc. It leverages the extremely simple Scilab programming environment for prototyping complex computer vision solutions.

Objective: First, to add functionality to the Google FLOSS project Leptonica and interface most of this C library with Scilab. Second, to throroughly document this library. Google projects that will most benefit from this effort include Google Book search and Google Image Search.

Suggested Roadmap: 1) Run leptonica and SIP; 2) make a contribution to Leptonica (at least a simple bugfix), which will help the student get started; 3) write the necessary C infrastructure to interface Leptonica image structures with Scilab matrices 4) interface a Leptonica functionality with Scilab and document it thoroghly 5) repeat 4, prioritizing functions that can only be found in Leptonica.


Repos:

svn checkout http://leptonica.googlecode.com/svn/trunk/ leptonica-read-only
git clone git://siptoolbox.git.sourceforge.net/gitroot/siptoolbox/animal 
git clone git://siptoolbox.git.sourceforge.net/gitroot/siptoolbox/siptoolbox

Languages: C (strong), Scilab (familiarity)

Mentor(s): Ricardo Fabbri (rfabbri at gmail)


Ágora Delibera

Ágora Delibera

REST Web application to deliberation.

Objective:

Suggested Roadmap:

Repos: git clone https://github.com/daneoshiga/agoracommuns

Languages: Python, Javascript

Mentor(s): Renato Fabbri <renato.fabbri@gmail.com>, Daniel Marostergan <daniel@teia.org.br>


reacPad

We are planning to create a plugin to EtherPad that makes possible to run JavaScript (and maybe other languages) inside of EtherPads and to be programmable collaborative the same way EtherPad already does for common text.

Important to say that EtherPad is an interesting tool to civil society. With pads we are creating logs for reunions and documents of many kinds (take a look at our page Epads).

FIGGUS

Languages: Python

ABT

Programa para execucao em tempo real e análise rítmica.

Reforçar ABT + ABD.

Languages: Python

Macambot

Citar Lalenia e coBots.

Languages: Python

Conferência Permanente

Conferência Permanente

Plataforma para as Conferência de Defesa dos Direitos das Crianças e dos Adolescentes

Languages: Python, Javascript

SOS

SOS

Sistema dedicado à coleta e difusão de conhecimentos populares e indígenas sobre saúde.

Languages: Python, Javascript


Translation of our FLOSS tutorials to newcomers

Comming soon.


More to come

Take a look at our remaining creations at: http://wiki.nosdigitais.teia.org.br/Lab_Macambira#Software_Livre_Criado_pela_Equipe_Lab_Macambira

Application Template

(brief description goes here)

Objective: (describe the purpose of this task here)

Suggested Roadmap: (describe a possible path to accomplish the objective here)

Repos: (list the main repositories for the project here)

Languages: (list the main programming languages and the required skill level)

Mentor(s): (indicate mentor names and email here)


Mentors