ݺߣ

ݺߣShare a Scribd company logo
𲹰ԾԲǴڳٷɲٱ𱹱DZ賾Գ
        from Real­World Experience
                             Juan J. Marín Martínez

            International Conference on Intelligent
                     Networking and Collaborative
                            Systems (INCoS 2009)
                                      Phd. Forum

                                 Barcelona, Spain
                               November 6th, 2009
- It's an on-line University
- 90% of the students are between 25 and 40 years old,
  employed and with little time to study
Master on Free Software




- Train qualified personnel at this field
- The European Union has recommended these kind of
  studies
- From a multidisciplinary point of view (legal, social and
  technological)
- The Official Master Programme on Free Software
  consists of 60 European credits of which 15 credits
  correspond to a final course
- The first part of this final course is theorical where the
  some collaborative for development are presented and
  finally it is studied how to achieve a community around
  a software project.
- The second one, and the most important, the students
  are encouraged to set up a free software project with
  the aim of making its development community-driven.
Versus


- Student projects written from the scratch and discarded
- Setting up a community is a quite complex task:
  o The programming effort consumes most of the time
  o Skills to recruit, motivate, and manage the community
  o Sourceforge.net stats: the 68% of the projects has only one
    contributor and the 15% only two.
- Join a stablished project:
  GNOME
- Collaborate on the subproject
  Evince, a document viewer for
  multiple document formats
INITIAL PROBLEMS




- Elaborate a roadmap of activities.

- Difficult to calculate the time requirements:
   o Exposition to a large code base.
   o Your work is under revision of other people.

- Start with activities with a "scratching your personal itch"
  motivation.
INTERACTING WITH THE COMMUNITY
- GNOME has a strong community which is ready to help you.

- The key element on the project is communication.

- We can identify different roles in the community.
PROGRAMMING

- Hard at the early stages because I have to learn the GNOME
  platform.
- Understand how the code works.
- The importance of the “Coding style” for working on community.
- Simple patches are easier to apply than complex ones.
- Exposition to different technologies or specifications (eg: XMP, Cairo)
- Interactions with other Free Software Projects (eg. share-mime-info).
Learning Free Software Development from Real­World Experience
Learning Free Software Development from Real­World Experience
CONCLUSIONS

The interaction with the GNOME
community is a unique first-hand
experience to understand the practical
underpinnings of free software
development.

As Patterson states “it is inspiring for
computer science students to work on
real production projects”, an
opportunity that civil engineering or
history students do not have, but that in
general is not considered in traditional
computer science courses
ANY QUESTIONS ?




Thanks for your attention       Acknowledgment
                                 Master Thesis advisor
                                    Ph.D. Gregorio Robles-Martínez
                                 GNOME hackers
                                    Carlos García-Campos
                                    Nickolay V. Shmyrev
                                    Christian Persch

More Related Content

Learning Free Software Development from Real­World Experience

  • 1. 𲹰ԾԲǴڳٷɲٱ𱹱DZ賾Գ from Real­World Experience Juan J. Marín Martínez International Conference on Intelligent Networking and Collaborative Systems (INCoS 2009) Phd. Forum Barcelona, Spain November 6th, 2009
  • 2. - It's an on-line University - 90% of the students are between 25 and 40 years old, employed and with little time to study
  • 3. Master on Free Software - Train qualified personnel at this field - The European Union has recommended these kind of studies - From a multidisciplinary point of view (legal, social and technological)
  • 4. - The Official Master Programme on Free Software consists of 60 European credits of which 15 credits correspond to a final course - The first part of this final course is theorical where the some collaborative for development are presented and finally it is studied how to achieve a community around a software project. - The second one, and the most important, the students are encouraged to set up a free software project with the aim of making its development community-driven.
  • 5. Versus - Student projects written from the scratch and discarded - Setting up a community is a quite complex task: o The programming effort consumes most of the time o Skills to recruit, motivate, and manage the community o Sourceforge.net stats: the 68% of the projects has only one contributor and the 15% only two.
  • 6. - Join a stablished project: GNOME - Collaborate on the subproject Evince, a document viewer for multiple document formats
  • 7. INITIAL PROBLEMS - Elaborate a roadmap of activities. - Difficult to calculate the time requirements: o Exposition to a large code base. o Your work is under revision of other people. - Start with activities with a "scratching your personal itch" motivation.
  • 9. - GNOME has a strong community which is ready to help you. - The key element on the project is communication. - We can identify different roles in the community.
  • 10. PROGRAMMING - Hard at the early stages because I have to learn the GNOME platform. - Understand how the code works. - The importance of the “Coding style” for working on community. - Simple patches are easier to apply than complex ones. - Exposition to different technologies or specifications (eg: XMP, Cairo) - Interactions with other Free Software Projects (eg. share-mime-info).
  • 13. CONCLUSIONS The interaction with the GNOME community is a unique first-hand experience to understand the practical underpinnings of free software development. As Patterson states “it is inspiring for computer science students to work on real production projects”, an opportunity that civil engineering or history students do not have, but that in general is not considered in traditional computer science courses
  • 14. ANY QUESTIONS ? Thanks for your attention Acknowledgment Master Thesis advisor Ph.D. Gregorio Robles-Martínez GNOME hackers Carlos García-Campos Nickolay V. Shmyrev Christian Persch