How students can
                                                           contribute to free
                           ...
Centrale Nantes: key figures

               ●      Member of the Group of Ecoles Centrales

               ●      Combine...
Why free software in education?
                   Free software is not only a technical alternative
                  to ...
Centrale Nantes and free software
          ●      Research development:
                                –     OrbisGIS: h...
Centrale Nantes, free software and
                       Tablet PC
          ●      Recipient of the HP Technology for Te...
Centrale Nantes and OpenOffice.org
          ●      Annotation features in OOo/Impress:
                                – ...
Centrale Nantes and OOo: key
                                  figures
          ●      Two different projects involving:
...
Centrale Nantes and OOo: factors
                         for success
               ●      Education environment willing ...
… OpenOffice.org Education Project
          is

          anincubator and
          INTERNATIONAL
          project type
...
The Role of the « Incubators »
                                 projects is to ...
               ●
                 Exper...
The goals of the OpenOffice.org
                                    Education Project ?

         This is a young project,...
' Who ' is the Education Project ?
          Approximatively 100 members,
          Students, developers (mostly)
        ...
The 3 main objectives of
                                     Education Project :
              ●
                Create a...
3rd Objective : provide new developers

          Idea :

          Associate : theory (the teachers)
          The know h...
Already started actions


       ●
         Online Courses « ClassRooms »
       ●
         Projects with engineers school...
Education Project Effort
   ●
    Mentored projects with active participation of the
   schools




   http://wiki.service...
Schools who joined the project



         Epitech/Epita (Paris, France)
         École Centrale Nantes (Nantes, France)
 ...
Examples
   Mozilla 1.7.5 → Seamonkey 1.1.14 migration
   (Pierre Pasteau / Epitech Paris ) QA in progress, will be
   int...
Examples
   Aude Quintana, Olivier Girardot (École Centrale
   Nantes): implementation of the eraser features, with
   Tab...
Examples
   Frédéric Gelot, Pierre-Jean Parot (École Centrale
   Nantes): annotations implementation with Tablet PC
   and...
Other example :
   Seneca College, Toronto
   Professor : Fardad Soleimanloo
   (4 projects started, expected for Summer 0...
Scheduled Project (july to december 2009 ):

                Thomas Fontenay, Abdelkader Bellabes ( Epitech
              ...
...




s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har...
Guidelines for further projects:
                          benefits of communication
               ●      All documentati...
Guidelines for further projects

               ●      Development team opened to students'
                      contribu...
Guidelines for further projects

               ●      Find students
                                     –     Interested...
Timeline
               ●      Detailed specifications according to the
                      software standards
         ...
Guidelines for further projects
          ●      Be “transparent” yourself :
                                –     Do not ...
Perspectives
          ●      New collaborations between free software
                 development teams and educational ...
Special thanks to...
               ●      Thorsten Behrens
               ●      Group of students:
                     ...
References

               ●      EducOO : http://www.educoo.org

               ●      Blog on the various projects invol...
Auteurs :
         Morgan Magnin (morgan.magnin@ec-nantes.fr)
                Eric Bachard (eric.bachard@free.fr),
       ...
Upcoming SlideShare
Loading in …5
×

How students can contribute to free software: Centrale Nantes/OpenOffice.org Education Project success story

1,600 views

Published on

Talk of Eric Bachard (lead of the OpenOffice.org Education Project) and Morgan Magnin (Associate Professor, École Centrale de Nantes) at the Libre Software Meeting 2009 (http://2009.rmll.info/)

During academical year 2008-09, a group of students from Centrale Nantes worked on the integration of annotation features in the slideshow module of OpenOffice.org. Two of them (Olivier Girardot and Frédéric Gélot) have become official OOo developers and interact with the other members of OOo team (like Thorsten Behrens).

This talk summarizes the fruitful collaboration between Centrale Nantes and OOo Education project and gives guidelines for the contribution of students to free software developments.

More information on https://pedagogie.ec-nantes.fr/tablet-pc/ and http://blog.educoo.org/dotclear/

Published in: Education, Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,600
On SlideShare
0
From Embeds
0
Number of Embeds
335
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

How students can contribute to free software: Centrale Nantes/OpenOffice.org Education Project success story

  1. 1. How students can contribute to free software OpenOffice.org success story Eric Bachard (OOo) | Morgan Magnin (Centrale Nantes) eric.bachard@free.fr | morgan.magnin@ec-nantes.fr http://education.openoffice.org | http://tinyurl.com/magnin-ecn s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  2. 2. Centrale Nantes: key figures ● Member of the Group of Ecoles Centrales ● Combines three activities: – Education – 1350 students ● Graduate general engineering program (3 years, highly-selective admission procedure) ● Other specialized master program including two Erasmus Mundus Master programs – Research: 4 laboratories s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; – Industrial Studies l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m ov v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  3. 3. Why free software in education? Free software is not only a technical alternative to proprietary solutions, it promotes values such that: Freedom Cooperation Security Durability s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  4. 4. Centrale Nantes and free software ● Research development: – OrbisGIS: http://tinyurl.com/orbisgis – Roméo: http://romeo.rts-software.org – Trampoline: http://trampoline.rts-software.org/ ● Educational use: – Linux : https://pedagogie.ec-nantes.fr/spip/ – OpenOffice.org – FireFox, Gimp, … s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  5. 5. Centrale Nantes, free software and Tablet PC ● Recipient of the HP Technology for Teaching Grant 2008 – 21 Tablet PCs – Innovative projects about education and tactile technologies ● A students' project to evaluate the usability of Tablet PC features under Linux... that led to OpenOffice.org s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  6. 6. Centrale Nantes and OpenOffice.org ● Annotation features in OOo/Impress: – Regular users demand about it for 3-4 years – Open tickets ● Students have worked on this issue: – From October'08 to now; – Under the supervision of Thorsten Behrens and Eric Bachard s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  7. 7. Centrale Nantes and OOo: key figures ● Two different projects involving: – 7 students from September '08 to December '08 – 4 students from January '09 to April '09 – 1 supervising teacher – Active collaboration of OOo team ● Other figures: – Students: avg 65 work-hours by student by project – Teacher: avg 3 supervising-hours by student by s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; project l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m ov v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  8. 8. Centrale Nantes and OOo: factors for success ● Education environment willing to contribute to free software ● Motivation of both students and OOo teams ● Win-win relation for every actor: – Education: real-life projects with added value – Students: contribute to a famous software – OOo: perspective of contribution to new features s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  9. 9. … OpenOffice.org Education Project is anincubator and INTERNATIONAL project type s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  10. 10. The Role of the « Incubators » projects is to ... ● Experiment ● Validate a new need ● Innovate and make the OpenOffice.org Project progress s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  11. 11. The goals of the OpenOffice.org Education Project ? This is a young project, Belonging to OpenOffice.org with the main goal to create a bridge between Educational World and OpenOffice.org s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  12. 12. ' Who ' is the Education Project ? Approximatively 100 members, Students, developers (mostly) From all countries All participate to OpenOffice.org s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  13. 13. The 3 main objectives of Education Project : ● Create a network of teachers using OpenOffice.org ● Provide a space for exchanging pedagogical contents, under free file formats ● Teach, provide young (core-)developers to write code for OpenOffice.org s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  14. 14. 3rd Objective : provide new developers Idea : Associate : theory (the teachers) The know how (professional developers) The actors (students, profs, and so on) Mentors (OpenOffice.org Project developers) The needs (features for OpenOffice.org) … and finally provide developers s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  15. 15. Already started actions ● Online Courses « ClassRooms » ● Projects with engineers schools students, and shools contributions s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  16. 16. Education Project Effort ● Mentored projects with active participation of the schools http://wiki.services.openoffice.org/wiki/Education_Project/Effort s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  17. 17. Schools who joined the project Epitech/Epita (Paris, France) École Centrale Nantes (Nantes, France) UTBM (Sévenans, France) Seneca College (Toronto Canada) … s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  18. 18. Examples Mozilla 1.7.5 → Seamonkey 1.1.14 migration (Pierre Pasteau / Epitech Paris ) QA in progress, will be integrated Developers who contributed : Frank Schönheit (Sun MicroSystems), Eric Bachard (unaffiliated) s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  19. 19. Examples Aude Quintana, Olivier Girardot (École Centrale Nantes): implementation of the eraser features, with Tablet PC and Impress. Code review in progress. Developers who contributed : Thorsten Behrens (Novell) Managed by Morgan Magnin, for Ecole Centrale Nantes s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  20. 20. Examples Frédéric Gelot, Pierre-Jean Parot (École Centrale Nantes): annotations implementation with Tablet PC and Impress Developers who contributed : Thorsten Behrens (Novell) Managed by Morgan Magnin, for ECN s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  21. 21. Other example : Seneca College, Toronto Professor : Fardad Soleimanloo (4 projects started, expected for Summer 09) All other proposed subjects : http://wiki.services.openoffice.org/wiki/Education_Project/Effort s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  22. 22. Scheduled Project (july to december 2009 ): Thomas Fontenay, Abdelkader Bellabes ( Epitech Paris ) : performance improvement of OOo4Kids on powerless machines (include backport to OpenOffice.org for the most interesting solutions), profiling, User Interface Improvement Developers : Pierre Pasteau, Eric Bachard Managed by Julien Ballet for Epitech Paris s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  23. 23. ... s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  24. 24. Guidelines for further projects: benefits of communication ● All documentation must be in english ● Frequent communication – Inside the education community – Inside the free software community ● Use a maximum of media: – News on official websites – Blog, Twitter, … s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; – Video l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m ov v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  25. 25. Guidelines for further projects ● Development team opened to students' contribution ● Supervising teacher to guarantee the project respects the educational expectations ● Team of students from 2 to... ? s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  26. 26. Guidelines for further projects ● Find students – Interested in a first professional development experience – Having a good knowledge in technical matters – Potentially willing to contribute beyond the given project s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  27. 27. Timeline ● Detailed specifications according to the software standards – Features – Test cases ● Learn the basics about the implementation – IRC courses – Documentation ● Implementation on a Child WorkSpace w.r.t. software development rules Tests s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l ● en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m =l ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  28. 28. Guidelines for further projects ● Be “transparent” yourself : – Do not lie about the difficulties! – Do not base your evaluation only on final results. – Take into account the methods and autonomy of students. ● Frequent (on-line or IRL) meetings between students and supervisors to keep up the motivation s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  29. 29. Perspectives ● New collaborations between free software development teams and educational institution ● Towards teaching how to contribute to free software developments? s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  30. 30. Special thanks to... ● Thorsten Behrens ● Group of students: – Olivier Girardot – Frédéric Gélot – Aude Quintana – Pierre-Jean Parot – Guillaume Arfaoui – Florent Rouvière – Sashi Juganaikloo s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  31. 31. References ● EducOO : http://www.educoo.org ● Blog on the various projects involving Tablets PC at École Centrale de Nantes: https://pedagogie.ec-nantes.fr/tablet-pc/ ● “Effort page”: http://tinyurl.com/effort-ooo-ecn s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov
  32. 32. Auteurs : Morgan Magnin (morgan.magnin@ec-nantes.fr) Eric Bachard (eric.bachard@free.fr), www.educoo.org 2009 Document sous licence libre http://creativecommons.org/licenses/by-sa/3.0/deed.fr s t at i c   v oi d  s y nc _i c ac he _030( addr _ t   addr e s s , s i z e_ t   l e n) { i nt   l , of f ; c har * p; ui nt 32  c ac r ; of f =( uns i gned  i nt ) addr es s &( CACH ELI NE- 1) ; l en+=of f ; l =l en; p=( c har * ) addr es s - of f ; as m v ol at i l e ( " nop" ) ; as m v ol at i l e ( " m ec %%c ac r , %0" : " =r " ( c ac r ) : ) ; c ac r | =0x00000004; / * * / do{ as m ov v ol at i l e( " m ec %0, %%c aar nm e c %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec ov ov ov ov ov ov %1, %%c ac r naddq. l #4, %0 nm ec %0, %%c aar nm ec %1, %%c ac r n" : : " r " ( p) , " r " ( c ac r ) ) ; p+= CACH ov ov ELI NE; } whi l e ( ( l - =CACH ELI NE) >0) ; as m v ol at i l e( " nop" ) ; } s t at i c   v oi d  s e t _ pgdi r ( v oi d* r t ) { l ong_page_ di r e c t or y _ent r y   ent r y ; * ( ui nt 64* ) &ent r y =D FL_PAGEENT_VAL; ent r y . t y pe =D T_RO T; ent r y . addr =TA_TO O _PREA( ( ( addr _ t ) r t ) ) ; as m v ol a   t i l e( " pm e   ( %0) , %%s r p npm e  ( %0) , % ov ov

×