Version 11 (modified by 17 years ago) ( diff ) | ,
---|
Google Summer of Code 2008
This page exists for planning WebKit's participation in Google Summer of Code 2008,
TODOs (copied from the Google SOC 2008 Terms of Service)
- To provide a publicly published list of project ideas that participating students will choose a project from to work on for the duration of the Program;
- Standards Support
- SVG Filters - Implement a platform-independent set of c++ based SVG filters, as detailed in the the SVG FULL 1.1 specification. Currently only the Mac platform has a filters implementation (CoreImage based). These are disabled in tip of tree WebKit.
- SVG Bug fighting (clipping redesign, xhtml/svg integration issues, a lot more, please ask)
- CSS3 Paged Media - Add support for CSS3 Paged Media, or a subset thereof. Currently we have no support in WebKit.
- MathML (at least the presentational parts, can get very far with a stylesheet only) - http://www.w3.org/TR/REC-MathML/
- Ruby - http://www.w3.org/TR/ruby/
- HTML 5 Offline Web Applications support - http://www.whatwg.org/specs/web-apps/current-work/#offline
- Other Engine Work
- Interruptible JavaScript evaluation
- Generational JavaScript garbage collection
- Improved source syntax highlighting
- Backend Work
- Cairo SVG backend completion (gradients, patterns and other bug fixes to make the test suite results match the CG backend)
- Qt SVG backend completion
- ATK accessibility support
- Developer Tools
- Drosera improvements
- Tree view of local variables that show properties of objects (right now we just show top-level stack variables)
- Live evaluation of JavaScript in the current document's context (when the debugger isn't paused)
- Inline editing of scripts
- Pretty print scripts that are all on one line
- Browse the DOM of the host document from within Drosera (using the Web Inspector)
- Better syntax highlighting (done in the engine with HTML highlighting)
- Web Inspector improvements
- Editing capabilities for node attributes
- Viewing the render tree (with the ability to see what DOM node corresponds to a render object, and visa versa)
- Set Drosera breakpoints on script elements and event handler element attributes (e.g. onclick, etc.)
- Better node highlight overlay that shows margin and padding boxes
- Improved JavaScript properties pane
- Improved Metrics pane
- Other JavaScript debugging tools
- Memory allocation logging tool
- Event dispatch watching
- Javascript profiler
- Developer tool of your own design
- Drosera improvements
- Development Infrastructure
- Automated WebKit API regression tests
- Improvements for DHTML application UI development:
- Focus and Keyboard Navigation improvements for DHTML applications (see http://bugs.webkit.org/show_bug.cgi?id=7138)
- Add ARIA support for adding semantics to DHTML application user interface nodes (see http://bugs.webkit.org/show_bug.cgi?id=12132)
- See http://developer.mozilla.org/en/docs/Accessible_DHTML for more ideas.
- MHTML support (Microsoft's "web archive" equivalent)
- more project ideas go here here
- Standards Support
- To make available a person or persons to take in student suggestions for projects should those students not find something that appeals to them on the published list and either approve or reject those suggestions;
- Eric Seidel < eric at webkit >, MacDome on #webkit
- Nikolas Zimmermann < zimmermann at webkit > , WildFox on #webkit
- Jasper Bryant-Greene < jasper at unix dot geek dot nz >, jasperbg on #webkit
- Signup to be a mentor here
- To make available a person or persons to review the incoming student applications targeted to the Organization and to decide which applications should be accepted;
These will be reviewed by the webkit-reviewers list + any mentors who are signed up above (and approved by the webkit-reviewers list)
- To make available a person or persons responsible for helping students integrate with the project's community;
These will be the same as the mentors.
- To make available a person or persons to monitor the progress of the students and mentor them as the project proceeds (hereafter "Mentor(s)");
Again, same as the mentors above
- To make available alternate mentor or mentors ready to take over for the aforementioned Mentor(s) in the event s/he is unable to continue providing guidance to the accepted student applicant;
Again, same as the mentors. The goal, being to have N+2 mentors where N is the number of students.
- To provide a written evaluation of each student developer, including but not limited to how s/he worked with the group, if s/he should be invited back should we do another Google Summer of Code, etc. The Mentor Organization agrees that Google may use the results of this evaluation for recruiting purposes. The results of this evaluation will not be made available to the general public or the student participant, except in those cases where the Mentor Organization provides consent for Google to share the evaluation results with the student. However, Google reserves the right to share the Mentor Organization's evaluation with the student participant or others, with or without consent, in extreme cases such as where the Mentor Organization's feedback may be vital to arbitration with the student regarding payment or non-payment of stipend;
Also, the same as the mentors.
- That Google may publicize the Mentor Organization's participation in the Program, the names of participating Mentors from the Organization and the results of the Program for the purposes of executing on program logistics, including but not limited to announcements made regarding calls for student applications;
The WebKit reviewers will review and acknowledge this statement before any participation is made.
- To provide all necessary tax forms or other tax related documentation required to provide payment to the Organization;
WebKit has no legal entity. Thus no tax forms. The organizational payment will be declined.
- To all stipulations recorded in the "Additional" section, below.
Additional
- All code created by student participants must be released under an Open Source Initiative approved license. Additionally, all code must be published in a publicly accessible location. The participant may mirror development on her/his personal infrastructure at her/his option. Use of project hosting on Google Code service for Google Summer of Code projects is subject to the Google Code Terms of Service.
- Use of Google Groups lists for the purposes of communicating with and between Program participants and administrators is suject to the Google Groups Terms of Service, and is governed by the Google Privacy Policy and the following regulation: no use of the lists other than as a vehicle for communication between Program participants, including but not limited to, Mentor Organizations, Mentors, students, Google employees and other Program administrators, is permitted without the express written consent of all parties subscribed to the group.
- In addition, all Program participants agree to cooperate with Google's publicity efforts, without further compensation. This includes the agreement to use their name, address (city and state or country only), likeness and project deliverables for publicity purposes, where legal, for this or similar future programs, and to use the statements made by, or attributed to, the participants relating to Google and any and all rights to said use, without further compensation.
- Google reserves the right, at its sole discretion, to revoke any and all privileges associated with participating in this Program, and to take any other action it deems appropriate, for no reason or any reason whatsoever. Google reserves the right to cancel, terminate or modify the Program if it is not capable of completion as planned for any reason.
- Student participants, Mentors, and Mentor Organizations are free to use the results, including code, of the Google Summer of Code Program in any way they choose provided it is not in conflict with these Terms of Service or the license under which the code was developed.
- No purchase necessary to apply or be accepted for the Program. The Program is void where prohibited or restricted by law.
Note:
See TracWiki
for help on using the wiki.