GSoC2013/Ideas

GSoC 2013 Ideas Page
Here's a listing of the ideas for students to peruse.

When adding an idea to this page, you must include the following detailed information:


 * a description of what the particular project does and where its code lives
 * a brief explanation of the idea
 * the expected results
 * pre-requisites for working on the project encapsulated in the idea
 * if applicable, links to more information or discussions
 * mailing list or IRC channel for your application/library/module
 * mentor's name contact info

If you are not currently an OpenStack developer but have an idea for a proposal, get in contact with the relevant developers first.

Template
Brief explanation:

Describe what the project is about.

Expected results:

Describe both the code results and expected docs to accompany a successful project.

Knowledge prerequisites:

Indicate what applicant needs experience with (technologies, tools) prior to applying.

Mentor:

Name of the mentor.

Service Automation in OpenStack for File Sharing Application
 Brief Explanation: 

This project aims at creating a complete system with Automation in OpenStack (IaaS), Server Side Programming (PaaS) and Front End (SaaS).


 * Simple, but unique file sharing system which runs on OpenStack using GIT and PySendFile.
 * This application aims to give a good insight on how to design, architect and deploy OpenStack, automate the same process and create applications for OpenStack.
 * The application will be designed using Python, Qt4 and Django web framework.

 Expected Results: 


 * Seamless and near real-time file transfer and storage on cloud.
 * Automated spawning of servers instances on cloud(IaaS) as per the demand(for load balancing).
 * This system should also be easy to modify for adding features, plug-ins or simply for making other applications run on it.

 Knowledge Prerequisites: 

OpenStack, Git, Python, Django Web Framework, Qt4 (If possible)

 Mentor: 

TBD. Feel free to volunteer

DevOps Tutorial using Mine Craft Server as reference
Brief explanation:

This project entails creating tutorial for new DevOps programmers using a cloud deployment script (ideally using both Chef and Puppet) to setup a temporary Mine Craft server. This script would be usable by gamers to setup temporary servers on a cloud provider that can be quickly create and removed when the game session is over.

The rationale for using a game platform like Mine Craft is to provide immediate positive feedback for students who are learning deployment skills. Unlike examples that setup Wordpress, having a usable game server allows the students to show off their work to their friends in a very tangible way. It also allows them to host servers on fast networks without incurring on going fees. This will encourage them to maintain the scripts and build a community.

Expected results:

Creation of Chef and/or Puppet scripts and documentation to deploy Mine Craft on a cloud infrastructure.

Knowledge prerequisites:


 * Experience running a local Mine Craft server.
 * Knowledge of Linux (or willingness to learn)
 * Knowledge of Ruby (or willingness to learn)

Mentor:

Rob Hirschfeld (and others?!?)

Use of Mine Craft to Visualize Cloud Deployments
Brief explanation:

Use extensions to the Mine Craft game as a way to visualize routine cloud tasks like provisioning and destroying servers. This provides a way to learn about cloud provisioning and UI visualization.

Use of a gaming platform (Mine Craft) encourages students because they are able to quickly relate their skills and interest to cloud activities. It also allows them to show off to their friends.

Expected results:

Game mods that allow users to interact with in-game materials (blocks) that will be reflected by actual deploy activities on a live cloud environment.

Knowledge prerequisites:


 * Mine Craft mod creation
 * Java programming against REST APIs

Mentor:

Rob Hirschfeld (and others?!?)

Erlang OpenStack API bindings
Brief explanation:

Create Erlang classes that can be used as an overlay for OpenStack API actions similar to Fog or other API bindings.

Expected results:

A set of Erlang modules that can be used to perform server create, destroy, etc against OpenStack clouds.

Knowledge prerequisites:


 * Knowledge of Erlang (or willingness to learn)
 * Knowledge of REST API model

Mentor:

Rob Hirschfeld (and others?!?)