Google Summer of Code 2008

From AbiWiki

(Difference between revisions)
Jump to: navigation, search
(What is the URL for your ideas page?)
Line 190: Line 190:
==Why is your organization applying to participate in GSoC 2008? What do you hope to gain by participating?==
==Why is your organization applying to participate in GSoC 2008? What do you hope to gain by participating?==
 +
 +
AbiWord has had a very rewarding experience with GSoC during the past 2 years. We hope to improve on our successes by attracting new talented developers to our organization.
==Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation.==
==Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation.==
Line 198: Line 200:
==Who will your organization administrator be? Please include Google Account information.==
==Who will your organization administrator be? Please include Google Account information.==
 +
Marc Maurer
==What license(s) does your project use?==
==What license(s) does your project use?==
Line 217: Line 220:
==Who will be your backup organization administrator? Please include Google Account information.==
==Who will be your backup organization administrator? Please include Google Account information.==
 +
 +
Dominic Lachowicz; domlachowicz AT gmail.com
==Who will your mentors be? Please include Google Account information.==
==Who will your mentors be? Please include Google Account information.==
Line 232: Line 237:
==What is your plan for dealing with disappearing students?==
==What is your plan for dealing with disappearing students?==
 +
 +
We've had a student disappear before. It's thoroughly unpleasant. We hope to minimize the damage done by a missing student by requiring routine code updates.
==What is your plan for dealing with disappearing mentors?==
==What is your plan for dealing with disappearing mentors?==
Line 241: Line 248:
==What will you do to ensure that your accepted students stick with the project after GSoC concludes?==
==What will you do to ensure that your accepted students stick with the project after GSoC concludes?==
-
By providing a fun, cooperative atmosphere with interesting and rewarding projects, we hope to retain...
+
AbiWord's main strength is its community. We strive to provide a fun, cooperative atmosphere with interesting and rewarding projects.
[[Category:Summer of Code]]
[[Category:Summer of Code]]

Revision as of 16:25, 3 March 2008

Google Summer of Code 2008 is now being planned. As in previous years, Google has generously sponsored students to work on Free Software projects. AbiWord plans to participate in the program, as it did in 2006 and 2007.

Organizations may apply to the GSoC program between March 3 and March 12, 2008. Students may apply to approved mentoring organizations between March 24 and March 31.

Google SoC 2008 program page

Contents

Project Ideas

This is a list of project ideas with the name of a potential mentor. Use this as an base for your proposal, but if you have an idea that is not in this list, feel free to propose it.

Speed up Table Performance

Proposed by: Martin Sevior

AbiWord's current Table layout algorithm was borrowed from Gtk. While this has proved to be very robust and comfortuably handles merged cells and nested tables, it gets slow for very large tables (noticeable with over 100 rows). This project would be to improve AbiWord's table performance so that it at least matches that of Firefox.

Improve ODF support

Proposed by: Martin Sevior

(Also willing to mentor: Dominic Lachowicz)

AbiWord now has very good compliance with the ODF format but it can be improved. This project would be to improve this so that a wide range of documents can be exported from AbiWord, imported to Open Office then exported back into AbiWord from Open Office with no data loss.

Improve Latex Export

Proposed by: Martin Sevior

(Also willing to mentor: Dominic Lachowicz)

AbiWord has an export to Latex plugin that performs basic export but does not current support many features of AbiWord, including tables, lists, footnotes, endnotes or maths. The project would be to steadily improve Latex export.

Improve OOXML support

Proposed by: Dominic Lachowicz

(Also willing to mentor: Hubert Figuiere)

AbiWord now has good compliance with Microsoft's OOXML format but it can be improved. Currently, AbiWord has an importer, but no exporter. This project would be to improve this so that a wide range of documents can be exported from AbiWord, imported to Office 2007 then exported back into AbiWord with no data loss.

OOXML DrawingML import

Proposed by: Hubert Figuiere

(Also willing to mentor: Dominic Lachowicz)

Microsoft Office OpenXML include DrawingML a markup for drawing and diagrams. It is used extensively inside the originating application suite. This project would consist into writing a library to import DrawingML and generate SVG in output, and implement the necessary support to use in from the WordprocessingML importer. Until the caire rendering is done, AbiWord would satisfy by having this SVG rendered as a bitmap like it is already done.

Cairo rendering

Proposed by: Hubert Figuiere

(Also willing to mentor: Dominic Lachowicz)

AbiWord really would benefit from using Cairo for its rendering. This project involve the following:

  • remove any overt dependencies on X11
  • implement Cairo rendering in the cross-platform side using pango for font management.
  • implement the printing using GtkPrint on Unix

Revamp the style dialog

Proposed by: Hubert Figuiere

The style dialog is currently awkward to use. It needs rework. This project would involve the following tasks:

  • redesign the UI
  • reimplement the UI in a cross platform way with at least a working front end. This might involve scratching a bit the UI abstraction layer to minimize the front end work.

Some possible ideas proposed by Robert Staudinger:

http://www.abisource.org/~robsta/mockups/abiword-styles-simple.png

http://www.abisource.org/~robsta/mockups/abiword-styles-full.png

Redesign the templates

Proposed by: Hubert Figuiere

Using and editing the AbiWord templates is very awkward. The idea is to redesign it to be user more friendly

Enhance Win32 build system support

Proposed by: Jordi Mas

Currently Abiword for Win32 can only be built on Linux. The proposal is to extend the current build support to enable building Abiword for Win32 using a Windows system. Additionally, to add support for been able to build Abiword using Microsoft C compiler (available gratis in the Visual Studio 2008 Express), that has a very good support for debugging applications in Win32.

Port Abiword for Windows to Unicode

Proposed by: Jordi Mas

As many of you already know Abiword in Win32 is an ANSI application. The idea is to port it to the Unicode API, which has the following benefits:

  • Support on Windows for the many new "Unicode only" languages such as Hindi, Georgian, Nepali,Armenian, Gujarati, Hindi, Kannada, Konkani. We already have Abiword translated to Napali that is only a Unicode language and that currently does not work. And more will come.
  • Improving international and multilingual support:
    • Better integration with the features of the NT platform
    • Better support of the Multilingual UI (MUI) features of Windows 2000/XP/Vista

I have done some preliminary work that I never had the time to complete. The project should resume from there.

Implement Print Preview in Windows

Proposed by: Jordi Mas

Currently Print Preview is not implemented in Windows. This is a very common and useful function of any word processor.

This could be done pretty simply the way GtkPrint does it - export an EMF, and let Window's Preview application handle it. Or did you envision something more elaborate? -- DomLachowicz 22:28, 26 February 2008 (CET)
N.B. It appears Dom has this dragon nearly tamed already. Keep an eye on the SVN commits mailing list to see progress. Rp 22:49, 1 March 2008 (CET)

Search bar

Proposed by: Jordi Mas

The idea is to have a search bar, like the Firefox one, at the bottom of Abiword that replaces the current search and replace dialog boxes. You could access to more advanced functionality using an Advance button that brings you to the advance functionality.

There was some discussion of this a few years back and most of the people seemed excited about the idea. This requires implementing the logic and the GTK and Win32 implementations.

Implement document preview in Nautilus

Proposed by: Jordi Mas

Implement document preview in Nautilus. This will be a step forward in our integration with GNOME and also very useful to our GNOME users.

AFAIK, we already have a document preview Bonobo control. IMHO, this is more of a 2-day hack then a GSoC project. Besides, who uses Nautilus previews these days? -- DomLachowicz 22:28, 26 February 2008 (CET)
Not counting that Bonobo is deprecated anyway -- Hub 22:00, 26 February 2008 (CET)
Yeah, I killed the Bonobo control -- Uwog 23:49, 26 February 2008 (CET)
We used to have a Nautilus preview in the 2.0-2.4 era but no one ever used it. -- Martin Sevior
Methinks this is referring to thumbnailing, rather than embedding (which nautilus doesn't any more anyways). -- Rob

Implement Borders and Shading

Proposed by Martin Sevior

This is the only feature of mainstream wordprocessors which AbiWord does not implement. The project would be add this feature to the Abiword codebase. It will reuse a lot of the infrastructure we have in place but will require careful work and the cairo graphics class to avoid creating screen dirt.

Port AbiWord to use gettext

Proposed by Rob

Currently AbiWord is using a custom strings file format for translatable text exposed in the user interface, even though translations done in the standardised "po" format. We would like to

  • Change the build-system to create and install "mo" files.
  • Adapt the string lookup classes to use gettext.
  • Make glade files translatable.
  • Provide i18n infrastructure for the plugins.

Bugreports:

Bonus points: If the whole thing could be abstracted to allow use MacOS X internationalisation infrastructure on MacOS X, it would be awesome. Note that it is not a request to implement the backend. -- Hub 20:18, 1 March 2008 (CET)

Application process

AbiWord is primarily written in the C++ programming language (and to a lesser extent, C). Ideal applicants would have some experience in one or both of these languages and would be able to demonstrate this.

The closing date for applications is March 31, 2008. Students wishing to work on AbiWord over the 2008 Summer for $USD 4500.00 should follow the steps outlined here.

http://groups.google.com/group/google-summer-of-code-announce/web/guide-to-the-gsoc-web-app-for-student-applicants

The Application

*Name:*
*Email:*
*Project Title:*
*Synopsis:*
  A short description of your project.
*Benefits to the AbiWord (and/or other) project(s):*
*Deliverables:*
  Quantifiable results. E.g. "At the end of my project, AbiWord's piece table will be 50 times faster."
*Project Details:*
  A more detailed description of your project.
*Project Schedule:*
  How long will the project take? When can you begin work? Do you know of any planned absences or 
  other major conflicts (summer classes, vacations, etc.)
*Bio:*
  Who are you? What makes you the best person to work on this project?
*Amount Requested:*
  (Put in $4500.00)

Mentoring Organization Application

Describe your organization

The AbiSource community consists of a highly skilled group of people interested in, as our tagline states, bringing Word Processing to Everyone. We do this for example by making our software, AbiWord being our flagship product, available on as many (operating) systems as possible, and adapting it for use on the One Laptop Per Child system.

Why is your organization applying to participate in GSoC 2008? What do you hope to gain by participating?

AbiWord has had a very rewarding experience with GSoC during the past 2 years. We hope to improve on our successes by attracting new talented developers to our organization.

Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation.

See Google Summer of Code 2006 and Google Summer of Code 2007 All the information related to our involvement in GSoC

Who will your organization administrator be? Please include Google Account information.

Marc Maurer

What license(s) does your project use?

What is the URL for your ideas page?

http://www.abisource.com/wiki/Google_Summer_of_Code_2008

What is the main development mailing list or forum for your organization?

abiword-dev AT abisource.com (Archives)

What is the main IRC channel for your organization?

irc://irc.gnome.org#abiword

Who will be your backup organization administrator? Please include Google Account information.

Dominic Lachowicz; domlachowicz AT gmail.com

Who will your mentors be? Please include Google Account information.

  • Marc Maurer
  • Dominic Lachowicz; domlachowicz AT gmail.com
  • Martin Sevior
  • Hubert Figuiere; hfiguiere
  • Jordi Mas i Hernandez
  • Robert Staudinger (backup mentor) robert.staudinger AT gmail.com

What criteria did you use to select these individuals as mentors? Please be as specific as possible.

All of these individuals are highly-motivated, long-standing contributors to the AbiWord project. All of them have a deep firsthand knowledge of the AbiWord codebase and are community members "in good standing". All have been involved in previous GSoC projects through proposing ideas, reviewing applications, and mentoring students.

What is your plan for dealing with disappearing students?

We've had a student disappear before. It's thoroughly unpleasant. We hope to minimize the damage done by a missing student by requiring routine code updates.

What is your plan for dealing with disappearing mentors?

This has not been a problem in previous GSoC programs. But we plan for each project to have at least one "backup" mentor who remains involved in each student's particular GSoC project, who shall assist in cases where the primary mentor cannot fulfill his/her obligations.

What steps will you take to encourage students to interact with your project's community before, during and after the program?

What will you do to ensure that your accepted students stick with the project after GSoC concludes?

AbiWord's main strength is its community. We strive to provide a fun, cooperative atmosphere with interesting and rewarding projects.

Personal tools