[Reproducible-builds] Applying to Outreachy to work on Reproducible Builds

Valerie R Young spectranaut at riseup.net
Wed Mar 23 19:34:33 UTC 2016


Hi all!

I'm applying to Outreachy (https://www.gnome.org/outreachy/) to work on 
the Reproducible Builds project, specifically to improve 
test.reproducible-builds.org. Very excited to potential join this 
project! You'll see me on irc getting up to speed and submitting the 
first commit :)

Here is a rough timeline I've put together based on the work 
Holger/Lunar would like to see on the site -- further feedback welcome:

Timeline: Week 1 - Become intimately familiar with the 
test.reproducible-builds.org - Basic understanding of all projects 
presently tested - Detailed understanding of site design/map for the 
Debian project - Detailed understanding results of tests/graphs/purpose 
and use of site Week 2-4 - Improve UI and UX of 
tests.reproducible-builds.org for debian - Less intimidating front page 
for test.reproducible-builds.org with links to all projects - Common 
navigation on left for dashboards, indexes and package pages (similar to 
package pages) - Look into templating/CSS - Improve 
documentation/description of status on each dashboard Week 5 - Become 
intimately familiar with reproducible.db - Become intimately familiar 
with test results and project/packaging design of other projects to 
record in database Week 6 - Re-design database to add results from other 
distros to the database Week 7 - Migrate from SQLight to Postgres (with 
new schema design!) Week 8-9 - Update scripts running reproducibility 
tests for non-Debian projects to record test information to database 
Week 10-12 - Adapt/extend code which builds Debian's 
test.reproducibile-builds.org pages to surface results from all projects


The rest of my application is attached if you are curious :)

see you around,
Valerie

P.S. Today is my birthday! :D
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/reproducible-builds/attachments/20160323/e9b94e47/attachment.html>
-------------- next part --------------

A quick notice: I just learned about Outreach on 20th at libreplanet! Unfortunately, due to the two day time constraint, this application will be submitted on the 22nd partially completed. I will complete the text part of the application by Thursday (the 24th) and submit a contribution to the project (reproducible-builds) by the following Thursday (March 31st).

Name:
Valerie Ruth Young

Do you meet the eligibility requirements outlined at https://wiki.gnome.org/Outreachy#Eligibility (if no, explain why not)?
Yes

Preferred pronoun (e.g. she, he, they):
She

E-mail address:
spectranaut at riseup.net

IRC nick:
spectranaut

Internet presence (e.g. web page, blog, portfolio, GitHub, Twitter, LinkedIn links):
https://www.linkedin.com/in/vayoung

Location (city, state/province, and country):
Boston, MA

Education completed or in progress (include university, major/concentration, degree level, and graduation year):
Bachelor's degrees in Physics and Computer Science

How did you hear about this program?
From Jennie Rose Halprin, a previous participant.

Are you applying for Google Summer of Code and, if so, with what organization(s)?
Nope.

Please describe your experience with the organization's product as a user and as a contributor (include the information, as well as a link or an attachment, for the required contribution you made to the project you are interested in here):
I've used the Debian operating system for a year, and ubuntu for the three years before that.
I'm presently working on an initial contribution with my potential mentors (Holger, Mattia and Lunar) and will update this application as soon as the project has been decided. 

Please describe your experience with any other FOSS projects as a user and as a contributor:
I'm a huge enthusiast of free software, and I contribute regularly by evangelizing. The last half year I co-organized a free software reading group, where we've reading the GPLv3 and other licenses, case law on DRM, and anthropological analysis of free software organizations. I hope Outreachy can be a gateway to developing for free software project as well – up until now, I've only written scripts for research or closed source code for companies!

Please describe any relevant projects that you have worked on previously and what knowledge you gained from working on them (include links):
For the last two years, I've worked on a web application, the Electronic Medical Record product offered by athenahealth (athenahealth.com). This work has provide me a great deal of experience thinking about usability (a huge concern when writing a tool for doctors to use to document and diagnosis you) and, of course, building a webapp. I've experience with both backend and frontend data modeling and management (javascript backbone.js, perl Moose, Oracle SQL) and frontend web design (HTML, LESS/CSS). This is all relevant to the project of interest, which is making tests.reproducible-builds.org a more useful and usable site for projects interested in achieving reproducible builds – including Debian and beyond.

What project(s) are you interested in (these can be in the same or different organizations)?
Like mentioned above, I'm interesting in contributing to the reproducible-builds (reproducible-builds.org) project of Debian, specifically to improve and expand tests.reproducible-builds.org.

Who is a possible mentor for the project you are most interested in?
Holger Levsen, Lunar and Mattia Rizzolo 

Please describe the details and the timeline of the work you plan to accomplish on the project you are most interested in (discuss these first with the mentor of the project):

Project:
The reproducible builds project of Debian has 3 aims: (1) promote software development practices that result in verifiable identical binary executables from identical source code (2) create tools to test the reproducibility of a build given the source code and build environment and (3) create tools to verify a user's build is identical to the original build. This summer I would be working on aim (2) by contributing to tests.reproducible-builds.org.

tests.reproducible-builds.org presently surfaces the results of reproducibility testing of several free software projects (including Debian, Fedora, coreboot, OpenWrt, NetBSD, FreeBSD and ArchLinux). However, the design of the site is confusing and overwhelming, making it difficult for a user to find how to check on the reproducibility of a given package for one of the aforementioned projects, or understand the reasons for failure. Additional, the backend test resuts of Debian are outgrowing the original SQLite database, and many projects do not log the results of package testing at all. 

Timeline:

Week 1
- Become intimately familiar with the test.reproducible-builds.org
    - Basic understanding of all projects presently tested
    - Detailed understanding of site design/map for the Debian project
	- Detailed understanding results of tests/graphs/purpose and use of site

Week 2-4
- Improve UI and UX of tests.reproducible-builds.org for debian
    - Less intimidating front page for test.reproducible-builds.org with links to all projects
    - Common navigation on left for dashboards, indexes and package pages (similar to package pages)
	- Look into templating/CSS 
    - Improve documentation/description of status on each dashboard

Week 5
- Become intimately familiar with reproducible.db
- Become intimately familiar with test results and project/packaging design of other projects to record in database

Week 6
- Re-design database to add results from other distros to the database

Week 7
- Migrate from SQLight to Postgres (with new schema design!)

Week 8-9
- Update scripts running reproducibility tests for non-Debian projects to record test information to database

Week 10-12
- Adapt/extend code which builds Debain's test.reproducibile-builds.org pages to surface results from all projects


Will you have any other time commitments, such as school work, exams, research, another job, planned vacation, etc., between May 23 and August 23, 2016? Please provide exact dates for these commitments and the number of hours a week these commitments take.
No other commitments – I am not a student and if I get this internship I will quit my job :)



More information about the Reproducible-builds mailing list