Welcoming our 2010 Summer of Code Participants

summer of code

Google Summer of Code (GSoC) is a global program that offers student developers stipends to write code for various open source software projects. Google has worked with several open source, free software, and technology-related groups to identify and fund several projects. Since its inception in 2005, the program has brought together nearly 2500 successful student participants and 2500 mentors from 98 countries worldwide, all for the love of code.

Through Google Summer of Code, accepted student applicants are paired with a mentor or mentors from the participating projects, thus gaining exposure to real-world software development scenarios and the opportunity for employment in areas related to their academic pursuits. In turn, the participating projects are able to more easily identify and bring in new developers. Best of all, more source code is created and released for the use and benefit of all.

This year Ushahidi is excited to announce the winning proposals from students interested in extending our SwiftRiver platform. Proposals were selected on three criteria: applicant background and existing portfolio, demonstrated understanding of problems to be solved, and feasibility of their technical proposals for completing the proposed projects.

Soe Thiha for RiverID, our centralized authentication and decentralized reputation system.
Mang-Git Ng for Reverberations, our system for tracking the influence of content across the web.
Nishith Rastogi for SiLCC, our NLP & Active Learning program.

These students will work alongside our core developer team for the next three months in varying capacities. We’re excited to welcome them aboard and eager to begin working with them. Click here to find out more about the Google Summer of Code Program.

Coordinating Software Developer Volunteers

One of the things we know about software developers contributing to open source projects is that they don’t have a lot of time. Everyone has their day jobs, their personal projects, their families…in other words life. We like to support a relaxed, but structured atmosphere where there’s things that need to get done but no pressure on any one volunteer dev.

As a group, they tend to like ‘sprints’ where several developers gather to get as much done as possible in only a few hours. Events like Crisis Camps, Where Camps and Dev Camps are really helpful in that they facilitate spaces where developers can come together to brainstorm and get things done.

However, the one barrier to entry many of them find is that they aren’t comfortable with the language that the rest of the community wants to use, or that the platform is built in. For example Ushahidi is built on the Kohana PHP framework, but a lot of developers prefer to work in Ruby or Python these days. In addition, location plays a role too. We have developers volunteering from every continent, across cultures; some languages are more popular than others across the pond. How do we approach solving this challenge to be as inclusive as possible?

[caption id=”attachment_1285” align=”alignnone” width=”500” caption=”Moses Mugisha, Ugandan Volunteer and Developer of SULSa”]Moses Mugisha, Ugandan Volunteer and Developer of SULSa[/caption]

We’re using the modular approach. Various components of our systems are built in various languages. The Swift River system itself is being built in PHP on Kohana, the same framework that Ushahidi uses. But SULSa (Swift User Location Services App) is written in Ruby using the Rails framework. Our taxonomy and natural language parsing program, SiLCC (Swift Language Computation Core), is being developed in Python. Ushahidi itself also has an API that anyone can use to pull or push data, using any programming language they want.

Internally, this modular approach allows us to scale, by distributing server load across many different nodes that each handle vertical tasks on their own. But when it comes to coordinating volunteer developers, it means that there’s always something someone can contribute to, which hopefully makes working with our community that much more inviting.

Interested in volunteering with us as a software developer? Check out the following links…