Community:SummerOfCode12:Brainstorming: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 126: Line 126:
| [mailto:mconley@mozilla.com mconley]
| [mailto:mconley@mozilla.com mconley]
| mconley
| mconley
|
|}
{| class="standard-table" border="1" style="border-collapse: collapse"
|-
! Title
! Details - with links as appropriate
! Reporter
! Mentor(s)
! Comments
|-
|-
| Thunderbird Get Satisfaction support dashboard
| Thunderbird Get Satisfaction support dashboard
Line 141: Line 132:
| [mailto:rtanglao@mozilla.com rtanglao]
| [mailto:rtanglao@mozilla.com rtanglao]
| Roland Tanglao aka rtanglao
| Roland Tanglao aka rtanglao
|
|-
| Get ISPDB in production.
| There are a few bugs remaining that the Thunderbird team hasn't had time to fix.  It would be nice if we could fix them, and finally get the ISPDB up and running and in use.  (If this task was too easy, we could also add in support for Thunderbird submitting working configs to the ISPDB.)
Level of difficulty:easy to medium
| [mailto:bwinton@mozilla.com bwinton]
| sancus, bwinton
|
|
|}
|}

Revision as of 18:02, 24 February 2012

Mozilla community members - submit ideas here for 2012 Google Summer of Code projects with Mozilla.

Are you a students looking to apply to SoC with Mozilla? Project ideas formally approved by the Mozilla SoC admins are here. You can also submit your own ideas - you don't have to put an idea on this page and get it made official in order to propose it.

How To Write A Good Project Proposal

Before adding an proposal to this list, please consider the following:

  • 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. If you think the SoC admins won't know who you are, leave contact details.
  • Check back regularly. The administrators may have questions about your idea that you will need to answer.
  • Know when to give up. If you've added the same idea for the last three years and it hasn't made it to the official page, perhaps you can predict what will happen this time.

Suggestion List

Here are the ideas lists from previous years.

Proposals can be in almost any part of the Mozilla project - don't be fooled by the "Code" in the title. If there is no category for your part of Mozilla, add one!

Mozilla Platform (Gecko)

Title Details - with links as appropriate Reporter Mentor(s) Comments
Networking Dashboard Build a UI for insight into Mozilla Networking. This is really both a gecko and firefox project. Show what connections are active, how fast connections have run in the past, what protocols are in use with protocol specific context information (http versions, spdy, websockets), allow management (e.g. shutdown) of particular connections, and even trigger some diagnostic tests. mcmanus mcmanus plus hopefully a ux sponsor

Firefox

Title Details - with links as appropriate Reporter Mentor(s) Comments

Firefox Mobile

Title Details - with links as appropriate Reporter Mentor(s) Comments

Boot2Gecko

Title Details - with links as appropriate Reporter Mentor(s) Comments

Calendar

Title Details - with links as appropriate Reporter Mentor(s) Comments
Improve Invitation support While Lightning supports invitations, there are still some features that are not supported yet and others that are not quite as stable. Possible goals for this project include improving the UI to make sure users are not confused and implementing/adapting code to support previously unsupported features of invitations like delegations or counters. Lightning relies on the itip/imip standard for invitations, which is also used by most other calendaring clients and servers, so an interested student should look into these. Related bugs are bug 420516, bug 426532, bug 445982, bug 538043, bug 720263, bug 624332, bug 433848. This is not the final list of bugs to be fixed, just to give you an idea of what can be done here. Fallen ludovic?
OS Integration Lightning should improve its integration into the Operating system, most importantly on Windows. If you've ever wanted to doubleclick on an event to open it in Lightning, this project is for you. Note this might be a bit more tricky than it intially sounds, but you will have the chance to contribute to multiple projects, as some parts of this project could possibly be better solved within Thunderbird or even the Mozilla Platform. To get prepared, see the list of OS Integration bugs, and especially bug 352566. Fallen Fallen+someone else?

Thunderbird

Title Details - with links as appropriate Reporter Mentor(s) Comments
Search toolbar Thunderbird comes with a powerful search feature. When performing a search, the results appear in a new search tab. This new tab allows you to drill down and filter the results of your search. We would like to expand this search result tab so that users can modify their search query as well. A WIP patch has already been started, and so if the project is completed with time to spare, there are a few other things we can add and rearrange to the search tab to make it better for our users. See bug 719008. mconley mconley
Thunderbird Get Satisfaction support dashboard Create a real-time Thunderbird support dashboard by implementing i) a REST API to read Thunderbird support data from a MongoDB database (blog post on the code that generates the MongoDB Database) of Thunderbird Get Satisfaction Support topics ii) a JavaScript client that calls the aforementioned API in order to display a real time Thunderbird support dashboard in Firefox - (i.e. port the existing Thunderbird GS Dashboard to the new API)

Level of difficulty:easy to medium

rtanglao Roland Tanglao aka rtanglao
Get ISPDB in production. There are a few bugs remaining that the Thunderbird team hasn't had time to fix. It would be nice if we could fix them, and finally get the ISPDB up and running and in use. (If this task was too easy, we could also add in support for Thunderbird submitting working configs to the ISPDB.)

Level of difficulty:easy to medium

bwinton sancus, bwinton

SeaMonkey

Title Details - with links as appropriate Reporter Mentor(s) Comments
Shell Service The Mozilla Suite only supported a shell service on Windows, and SeaMonkey has inherited that limitation. Both Firefox and Thunderbird support the shell service on other platforms, so it is technically feasible to implement the shell service for SeaMonkey on those platforms too. Neil Neil This proposal requires some knowledge of platform-specific APIs. Only one platform needs to be implemented by any particular student. I can only give limited support for the Mac but it may be possible to find another mentor.

Camino

Title Details - with links as appropriate Reporter Mentor(s) Comments

NSS (Network Security Services)

Title Details - with links as appropriate Reporter Mentor(s) Comments

Bugzilla

Title Details - with links as appropriate Reporter Mentor(s) Comments

Firefox Support (SUMO)

Title Details - with links as appropriate Reporter Mentor(s) Comments

QA

Title Details - with links as appropriate Reporter Mentor(s) Comments

Documentation

Title Details - with links as appropriate Reporter Mentor(s) Comments
Create examples for SVG Reference The SVG Reference needs examples! Lots of examples! We need live samples for all the various SVG elements and attributes, examples for how to do cool stuff with SVG in the DOM, etc. The goal would be to have in-line, live SVG samples, with the code and an explanation of how the code works, for every SVG element and attribute. Sheppy Sheppy Also talk to Jeremie Patonnier about helping with mentoring.
Create examples for HTML and CSS references The HTML and CSS references on MDN need examples. While there are some here and there, someone needs to go through and ensure that every HTML element has good examples that cover a variety of use cases and interesting capabilities, and that every CSS property has good coverage as well. These would include live examples with the code and an explanation of how it works. Sheppy Teoli
Add jsFiddle integration to Kuma The new Kuma wiki for MDN needs to have good integration with jsFiddle for easily creating examples then editing, experimenting with, and embedding them into documentation. Should be able to view the source and live output, then experiment with the code in real time (either in place or, perhaps preferably, in a new window). Sheppy Sheppy

Mozilla IT and Infrastructure

Title Details - with links as appropriate Reporter Mentor(s) Comments

Open Web Apps

Title Details - with links as appropriate Reporter Mentor(s) Comments

Identity

Title Details - with links as appropriate Reporter Mentor(s) Comments

Sync

Title Details - with links as appropriate Reporter Mentor(s) Comments

Developer Tools

Title Details - with links as appropriate Reporter Mentor(s) Comments
Highlight JS that causes reflows to occur Gecko developers are able to point out statements that trigger reflows from code inspection. We can do better: bug 453650 discusses adding notifications for timing reflows and calls that trigger a reflow. With this information, we can create a tool that obtains stack traces when reflows are triggered, and order the results by duration, and link this to specific triggering JS statements. jdm Someone from devtools, with platform support C++ and JS required.
Highlight slow CSS selectors We have a wiki pages of ways to write CSS rules that take advantage of Firefox's internals: https://developer.mozilla.org/en/Writing_Efficient_CSS. If we could add timing data to CSS selector matching, we could use that information to profile rules on a page and display a profiling view that links to specific problematic rules. jdm Someone from devtools, with platform support. C++ and JS required.

Foundation

Title Details - with links as appropriate Reporter Mentor(s) Comments
Slide Drive Improvements Slide Drive (https://github.com/dseif/slide-drive) combines the deck.js HTML5 slideshow package with Popcorn.js. It was originally developed for Software Carpentry, but would be useful to many other people who want to move off PowerPoint and recorded video. Many enhancements are possible, the most important being accessibility support. greg greg

Release Engineering

Title Details - with links as appropriate Reporter Mentor(s) Comments
Tryserver automation improvements We currently have a trychooser syntax which allows developers to customize what they'd like to test their patch with (out of over 200 build & test options) - this syntax can use some improvements to allow for even more granular control and also needs a web-driven interface as well as logic that would let users specify a repo (mozilla-hosted), a custom test package, and much more. Bugs include try_enhancement tracking and most importantly bug 625463 Lukas Blakk Lukas Blakk useful skills include some webdev and python programming

Instantbird

Title Details - with links as appropriate Reporter Mentor(s) Comments
Account import wizard Goal: Ease the pain of switching to Instantbird

Lots of users don't try a new IM client only because they don't want to spend time reconfiguring all their IM accounts. Being able to import accounts from other clients installed on the system would help Instantbird adoption. The student should focus on the dominant IM clients (Windows Live Messenger, AIM, ...) and on the other multi network IM clients (Digsby, Pidgin, Trillian, Miranda, ...). The student will need to study the way other IM clients store their profile data (reverse engineering may be required), think of an architecture to share as much code as possible between the various import modules, and implement import modules for some clients

Florian Quèze Florian Quèze
Protocol aware error console Goal: Create a tool letting developers (and users) see what was exchanged for each account at the protocol level.

A student working on this project will either extend the existing Error Console or create a new console from which it will be possible to see what data has been exchanged for each account. Example of desirable features: copying a log of whatever happened with an account from the beginning of the connection attempt; syntax highlighting of the exchanged data (requires some parsing of the data exchanged by protocols like XMPP, IRC, Twitter (JSON)); letting the user type and send a raw message to the server.

Florian Quèze Florian Quèze
Voice and Video Goal: Support voice and video communication.

This project intends to explore the possibilities for Voice and Video communication using the Mozilla platform. The student will need to experiment both with usage of the microphone and webcam and with codecs available in the system on the three supported OSes. Compatible implementations of the various IM protocols that support these features is out of the scope of this project, but the student will at least need to prove that s/he has seriously investigated using the various open source projects that have started some work on this. A (mostly) working proof of concept is expected. UI mockups for what a well-thought user interface for voice and video could be would be appreciated.

Florian Quèze Florian Quèze

Emscripten

Title Details - with links as appropriate Reporter Mentor(s) Comments
Port the open source C++ project of your choice to the web Emscripten lets us compile C++ to JavaScript. Porting a project involves building it with Emscripten and fixing any problems along the way (changes to makefiles, implementing missing library support in Emscripten) as well as analyzing the generated code and seeing how to optimize the code for the web. Any interesting open source C or C++ codebase would be a good project to work on here, some examples: GTK, Qt, SuperTux, PyPy, etc. Alon Zakai Alon Zakai