Google Summer of Code

Bricolage has applied to be a Mentoring organization for Google's 2009 Summer of Code program.

Big projects

These are projects that require a solid understanding of Perl and the other technologies mentioned, and a commitment to seeing them through. Each has a dedicated mentor to provide guidance and support to one or more students working to complete the project.

  • Full text searching as described in this to do). Either via Solr as described in this thread) (Mentor: Alex Krohn) or tsearch2 (Mentor: David Wheeler). Preferably, both would be implemented.

  • More AJAXification of the Bricolage UI: useful keyboard shortcuts, integrated spell-check, and the like. The sky’s the limit on the ideas that could be applied here (Mentor: Matt Rolf)

  • Document conversion: enable story creation by uploading a specific document type, e.g.: Open Office document, Word document, etc. See this to do. See also this Drupal module for detail description of that platform's approach. (Mentor: Alex Krohn & Phillip Smith)

  • Add a REST interface / API to Bricolage as described in this thread. (Mentor: David Wheeler)

  • Modernize/Simplify the Bricolage install process via a Module::Build-based installer. (Mentor: David Wheeler)

  • Port Bricolage to run over the Muldis Rosetta ORDBMS framework. (Mentor: Darren Duncan)

  • Modify version storage to store deltas instead of complete copies. (Mentor: David Wheeler)

Medium projects

Medium-sized project are excellent for students with a intermediate understanding of the described technology (AJAX, Perl, Javascript, ASP, SQLlite, Firebird, etc.) and a willingness to learn.

  • Add support for Javascript templating. Other possible templating additions are EmbPerl, XSLT, JSP, ASP.NET, ERb, and Cheetah. If the templating system isn’t written in Perl, you’ll be able to borrow from the work done on PHP Sandwich the project started to allow PHP templating in Bricolage. (Mentor: David Wheeler)

  • Workspace improvements as described in this to do. (Mentor: Matt Rolf)

  • Addition of expiry templates and media templates. See this thread (Could be combined with the next item)

  • Addition of event-triggered callbacks as described here. (Mentor: David Wheeler)

  • Improvements to Bricolage's SOAP interface with the objective of providing access to objects, contributors, and more search parameters. (Mentor: Greg Heo)

  • Improved media management as discussed in this thread, i.e., to be able to automagically resize, crop, zoom, etc. Explore merging story and media assets. Relevant docs here and here.

  • Creation of an API "mover" or action to allow Bricolage to more easily publish to other systems that have Web / REST APIs. (Mentor: Phillip Smith)

  • Port Bricolage to SQLite and Firebird. (Mentor: David Wheeler)

Small projects

  • Port Bricolage to Windows.

  • Add support for more WYSIWYG options, e.g.: MultiMarkdown, Textile, and projects like WMD. (Mentor: Greg Heo & Phillip Smith)

  • Add a media type element constraint for related media elements and a story type constraint for related story elements as described in this to do. (Mentor: David Wheeler)

  • External systems integration as described here.

  • Improved user activity logging as described here. (Mentor: Phillip Smith)

  • Add support for bulk upload of media documents as described in this to do.

You can find other possible projects in our bugs database, and feel free to post inquiries to the developers list to pose questions and get help fleshing out your proposals. A number of these tasks are fairly simple—low-hanging fruit. Feel free to combine 3-4 of them into a single proposal.