GSOC 2012/Student Application Astiando/Semi-automated system implementation for FWN

=Semi-automated system implementation for FWN=

Proposal Description
Please describe your proposal in detail. Include:

An overview of your proposal
The proposed tool will assist FWN editors to create FWN issues with few clicks. My proposal contains two phases. In the first phase which is planned to finish before the mid-evaluation will cater the current need. Then at the next phase the improvements will be done with some new services. The tool is web based, PHP will be used as the scripting language. An interface will hold things together and every section contains a wizard, by following the wizard it is possible to get the content of the FWN and copy paste the output content to drupal module will be the editors task.

The need you believe it fulfills
Currently the FWN releases are quite cumbersome and due to busy schedules of the writers the FWN does not issue regularly and not having a complete, unique structured format. This tool will give some life to FWN issues and solve the problem. Then FWN issue will happen with no effort and the manpower requirement will get reduced. According to the mentor for this idea; FWN is a main requirement for the fedora project therefore the implementation of this idea seems critical.

Any relevant experience you have
I have worked for a project in my university which is about parsing and acquiring data from web page and producing an xml. Therefore I am familiar with some parsing techniques, algorithms. I am good at web application development using PHP, Python, HTML and AJAX.

How do you intend to implement your proposal
The main goal is to make FWN process more smoother by automating the FWN issuing process.This a web based application which can be accessed via an interface.

The FWN contains some sections as Issue 288 they are;
 * 1) Announcements
 * 2) Fedora In the News
 * 3) Ambassadors
 * 4) Security Advisories

Announcements

The following lists are parse and list the mails against the following topics;

Announcement - http://lists.fedoraproject.org/pipermail/announce/ is used to grab content. The content is listed extracting the content of the mails as required.

Fedora Development News - http://lists.fedoraproject.org/pipermail/devel-announce/ is used to grab content. The content is listed extracting the content of the mails as required.

To compose Upcoming Fedora Events, http://fedoraproject.org/wiki/Events content is used and parsed against the specific date range.

Fedora In the News

The marketing list (http://lists.fedoraproject.org/pipermail/marketing) is used to gather content. Mails with a link to outside source will listed with the first 3-4 sentences from the article. Direct link to the article is provided with the reporters name. However the detected list should be confirmed by the writer, with checking/ unchecking. That eliminates normal discussion entering into the list. Then the XML is created and that will be the input to compose the FWN.

Ambassadors

This section is composed according to ambassadors mailing list (http://lists.fedoraproject.org/pipermail/ambassadors/).Fedora Ambassadors Regional Meeting Minutes - http://fedoraproject.org/wiki/Ambassadors/Meetings#2012 entries will be parsed and obtained list of meetings and their URLs to meeting pages. Output will be an xml to FWN compose module to build the code required drupal module.

FAMSCO Meetings – The mailing list is parsed and search for ‘FAMSCO Meeting Minutes’ and grab the logs of the meetings.Summary of traffic on Ambassadors mailing list– The ambassador list is parsed for the given time period and obtain their subjects with the author, the created XML will be an input to FWN composing module.

Welcome New Ambassadors – The ambassadors mailing list is parse and search for subjects starting with ‘Fedora Ambassadors Welcome Week’. The content of those mails are parsed and extract the name of the new ambassador and the mentor. Again the XML is directed to FWN compose module.Events reported on Ambassadors mailing list – Mails on the same mailing list tagged with [Event Report] will be parsed and the subject and author info use to create the XML which will be the input for FWN composing module.

Campus Ambassadors mailing list-Summary of traffic – The campus ambassadors mailing list (http://lists.fedoraproject.org/pipermail/campus-ambassadors/) topics are parsed and listed.

Security Advisories

The package-announce mailing list(http://lists.fedoraproject.org/pipermail/package-announce) is used to write up this section. The module related with this section will search [SECURITY] tagged mails in the list with in the specific period (given week) against the specific release. It is enough to parse the subjects set of the mailing list archive.

The output will be an XML message that can be sent to FWN composer module and that generates the required code to the drupal module.Finally the FWN composing module will out put the code that should be entered to the drupal module. The web interface will hold every section and function related with this tool.Final deliverable of the proposal at the end of the periodThe main deliverable will the tool to compose FWN, a web application, packaged to RPM.

Final deliverable of the proposal at the end of the period
The main deliverable will the tool to compose FWN, a web application, packaged to RPM.

A rough timeline for your progress
April 7- April 23: Design a general template for an FWN issue.

April 23 – May 21: Finish the tool partially so that it generates a rough FWN issue.

May 21 – June 21 : Fine tune the tool and design GUI wizard to interact and add editor commands to generate the FWN.

June 21 - July 9 : Finishing and make sure the deliverable for mid evaluation is available.

Mid-Term Evaluation: Above mentioned deliverable should be available (a working tool that can be used to issue FWN).

July 13- July 20 : Based on the xml input, the required Drupal code will be generated. Add some other beats as noted on http://fedoraproject.org/wiki/FWN/Beats#Beats_Sections.

July 20 - August 13 : Create an interface with AJAX support to explore the mailman archives whenever required by giving the name and the time range.

August 13- August 20 : Package the tool and submit the tool.

Any other details you feel we should consider
Not as a deliverable at the end of the project I would like to extend some functionality of the tool developed, with an AJAX interface to explore the mailman archives easier. This is not a promise but an idea. However after the GSOC program I ll definitely finish this in my free time.

Have you communicated with a potential mentor? If so, who?
I have contacted the mentor and had a short IRC chat with Kevin Fenzi and Toshio Kuratomi.