Undergraduate Internship Opportunities
[HFOSS summer 2012 internships are not available]
The Humanitarian FOSS (HFOSS) Project offers summer internships for undergraduate computing students as part of the annual HFOSS Summer Institute. The program is open students who are currently enrolled in American (US) academic institutions and who want to get involved in building free and open source software for use by humanitarian organizations. Institute participants will learn the fundamentals of FOSS development by contributing to open-source projects, and will typically work in teams of 2-3 with mentoring by computer science faculty and advisers from the open source community.
HFOSS Summer 2010 Institute Students and Faculty Mentors after Final Presentations
For the 2011 HFOSS Summer Institute there were approximately fifteen (15) undergraduate internships distributed among the three participating campuses: Trinity College in Hartford, CT, Wesleyan University in Middletown CT, and Connecticut College in New London CT. The 10-week Institute ran from late May to late July -- the exact dates may vary slightly from campus to campus. The internships come with a $4000 stipend and include on-campus housing for the duration.
We seek students with a strong interest in helping build software that benefits the community while at the same time furthering their own computing skills. Although there is no minimum requirement for an internship, an introductory course in computer science plus a working knowledge of some programming language is desirable. Particular development projects may have additional requirements.
Before filling out an application form, please review the 2011 HFOSS project list. The application requires you to specify your preferred project(s) and campus(es).
2011 HFOSS Project List (Project Name@Home Institution)
- Sahana@Trinity: The Sahana system is a FOSS disaster management system built initially by Sri Lankan IT professionals in the aftermath of the 2004 Asian tsunami. Contributing since 2006 previous H-FOSS participants built a volunteer management module and contributed other code to the Sahana system. During the 2008 earthquake in China, students worked with IBM and Sahana software engineers to support Sahana's successful deployment in Chengdu province (Blog Posting). Code written by HFOSS students for the Sahana project is now being used by New York City's Office of Emergency Management as part of its coastal flood disaster preparedness system.
- POSIT@Trinity:POSIT (http://posit.hfoss.org) is a mobile application developed on Google Android phone platform to assist emergency workers and field researchers. POSIT was conceived in Spring 2008, with ongoing development this summer. The POSIT team was awarded 16 Android development phones by Google for the project. POSIT project code base is in Java, utilizing the Android APK. Summer 2010 HFOSS interns relased POSIT 0.6 on the Google market place. Work is currently underway for a release in late spring POSIT 1.0. There are several ongoing development projects in POSIT, including efforts to customize POSIT for use with environment scientists, efforts to incorporate an SMS communication protocol, and efforts to develop a user-interface customization utility. The POSIT project is supervised at Trinity by Prof. Morelli. Project code is based on object oriented Java, utilizing the Android APK. It would be good to have a background in Java up through a standard data structures and algorithms course.
- POSIT-SMS@Trinity: POSIT-SMS is a SMS (Short Message System) based version of POSIT being developed specifically for a humanitarian aid organization based in Haiti. The mobile app will allow field teams to quickly and easily register beneficiaries of farm aid in Haiti. This project involves developing an SMS-based application that will be deployed in Haiti. The developement team will develop, roll out, train local staff in it's use in Haiti. The POSIT project is supervised at Trinity by Prof. Morelli. Project code is based on object oriented Java, utilizing the Android APK. It would be good to have a background in Java up through a standard data structures and algorithms course. Proficiency in Creole is a plus.
- FirstResponder@Trinity: FirstResponder (aka Incident Commander) application supports emergency responders, particularly volunteer fire and ambulance departments, in tracking and dispatching volunteers. It gives commanders the ability to understand where resources are located with respect to the emergency situation, and gives responders the ability to easily request urgent assistance should it be needed. It also provides the capability to pre-plan responses to potential emergencies - for example, large community buildings such as schools can be mapped with respect to known hazards, and plans drawn up for locating resources within the physical environment. The application is being developed as a humanitarian open source project, lead by John Reilly at Google.org as part of their Disaster Response Team. The application recently won first place in the Random Hacks of Kindness event in New York City, FirstResponder is based on Java, Android, and a number of the Google APIs and tools, such as AppEngine, DataStore and Google Maps.
- Work it Off!@Trinity: Work it Off! is an application for Android phones that teaches children the correlation between the calories they eat and the calories they burn. The user verbally speaks a food (e.g. hamburger) into the phone and is given options to Work It Off! The Work it Off! prototype won national recognition, winning an award at the "Apps for Healthy Kids" competition, part of First Lady Michelle Obama's Let's Move! national campaign to end childhood obesity within a generation.
Work it Off! was developed in Summer 2010 by Trinity College students using App Inventor for Android, an open source programming language for Android smart phones. App Inventor is a visual language that enables novice programmers to create powerful mobile applications that interact with the web and with other phones. In the summer 2011, instutite students will continue the work started in the previous year, to publish the Work it off! application on to the Android market place. This project would be suitable for novice programmers, interested in mobile application development.
- XPilot-Ed@ConnColl: Xpilot-Ed (http://xpilot-ed.org) is a learning system being developed that is intended to help students learn programming and experience problem solving in a real-time video game environment. Xpilot-AI was developed as a means for researchers in artificial intelligence to test methods for generating autonomous agent controllers. It is based on Xpilot, which is a multi-player, 2-dimensional, space flight combat game written in the C programming language. Xpilot-Ed is being developed from Xpilot-AI to be an effective system for learning programming. During the HFOSS Summer 2010 Institute, work was started to create Xpilot-Ed by transforming the Xpilot-AI environment to be more user friendly and an Xpilot-Ed web site was developed.
During the HFOSS Summer 2011 Institute at Connecticut College work will continue to further improve the usability of Xpilot-Ed and develop the web site. In addition, a means for Xpilot-Ed to operate on all standard computers and operating systems will be developed, along with a learning tutorial to allow students to learn programming in high schools where no computer science teacher is available. Xpilot-Ed development will be done mostly in the C programming language, but other languages will be of use since Xpilot-Ed will have interfaces in Java, Python, and Scheme
- RETRIEVE @ Conn College: Mobile Data Collection / Centralized Processing of Multimedia Content. The RETRIEVE project involves designing and developing a mobile computing system using free and open source software tools and development methodology. The project will utilize mobile devices for data collection and information access. A centralized server will provide the necessary content processing, indexing, and retrieval services. The software on mobile devices will be built using Google's Android platform. Android is a software collection for mobile devices that includes an operating system, middleware, and key applications. Software for Android-powered devices is developed using the freely available Android SDK.
The project involves the design and implementation of a complete system: the client and server software as well as the necessary protocols which will define an open architecture for mobile data collection, centralized multimedia content processing, retrieval, and distributed access. Institute participants are expected to have an interest in software development for humanitarian projects, prior programming experience, and effective group work skills.
- Collabbit@Wesleyan: Collabbit is a platform for information-sharing between multiple disparate organizations; it is intended to improve communication during emergencies. It was initially developed by students working as HFOSS interns in 2009 and has been deployed by the American Red Cross and the Salvation Army in New York City. Specific projects have not been identified yet, and you would probably have a lot of say in what you want to work on. You should either be familiar with Ruby/Rails and web-programming, or sufficiently confident in your abilities to learn the basics of a new language on your own (of course, our project mentors will be available to help with deeper programming issues and Collabbit-specific issues).
- Tor@Welsleyan: Tor is a network of virtual tunnels that allows people and groups to improve their privacy and security on the Internet. It also enables software developers to create new communication tools with built-in privacy features. Tor provides the foundation for a range of applications that allow organizations and individuals to share information over public networks without compromising their privacy. It is used by individuals who wish to browse the web without being tracked by third parties (whether they be corporations or repressive governments), journalists and whistleblowers, law enforcement, and others. As an example, the number of Egyptian Tor users increased more than four-fold in the week following 24 January 2011. More information is available at http://torproject.org.
The specific project within Tor has yet to be determined, but we will have a full-time Tor Project maintainer as a mentor. Last summer our interns completely re-designed and re-wrote Tor Weather (https://weather.torproject.org), an application that notifies relay operators of various status events on their relays. This application is now live and an important part of the Tor Project. Whichever project we do work on is likely to involve development in either C or Python, but the only pre-requisites for this project are good coding skills in some language and the ability to learn a new language in short order (should it be necessary). A (very long) list of potential projects is available at https://www.torproject.org/getinvolved/volunteer.html.
- LANDIS-II@Wesleyan: LANDIS-II is a simulation model used by scientists to study the effects of disturbances and climate change on forests. The model is a console program that users must currently run from the command line. We want to improve the user experience by building a GUI for the model. The approach will be incremental, starting with the basic functionality that enables the user to select a file with a scenario, and then to run the model with the scenario. Subsequent features include: (1) displaying the console output from the model in a scrolling text panel in the GUI, (2) opening an input file in a text editor if the console output shows an error message about the file and the user clicks on the message, and (3) implementing a simple text editor in the GUI for creating and modifying model input files. Although LANDIS-II is written in C#, the GUI does not need to be. However, the model is cross-platform (runs on .NET and Mono), so the GUI must also work on multiple platforms (Windows, OS X, Linux).
The project specifications are yet to be determined, so you should be willing to work on a different project, if you select this as a preference.
- GNOME@Wesleyan: GNOME offers an easy to understand desktop for your GNU/Linux or UNIX computer. Since Summer 2009, HFOSS participants have worked towards addressing GNOME Accessibility issues. In GNOME, accessibility is a core value that touches all aspects of the system. With a model of "built in" versus "bolted on", the GNOME Accessibility project has helped lead the industry in accessible design. From the infrastructure, to the graphical toolkit, to the applications, to the assistive technologies, accessibility has been a central consideration
from the very early days. GNOME Accessiblity project tools are primiarly written in C and Python.
The specific project within Gnome Accessibility has yet to be determined, so you should be willing to work on a different project (like Tor) if you select this as a preference. Last summer our interns implemented a training mode for Dasher, a text-input program for individuals with mobility impairments. Any project we do work on is
likely to involve development in either C++ or Python; please indicate your experience in these languages in your application.
New projects are always in the works so the above list is subject to change. Students should be willing to be flexible in terms of their preferences.
Eligibility: HFOSS internships are open to US citizens, permanent residence or international students who have work authorization(OPT). Applicants must be enrolled in an undergraduate degree program in the US.
Projects Contributed to in Previous years:
- The Open Medical Record System (OpenMRS) is a free and open medical record system being used to assist health workers in the treatment of AIDS, tuberculosis, and malaria in the developing world. Begun by the Regenstrief Institute and Partners in Health, OpenMRS has been deployed in Rwanda, Kenya, South Africa, Mozambique, and other African countries. Since 2007 summer internship students have made several significant contributions to the OpenMRS system, including a Touchscreen module, a module to upload and edit X-rays and other medical images, and modifications to the system's underlying data structures.
- Collabbit is a project introduced in the Summer of 2009, developed by a team of H-FOSS participants, as a web-based communication tool to help coordinate and organize relief efforts in times of disaster and recovery. Collabbit was recently used by the New York City Salvation Army to coordinate a mass feeding of 10'000 people over Thanksgiving in the city (Blog Posting). The application is written in Ruby on Rails platform.
- Innovative Support to Emergencies, Diseases and Disasters [or InSTEDD], is an organization that seeks to bring technologies together in an attempt to help in the early detection of various diseases and disasters. Where necessary technologies do not exist, InSTEDD works to create the technologies, sharing them with the public when they are stable and usable. In Summer 2009 H-FOSS participants contributed to ongoing Machine Learning and Artificial Intelligence project EVOLVE to develop an automated system to assist in detecting disease outbreak patterns.
Sampling of Internship testimonials:
“All the development teams projected a warm home-like feeling, and learning from others really brought a new perspective to the field of Computer Science for me”
“We all learned the basics of a flow of development, but at a much faster pace. To actually work on a project that was going to be used in the real world was quite motivating and inspiring, creating an experience I had not found anywhere else”
“The best part was how well we all got along and the flexibility of working hours. I'm satisfied with the work we did. For a first shot at a ‘real’ application, I think we did a pretty OK job”
“Because my main goal in life is to help disadvantaged persons, and I was curious at how software development can factor into that dream”
“Open source development allows for experience that can usually only be gained in the industry, and this experience is hard to come by as an undergrad”
"I've already learned more than I could've ever imagined”
For more information, contact Trishan De Lanerolle (firstname.lastname@example.org) or Ralph Morelli (email@example.com).
General Inquires : firstname.lastname@example.org