Difference between revisions of "Google Summer Of Code"
Peter gummer (Talk | contribs) m |
|||
Line 4: | Line 4: | ||
If you have a suggestion, create a new page describing your project using [[project_submission_template|this template]] and reference it below. | If you have a suggestion, create a new page describing your project using [[project_submission_template|this template]] and reference it below. | ||
− | {{Note| Eiffel Software was not selected as a Mentor organization for 2009. Nevertheless, you are more than welcome to pick one of the | + | {{Note| Eiffel Software was not selected as a Mentor organization for 2009. Nevertheless, you are more than welcome to pick one of the projects below and to contribute to Eiffel. Keep tuned as we will try next year.}} |
== What is the Google Summer of Code? == | == What is the Google Summer of Code? == |
Revision as of 15:12, 2 April 2009
Welcome to the EiffelStudio's participation in the Google Summer of Code 2009. You will find below a list of project ideas for students who want to participate in the 2009 event. Students will be mentored by an experienced member of the Eiffel Software team or a long time community member specialized in the domain of the project.
If you have a suggestion, create a new page describing your project using this template and reference it below.
Note: Eiffel Software was not selected as a Mentor organization for 2009. Nevertheless, you are more than welcome to pick one of the projects below and to contribute to Eiffel. Keep tuned as we will try next year.
What is the Google Summer of Code?
Google Summer of Code (GSoC) is a global program that offers student developers stipends to write code for various open source software projects.
Read the Google Summer of Code 2009 FAQ for more details about the program.
Why choosing Eiffel and EiffelStudio for the Google Summer of Code?
EiffelStudio is a complete development environment available on numerous platforms. With a long history, the simplicity of the Eiffel language and its modular structures make it possible for newcomers to start contributing after a surprisingly short amount of time.
The Eiffel language is distinguished by the following properties:
- Full object-oriented model (not a hybrid with pre-O-O approaches).
- Genericity (constrained and unconstrained), inheritance (single and multiple).
- Design by Contract mechanisms (preconditions, postconditions, class invariants) for: analysis and design of reliable system; specification; automatic documentation; testing and debugging; control of the exception and inheritance mechanisms.
- Agents (closures, i.e. high-level function objects, with the power of lambda calculus).
- Designed for garbage collection and for highly efficient executables (performance comparable to C or C++).
In addition, Eiffel is not just a language but a method of software development emphasizing software engineering principles such as: seamless development (covering the full lifecycle, not just implementation, in a consistent way); reversibility; uniform access; open-closed principle; command-query separation. These principles are developed in the book "Object-Oriented Software Construction" (Bertrand Meyer, 2nd edition, Prentice Hall), one of the all-time best-sellers in computer science, Jolt Award winner. The consequence for students is that using Eiffel for the Google Summer of Code means the ability not only to produce programs but to learn a software engineering discipline that will help them throughout their career.
Our mentors
You will find the list of all mentors who will mentor one or several projects and that will also be used as backup in case something would happen to another mentor.
- Alexander Kogtenkov: Compiler, runtime
- Jocelyn Fiat: EiffelStudio debugger, libraries, web, runtime
- Ian King: EiffelVision2, Compiler, libraries
- Larry Liu: Docking, EiffelVision2, Testing, libraries
- Emmanuel Stapf: EiffelStudio, Compiler, runtime, libraries
- Paul Bates: EiffelStudio, libraries
- Ted Feng: EiffelStudio, Internationalization, runtime & exception
- Peter Gummer: Long time Eiffel user, .NET , SCons
Projects
Builds
- EPI-BU-0001: Building PorterPackages for various platforms
- EPI-BU-0002: Building Linux packages
Compiler
- EPI-CO-0001: Save Eiffel Configuration File in a non-XML format
- EPI-CO-0002: Interface with Objective-C on Mac OS
Libraries
- EPI-LI-0001: Better Unicode support
- EPI-LI-0002: String and file format encoding
- EPI-LI-0003: Encoding detection
- EPI-LI-0004: Library discovery
- EPI-LI-0005: Various kind of archives (TAR, GZIP, ZIP, ...) support
- EPI-LI-0006: Add support for more network protocols
EiffelStudio
- EPI-ES-0001: Integrate SCM support
- EPI-ES-0002: Update notification
- EPI-ES-0003: Easier internationalization
Tools
- EPI-TO-0001: Integration to SCons