Codex tools: Log in
Howdy Students! Please see our GSoC 2008 Application Template
If you have your own idea for a project, include it in your application.
See the popular ideas submitted by members of the WordPress community. If you share their passion, why not make that idea your own? Also, check out the ideas from last year.
Developers please add a description of the projects that you would be willing to mentor. Add your idea by editing this entry. "Other" should always be last.
Mentors: Mahmoud Al-Qudsi (Computer Guru)
In the grand over all vision XML-RPC would expose all of the functionality that the web based wp-admin interface does. Some of the specific parts that are currently missing include links (aka blogmarks), tag management, media (uploads) management, import / export, theme selection and management, widget control, comment management, read and write general settings, plugin controls and user management.
Another wide open area for XML-RPC right now is automated testing, something similar to Tim Bray's Atom Protocol Exerciser (APE) would be a good model to follow.
Outside the realm of coding there is also a need for detailed documentation on XML-RPC. There are subtle issues between blogging platforms and how they handle specific fields. The blog APIs themselves are often vague and unclear on how things work. Over time people have relearned over and over the specific details about how WordPress (and others) have addressed these issues. Having detailed and precise documentation on how WordPress implements and deals with blog APIs would benefit current and future XML-RPC clients and their authors.
Mentor: Sam Bauers
Author a standard for exporting user data and content in a common and extensible XML format. Create a suite of exporters and importers for the most common forum software available and a standalone validator for the format.
A nascent standard is documented here and an exporter already exists for bbPress. First focus would be on implementation within bbPress and then extending the format and tools to accommodate data created by plugins or that exists within other forum software.
Mentor: Lloyd Budd, Alex Shiels
Import and export are the two most important features of WordPress, and although very good could be even better by having rigerous automated testing for WXR format. The performance of importing a large blog should also be measured. Related work could be adding and updating other importers, implimenting WXR format versioning, documenting the code, and considering the open import/export bugs.
You may want to give some consideration to the idea of "chunked" exports and imports which would avoid problems on hosts with restrictive upload settings.
Mentor: Lloyd Budd
This is a project that doesn't involve WordPress code, but Trac is such an essential tool for WordPress participation. I thought to include this.
WordPress has a large number of "casual" contributors, people that contribute only a few bugs or fixes. These contributions are essential, and are the lungs if not the heart of WordPress. A fun way way for anyone to easily identify their contribution would be interesting.
Investigate what GNOME and Ubuntu (Launchpad.net) bug trackers include for "karma"-statistics testing and development ticket tracking. See what is available for Trac, which may be nothing, and work on a implementing a system similar to GNOME and Ubuntu's.
Although "Trac uses a minimalistic approach" a solution should be possible because of Trac's extensible architecture.
Mentor: Brian Layman, Mark Jaquith
Provide a streamlined and unified approach to HTML output caching in WordPress, respecting the built-in minimum requirements of WordPress 2.5 (PHP & MySQL versions etc.).
The caching solution must not *require* special server configuration, and should be built on top of WordPress's object cache structure (updated, if necessary) with configurable support for Memcached and other forms of caching.
The project should be developed as a core enhancement, but be able to be turned into a plugin if not accepted for core inclusion.
Timeline: UI choices defined, initial code framework complete, project decisions (cache scope?) by Midterm