GSoC Students,

It is good to see the enthusiasm and your correspondence on the jira tasks. 
Based on last years GSoC experience and in general to align with Airavata 
goals, we want to rethink the GSoC projects a bit. Just to give you guys some 
context, last year gsoc projects did not yield as much as they should have, not 
entirely because of the lack of interest or ability of students but the nature 
of how Airavata is. 

Key goal of GSoC is to teach students how to participate in open source. Its 
not just about coding, its about engaging in a community. Apache Airavata is a 
general purpose distributed systems framework. But it is heavily used in 
scientific projects building workflow systems and science gateways. And a good 
number of projects are using Airavata in production supporting a significant 
numbers of scientists. These characteristics presents some challenges and also 
provide some good opportunities. 

Ideal GSoC projects should be self contained and not be on a critical path of 
the project so the student can work and learn freely. But the downside of this 
approach is the features may never make it back to the mainstream code base. So 
we would like this years project to directly work of the trunk, not in an 
isolated branch. That way we can ensure the contributions are immediately 
incorporated into release and get used in production. But this puts a high 
barrier on the quality of code to be written, more importantly well tested 
code. See Airavata TDD approach [1]. 

Secondly, Airavata Architecture is still evolving, so its very tough for 
students to survive through this turbulence. If you are expecting a well 
defined water fall model of software engineering, Airavata is not a place. The 
development is truly agile and what you start working may not be what you end 
up working on. Students should be able to adapt and more importantly enjoy 
these challenges. If you get frustrated which changing designs, ideas and so 
on, then this is certainly not a good project for you. 

Lastly, there will be a good amount of learning curve and not all design 
intrincies are documented. Lot of them, you have to dig through the code and 
ask the right questions to understand. This might very well expose you to dive 
into core of Airavata Services - Workflow Interpreter, GFac, Registry, 
Messaging System. Also the Airavata API came a long way but is still primitive. 
There is a lot of scope for improvement internals API's like GFac API are way 
mature and it takes effort to expose all these capabilities through API

In a nut shell, if you are intending to do a GSoC project just for the sake of 
money and resume addition, Airavata will not be a good fit. We need students 
who can survive through these challenges and reap the benefits - seeing your 
code in real-world production, publish papers, take on challenges, work with 
other smart people and so on. Lot of these will take up time, so if you are 
very interested but will not have time to contribute in next 6 months, please 
think again. 

Feel free to ask any questions, but I am trying to set the expectations right, 
so you will not get disappointed. 

Cheers,
Suresh

[1] - https://cwiki.apache.org/confluence/display/AIRAVATA/Tests+in+Airavata

On Mar 23, 2013, at 8:18 AM, Suresh Marru <[email protected]> wrote:

> Hi All,
> 
> Please propose GSOC 2013 ideas and label them with gsoc2013 in the JIRA. Note 
> you have to be a PMC member to mentor a project. But the students and other 
> community members are more than welcome to propose idea on the mailing list. 
> 
> I will start with few now.
> 
> Cheers,
> Suresh
> 

Reply via email to