Name Baptiste Mouterde
Contact/Email: Irc : Ko_lo
mail/jabber baptiste.mouterde@gmail.com
Background:
I am in my last year at the University of Technology (IUT) in Belfort (France), I have learned there a lot of languages such as Python, java, c, c++, html/css (trying to use as often as possible the latest versions and including the same feature for old browsers), php, Javascript, sql, Functional test on Java. I will start working on ajax/Jquery soon. I have been acquiring a large part of my knowledge by myself, doing some projects for friends, this include for example Django, Python, html/css, java. I do not have any knowledge on pylons, but my philosophy is that learning something new is always a positive challenge and I am not afraid to work on my own. I am currently working on how to make those programs open Sourced. In all my projects I have always tried to make my work as user-friendly as possible without loosing any feature. I have also had to make algorithm lighter and lighter because of the poor quality of these servers I have had to use.
I am curious, thanks mainly to scouting where I am an animator and educator and which requires people to have a lot of ideas. That’s why I can say that I am quite creative and ingenious. I am also serious and committed to my work and I see myself as a very punctual person who cannot stand being late.
I love making web interface as clear and useful possible, I think that helping people to work on Debian could be a great thing, the actual interface may have already lost some user that's why I would like to make thing as easy and clear as possible.
Project title improving the online package review interface for mentors.debian.net
Synopsis: the project is to overhaul the actual interface of mentors.debian.net and adding few features and combine services to make it newcomers-friendly
Project details
Main idea
the project can be divided in 4 parts :
the first part will be creating a better source package review interface that will be connected to the debian mentors mailing list, including code review with a way to show the line which is commented. Also every report will send a simple but complet message to the mailing list
the second part is making a interface that show messages send on debian-mentors mailing-list and sponsorship-request bugs dealing with each package
the third part will be implementing a system of Karma for package reviewing in order to influence user to post review
the last part will be implementing the team concept in mentors.debian.net (connection with mailling list, sort by team, show some teams, hide some other)
Details:
- Using Python:
- Powerful language
- Tests are easy to do
- I am experienced in this language
Design proposal:
The project will be divided into 3 parts
The mailing list part
- this part will have to deal with mailing list system
- it should be able to automatically send clear mail to list.
- It may be simple to use in the python part
- Will be used for almost every part of the project
- won't have to spam list!
The python part:
- Will be the core of the project
- it may be tested at each step
- will make the link between mailing list, BTS, and karma
The web part (pylon & html & css & js and/or ajax):
- Will be as friendly as possible
- Will be able to show what you except exactly (sort by team, number of review, last activity, user activity on mentors.d.n, from a-z, let you search)
- Will be able to show package source
- Will let you comment each line of source if needed
- Will let user post review and rate review and reviews' answers
Personal idea:
Things must be made by instinct, here is a list of idea sort by domains : sorting package list :
- "mentors choice" (the package that mentors love so much that they wanted to show it)
- show the more active user on reviewing
- show the most active package / bug tracking / reviewing feed
- can be subscribe by rss with your own configs
- could sort team A and B but not C package with 4 reviews min
review system :
- syntax coloration
- mouse over line number show comments talking about it for the source view
- mouse over line number show source for the comments view
- could notify user when posted
- rss feed
- "subscribe" button on reviewing feed
mailing list :
- mail will be simple with link
- something will show that's an automatic message (like [auto] in title or something else )
Proposed development method:
- The first part of the development will be inspecting the code already here, what work, what doesn't work, what miss, what might be changed, what should be keep. After the work on the mailing list should begin fast. the python part will be made just after in order to implement all other feature. A big part will be the review manager with BTS, karma system, code review. A another big part will be the "sort" system including the karma and review system, team, user choice
- The last part will be listening to community test and repports
Testing:
- During the development process all the program will be tested with functional test and unit test in order to prevent useless code or any other errors. using python tools the code will be validated during development process. (using unittest for example)
Benefits to Debian
- what could be as sad as lost new devs? With a powerful and community tools, mentors, submitter and newcomers will be greatly helped on their work. the package submission will be easier and may become famous.
Deliverables:
Per week I will post at least one article on a blog for the week’s work At each hard point or Search work I will post the result and maybe the how-to on the blog I can post the work on progress on twitter or other websites like... few beta interface will be available.
Project schedule:
Before summer:
- looking at what is already done
- Continue learning ajax/jquerry
- play around with pylons
- look at other existing review system/ code syntaxing
- look at APIs which will be needed
- look at existing project structure
First two weeks:
- what is existing?
- sort what will change or not
- sort what miss
- Making first mailing list works
- Creating a simple template for testing mailing-list system
2 weeks:
- creating python work
- beginning work on review system
2 week:
- continue review system with karma
- creating a test template for the review system
1 weeks:
- implementing code comments/syntax
- cleaning review interface/code
2 week:
- Implementing the sort interface
- implementing the subscribe/syndication system
1 week:
- connect all interface, fix and clean.
Last weeks:
- Bug tracking/fixing
- Final test
- Listen to community
- Final documentation
- Minor design adaptation
After Gsoc:
- Maintain projects alive
- Listen to the community
each weeks : break, what was made? what missed? why? what Could I do to avoid this next time?
Exams and other commitments:
I have got exams the first week of June, before that I will be available for 20h or more per week after that I will be able to work more
Other summer plans: some days for animation (voluntary work for scouting) (less than 10 for sure), can change if the project needs more work.
Why Debian?:
Debian is to my mind one of the best systems available, I use it server side, and when I work. I choose Debian because I trust in the future of open sourced and free software, Debian is also a huge part of the Linux world that I would like to help growing, this summer of code can be for me a way to take part in the Debian movement, I find the work done on Debian pretty amazing, it’s uncommon to find an Os as stable as Debian. This will be a great experience, I use almost every day packages from Debian but then I will be able to learn how does it work! It should be great to work with an existing team that's look very dynamical.