Community:SummerOfCode11:Brainstorming

From MozillaWiki
Jump to: navigation, search

Looking for this year's Summer of Code information? Step right this way.

This page is for anyone to submit ideas for Google Summer of Code projects with Mozilla for 2011. As it is open to all, it will inevitably contain suggestions of wildly variable quality.

Students: ideas approved by the SoC admins are here. You can also submit ideas from this page, but they are rather less likely to be accepted. (There's probably a reason they haven't been moved to that page.) 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 Make Good Suggestions

Before adding an idea 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 you, 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

Links to ideas lists from previous years.

Mozilla Platform

Title Details - with links as appropriate Reporter Mentor(s) Comments
Qt/KDE port of Firefox

Goal: Finish the Qt Widget code, so that Firefox can run on Linux using Qt (whereas currently it must run using GTK).

A lot of work has been done to get Firefox to support Qt, in part due to Fennec's goal of supporting MeeGo (which is Qt-based). Firefox Qt builds exist already, but need more work to be ready for general use.

A pure Qt port of Firefox for Linux would be interesting from several standpoints: It might be faster than the current GTK builds, and also it would integrate better with KDE distros, which should make it popular.

Alon Zakai



Port Mozilla C/C++ codebase to java

The aim of this project is to port parts of Firefox C/C++ codebase to java to create java version of Firefox eventually. The way Firefox written (platform-specific code wrapped with Netscape Portable Runtime) makes possible to use effective code translation.

Project will create iterative and incremental process. Every cycle starts with working version of java Firefox (splitted up into legacy and ported parts). Cycle consist of following development tasks:

1. Choosing legacy module/sources to port.

2. Running source translator on it.

3. Fixing (porting) broken code. Beside fixing runtime for translated code (special library to reduce and simplify code modifications of translated sources) is updating.

4. Analysis new porting patterns and cases for translation using new runtime features.

5. Modify translator according discovered patterns so it will produce more applicable code.

6. Recover two java Firefox parts integrity if any problems. Update build scripts.

More detailed information you can read here.

Refs:

[1] http://simile.mit.edu/wiki/Java_Firefox_Extension

[2] https://developer.mozilla.org/en/java_in_firefox_extensions

[3] http://www.mozilla.org/rhino/

[4] http://java.net/projects/squawk/

[5] http://tech.novosoft-us.com/product_c2j.jsp

[6] http://www.tangiblesoftwaresolutions.com/Product_Details/CPlusPlus_to_Java_Converter_Details.html

Makarov Dmitry (student)

MENTOR WANTED!

Firefox

Title Details - with links as appropriate Reporter Mentor(s) Comments
Profile Management with Login Integration

Firefox already stores the users' details and usage in profiles(-although the procedure is lengthy-). I want to give the user a management system where the user can log-in to the browser and the predefined settings would be loaded and the activity would be recorded to the profile .In a lot of universities,organizations and homes(parental control), the system adminstrator and the user are different, and the admin wants to authenticate or give some special rights to the user (-for which external clients or login-systems like cyberoam-). I can break down the whole system into 2 parts - form and settings. 

The form could be of multiple usage - from a simple username/pwd type to another having different fields required to authenticate the user.( it can also have a new registration option)

After Login, the user can do any pre-defined settings, he can have his own boomarks, own add-ons, own proxy settings, some saved passwords, sync options, security settings with his/her mobile and other settings which he/she chose.Also this can help universities/organizations to record users' activity specific to his profile.

Already a lot of people(bug list) are using profiles and these would give them a clean interface to do so.I believe this would be a great feature and can enhance the usability a lot. 

ankur


A page loading progress bar with bandwidth usage data counter

I recommend this as an improvement to the existing version of Firefox beta release. Add the page loading bar at the bottom of each page as well as place the user's internet bandwidth usage counter beside it. This data counter will display the usage for each webpage used in one browsing session. The data counter should be merged into a chart depicting the total webpage usage out of the user's internet plan's bandwidth. The features can be embedded into a jetpack. HTML, CSS, and JavaScript languages are needed. Source of programming languages: https://developer.mozilla.org/En/Developing_add-ons Source of Firefox-plugin usage out of CPU usage (for my reference on OS resource usage for my proposal): https://developer.mozilla.org/en/Monitoring_plugins

Sawaiz (student)



Touchpad support.

As I Experienced, navigating a internet browser isn’t easy when using a touchpad, so I come up with an idea to make a tool helping this activity.

I’m going to define some (editable) gestures which would be simple to use on touchpad, some additional actions e.g. double click on the link to open it in new tab, little changes in context menu.

Krzysztof Piniecki (student)



Resource tracker for extensions

Create CPU-time and memory resource tracker for add-ons. Result must be looking similar to Google Chrome Shift-Esc task manager. That is feature showing consumed resources per add-on. By contrast Chromium that use extension process separation and show process characteristics this project implementation will use js-profiling abilities of Firefox.

More detailed information you can read here.

Refs:

[1] http://www.mozilla.org/projects/venkman/

[2] https://jetpack.mozillalabs.com/

[3] https://wiki.mozilla.org/Electrolysis

[4] https://addons.mozilla.org/en-US/firefox/addon/firebug/

[5] http://www.softwareishard.com/blog/firebug/tracing-console-for-firebug/

[6] https://addons.mozilla.org/en-US/firefox/addon/xul-profiler-by-yoono/

[7] https://addons.mozilla.org/en-US/firefox/addon/memory-profiler/

[8] https://addons.mozilla.org/en-US/firefox/addon/leak-monitor/

[9] https://engtech.wordpress.com/2007/11/13/howto-greasemonkey-profiler-firebug/

[10] http://seleniumhq.org/projects/ide/

[11] http://www.mozilla.org/performance/jsprofiler.html

Makarov Dmitry (student)

MENTOR WANTED!

Thunderbird

Title Details Reporter Mentor(s) Comments

Camino

See the Camino Summer of Code page for project suggestions.

SeaMonkey

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
Tag Cloud Feature: means for quickly grasping a larger bugzilla instance as well as for data mining.

Could involve tags, keywords, or even probably configurable arbitrary fields.

Michael Shigorin (no student) There seems to exist HTML-TagCloud module.

Mobile/Fennec

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

Firefox Support (Sumo)

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


Mozilla IT Infrastructure

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

Mozilla Services (Sync, Identity, etc)

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

Developer Tools

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

Drumbeat/Batucada

Any hacking projects connected to a Drumbeat project or Batucada.

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