Community:SummerOfCode07:Brainstorming: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 29: Line 29:
| valign="top" | maxaeran
| valign="top" | maxaeran
| valign="top" |
| valign="top" |
| valign="top" |When user clicks to play a streamed audio file, I am suggesting two methods to play it. First one is view the downloader and supply a Firefox’s “internal player” to play it. Second one is supply a player options within tool bar. I don’t know the possibility of this project. Please comment on this.
| valign="top" |When user clicks to play a streamed audio file, I am suggesting two methods to play it. First one is view the downloader and supply a Firefox’s “internal player” to play it. Second one is supply a player options within tool bar. I don’t know the possibility of this project. Please comment on this.<br>
<br>
maxaeran: how does this fit with the WHAT-WG Audio object proposals? - Gerv
|-
|-
| valign="top" | Extension for bookmarking and sharing scripts and extensions.
| valign="top" | Extension for bookmarking and sharing scripts and extensions.
Line 35: Line 37:
| valign="top" | Hivemya
| valign="top" | Hivemya
| valign="top" |
| valign="top" |
| valign="top" |JS coded extension w/ Open ID based accounts. SQL-based bookmark accounts directly linking to XPIs, with support for RSS. Is extension auto-installation possible through RSS/JSON subscription?  
| valign="top" |JS coded extension w/ Open ID based accounts. SQL-based bookmark accounts directly linking to XPIs, with support for RSS. Is extension auto-installation possible through RSS/JSON subscription? <br>
<br>
Who regularly wants to "load their preferred extensions on any firefox browser in seconds"? - Gerv
|-
|-
| valign="top" | Firefox Tab Grouping
| valign="top" | Firefox Tab Grouping
Line 47: Line 51:
| valign="top" | schapel
| valign="top" | schapel
| valign="top" |
| valign="top" |
| valign="top" | This could be done in Gecko itself or as an Imagelib extension as described in [https://bugzilla.mozilla.org/show_bug.cgi?id=18574#c672 this Bugzilla comment]
| valign="top" | This could be done in Gecko itself or as an Imagelib extension as described in [https://bugzilla.mozilla.org/show_bug.cgi?id=18574#c672 this Bugzilla comment]<br><br>Who is using this image format? What are the benefits? - Gerv
|-
| valign="top" | Camino: Tabspose
| valign="top" | Expose for tabs, but in the browser window ({{bug|312007}})
| valign="top" | pinkerton
| valign="top" | pinkerton
| valign="top" | I've wanted to do this for years...
|-
|-
| valing="top" | Allow the option of passing URL to helper application instead of downloading
| valing="top" | Allow the option of passing URL to helper application instead of downloading
| valign="top" | See {{bug|225882}}
| valign="top" | See {{bug|225882}} and {{bug|137339}}
|-
|
| valign="top" | Make SeaMonkey Not Suck As A News Reader
|
| valign="top" | Basically, get some traction on some of the highlights of {{bug|176238}}/{{bug|12699}} , in particular: "clickable references" ({{bug|62033}}) and headers in general ({{bug|23114}}), a more usable subscribe dialog ({{bug|40260}}), reordering of the folder pane ({{bug|150274}}, maybe even hierarchical?). For bonus points, a correct implementation of the nntp/news protocols ({{bug|89939}}) would be really cool!
|
| valign="top" | Mnyromyr
| valign="top" | Mnyromyr
| valign="top" | UI stuff would be for SeaMonkey, but should be portable to Thunderbird easily. Both would profit from backend fixes.
|-
| valign="top" | Real Mail Templates
| valign="top" | Currently, mail templates are too static, their interaction with mails you respond to etc. is almost zero ({{bug|21210}}, {{bug|107876}} and others). It would be an enourmous progress if we could have variables like $$EMailAddress$$, $$QuotedBody$$, $$Date$$, $$CustomVariable(with Parameter)$$ in a template which get filled in when replying or composing.
| valign="top" | Mnyromyr
| valign="top" | Mnyromyr
| valign="top" | UI stuff would be for SeaMonkey, but should be portable to Thunderbird easily. Both would profit from backend fixes.
|-
| valign="top" | Score Filter
| valign="top" | A score filter ({{bug|151622}}) would associate an integer with every message. This integer could then be changed by filter actions like "Increase by x", "Set to Y", etc. and have itself filter criteria like "If score is lower than A", "If score has value B", etc. Several other message properties alterable by filter actions (like isJunk or isThread) would need to be made usable as filter criteria for that for full points. In toto, this would allow for very fine-grained message control.
| valign="top" | Mnyromyr
| valign="top" | Mnyromyr
| valign="top" | UI stuff would be for SeaMonkey, but should be portable to Thunderbird easily. Both would profit from backend fixes.
|-
|-
| valign="top" | Metalink
| valign="top" | Metalink
Line 87: Line 70:
| valign="top" |
| valign="top" |
| valign="top" | PGP signature support would probably be easiest to build on top of Enigmail extension. See Metalink which supports associating MD5/SHA1 hashes and PGP signatures with files, and [http://microformats.org/wiki/hash-examples hash microformat] for embedding within a page.<br><br>Making three extra 404 hits on a website for each file downloaded is not a friendly thing to do (remember favicon.ico) - Gerv
| valign="top" | PGP signature support would probably be easiest to build on top of Enigmail extension. See Metalink which supports associating MD5/SHA1 hashes and PGP signatures with files, and [http://microformats.org/wiki/hash-examples hash microformat] for embedding within a page.<br><br>Making three extra 404 hits on a website for each file downloaded is not a friendly thing to do (remember favicon.ico) - Gerv
|-
| valign="top" | Implement link fingerprints
| valign="top" | Link fingerprints are a method of making an HTTP or HTTPS URL reference not only a particular resource, but a particular version of that resource, in a way that the fetching client can validate. This would make it harder (not impossible) for crackers to change downloadable software packages without any user (and the site owner) noticing it. Further details can be found in [http://www.gerv.net/security/link-fingerprints/ the proposal by Gervase Markham], Gerv's [http://weblogs.mozillazine.org/gerv/archives/2007/03/wordpress_download_tarball_com.html blog post about the recent Wordpress tarball attack] and [https://bugzilla.mozilla.org/show_bug.cgi?id=292481 bug 292481]
| valign="top" | [[User:Jens.b|Jens.b]]
| valign="top" | Gerv
| valign="top" | This is similar to Heikki's proposal above and could be done as part of that larger activity, but I think it deserves separate mention as its scope is specified more precisely, and it might be faster to implement. - Jens<br><br>There is already an extension which does some of this; a proper patch for the trunk would be required - Gerv
|-
|-
| valign="top" | Add tabbed messages support for Thunderbird
| valign="top" | Add tabbed messages support for Thunderbird
| valign="top" | Tabbed message reading is a highly demanded feature for Thunderbird and was on the planned feature list for version 2, but missed the bus and currently there is nobody working on it. Having to change the selected folder and/or message or opening a new window decreases productivity (increases waste of time). The new message pane should also be available for the tabbed view. See [https://bugzilla.mozilla.org/show_bug.cgi?id=297379 Bug 297379] and [https://bugzilla.mozilla.org/show_bug.cgi?id=218999 Bug 218999]
| valign="top" | Tabbed message reading is a highly demanded feature for Thunderbird and was on the planned feature list for version 2, but missed the bus and currently there is nobody working on it. Having to change the selected folder and/or message or opening a new window decreases productivity (increases waste of time). The new message pane should also be available for the tabbed view. See [https://bugzilla.mozilla.org/show_bug.cgi?id=297379 Bug 297379] and [https://bugzilla.mozilla.org/show_bug.cgi?id=218999 Bug 218999]
| valign="top" | Archaeopteryx
| valign="top" | Archaeopteryx
| valign="top" |
| valign="top" |
Line 111: Line 87:
| valign="top" | [[User:Shyamk|Shyam]]
| valign="top" | [[User:Shyamk|Shyam]]
| valign="top" | [[User:Shyamk|Shyam]]
| valign="top" | [[User:Shyamk|Shyam]]
| valign="top" | A repost of the idea I posted [http://wiki.mozilla.org/Firefox/Feature_Brainstorming:Performance Here] (Firefox3 Brainstorming).<br><br>Shyam: what qualifications do you have to mentor this project? - Gerv <br><br>Grev: Replied to you by e-mail, and updated this [http://wiki.mozilla.org/Community:SummerOfCode07:Mentors wiki]. Needless to say, I {can/would like} to get dirty in implementing this along with the student (In case of time constraints).
| valign="top" | A repost of the idea I posted [http://wiki.mozilla.org/Firefox/Feature_Brainstorming:Performance Here] (Firefox3 Brainstorming).<br><br>Shyam: what qualifications do you have to mentor this project? - Gerv <br><br>Grev: Replied to you by e-mail, and updated this [http://wiki.mozilla.org/Community:SummerOfCode07:Mentors wiki]. Needless to say, I {can/would like} to get dirty in implementing this along with the student (In case of time constraints).<br><br>Shyam: mentors need to have Mozilla community experience. A mentor is not a co-worker by another name :-) - Gerv
|-
|-
| valign="top" | Image type finder
| valign="top" | Image type finder
Line 124: Line 100:
| valign="top" |  
| valign="top" |  
| valign="top" |
| valign="top" |
|-
| valign="top" | Vista Desktop Search Integration
| valign="top" | Implement Vista Desktop Search for Thunderbird mail messages as described in [https://bugzilla.mozilla.org/show_bug.cgi?id=369283 bug 369283]
| valign="top" | [[User:Bienvenu|Bienvenu]]
| valign="top" | [[User:Bienvenu|Bienvenu]]
| valign="top" | There is a lot of code in the Spotlight integration code that could be re-used for the Vista search integration.
|-
|-
| valign="top" | Remote Cookies
| valign="top" | Remote Cookies
Line 135: Line 105:
| valign="top" | [[User:ericjung|Eric H. Jung]]
| valign="top" | [[User:ericjung|Eric H. Jung]]
| valign="top" | [[User:ericjung|Eric H. Jung]]
| valign="top" | [[User:ericjung|Eric H. Jung]]
| valign="top" | Think of never having to authenticate against all of your websites again! If the student runs out of time, I will write code to keep the server contents encrypted and the SSL delivery/retrieval mechanism. Student needs to write the GUI and web progress listener hooks.
| valign="top" | Think of never having to authenticate against all of your websites again! If the student runs out of time, I will write code to keep the server contents encrypted and the SSL delivery/retrieval mechanism. Student needs to write the GUI and web progress listener hooks.<br><br>Why just cookies? Why not full remote profiles? Do you have an algorithm for handling merge conflicts? How does this relate to Google Sync? - Gerv
|-
|-
| valign="top" | Broken Add-on Detector
| valign="top" | Broken Add-on Detector
Line 147: Line 117:
| valign="top" | [[User:piecu|Bartosz Piec]]
| valign="top" | [[User:piecu|Bartosz Piec]]
| valign="top" |  
| valign="top" |  
| valign="top" | Look at Microsoft Outlook or Outlook Express for an example dialog
| valign="top" | Look at Microsoft Outlook or Outlook Express for an example dialog<br><br>What benefits does having such a dialog give us? - Gerv
|-
| valign="top" | Bugzilla: Plugin System
| valign="top" | [https://bugzilla.mozilla.org/show_bug.cgi?id=371333 bug 371333]: Bugzilla has many methods for being extended, but they are not always clearly documented or coordinated. There is also no central repository for downloading plugins, or a standard way to install them. This task would be to make it easy for developers to write plugins, make it easy for administrators to install them, and write a useful sample plugin that demonstrates all of this.
| valign="top" | [[User:MaxKanatAlexander|mkanat]]
| valign="top" | [[User:MaxKanatAlexander|mkanat]]
| valign="top" |
|-
|-
| valign="top" | Bugzilla: Duplicate Bug Detection
| valign="top" | Bugzilla: Duplicate Bug Detection
Line 160: Line 124:
| valign="top" |  
| valign="top" |  
| valign="top" | [https://launchpad.net/malone Malone] can do this now, although  I'm not certain its code is actually open source. (Anyhow, GPL'ed code can't be included in Bugzilla, which uses the MPL.)
| valign="top" | [https://launchpad.net/malone Malone] can do this now, although  I'm not certain its code is actually open source. (Anyhow, GPL'ed code can't be included in Bugzilla, which uses the MPL.)
|-
| valign="top" | Bugzilla: Overhaul Charting System
| valign="top" | Bugzilla currently has two charting systems, the Old Charts and the New Charts. Old Charts are very simple, and work. New Charts are very complex, and the code has been abandoned for several years. However, charting is a feature that many users want in a bug-tracking system.
This task would be to implement a charting system that is simple to use, respects Bugzilla's built-in security, and provides the flexibility that administrators want. In particular, the ability to go "back in time" and chart data about the past would be very welcome. (Our current system only starts charting data as soon as you set up a chart, so you can't find out anything about last month, or even yesterday.)
| valign="top" | [[User:MaxKanatAlexander|mkanat]]
| valign="top" |
| valign="top" | There may be some questions about importing data from the old systems. I think that New Charts are not in much use, since they aren't complete. The system would have to be able to import Old Charts, but the New Charts system could be entirely replaced by the system built in this project. (However, any left-over New Charts would have to be exported as CSV so that users wouldn't lose their data.)
|-
|-
| valign="top" | Firefox automation & Tinderbox integration
| valign="top" | Firefox automation & Tinderbox integration
Line 173: Line 129:
| valign="top" | [[User:NagappanAlagappan|Nagappan]]
| valign="top" | [[User:NagappanAlagappan|Nagappan]]
| valign="top" | [[User:NagappanAlagappan|Nagappan]]
| valign="top" | [[User:NagappanAlagappan|Nagappan]]
| valign="top" | Once the system is integrated with Tinderbox, then we can extend it to use for Thunderbird automation testing too.
| valign="top" | Once the system is integrated with Tinderbox, then we can extend it to use for Thunderbird automation testing too.<br><br>Nagappan: please tell us your Firefox/LDTP/Tinderbox-related experience on the [[Community:SummerOfCode07:Mentors|Mentors]] page. - Gerv
|-
|-
| valign="top" | "Search as you Type in addressbar" extension
| valign="top" | "Search as you Type in addressbar" extension
Line 180: Line 136:
| valign="top" | [[User:jigarashah|jigar shah]]
| valign="top" | [[User:jigarashah|jigar shah]]
| valign="top" | Most of the time user want to find a page on a particular website; say mozilla developer, He goes to that website and browses through all available links. If when he starts typing in addressbar he gets suggestions based on his bookmarks and History it will reduce his search time. This is easy to do in Firefox 3 since there are plans to add SQLLite in FF3. Don't know about possibilities for FF2.
| valign="top" | Most of the time user want to find a page on a particular website; say mozilla developer, He goes to that website and browses through all available links. If when he starts typing in addressbar he gets suggestions based on his bookmarks and History it will reduce his search time. This is easy to do in Firefox 3 since there are plans to add SQLLite in FF3. Don't know about possibilities for FF2.
|}
|}

Revision as of 17:25, 20 March 2007

Projects with a confirmed mentor and approved by the Mozilla project SoC administrator will be moved to Community:SummerOfCode07. Potential students should look at that page to find project ideas for which we'd like submissions.

Ground Rules

  • Be specific. It's hard to understand the impact of, or the size of, vague proposals.
  • Consider size. The student has eight weeks to design, code, test and document the proposal. It needs to fill, but not overfill, that time.
  • Do your research. Support the idea with well-researched links.
  • Don't morph other people's ideas. If you have a related idea, place it next to the existing one, or add a comment.
  • Insert only your own name into the Mentor column, and then only if you are willing to take on the responsibility. Potential mentors sign up here.

(More thoughts on making a good list)

Suggestion List

Last year's ideas: General, Thunderbird

Please use this format for submitting ideas.

Title Abstract - links to details/bugs/etc Reporter Mentor(s) Comments
Internal streamed audio player for Firefox This tool will play streamed audio files in firefox itself.( For example .ra files). Currently there must be external player (like real player) to play them. maxaeran When user clicks to play a streamed audio file, I am suggesting two methods to play it. First one is view the downloader and supply a Firefox’s “internal player” to play it. Second one is supply a player options within tool bar. I don’t know the possibility of this project. Please comment on this.


maxaeran: how does this fit with the WHAT-WG Audio object proposals? - Gerv

Extension for bookmarking and sharing scripts and extensions. An extension tying into a web-based tool - a "del.icio.us for extensions" that also allows users to load their preferred extensions on any firefox browser in seconds. Hivemya JS coded extension w/ Open ID based accounts. SQL-based bookmark accounts directly linking to XPIs, with support for RSS. Is extension auto-installation possible through RSS/JSON subscription?


Who regularly wants to "load their preferred extensions on any firefox browser in seconds"? - Gerv

Firefox Tab Grouping This feature will group the logically related tabs into related groups in Firefox into similar logical groups. maxaeran These groups can be made by user or it can be done automatically ( can be configured )

This proposal is too vague - Gerv
JPEG 2000 Add JPEG 2000 support to Mozilla schapel This could be done in Gecko itself or as an Imagelib extension as described in this Bugzilla comment

Who is using this image format? What are the benefits? - Gerv
Allow the option of passing URL to helper application instead of downloading See bug 225882 and bug 137339
Metalink A simple XML format for downloads (bug 331979) that lists mirrors and checksums, along with other useful metadata such as mirror location. Listing multiple URLs for a file increases availability while the checksums guarantee integrity and let downloads be repaired automatically. You can also filter downloads by location and other things. This is currently supported by over ten download managers. Antini
Auto verify MD5/SHA1 hashes & PGP signatures Automatically verifying MD5/SHA1 hashes, and optionally PGP signatures, of downloads. When you have downloaded a file, the download manager should try to download filename.md5, filename.sha, filename.asc and run the associated tool on the downloaded file to verify. Mark the entry as red or something in the download manager, and change the Open link to Info link, if the file did not verify. The Info link would open a page explaining what is wrong. It could perhaps have a open or preferably just delete file button. More difficult case would be to get the md5/sha1 signature if it is just embedded on the page where the download link is, but you could try some heuristics... (see also bug 292481). HeikkiToivonen PGP signature support would probably be easiest to build on top of Enigmail extension. See Metalink which supports associating MD5/SHA1 hashes and PGP signatures with files, and hash microformat for embedding within a page.

Making three extra 404 hits on a website for each file downloaded is not a friendly thing to do (remember favicon.ico) - Gerv
Add tabbed messages support for Thunderbird Tabbed message reading is a highly demanded feature for Thunderbird and was on the planned feature list for version 2, but missed the bus and currently there is nobody working on it. Having to change the selected folder and/or message or opening a new window decreases productivity (increases waste of time). The new message pane should also be available for the tabbed view. See Bug 297379 and Bug 218999 Archaeopteryx There had been experimental builds by Myk in the past, so there are already some concepts.
Internal audio Allow Firefox to play WAV and AIFF audio files internally schapel This would probably need to be done following the WHAT-WG specs for the Audio() object - Gerv
Memory Manager Try to implement an internal memory manager. It should, for example, pre-allocate about 10% of system ram memory and try to operate within that memory. All calls to "free()" should release memory to this global memory pool and all calls to "malloc()" must allocate memory from this memory pool. If properly implemented, we can even reduce the overheads that may arise due to such an implementation. Shyam Shyam A repost of the idea I posted Here (Firefox3 Brainstorming).

Shyam: what qualifications do you have to mentor this project? - Gerv

Grev: Replied to you by e-mail, and updated this wiki. Needless to say, I {can/would like} to get dirty in implementing this along with the student (In case of time constraints).

Shyam: mentors need to have Mozilla community experience. A mentor is not a co-worker by another name :-) - Gerv
Image type finder Implement an image type finder as described in this Bugzilla comment schapel
Improve Thunderbird mail filters Thunderbird's (and SeaMonkey's) mail filter system lacks features present in other clients. Implementing some of them (and new, unique features) would make it much more useful to advanced users, and could increase the user base.
  • Allow to define filters for outgoing messages (e.g. file messages to folders based on found keywords), bug 11039
  • Allow filtering on whether sender is in certain addressbook groups, bug 180013
  • Add ability to filter by attachment presence or file names (e.g. file extension), bug 224392, bug 105169
  • Allow extensions to tie in to filters (filter actions implemented in JS / XPCOM), bug 366094
The exact set of bugs fixed as part of SoC activity would be determined by the mentor and the participant. More ideas can be found in meta bug 66425
Jens.b
Remote Cookies Write a Firefox extension that stores/retrieves cookies on a server instead of in the local cookies.txt file. This will enable Firefox users to use the same cookies on all their computers and Firefox profiles. Eric H. Jung Eric H. Jung Think of never having to authenticate against all of your websites again! If the student runs out of time, I will write code to keep the server contents encrypted and the SSL delivery/retrieval mechanism. Student needs to write the GUI and web progress listener hooks.

Why just cookies? Why not full remote profiles? Do you have an algorithm for handling merge conflicts? How does this relate to Google Sync? - Gerv
Broken Add-on Detector Let the user show a problem with the application which happens only with extensions enabled (fine in -safe-mode) and let the application search for the broken add-on/conflicting add-ons itself. Archaeopteryx The user recognizes a problem with the application (Fx, Tb, ...) which does not happen in safe mode, so a wizard will demand him to perform the steps to reproduce in normal mode and for comparing in safe mode and try to find the problematic extension by disabling an extension, starting the app and testing and continue with the next extension. Basically, I think about the red code (broken translations and so on) or obvious problems with doubling the event handler which let the tab control keys jump two tabs instead of one. Finally, the problematic extension(s) should be disabled and the user informed about this action.
E-mail send/receive progress dialog Write a Thunderbird extension that displays a dialog showing the progress of e-mail send/receive, showing the total number of mails to process, their size and a progress bar. Bartosz Piec Look at Microsoft Outlook or Outlook Express for an example dialog

What benefits does having such a dialog give us? - Gerv
Bugzilla: Duplicate Bug Detection Implement a system in Bugzilla that detects automatically that the user has likely entered a bug that is a duplicate of another bug, and display a list of bugs that this bug might be a duplicate of. mkanat Malone can do this now, although I'm not certain its code is actually open source. (Anyhow, GPL'ed code can't be included in Bugzilla, which uses the MPL.)
Firefox automation & Tinderbox integration Tinderbox integration of test automation framework (Linux Desktop Testing Project - LDTP) and Firefox GUI automation using LDTP. Nagappan Nagappan Once the system is integrated with Tinderbox, then we can extend it to use for Thunderbird automation testing too.

Nagappan: please tell us your Firefox/LDTP/Tinderbox-related experience on the Mentors page. - Gerv
"Search as you Type in addressbar" extension This extension will search in local bookmark and History jigar shah jigar shah Most of the time user want to find a page on a particular website; say mozilla developer, He goes to that website and browses through all available links. If when he starts typing in addressbar he gets suggestions based on his bookmarks and History it will reduce his search time. This is easy to do in Firefox 3 since there are plans to add SQLLite in FF3. Don't know about possibilities for FF2.