Education Project/Effort

From Apache OpenOffice Wiki
Jump to: navigation, search

Effort

An effort consists of the following things

  • a goal or a mission,
  • to solve a problem,
  • while using a solution,
  • having a time plan (strongly suggested),
  • a list of things which need to be done, these may directly be some content (e.g. specifications, implementations, tests, articles) or other efforts, and
  • a status (e.g. planned, in progress, finished, cancelled).


We propose applications, doable in one to three month of work for a student or a little group of students ( time to discover everything, and do the real work). All these applications below are correlated with IssueZilla issues, and need new code to be solved.

What we propose is to accompany the peers teachers/students solving the issues: the work must be done by the student, and we are resources. This means, most of the time, we have no clue about the solution (but we could work on it), or the needed changes, and sometimes, just a little change in the code can solve the issue. Sometimes, a lot of code can be needed.

The most important is to work together, and make the students discover OpenOffice.org source code and organisation.

The applications are classed

- by difficulty level (more stars means means more work and more difficult to be solved )

- by themes. e.g. Mac OS X

Last but not least, have a look at Cpp_Coding_Standards cannot be bad :-)

[IMPORTANT] : please add a description in time (estimated hours+weeks+month) for the proposed projects


Applications for Mac OS X only

Implement new canvas using Core Graphics (click me)

FIXME: description needs to be updated

  • Goal : Implement a new canvas on Mac OS X
  • Problem : nothing yet
  • Time plan : two months of work for a 4 students group (based on 10 hours of work per week for every student)

Contacts:

  • for Education project: ericb , (please add your name )
  • for the task : Thorsten Behrens thb/ Ismael Merzaq ismael87 / Eric Bachard ericb : all @openofice.org

Difficulty: *****

Needs:

  • experimental tests in canvas, with dummy methods, for proof of concept
  • good Core Graphics understanding
  • good C++ skills
  • good Cairo understanding ( we use the existing implementation)
  • good skills with portability understanding

(Seneca 1) Support of more mail clients for send active document as (click me)

  • Goal : Support multiple mail client applications on Mac OS X (currently Mail.app only) and determine the user's default mail client for the "send document as e-mail" feature
  • Problem : Only Mail.app support creating a new message with a document already attached using the 'open -a' command.
  • Time plan : needs 50 to 60 hours of work ( 5 weeks x 10 to 12 hours of work )
  • Needs : good skills in bash. The task can probably be done using Objective C ( NSTask can be a good choice there)

Contacts:

  • for Education project: ericb , (please add your name )
  • for the task : obr @openofice.org

Difficulty: ***

(Seneca 2) Use system security API ( click me)

  • Goal : Make Apple key signing API work
  • Problem : currently, a strange hack does use Mozilla libnss and co, and this is not easy to maintain. Use Apple API would simplify the build, and help to improve the OpenOffice.org integration on Mac OS X.
  • Time plan : long term work. ~ 2 months of work for a group of 4 students working 10 hours per week.

Contacts:

  • for Education project: ericb , (please add your name )
  • for the task : jl/obr @openofice.org

Difficulty: *****

  • no information available yet

(Seneca) Improve Scanner Use (click me)

Description of the application

  • Goal : Implement Apple way of Image Capture
  • Target : Mac OS X Aqua version is concerned firstly (not sure a backport is possible)
  • Problem : the current implementation :

- needs a third part installation ( libsane , libusb ..etc )

- is obsolete

- is not User Experience compliant

  • Strategy (draft, to be completed)

Mac OS X does use a blob interfaced with most of existing scanners (undocumented), named " Image Capture ". This blob seems to use Twain implementation.

The scanner is an abstraction in every subpart like scandlg.cxx grid.cxx, and scnserv.cxx. The Mac OS X implementation does only concern scanunx.cxx.

The problem is, scanunx.cxx does use SANE implementation, and will become useless. Thus, the idea is to create scanmacosx.cxx, and use both scanwin.cxx existing implementation . the result will be a mix of what Image Catpure SDK + Apple documentation will provide us, and the need we have for the implementation.

We firstly have to :

- analyze scanunx.cxx completely

- design TwainHolder, TwainThread, BitmapManager, ScannerManager (reused from scanwin.cxx ) implementation in scanmacosx.cxx

- define a process for the progressive implementation

- FIXME: complete ..


  • Time plan : needs around 120 hours ( or 3 months ~ 10 hours per week) of work for a student alone

Contacts

  • Volunteers :

- Valentin JANIAUT student from UTBM (France )

- Jason STEPHENSON, from USA

- Eric Bachard

Jason is a skilled developer ( Cocoa ) helping for the feature implementation.

Valentin should be able to validate a Value Unit for his own cursus, writing code for OpenOffice.org project.


  • Contact for School : Eric Bachard
  • for Education Project : ericb , (please add your name )
  • To be defined

This application is a try. Main idea is : analyse current interface, discover and document te existing API, improve the current implementation, and more if possible.


Difficulty: ****

Needs:

  • C++ and objective C skills ( we will implement a new Cocoa view, dedicated to the scanner)
  • Twain and Sane skills
  • interface understanding (offapi )
  • Design skills

Applications for OpenSolaris port

(Seneca) Build OOo on OpenSOlaris

  • Goal : Make sure the OOo build system runs on OpenSolaris and knows about the target. Create a dedicated wiki page for beginners, they just have to follow insctructions (like AquaBuild wiki page on Mac OS X )
  • Problem : OpenSolaris OOo build environment lacks of support, and with some work, it should be ok to build natively OOo on OpenSolaris
  • Time plan : middle term work. Needs around 120 hours ( or 3 months ~ 10 hours per week) of work for a student alone

Contacts:

  • for Education project: ericb, (please add your name ). Other potential contact: Christian Lins (not sure he still works on that)
  • for the task :

Difficulty: ***

Additional information:

  • step1: fix the OpenSolaris environment ( configure / set_soenv look suboptimal at the moment)
  • step2 : build mozilla zipped archives (fix the build issues)
  • step3 : build OOo completely

Applications for Haiku port

With the new 3.x branch and the upcoming R1/alpha version of Haiku, it is proposed to lay the fundations of a port to this operating system.

Several steps will be needed to complete the port.

Make sure the OOo buildsystem runs on Haiku (click me)

  • Goal : Make sure the OOo build system runs on Haiku and knows about the target
  • Problem : Haiku currently lacks Java (the port has only been started), and doesn't come with tcsh.
  • Time plan : long term work. TBD completely once gcc4 will be integrated in the default isntall set (soon)

Contacts:

  • for Education project: mmu_man , ericb , (please add your name )
  • for the task :

Difficulty: *****

  • no information available yet

Port bridges ( click me)

  • Goal : Port the bridges to Haiku
  • Problem : While Haiku supports most POSIX semantics, including pthreads, some integration with the OS might be needed. In this project, it's question to create a new bridge for the Haiku OS. Furthe information will be provided later..
  • Time plan : long term work. TBD completely

Contacts:

  • for Education project: mmu_man , ericb , (please add your name )
  • for the task :

Difficulty: *****

  • no information available yet

Port SAL ( click me)

  • Goal : Port the SAL to Haiku
  • Problem : While Haiku supports most POSIX semantics, including pthreads, some integration with the OS might be needed (file system layout, inter-application integration, ...). Some fixes or additions to Haiku itself might be needed also to support required SAL features.
  • Time plan : long term work. TBD completely

Contacts:

  • for Education project: mmu_man , ericb , (please add your name )
  • for the task :

Difficulty: *****

  • no information available yet

Port VCL ( click me)

  • Goal : Port the base GUI framework to the BeAPI
  • Problem : Haiku doesn't use X11, nor GTK or Qt, so a native GUI binding is needed.
  • Time plan : long term work. TBD completely

Contacts:

  • for Education project: mmu_man , ericb , (please add your name )
  • for the task :

Difficulty: *****

  • no information available yet

Application concerning all ports

New OpenGL transitions for Impress (click me)

  • Goal : create new Fun OpenGL transitions for Impress

Side effects: the list of transitions is growing dangerously. What do ? Keep only the 3D transitions ? Create a second entry list "3D effects ? "

  • Problem : 3D transitions are Fun, and the demand is important.

Important consequence: more OpenGL transitions is more Fun and a killer feature

  • Time plan : 120 hours max, say 1 month of work ( or 3 students working 10 hours per week every )


Contacts:

  • for Education Project : ericb , (please add your name )

Difficulty: ***

New: needs

  • Good maths and geometry skills ( 3D / matrixes .. )

Skills : C and C++


Help : this task is the continuation of Impress:_OpenGL_rendered_transitions, started by Shane M. Mathew during the Google SoC 2007 (mentor : Thorsten Behrens )

Upgrade Python to 2.6 (click me)

  • Goal : Fix issue71327 Implementing python 2.6 into OpenOffice.org next version.

Side effects: Python newest version with new updated libraries

  • Problem : the current implementation is very obsolete.

Important consequence: Python development is very low outcasting from many developers

  • Time plan : (will be defined soon)

Note: the application could be proposed as Google Summer of Code ( including other tasks.

Contacts:

  • for Education Project : jza , (please add your name )
  • UDK projects : mba/tl @openoffice.org

Difficulty: ****

New: needs

  • more modules ( offapi),
  • better integration with gui,
  • help libraries to make it smoother with uno
  • Serious QA

Skills : Python


Implement Math Baseline Alignement (click me)

  • Goal : Fix issue972 Implementing a correct baseline alignment for equations anchored as characters in Writer documents ( should work for "to character" too ).

Side effects: a change in .odt specification will result, and specs must be written in parallel

  • Problem : the current implementation does not work, and equations are misaligned.

Important consequence: OpenOffice.org acceptance is low in Educationnal system (all locales concerned)

  • Time plan : (will be defined soon)

Note: the application could be proposed as Google Summer of Code ( including other tasks.

Contacts:

  • for Education Project : ericb , (please add your name )
  • Framework/Starmath projects : mba/tl @openoffice.org

Difficulty: ****

New: needs

  • new interface definition ( offapi),
  • new file format extension ( needs ODF TC agreement ),
  • new implementation ( starmath )
  • Serious QA

Skills : C++

Make the uno-skeletonmaker tool templatable (click me)

  • Goal : Modify or rewrite the uno-skeletonmaker to make it templatable.
  • Problem : the current implementation is completely hard-coded. Every developer has its own development style guide and has to change the generated code every time.
  • Time plan : (will be defined soon)

Note: the application could be proposed as Google Summer of Code ( including other tasks).

Contacts:

  • for Education Project : ericb , cedricbosdo (for development)

Difficulty:

New: needs

  • understanding the existing uno-skeletonmaker (unodevtools)

Skills : C++

Fix MouseWheel jump in Calc (click me)

Description of the application

  • Goal : Fix issue 81907 Implementing a method allowing smooth scrolling in Calc sheets, even when cells are half if the screen high
  • Problem : the current implementation uses integers for the scrolling, and whenever a cell is half of the screen high, some cells are no longer accessible.
  • Time plan : (will be defined soon)

Contacts:

  • for Education Project : ericb , (please add your name )
  • Framework Project : nn/ @openoffice.org


Difficulty: **

Needs:

  • a correct understanding of the existing code
  • define the new feature fixing the issue
  • implement it
  • integrate it respecting OpenOffice.org project rules


Create a special version for Educational purpose

Points to be improved :

  • implement larger icons
  • remove zillions of useless menus
  • remove base and calc libs
  • remove useless stuff


Registration Screen

  • Goal : allow to remove the registration screen for e.g. school or entities where the features becomes evil
  • Time plan : TBD

Contacts:

  • for Education project: ericb , (please add your name )

Difficulty: No estimation yet

Concerned Domains : Framework, User Experience

Mozilla 1.7.5 -> Seamonkey 1.1.x migration (click me)

FIXME: needs to be updated

  • Goal : Replace mozilla 1.7.5 sources, with seamonkey 1.1.x sources in the moz module
  • Problem : See issue 91209. Mozilla sources are too old, and suffer from security issues. Currently, the use of Mozilla archives has been disabled on Mac OS X for the mozilla address book .
  • Time plan : the task is expected to be completed end of august / early september

Contacts:

  • Volunteers:

- Pierre Pasteau , student at Epitech (Paris)

- Eric Bachard

  • for education project: ericb, Franck Schönheit (fs at openoffice dot org )

Difficulty:

  • Medium to difficult (some changes in the code, new tree)

Needs:

  • correct C++ understanding, tools skills (patch, dmake). A big part of the application,

Comments:

Fixing warnings (click me)

FIXME: needs to be updated

This work has been initiatied by Stephan Bergmann, in August 2005.

For further iinformation, please read the original mail from Stephan (and the corresponding Writing warning-free code page)

  • Goal : Fix all warnings coming from old modules as well as fix bugs
  • Problem : building any module prints various warnings on stderr, ideally we need zero warnings.
  • Time plan : TBD

Contacts:

  • for education project: ericb, rakeshpandit (rakesh.pandit@gmail.com)

Difficulty:

  • Easy

Needs:

  • C++

Comments:

Before starting debugging you can coordinate by updating the files you are debugging in here.

Improve Impress (click me for the details for the projects proposed below)

  • Make Impress master pages copyable https://bugzilla.novell.com/show_bug.cgi?id=380039
  • Attach Impress animations to styles https://bugzilla.novell.com/show_bug.cgi?id=380041
  • Create a diagramming sidebar extension for OOo Draw/Impress
  • Create a Visio import filter for Draw
  • Add animation support to Impress Flash export
  • Implement an AutoCAD vector import for OOo
  • Use PDF import's layout recognition for other vector formats (e.g. postscript, wmf/emf)
  • OpenGL canvas backend
  • Standalone presentation viewer
  • Implement additional 3D slideshow transitions
  • Multimedia Handling
  • Presentation Wizards

Improve Calc (click me)

Improve Missing ODF Formula in Calc (click me)

Have a deeper look into potential students applications around sc :

http://wiki.services.openoffice.org/wiki/Calc/Implementation/Spreadsheet_Functions

http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=office-formula

http://wiki.oasis-open.org/office/Formula_Work

http://wiki.services.openoffice.org/wiki/Calc/ODFF_Implementation/Schedule

Other Applications (later)

Integrate SCIM into OO (click me)

FIXME: description needs to be updated

  • Goal : Integrate SCIM(Smart Common Input Method) into OO.
  • Problem : Currently not implemented. As an example, this is available in Gedit and Abiword.
  • Time plan : TBD

Contacts:

  • for Education project: ericb , (please add your name )

Difficulty:

Needs:

Comments: This is not an OpenOffice.org related topic. This is a problem of the distribution configuration. For example on Ubuntu, read this page and it works: http://doc.ubuntu-fr.org/scim. cedricbosdo 18:17, 11 April 2008 (CEST)

Integrate Sinadura into OO (click me)

Enhance: Sinadura y a digital signature solution that is multiplatform x509 compliant library to digitally sign PDF files.

  • Goal : Integrate Sinadura(Smart card and digial signatures) into OOo.
  • Problem : Currently not implemented. As an example, this is available in firefox and other software.
  • Time plan : TBD

Contacts:

  • for Education project: ericb , jza

Difficulty: ****

Needs: Java developers, Sinadura experts and OOo extension packagers

Comments: Please read the wiki topics about Sinadura and help document the development to further understand the requriements. --Jza 07:52, 18 December 2008 (CET)



Maxima Integration (click me)

Write OpenOffice.org Installation HowTo

Personal tools