Home
.. Links
.. Search
.. Plugins
.. Help
.. Irc Faq

Projects
.. Platform/Faq
.. JDT/Faq/Plan
.. PDE/Faq
.. SWT/Faq
.. RCP/Faq

Tools Projects
.. CDT/Faq
.. GEF/Faq
.. EMF/Faq

Wiki Tutorials

Hosted Projects
.. MTJ
.. Google Summer Of Code 2007
.. Update Manager 2.0
.. EasyEclipse
.. Stylebase for Eclipse

Archives

Google Summer Of Code 2007


Eclipse is participating in Google's Summer of Code 2007, after a great run in 2006!
The 2006 projects are listed below and there.

Thank you for your interest in Eclipse. Eclipse is a great place to spend a summer learning, coding, participating and contributing. We are an exciting open source project with a vibrant community, and we look forward to your application and your project ideas.

Students, please sign up here. We will  take great care to review your application which is important for us, and will provide you with feedback along the way.

Thanks for submitting a proposal!

Mentors, please sign up here to join as an Eclipse mentor. Visit the Google Summer Of Code 2007 @ Eclipse: Mentors Guidelines page for more info. Email the admins for the program to get your Mentor application accepted. A nice intro email should work if you have the right credentials: philippe.ombredanne (at) eclipse dot org and wayne.beaton (at) eclipse dot org.

Below you will find many resources when choosing a Summer of Code organization, writing your application, and choosing a project to work on.

Student requirements

Here is a short list of requirements that you must be able to meet in order to get accepted as a student participant in Google's Summer of Code program.

  1. Working on your Eclipse project should be your primary activity for the summer.
  2. You must be willing to provide weekly status reports.
  3. You must be willing to visit the #eclipse-soc IRC channel often and interact with the program participants there.
  4. You will be expected to learn how to use CVS or SVN and maintain your project in a public CVS or SVN repository. (more details to come using a SourceForge project later)
  5. You need to have decent Java coding skills and basic knowledge of the Eclipse framework and API.

It is important that you can work full time or almost full time on your project. You may have a lot to learn before you will get to the point where you can begin coding your project, and the projects are all non-trivial. We will provide you with support from the mentors and community, but it is up to you to make sure that you can focus on your Eclipse project. Make sure you state how much time you plan to allocate to your Soc project.

Writing a Summer of Code application

For a smaple application for last year, see http://www.hantsuki.org/proposal.html 

We are likely to receive more than 100 proposals. We received more than 90 last year, and we had to eliminate over 20 applications which were incomplete, off target (i.e. not Eclipse related) or poorly written. Competition will be fierce, so what can you do to help make sure your application gets serious consideration? Here are some tips.

Join the conversation! A great way to discuss your projects ideas is to join the IRC channels #eclipse-soc and #eclipse on Freenode

Sell your idea. Describe your idea in detail. What is its ultimate goal? What components will it have? What benefits does it have for Eclipse itself and its community? How do you plan to achieve completion of your project? If a specification already exists, what will you do that will go above and beyond expectations?

Sell yourself. Get across your enthusiasm for the project. Tell us what makes you stand out from the rest of the crowd. Talk about your past experiences, what makes you tick. Why are you interested in open source software, and Eclipse in particular? What interests do you have, and how do these interests relate to the project for which you're applying? There is a basic assumption that people applying for Summer of Code will have at least some programming skills already. So rather than spend a lot of time elaborating on these (though by all means, do tell us what you know), spend time talking about you.

Show enthusiasm. Summer of Code is an exciting opportunity, and Eclipse is an interesting project to work on. We're not just looking for people who want a summer job to pass the time, we're looking for devoted people who have an intrinsic passion for open source, and are (or will become) Eclipse experts and could make long lasting contributions to the community.

Tailor your application to the project. It was painfully obvious last year that certain people copied/pasted parts (or even the entirety) of their applications to multiple projects. This can be seen from a mile away, and it is a sure-fire way for your application to not be taken seriously. Each application you send should be targeted and tailored for the specific mentoring organization and project to which you are applying. Do not bother to apply if your application is not specific to Eclipse and the Eclipse framework.

Get feedback on your idea from the community. Discussing your idea with some established Eclipse folks is important. If your idea duplicates existing efforts or code (and does not provide a very convincing reason for doing so), it will be rejected. Try to have your application reviewed by someone before you submit it, whether that be the mentor for a particular project itself (in the case of already generated ideas below), or a person with expertise in a certain area. Don't be afraid to ask the community for help; we want you to succeed just as much as you do. :)
Good sources for help and feedback are the Eclipse Newsgroups and the IRC channels .

Don't be afraid to go out on a limb. Have a brilliant idea that's not covered by the proposals on the following pages? Great! Don't be scared to try and think "outside the box" and come up with a fantastic idea of your own. This is a wiki. You can just edit this page!

Note : 'Writing a Summer of Code Application ' is copyright by Angie Byron and Karoly Negyesi and available under a CC Attribution Share-Alike 2.0'
This page was also shamelessly borrowed and derived from http://dev.joomla.org/content/view/1360/85/ 

 

Application Template 

Here are some of the points you want to make sure are addressed in your application:

About you:

  • Attach or link your resume/CV, including relevant programming and open source experiences.
  • How much time you think you'll be able to spend on the SoC each week?
  • Describe any other plans you may have over the summer in addition to the SoC, such as classes, a summer job, vacation plans, master's thesis, etc.
  • Have you used Eclipse before?
  • Have you worked on other open source projects including Eclipse before? If so, please list and describe what you did.
  • Please list other projects you are applying to for the SoC, especially situations where the same proposal is submitted to Eclipse and other projects.

Your Project:

We welcome any project suggestions. The project ideas ages are a good starting point.
DO NOT Bother with ideas which are not relevant or related to Eclipse!
We need a good description/abstract of what you want to deliver, the features and benefits you project would bring, and the technology used.

The description of your project is the MOST important part of your application. (a plan for execution is welcomed, but is not yet needed)

You could also use the application that was filled last year by one of the student as a starting point:  http://www.hantsuki.org/proposal.html

Some Eclipse Projects Ideas

We are open to any project proposals, and are providing a few ideas. Of course, projects ideas that have a mentor assigned are more likely to be accepted. Look for some project ideas here, and in the main list there: there.
  • Fix the most popular bugs and feature requests: provide patches or fixes for any open bugzilla with at least 20 votes .
  • Eclipse IDE generator: building on some previous research work (Chris Laffra), provide an Eclipse IDE generation environment derived from a language grammar. This project would allow the creation of basic support of new or existing languages in Eclipse rapidly.
  • Eclipse Mono Development Environment: a feature rich .Net development platform for Eclipse. The Java development tool may provide a great starting point. As this may be a big project, providing a project that accomplishes some significant contributions towards that goal is fine.
  • New Eclipse update manager: Eclipse current update manager is four years old and ridden with significant problems. This project would provide with a modern and original design for an automated software update for plugins and natives, if possible generic for OSGi based runtimes and could provide original inputs for a revamp of update in 3.3 to the platform team.
  • NetBeans in Eclipse: netclipse: the plugins models for Eclipse and NetBeans are very similar yet different. This project would provide the ability to run and embed a minimal NetBeans environment within Eclipse -- as Eclipse plugins-- , and support running NetBeans plugins like Matisse (Swing UI painter) or Coyote (dynamic languages toolkit).
  • Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant.
  • Eclipse RCP installer wizards: create Eclipse wizards to generate native graphical installers and packages for the major platforms: Windows , MacOSX, and Linux is, deb, emerge, rpms for an Eclipse Rich Client Platform application.
  • Eclipse Open Office Integration: provide OpenOffice as a set of minimal Eclipse plugins for each platforms integrated in Eclipse and packaged for RCP deployment
  • Eclipse install based manager: provide application and support for managing a large deployment of Eclipse based RCP clients, including pushed updates and client configurations.
  • Mylar Wiki integration, enabling context and embedded authoring for Wiki pages and tasks.
  • Mylar and ECF integration, enabling task contexts to be shared synchronously between developers. Possibly using XMPP and Google Talk messaging service
  • Voice-over-IP client implemented as RCP app using ECF call API and Google Talk call setup protocol (Jingle)
  • RCP real-time collaboration based upon ECF and Google Talk XMPP-based messaging service
  • Implementation of System-Tray API for Mac, allowing to control the Dock (See Bug 56116)
  • An Eclipse plugin for discovering run-time components that other plugins may need. For instance on MacOS, all the installed Java runtimes are automatically added to the list of installed Java runtimes. Having a similar feature to flexibly discover Java runtimes on Windows and Linux would be very helpful, looking for well-known installations locations, marker files, registries, or using file system scans. It could be even more generic and provide extensions points to contribute discovered runtimes in other areas: a Ruby, PHP, Python, Perl or  C++ language runtime for the available open source plugins, or the discovery of installed servers or database runtimes for MySQl, Apache, Tomcat and so on. Third party plugins could subscribe to those services and provide auto-configuration of their own preferences. An example implementation could be to provide embedded PHP runtimes for PHPEclipse and PHPDT or an embedded MinGW for CDT.

 



Last Modified 3/25/07 9:36 AM

Hide Tools