GsoC 2009 Scribus Team Application

From Scribus Wiki
Jump to navigation Jump to search


Google FAQ

  1. How does a mentoring organization apply?
    The organization should choose a single administrator to submit its application via the GSoC web app between March 9-13, 2009.
  2. What should a mentoring organization application look like?
    In addition to anything else your organization would like to submit as an application, Google will be asking (at least) the following questions as part of the application process:
  3. Application questions.
    1. Describe your organization.
    2. Why is your organization applying to participate in GSoC 2009? What do you hope to gain by participating?
    3. Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation.
    4. If your organization has not previously participated in GSoC, have you applied in the past? If so, for what year(s)?
    5. What license(s) does your project use?
    6. What is the URL for your ideas page?
    7. What is the main development mailing list or forum for your organization?
    8. What is the main IRC channel for your organization?
    9. Does your organization have an application template you would like to see students use? If so, please provide it now.
    10. Who will be your backup organization administrator? Please include Google Account information.
    11. Who will your mentors be? Please include Google Account information.
    12. What criteria did you use to select these individuals as mentors? Please be as specific as possible.
    13. What is your plan for dealing with disappearing students?
    14. What is your plan for dealing with disappearing mentors?
    15. What steps will you take to encourage students to interact with your project's community before, during and after the program?
    16. What will you do to ensure that your accepted students stick with the project after GSoC concludes?

A few notes on the mentoring organization

  • If you take a look at the program timeline, we've left about a week for students to get to know you before submitting their applications. It is critical that it be obvious how students should reach you to discuss applying to your organization; plan to link this information from your "Ideas" list at the very least.
  • The email addresses associated with the Google Account information provided during application process will be used as the primary mode of contact by Google throughout the program, e.g. the email address which we will use to subscribe you to the GSoC mentors/admins-only mailing list.

About Your Organization

Describe your organization.

The Scribus Team consists of a small, but dedicated core group of developers along with a large and steadily growing circle of individual contributors located on every continent who cooperate to develop Scribus – an Open Source program that brings award-winning professional page layout to Linux/UNIX, Mac OS X, OS/2, and Windows desktops with a combination of "press-ready" output and new approaches to page layout. Underneath the modern and user friendly interface, Scribus supports professional publishing features, such as CMYK color, color separations, ICC color management and versatile PDF creation. In the Linux/UNIX and OS/2 worlds, Scribus is the only professional-grade Open Source Desktop Publishing Software, and on Win32 and Mac OS X, Scribus is used by an ever increasing number of professional, as well as demanding amateur users.

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

Desktop Publishing is a very complex process that requires a well-working workflow with its pinnacle being the layout software. This complexity is reflected in the commercial market, which is almost completely dominated by two software companies that do not express any interest in platforms other than Microsoft Windows and Mac OS X and are often not very responsive to input of the users of their products. Without Scribus there would be no Open Source desktop layout software on alternative platforms, and the overall ability of people in the developing world and users of Free Software to produce professional level documents would be severely impaired.

Scribus grew out of its humble beginnings as an application for making restaurant menus into an impressive piece of software that rivals products with huge budgets and large vendors behind them. However, because of the high complexity of DTP workflows and the capacity limitations of the development team, the development of Scribus is targeted to the areas with the highest return for our users, whose input is invaluable. This creates unfortunate conditions where smaller projects of lower priority are placed further down the roadmap (http://wiki.scribus.net/index.php/1.3.x_Roadmap and http://wiki.scribus.net/index.php/1.3.x_Roadmap_Extras).

Participating in the Google Summer of Code (GSoC) 2009 program would give us an opportunity to attract developmental resources to address these useful smaller projects, while allowing participating students to gain valuable experience of designing and coding solutions that will have a practical use for thousands of DTP professionals and amateurs all around the globe. The dynamic of Scribus development is such that there is a constant feedback loop between many of our users, including professional ones, and the development team. This means that GSoC student participants will get support and advice from top-notch DTP and pre-press professionals, as well as our entire core team, not just their assigned mentors. Furthermore, we hope that the incentive that the GSoC project provides to the participating students will motivate some of them to become more closely involved in the Scribus development as two previous GSoC participants have already done and who will carry on with this activity after the completion of GSoC 2007/08, thus expanding our team and making the premier Open Source layout software even better. Our experience in participating in GSoC 2007 and 2008 shows that this hope is more than justified.

What is the main public mailing list for your group?

http://lists.scribus.info/mailman/listinfo/scribus/

What is the main IRC channel for your group?

#scribus on Freenode

What criteria do you use to select the members of your group? Please be as specific as possible.

We have a closely knit group of core contributors we call "The Scribus Team" that came together over a long period of time because of common interests and compatible personalities. When new people begin contributing to the Scribus development we communicate with them a lot, help them along, and evaluate their personality and capabilities. If we have a reason to believe that they are serious about continuous contributing to Scribus development we invite them to join our team. They don't have to be coders - we have members who are helping with server administration, website maintenance and design, documentation writing, and user support. Our main criteria are willingness to provide sustained contribution efforts and good interpersonal skills.

Has your group participated previously? If so, please summarize your involvement and any past successes and failures.

We participated in GSoC 2007 and 2008 with two and three slot allocations, respectively. In 2007, Hermann Kraus worked on adding math formula editing support via LaTeX frames – a long wished-for feature desired by many users, which has been expanded dramatically since its its ineception. Mateusz Haligowski worked on writing a basic imposition (booklet printing) plugin. Both of them completed their projects successfully. In 2008, all three of our students completed their projects successfully. They added a new generation python scripter, a universal vector import UniConverter filter and GraphicsMagick integration plugin, and a well-polished picture browser to Scribus.

What we perceive as the major success of our GSoC 2007 participation is that Hermann Kraus not only successfully completed his project, but continued to contribute to our project and eventually went on to join the core Scribus development team. He is currently actively working on generalizing and extending the support for other markup languages (like graphs, musical notation etc.) in Scribus. After completing GsoC 2008 he has been working on the UniConvertor and GraphicsMagick integration. Henning Schröder, who also participated in GSoC 2008, is now a part of our core team. He continues to improve the next generation of the scripting engine to be included in the next major release of Scribus.

A hugely positive outcome of the GSoC 2007 was that we went through the learning curve without major problems while learning a lot about selecting students, managing mentor-student communications and expectations, and finding problems before they turn into major obstacles. This allowed us to streamline the GSoC 2008 selection and mentoring processes and achieve a 100% success rate in our second year.

Our main challenges were all related to the communication difficulties between students and mentors and student personality issues. In one case in 2007, development time was lost due to a student's withdrawal when confronted with coding problems. This may have largely been due to the student's personality, but our mentors and administrators should have identified the problem in less than the two weeks it took to straighten out the issue. In 2008, a couple of the students had problems connecting with their mentors on IRC due to the time differences and network access difficulties, but they were able to switch to email and to use it in a productive manner in conjunction with subversion branches. Fortunately, we had a supporting infrastructure that helped continue the flow of code and reviews. With the experience gained from our first two years of GSoC, the team collectively is enthusiastic and feels confident about our success in 2009, provided we qualify once more.


If your group has not previously participated, have you applied in the past? If so, for what sort of participation?

n/a

What license does your organization use?

GPL.

What is the URL to the ideas list of your organization?

http://wiki.scribus.net/index.php/GSoC_2009_Ideas

What is the main development mailing list for your group?

http://lists.scribus.info/mailman/listinfo/scribus-dev/

What is the application template you would like contributors to your organization to use.

  • Name/University/current enrollment information.
  • Biographical sketch.
  • Did you ever code in C, C++ or Python? Did you ever use Qt4? Provide examples of your working code.
  • Do you use Scribus? Please provide examples if you do.
  • Were you involved in Scribus development in the past? What were your contributions?
  • Were you involved in other Open Source development projects in the past? If yes, please tell us about the project(s), as well as when and in what role you were involved.
  • Why have you chosen your development idea, and what do you expect from your implementation?
  • Are you confident that you will be able to dedicate the time and effort necessary for the successful completion of your GSoC 2009 project?
  • Are you you ready and willing to sustain a good level of communication with your mentor and the Scribus Team overall and be open and forthcoming about the progress of your project, including coding and personal problems related to your GSoC project?

What is your plan for dealing with disappearing contributors?

Our mentors will perform weekly reviews of the students' work via email reports or IRC discussions. We will strongly encourage students to practice continuous involvement in the activity on our IRC channel and mailing list. We are going to be very proactive in our mentor-student communication efforts to avoid student withdrawal in case problems crop up by keeping email and IRC channels open and asking students about any problems they might have. We will regularly monitor the students' commits to their assigned subversion branches. Our main concern is that we must avoid having students that will only produce promises and vague assurances of their activity instead of the actual code. Frequent reviews and actively solicited involvement in our public developmental process should keep the communication between students and the rest of the team open and will allow us to monitor the progress of the students. In the most unfortunate case – when a student will actually disappear – we plan to contact the second runner candidate to see if he or she would like to continue the project, or we will fold the project into our main development plan and ask Google to withhold the final payment from the student who has disappeared.

What is your plan for dealing with disappearing members?

The Scribus Team has proven to function in a very cooperative, friendly, and supportive environment. Since all our mentors come from the core Scribus Team, they have shown their ability to sustain contributions to Scribus over a long time. We have sufficient confidence that none of them will suddenly disappear. However, if the involvement of a member will temporarily decline due to unforeseen external circumstances, we have sufficient overlap in skills and knowledge of the Scribus code, as well as friendly attitudes towards each other and willingness to provide mutual support that will allow us to reallocate resources without causing any interruptions in the GSoC 2009 mentoring process. This will be assisted by the process of open monitoring of the students' progress via our public mailing lists, IRC channels, Subversion check-in reviews, and milestone reviews in our Accunote project. We also have a second very active backup administrator Christoph Schäfer <docmaniac.chris@googlemail.com> and competent backup mentors Riku Leino <tsoots@gmail.com> and Petr Vaněk <nekrokodyl@gmail.com> from our core team ready to take over mentoring of a student, in case some other member of the mentoring group is unable to perform its duties.

What steps will you take to encourage contributors to interact with your community before, during, and after the program?

We plan to ensure that students selected for the GSoC program actively participate in the discussions on our mailing list and IRC. We already have leads on the students who have participated in our discussions and seem capable and interested in contributing. We conduct much of our development discussion on IRC and will require students to be present there as much as possible. Over the years we have found that the open, relaxed and friendly atmosphere on our mailing lists and IRC channels has helped a number of people make a transition from Scribus users to becoming contributors. We believe that by exposing students to this environment, we can foster their sense of involvement and help them to see how their accomplishments can help the entire community, as much as being a rewarding learning experience for themselves. The absence of interpersonal conflicts given the large number of contributors to our communication channels and the rapid pace of development shows that this strategy has been productive.

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

The most we can hope for is that the learning experience the students will go through, while communicating with mentors and participating in our mailing list and IRC discussions with developers and users will create in them a sense of participation in the Scribus community. Our intent is to make their participation in Scribus development during this summer both useful and interesting by trying to make sure that their project has opportunities for continuation beyond GSoC. We also hope that the students keep learning new things of interest and use to them in a friendly and supportive atmosphere. We think that, as long as the students learn, enjoy their participation and create a bond with the larger Scribus community, there is a good chance that they will continue their involvement after GSoC 2009 concludes.

Please select your backup group administrator.

Craig Bradney <link_id is craigbradney_gosc>