Contents
The main page is at SummerOfCode2014 and OutreachProgramForWomen. (Depending on your program)
Project template
All the project descriptions should follow the following template.
Title of the project
Description of the project: At least 8-10 lines describing what the project is about; it is really important to have a good description if you want to attract students who are interested by the idea. This does not need to be a very technical description, but something that stirs interest and is complete enough to allow a student to judge whether s/he wants to work on the particular project or not. It does not need to be a complete road map either and does not need to explain all the tiny details and whatnot -- the mentor can tell that to interested students, or they can work out the exact details together.
Confirmed Mentor: Name of the mentor
How to contact the mentor: (mail, IRC, etc)
Confirmed co-mentors: It is not compulsory to have co-mentors, but it is a good idea. Secondary mentors do not need to be as knowledgeable as the first one in the project, but they should be available to help the student if s/he is stuck and the main mentor is busy / not available.
Deliverables of the project:
Desirable skills: Skills that the student has or is willing to develop. Remember, the students do not have as much experience as the mentor.
What the student will learn: At least 2-3 lines telling the students the skills they develop and how they will improve Debian. Do not focus on the technologies, rather use something that could motivate the prospective student to take your project.
Projects with confirmed mentors
Please keep this section clear of project ideas without confirmed mentors, to avoid any confusion for prospective students. Such projects should be published in the next section.
Debian based on clang
Description of the project: During the last couple years, important efforts have been produced to build Debian with Clang instead of gcc. Clang is now features completed and compiles most of the archive. However, clang being stricter than gcc, it rejects a lot of packages.
The goal of this project is to patch all packages failing to build with clang. Forwarding to upstream the patches will be part of the project.
To have an idea of the common errors, see http://clang.debian.net
Confirmed Mentor: Sylvestre Ledru
How to contact the mentor: sylvestre@debian.org
Deliverables of the project: A repository of all Debian packages built with clang.
Desirable skills: Patching upstream code, good understanding of C and C++, etc
What the student will learn: Impact on the whole distribution, common C/C++ mistakes, compiler issues, etc
libc++-based Debian
Description of the project: In the context of LLVM project, a new C++ standard library called libc++ has been developed and maintained. This package is already in Debian. The main goal is rebuild Debian using libc++ as C++ runtime. Note that the libstdc++ and libc++ are not ABI-compatible.
This project will take advantages of the debile infrastructure.
Confirmed Mentor: Sylvestre Ledru
How to contact the mentor: sylvestre@debian.org
Deliverables of the project: A repository of Debian packages running with libc++
Desirable skills: Packaging (especially of libraries), strong understanding of API/ABI compatibility
What the student will learn: Impact on the whole distribution, library management, compilations, etc
Archive built with asan
Description of the project: In the context of Clang project, ASAN, Address Sanitizer is a fast memory error detector. It consists of a compiler instrumentation module and a run-time library. It will compile any code which built with gcc or clang and insert a static library in the binary.
This library will automatically check some common memory errors. Example: More information
This project will take advantages of the debile infrastructure.
Confirmed Mentor: Sylvestre Ledru
How to contact the mentor: sylvestre@debian.org
Deliverables of the project: A repository of Debian packages built with ASAN
Desirable skills: Packaging (especially of libraries), building packages
What the student will learn: Strong improvement of the quality and error detection
Provide some metrics in Debile
Description of the project: Because everybody loves meaningless stats, the goal of this project is to extend the debile infrastructure to provide some metrics on the packages. For example, build time, size of the binaries, etc.
This projets would also extend to propose graphics over time (number of failure, number of errors/warnings detected, etc).
Graphics should be provided using the d3js or Kibana library
Confirmed Mentor: Sylvestre Ledru
How to contact the mentor: sylvestre@debian.org
Deliverables of the project: A debile version with plenty of stats and graphics
Desirable skills: Some knowledge of packaging, javascript, database, etc
What the student will learn: plenty of things relative to packages, build, etc
Projects ideas without confirmed mentors
Please find mentors for those projects. If no confirmed mentor shows up before the student application period starts, the project will not happen.