Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0

Here you will find some project ideas that we've come up with on our own as well brief bios of mentors and their areas of interest

Codehaus Mentors

Ben Walding

  • Roles: Codehaus Administrator, Codehaus Summer of Code Administrator
  • Areas of interest: System management / automation / monitoring / reporting

Guillaume Laforge

  • Areas of interest: mentoring Groovy-related projects

Graeme Rocher

  • Areas of interest: mentoring Grails-related projects

Ron Bodkin

  • Areas of interest: mentoring AspectJ-related projects, such as the Ajlib incubator project for creating reusable aspects. I'm also interested in mentoring for those interested in extending the Glassbox AspectJ performance monitoring framework.

Project Ideas

Codehaus - Multi domain statistics engine - Foci

  • Project: Codehaus
  • Description: Codehaus runs over 500 domains and most web site analysis tools (awstats, etc) are designed to process only a single domain, or display only a single domain's details at a time. For instance, we want to look at ALL, codehaus.org, castor.codehaus.org, svn.castor.codehaus.org etc separately and aggregate the results at each level. The primary challenge for this project is to develop an engine that can efficiently and scalably process the log data from the Codehaus web servers. We are also looking at the logging requirement for more than just websites. We're happy to use something pre-existing we just haven't found it yet.
  • Mentor(s): Ben Walding
  • Languages: Ruby on Rails
  • Databases: PostgreSQL (you can support MySQL if you want, but PostgreSQL must be supported).

Codehaus - Mail Archive - March

  • Project: Codehaus
  • Description: We have a custom mail archive for indexing all our wonderful email messages. The interface is ugly, there are performance issues, and it all just needs an overhaul. The successful student will improve the L&F, the performance and add many new reporting and real time stats features.
  • Mentor(s): Ben Walding
  • Languages: Ruby on Rails
  • Databases: PostgreSQL (you can support MySQL if you want, but PostgreSQL must be supported).

Castor - Multiple efforts

  • Project: Castor
  • Description: Castor is a data binding framework for binding XSD to Java, XML to Java, Java to database and LDAP to Java. Castor was recently migrated from CVS to Subversion and a major refactoring/restructuring effort will soon be underway for Castor 2.0. Some of the items needed by Castor for which the project would like help from the SoC effort are outlined on the Castor wiki page for Summer of Code Projects.
  • Mentor(s): Ralf Joachim, Werner Guttmann, Bruce Snyder
  • Languages: Java, XML, ANTLR
  • Specs: EJB 3/JPA, JAXB2

Groovy - Groovy on Android

  • Project: Groovy
  • Description: Currently, Groovy is not able to run on Google's Android mobile platform. The goal of this GSoC project is to work with the Groovy core team towards the goal of making any Groovy program to run on the Android platform, so that apps for such mobile phone can be written fully in Groovy.
  • Mentor: Jochen Theodorou or Guillaume Laforge

Groovy - Groovy Eclipse plugin

  • Project: Groovy
  • Description: The goal of this project is to work closely with the Groovy Eclipse team to help develop new features for the Groovy Eclipse plugin, and improve existing ones. You'll need to have some good level of knowledge with Eclipse plugin development.
  • Mentor: TBD (someone from the Groovy Eclipse team)

Groovy - Executable spec harness

  • Project: Groovy
  • Description: Groovy is being standardized throught the Java Community Process under JSR-241 (Java Specification Request). The aim of this GSoC project is to build an executable specification and test harness system for documenting and testing the Groovy language.
  • Mentor: Guillaume Laforge
  • Spec: JSR-241

Ajlib - Reusable library aspects

  • Project: Ajlib
  • Description: Ajlib is a Codehaus project that is creating reusable aspects to support AspectJ development. This is a great way to try out or refine your AOP skills. Ideas for reusable aspects include standard pointcuts for popular frameworks (Struts, Java EE, Hibernate), annotation processing and conversion (e.g., derive Java 5 persistence annotations from business annotations), application security and privacy aspects (e.g., instance-level security based on P3P annotations or query filtering), building aspects that use Hibernate reflection, synchronization and concurrency aspects, extending the aspects in AspectJ in Action for production use, and virtual mock objects for integration tests. See also http://www.aspectprogrammer.org/blogs/adrian/2005/03/aspect_library.html. I'd also be interesting in mentoring developers who want to work on open source performance monitoring, building on the Glassbox project (currently at java.net but we will be moving it...)
  • Mentor: Ron Bodkin
  • Languages: AspectJ