Participation/India/Android Coding Team
Contents
WHY
Background
As part of the Chota Fennec project, we are putting together a team of developers in India to work on Firefox for Android to make it better. We are bringing together some of the technical expertise in the India community (although anyone is welcome to join!) to deep dive and make impact on one product. Firefox for Android is one of the most popular web browsers on the platform, and we have an opportunity to a) make it better and b) make it more relevant to markets currently with bandwidth challenges.
WHAT
Problem statement
The Firefox for Android team is doing great work, but are focusing on continuing to evolve the product. However, they are always in need of support, not just in building out features but on improving the code base in general to make it more performant.
One of the goals of this project is to make Fennec (Firefox for Android) slimmer, leaner and faster. And that we plan to achieve by the following action points:
- Make sure all the resources that are used in the android package are device optimized
- By default load only the always used features and locales (language packs)
- Make some of the features of the browser on demand which will download to the users device only when they will need it. The download will be seamless, without any user intervention
- General code optimization and performance fixes
Desired Outcome
- The team comes together with a shared goal to learn more about Firefox for Android code.
- An out-of-the-box, portable, build system is put in place to enable developers to get their work environment set up quickly
- The Fennec engineering team integrates the team into their workflow, i.e. code reviews, mentoring, and so on
- ...
Success criteria and metrics
- 15+ team members contributed more than one patch to the Fennec codebase
- Work started on 25% of Fat Fennec bugs
- ...
HOW
Approach
Engage developers in India to invest and be proud of their contributions to a Mozilla product with millions of users. Our goal is not just to make the product better, but to bring high value to those participating in the program.
The project will deal with core component bugs of gecko. So an acceptable knowledge of gecko probably is a good thing to get involved. If you want to get involved, get in touch with any team members. Roughly the process to get up and running will be to follow the following process
- Get the fennec source code and setup build environment in your machine. Build your first fennec. Of course it's nice if you can build it once before delving into the code.
- Look at the open bugs here. Pick one (but don't start yet). And start digging up on the relevant sources on what you can learn about the relevant code. Get in touch with any team member regarding that, they may be able to help you.
- Once you are sufficiently confident, start working on a patch. This step will not come easily, so ask as many question as you want to the team (soon you will be part of which)
Resources
If you are having problem setting up the developer environment on your machine. We have a pre-built VM with mozilla-central and all build tools set-up, up and running. The image build date is June 2015 so you might want to update the sources once you download it. It is a vmware/virtualbox/parallels image with minimal hardware setup configured to run the build and produce the apk. For optimal performance increase the ram more than 4GB for the guest OS. The guest os runs Ubuntu. Get in touch with any team member to get the credential to the system.
Download the image from here.
Audience
Developers, developers.
Tactics
- tactic 1
- tactic 2
- ...
WHEN
Timeframe
September - December, 2015
WHERE
Location
Remote and in Mozilla Spaces in India (Bangalore and Hyderabad).
WHO
Team
- Rabimba Karanjai
- Soumya Deb
- Brian King (Participation)
- <Add your name if you are participating>
DOCS
References
- Firefox Mini Brainstorm Pad: https://public.etherpad-mozilla.org/p/participation-firefox-mini
MILESTONES
Week by week breakdown
todo
BUDGET
Breakdown of budget items
todo