Outreachy/2016/December to March

From MozillaWiki
< Outreachy‎ | 2016
Revision as of 21:54, 25 September 2015 by Jdm (talk | contribs) (Add Servo project.)
Jump to navigation Jump to search

Projects for Outreachy December 2015 to March 2016

Key Dates

  • September 29 application process opens
  • November 2 application deadline
  • November 17 accepted applicants announced (Mozilla intends to announce earlier due to travel and hardware logistics)
  • December 7 - March 7 internship dates

Application Process

Projects

SUMO - Work on a tutorial or training tool for new technical writers

Mentor: Joni Savage

Mozilla’s Support site (SUMO) provides around-the-clock help for 30 million users a month through thousands of knowledge base articles. We rely on the community to keep the knowledge base up to date with each release. While there’s growing interest in contributing to the knowledge base, there’s also a learning curve. Here’s where you come in.

SUMO is looking for someone with an interest in storytelling, teaching, writing, design or video to help us transform our lengthy training documents into fun, interactive and effective training tools to empower new contributors who have a wide range of skills.

You will work closely with Joni, the content manager, along with our community to brainstorm learning activities, create storyboards and outlines for training guides, design and research interactive and intuitive contributor tools, and write friendly and effective copy. Got additional ideas? We’d love to hear those too.

To get started:

  1. Look through this page.
  2. Get in the mindset of a new contributor. Pick out what you think is important information from the page in step #1 and turn it into a mini tutorial (or an outline for a tutorial). This can be an infographic, video, slideshow, storyboard or any format of your choice.
  3. Send your tutorial or storyboard to Joni Savage along with an explanation.

Servo: Complete implementation of Fetch standard

Mentor: Josh Matthews

Details

Servo is a brand new web rendering engine written from the ground up in Rust. This allows us to try implementing old web features in new ways, including the underlying model for performing network requests inside the browser. The Fetch standard defines a series of steps to ensure proper security checks are performed when necessary, and we want to try using it everywhere in Servo!

A partial implementation of this model already exists in Servo, but there are large pieces missing. You will be responsible for the following:

  • integrating our existing network request code with the HTTP-network-or-cache-fetch step
  • moving cross-origin security checks out of callers and into the fetch implementation
  • converting existing code that makes network requests to use the new fetch APIs
  • writing tests to ensure specification conformance

Servo is written almost entirely in Rust; besides some diversions into HTML and JavaScript for reading and writing tests, this project will require you to work exclusively in the language. Do not fear! We regularly receive contributions from first-time Rust programmers, and it's a great motivator to gain experience in a new low-level language. There will be many opportunities to practice reading, understanding, and refactoring existing code, in addition to writing new implementations when necessary. Furthermore, you will gain proficiency in reading web specifications.

What you can do to get involved: