Community:SummerOfCode10: Difference between revisions
No edit summary |
(First set of projects from Brainstorming page) |
||
| Line 23: | Line 23: | ||
!Mentor(s) | !Mentor(s) | ||
!Comments | !Comments | ||
|- | |||
|Implement resource packages | |||
|A [http://limi.net/articles/resource-packages-spec-ready-for-prototyping/ specification is ready for prototyping] resource packages ({{bug|529208}}), which provide a backwards-compatible, simple, efficient way to bundle up resources in a single file to make transfers faster and reduce HTTP overhead. | |||
|beltzner | |||
|limi,bz(?) | |||
|need to make sure bz/someone from the platform team can mentor | |||
|- | |||
|Improve Cairo performance to match Skia | |||
|There are a number of areas where [http://code.google.com/p/skia/ Skia] outperforms [http://www.cairographics.org/ Cairo]. Find them, and improve Cairo to match or exceed Skia's performance. | |||
|jrmuizel | |||
|jrmuizel | |||
| | |||
|- | |||
|Add retained paths to cairo/SVG/D2D | |||
|We could speed up SVG rendering in many situations by adding [http://www.cairographics.org/ Cairo] API to reuse a path multiple times, and supporting this API directly in cairo backends where this feature exists in the underlying platform (e.g. [http://msdn.microsoft.com/en-us/library/dd371512%28VS.85%29.aspx D2D]). Think "rotating tiger head". | |||
|roc | |||
|jrmuizel | |||
| | |||
|- | |||
|Create a JPEG XR decoding library | |||
|[http://en.wikipedia.org/wiki/JPEG_XR JPEG XR] gives us better compression and other useful features like HDR and alpha channels. The library should be as similar to libjpeg as possible. | |||
|roc | |||
|jrmuizel | |||
| | |||
|} | |} | ||
| Line 34: | Line 58: | ||
!Mentor(s) | !Mentor(s) | ||
!Comments | !Comments | ||
|- | |||
|Multitouch simulator | |||
|A simulation framework would allow developers who do not own a touchscreen device to program websites using the touch APIs. The simulator would be able to run scripted sequences of events, e.g. "move finger 1 from point A to point B and move finger 2 down", and possibly record events too if on an enabled device. | |||
|Felipe | |||
|Felipe | |||
|This framework could be a standalone JS package, a jQuery plugin or a Firebug plugin. | |||
|- | |||
|Built-in Grammar checking | |||
|This project would be divided into three parts : | |||
- A syntax analyser, able o build a semantic tree from a sentence, proceeding by substitutions according to a given set of grammar rules. | |||
- Basic grammar rules and dictionnary for the English language | |||
(At this point, the system should be able to interpret all possible meanings simple well-formed sentence) | |||
- A correction system, built in two parts. First, completing the syntax analyser so that it can "guess" the closest correctly formed sentences when the provided one doesn't match with the rules, and second by verifying that all built trees, therefore structurally correct, don't contain concordance mistakes, etc. | |||
It would probably not be ready for everyday use by the end of the SoC (due to the complexity of natural languages making it a lot of work to transcribe them into substitution rules for tree building) but the language-independant part of the system should be operational. | |||
|Arnaud VIÉ ([[User:Unas|Unas]]) | |||
| | |||
|This could also be implemented into Thunderbird. | |||
Plus, the syntax analyser could be used later as a basis in a translation tool too, when provided with a base of equivalence between words and sentence structures in two languages. | |||
|} | |} | ||
| Line 56: | Line 104: | ||
!Mentor(s) | !Mentor(s) | ||
!Comments | !Comments | ||
|- | |||
|Improve Email Invitations | |||
|Our Email Invitations have been greatly improved since 0.9, but there are still some remaining regressions and new bugs to be fixed here. Also, it would be swell to implement some of the remaining iTIP/iMIP specs, like COUNTER and delegation.[http://tools.ietf.org/html/rfc2447 rfc2447 Email Scheduling (rfc2447)] | |||
|Fallen | |||
|Simon V. ? Ludovic? | |||
|No confirmed mentor yet | |||
|- | |||
|Further mozmill tests/improvements | |||
|Merike has done a great job working on Mozmill and I think its a good idea to continue this effort. [https://developer.mozilla.org/en/Mozmill Mozmill] is an automatic testing framework that immitates user actions to check if the application is doing what it is supposed to. The student would be making sure mozmill tests run with our build system ({{bug|545838}}) and writing further tests. | |||
|Fallen | |||
|Clint? Merike? | |||
|No confirmed mentor yet | |||
|- | |||
|} | |} | ||
==Camino== | ==Camino== | ||
See the [http://wiki.caminobrowser.org/Development:Good_Bugs_and_Projects#Summer_of_Code_2010 Camino Summer of Code 2010 page] for project suggestions. | |||
==SeaMonkey== | ==SeaMonkey== | ||
| Line 78: | Line 132: | ||
!Mentor(s) | !Mentor(s) | ||
!Comments | !Comments | ||
|- | |||
|Weave Sync engines for tabs and mailnews status | |||
|[https://addons.mozilla.org/seamonkey/addon/10868 Weave Sync] is Mozilla's mechanism for synchronizing different installs of Firefox and SeaMonkey. | |||
This project should adapt the existing Firefox tabs engine to work with SeaMonkey, and implement an engine for mailnews status, e.g. read feed entries and newsgroup posts. | |||
|KaiRo | |||
|KaiRo | |||
|The tabs engine is a good learning/entry step, the mailnews status is the actual goal. | |||
|} | |} | ||
| Line 139: | Line 201: | ||
!Mentor(s) | !Mentor(s) | ||
!Comments | !Comments | ||
|- | |||
|Complete ECMAScript edition 5 implementation ([http://www.ecmascript.org/ spec], [http://www.youtube.com/watch?v=Kq4FpMe6cRs presentation]) in Rhino JavaScript | |||
|Implement ES5 strict mode and the remaining features of [https://developer.mozilla.org/en/New_in_JavaScript_1.8 JavaScript 1.8] (including generator expressions) to help release Rhino 1.8 Release 1. | |||
|Norris Boyd | |||
|Norris Boyd (norrisboyd[at]gmail.com) | |||
| | |||
|} | |} | ||
Revision as of 15:13, 8 March 2010
This page lists all the Google Summer of Code 2010 projects with confirmed mentors, and which have been approved by the SoC administrator. New suggestions can be made on the Brainstorming page.
Potential students: you may choose from the list below, but you do not have to - feel free to submit a proposal for your own idea. However, before you do so, see the guidelines for good ideas. You can also discuss your ideas or application in the #developers channel on IRC: irc://irc.mozilla.org/#developers .
In addition to the specifically-named projects below, we have also tagged a number of bugs in Bugzilla with the keyword student-project. However, as the idea of a "student project" is wider than just the Summer of Code, students looking through the list will need to decide whether any particular bug listed there is actually the right size and scope for Summer of Code.
Application Advice
- Read Google's Advice for Students and do the things listed there.
- Read How Not To Apply For Summer Of Code and avoid doing the things listed there.
- Read our examples of good applications: 1, 2, 3.
- Sign up to apply here (you'll need a Google Account).
Questions of any sort? Send mail to Gerv and/or chofmann. We will try and respond as soon as possible and get your questions directed to the right person. Please allow at least 48 hours for a reply.
Mozilla Platform
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|---|---|---|---|
| Implement resource packages | A specification is ready for prototyping resource packages (bug 529208), which provide a backwards-compatible, simple, efficient way to bundle up resources in a single file to make transfers faster and reduce HTTP overhead. | beltzner | limi,bz(?) | need to make sure bz/someone from the platform team can mentor |
| Improve Cairo performance to match Skia | There are a number of areas where Skia outperforms Cairo. Find them, and improve Cairo to match or exceed Skia's performance. | jrmuizel | jrmuizel | |
| Add retained paths to cairo/SVG/D2D | We could speed up SVG rendering in many situations by adding Cairo API to reuse a path multiple times, and supporting this API directly in cairo backends where this feature exists in the underlying platform (e.g. D2D). Think "rotating tiger head". | roc | jrmuizel | |
| Create a JPEG XR decoding library | JPEG XR gives us better compression and other useful features like HDR and alpha channels. The library should be as similar to libjpeg as possible. | roc | jrmuizel |
Firefox
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|---|---|---|---|
| Multitouch simulator | A simulation framework would allow developers who do not own a touchscreen device to program websites using the touch APIs. The simulator would be able to run scripted sequences of events, e.g. "move finger 1 from point A to point B and move finger 2 down", and possibly record events too if on an enabled device. | Felipe | Felipe | This framework could be a standalone JS package, a jQuery plugin or a Firebug plugin. |
| Built-in Grammar checking | This project would be divided into three parts :
- A syntax analyser, able o build a semantic tree from a sentence, proceeding by substitutions according to a given set of grammar rules. - Basic grammar rules and dictionnary for the English language (At this point, the system should be able to interpret all possible meanings simple well-formed sentence) - A correction system, built in two parts. First, completing the syntax analyser so that it can "guess" the closest correctly formed sentences when the provided one doesn't match with the rules, and second by verifying that all built trees, therefore structurally correct, don't contain concordance mistakes, etc. It would probably not be ready for everyday use by the end of the SoC (due to the complexity of natural languages making it a lot of work to transcribe them into substitution rules for tree building) but the language-independant part of the system should be operational. |
Arnaud VIÉ (Unas) | This could also be implemented into Thunderbird.
Plus, the syntax analyser could be used later as a basis in a translation tool too, when provided with a base of equivalence between words and sentence structures in two languages. |
Thunderbird
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|
Calendar
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|---|---|---|---|
| Improve Email Invitations | Our Email Invitations have been greatly improved since 0.9, but there are still some remaining regressions and new bugs to be fixed here. Also, it would be swell to implement some of the remaining iTIP/iMIP specs, like COUNTER and delegation.rfc2447 Email Scheduling (rfc2447) | Fallen | Simon V. ? Ludovic? | No confirmed mentor yet |
| Further mozmill tests/improvements | Merike has done a great job working on Mozmill and I think its a good idea to continue this effort. Mozmill is an automatic testing framework that immitates user actions to check if the application is doing what it is supposed to. The student would be making sure mozmill tests run with our build system (bug 545838) and writing further tests. | Fallen | Clint? Merike? | No confirmed mentor yet |
Camino
See the Camino Summer of Code 2010 page for project suggestions.
SeaMonkey
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|---|---|---|---|
| Weave Sync engines for tabs and mailnews status | Weave Sync is Mozilla's mechanism for synchronizing different installs of Firefox and SeaMonkey.
This project should adapt the existing Firefox tabs engine to work with SeaMonkey, and implement an engine for mailnews status, e.g. read feed entries and newsgroup posts. |
KaiRo | KaiRo | The tabs engine is a good learning/entry step, the mailnews status is the actual goal. |
Bugzilla
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|---|---|---|---|
| Better Bugzilla Helper | The current Bugzilla Helper was great for its time, but other Bugzillas have done their own step-by-step versions since which are easier to use. And people have had good ideas, like "here's a screenshot of a Thunderbird window - click on where you think the problem is" and so on. Someone needs to research what others have done, write a plan for a much better simple bug filing system, get it discussed and approved in the community, and build it. | Gerv | Gerv |
Mobile/Fennec
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|
L10n
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|
Firefox Support (Sumo)
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|
Rhino
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|---|---|---|---|
| Complete ECMAScript edition 5 implementation (spec, presentation) in Rhino JavaScript | Implement ES5 strict mode and the remaining features of JavaScript 1.8 (including generator expressions) to help release Rhino 1.8 Release 1. | Norris Boyd | Norris Boyd (norrisboyd[at]gmail.com) |
Mozilla IT Infrastructure
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|
Labs: Weave
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|
Labs: Bespin
| Title | Abstract - links to details/bugs/etc | Reporter | Mentor(s) | Comments |
|---|