Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Contributing To The Mozilla Codebase


Published on

Mozcamp at Haldia Institute of Technology

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Contributing To The Mozilla Codebase

  1. 1. Contributing to theMozilla Codebase Souradeep De
  2. 2. Step 0 : Before Building System Requirements : 1. Recommended : 4GB of RAM 2. High Speed Internet One-Line Bootstrapping :wget --no-check-certificate && python
  3. 3. Step 1 : Build Firefox1. Get The Source :hg clone Build :./mach build
  4. 4. Step 2 : UnderstandThe Development Process :Schedule-driven process, to provide regularimprovements to users without disrupting longerterm work.
  5. 5. Step 3 : Find some work1. Fix your pet peeve2. Fix bugs identified by mozilla3. Bugs Ahoy !4. Use
  6. 6. Fix your pet peeve1. Search bugzilla : For relevant keywords2. Figure out the bugzilla component : Find where pet peeve is implemented3. Ask for help : #introduction or #developers in
  7. 7. Fix bugs identified bymozilla1. Mentored Bugs Your mentor helps you in every step.2. “Good” First Bugs Bit stale. But good starting point.3. Student Projects Large projects, good enough for your university project.
  8. 8. Bugs Ahoy !
  9. 9.
  10. 10. C++1. Gecko The engine that drives Firefox.2. Boot2Gecko The operating system for Android phones built on web technologies.3. Thunderbird The open source email client.
  11. 11. C++4. Seamonkey The open source web productivity suite.5. v8monkey Implementing the v8 API on top of Spidermonkey.6. emscripten Creating a LLVM-to-JS system to allow porting native code to the web.
  12. 12. C++7. SVG Project Help with the implementation and testing of Mozillas Scalable Vector Graphics engine.8. Windows 8 Integration The Metro-style enabled desktop browser for Windows 8.9. MathML Display and represent math formulas on the web.
  13. 13. C1. NSS The network security pieces of Firefox.
  14. 14. JavaScript1. Firefox All of the UI is written in JS.2. Mobile Firefox Its the Gecko engine, with an Android-specific UI. No Android device required.3. pdf.js A PDF viewer written entirely in JavaScript.
  15. 15. JavaScript4. Shumway A Flash player written entirely in JavaScript.5. The addon SDK The foundation upon which all new kick-ass addons are built.6. Gaia The default UI for the web-based mobile operating system Boot2Gecko.
  16. 16. JavaScript7. DXR The intelligent source code indexing system.8. Thunderbird The open source email client.9. Seamonkey The open source web productivity suite.
  17. 17. JavaScript10. Web development Many large, complicated projects that use JavaScript.11. Popcorn Create interactive media pages that seamlessly integrate video, audio, and traditional web technologies
  18. 18. JavaScript12. Windows 8 Integration The front end for the Metro-style enabled desktop browser for Windows 8.13. Persona Implement a new way to safely and easily sign into websites.
  19. 19. Java1. Mobile Firefox Its the Gecko engine, with an Android-specific UI. No Android device required.2. Rhino Its Spidermonkey in Java.
  20. 20. Python1. Firefox Lots of code is generated by python scripts.2. Web development There are many large, complicated projects written in Python.
  21. 21. Python3. DXR The intelligent source code indexing system.4. Tools & Automation Various projects to facilitate easier automated testing of products.
  22. 22. PHP1. WordPress The code that runs our blogs2. Marketplace The PHP client for Marketplace.3. The Mediawiki-Bugzilla plugin The Bugzilla plugin for Mozillas MediaWiki.
  23. 23. RustRust is an experimental, multi-paradigm, compiled programming language developed by Mozilla Research.It visually resembles the C language family, but differs significantly in syntactic and semantic details.
  24. 24. Coding in RustA small piece of code in Rust:Hello World:fn main() { io::println("hello, world");}
  25. 25. Step 4 : Fix the bug1. Check out the Developer Guide : Ask for help : #introduction and #developers3. Notify the docs team : Add dev-doc-needed keyword if your bug is likely to require documentation.
  26. 26. Step 5 :Get your code reviewedOnce you fix the bug, attach a patch to thebug, and ask for review.Do this by setting the review flag to ?
  27. 27. Step 6 :Respond to the reviewThe reviewer may ask to fix some issues.An r+ would mean that your bug fix isaccepted into the tree.
  28. 28. Step 7 :Get the code into the treeAsk your mentor or mark your commit with acheckin-needed keyword.
  29. 29. Thank You :)