Difference between revisions of "Real World Mozilla"

From CDOT Wiki
Jump to: navigation, search
(Topic List by Day)
m (Reverted edits by WikiAdmin (Talk) to last revision by Chris Tyler)
 
(15 intermediate revisions by 5 users not shown)
Line 1: Line 1:
=Dive Into Mozilla Development: a one week crash course=
+
=Real World Mozilla Development: a one week crash course=
  
 
==Overview==
 
==Overview==
  
Mozilla, creator of the popular Firefox web browser, is one of the largest collaborative open source projects in the world. Working on Mozilla is challenging, fun, and one of the best ways to gain real-world development experience. Getting involved with Mozilla means learning new skills, meeting new people, and having the opportunity to work on global software products with tens of millions of users. However, as exciting as it is, getting started can be intimidating and overwhelming—Mozilla has millions of lines of source code. This course will give you the knowledge you need to start building Firefox extensions by introducing you to the following topics:
+
Mozilla, creator of the popular Firefox web browser, is one of the largest collaborative open source projects in the world. Working on Mozilla is challenging, fun, and one of the best ways to gain real-world development experience. Getting involved with Mozilla means learning new skills, meeting new people, and having the opportunity to work on global software products with tens of millions of users. However, as exciting as it is, getting started can be intimidating and overwhelming—Mozilla has millions of lines of source code. This course will give you the knowledge you need to start building Firefox extensions by introducing you to the following topics (NOTE: a [[Topics in Mozilla Development|complete topic list]] is also available):
  
 
==Topic List by Day==
 
==Topic List by Day==
  
'''Monday'''
+
'''Monday''' - [[Dive into Mozilla Day 1|Introduction to Open Source and Mozilla]]
 
* What is Open Source?
 
* What is Open Source?
 
* What is the Mozilla Project?
 
* What is the Mozilla Project?
Line 15: Line 15:
 
* Using Mozilla’s collaborative documentation tools (wikis, wiki markup)
 
* Using Mozilla’s collaborative documentation tools (wikis, wiki markup)
  
'''Tuesday'''
+
'''Tuesday''' - [[Dive into Mozilla Day 2|Building Mozilla from Source]]
 
* More IRC
 
* More IRC
 
* The Mozilla Build Process and Build System
 
* The Mozilla Build Process and Build System
Line 22: Line 22:
 
* Building Mozilla from source code
 
* Building Mozilla from source code
  
'''Wednesday'''
+
'''Wednesday''' - [[Dive into Mozilla Day 3|Developing Mozilla]]
 
* Using developer tools (e.g., diff, patch, etc.)
 
* Using developer tools (e.g., diff, patch, etc.)
* Using Mozilla webtools (OpenGROK/LXR, Bonsai, Bugzilla, Pastebin)
+
* Using Mozilla webtools (LXR, Bonsai, Bugzilla, Pastebin)
 
* Finding your way around in the Mozilla source tree
 
* Finding your way around in the Mozilla source tree
* Learning how to develop and debug Mozilla (C/C++ and JavaScript)
 
 
* Introduction to XPCOM Components
 
* Introduction to XPCOM Components
 
* Writing your first XPCOM Component in C++
 
* Writing your first XPCOM Component in C++
  
'''Thursday'''
+
'''Thursday''' - [[Dive into Mozilla Day 4|Debugging and Testing]]
 
* Finishing your first XPCOM Component
 
* Finishing your first XPCOM Component
 +
* Learning how to debug Mozilla (C/C++ and JavaScript)
 
* Strategies for Testing XPCOM Components (e.g., xpcshell unit tests)
 
* Strategies for Testing XPCOM Components (e.g., xpcshell unit tests)
 
* Bugs, Bugzilla, Testing, and QA
 
* Bugs, Bugzilla, Testing, and QA
 
* Bug Triage, methods of manual testing
 
* Bug Triage, methods of manual testing
  
'''Friday'''
+
'''Friday''' - [[Dive into Mozilla Day 5|Firefox and Extensions]]
 +
* Modifying Firefox
 
* XUL and Javascript Firefox Extensions
 
* XUL and Javascript Firefox Extensions
 
* Writing your first XUL/JS Extension
 
* Writing your first XUL/JS Extension
Line 42: Line 43:
 
* XULRunner and application deployment
 
* XULRunner and application deployment
  
 +
<!-- Commented out instance-specific information to make more generic.
 
==Cost==
 
==Cost==
  
Line 56: Line 58:
 
==Location==
 
==Location==
  
Seneca@York campus room '''S1206'''
+
Seneca@York campus rooms '''S1206''' (Monday only), and '''T4046''' (rest of the week).
  
 
==Registration==
 
==Registration==
Line 63: Line 65:
  
 
Computer Studies students please register by sending an email from your learn account to Daman Panesar. Please include your student number.  Faculty and staff please email David Humphrey
 
Computer Studies students please register by sending an email from your learn account to Daman Panesar. Please include your student number.  Faculty and staff please email David Humphrey
 +
-->
 +
 +
[[Category:M@S]]

Latest revision as of 08:50, 3 July 2011

Real World Mozilla Development: a one week crash course

Overview

Mozilla, creator of the popular Firefox web browser, is one of the largest collaborative open source projects in the world. Working on Mozilla is challenging, fun, and one of the best ways to gain real-world development experience. Getting involved with Mozilla means learning new skills, meeting new people, and having the opportunity to work on global software products with tens of millions of users. However, as exciting as it is, getting started can be intimidating and overwhelming—Mozilla has millions of lines of source code. This course will give you the knowledge you need to start building Firefox extensions by introducing you to the following topics (NOTE: a complete topic list is also available):

Topic List by Day

Monday - Introduction to Open Source and Mozilla

  • What is Open Source?
  • What is the Mozilla Project?
  • The Mozilla developer community and its practices
  • Mozilla Platform and Technology overview
  • Using IRC to communicate with other Mozilla developers around the world
  • Using Mozilla’s collaborative documentation tools (wikis, wiki markup)

Tuesday - Building Mozilla from Source

  • More IRC
  • The Mozilla Build Process and Build System
  • Using Revision Control Systems (CVS and SVN)
  • Introduction to make and writing Makefiles
  • Building Mozilla from source code

Wednesday - Developing Mozilla

  • Using developer tools (e.g., diff, patch, etc.)
  • Using Mozilla webtools (LXR, Bonsai, Bugzilla, Pastebin)
  • Finding your way around in the Mozilla source tree
  • Introduction to XPCOM Components
  • Writing your first XPCOM Component in C++

Thursday - Debugging and Testing

  • Finishing your first XPCOM Component
  • Learning how to debug Mozilla (C/C++ and JavaScript)
  • Strategies for Testing XPCOM Components (e.g., xpcshell unit tests)
  • Bugs, Bugzilla, Testing, and QA
  • Bug Triage, methods of manual testing

Friday - Firefox and Extensions

  • Modifying Firefox
  • XUL and Javascript Firefox Extensions
  • Writing your first XUL/JS Extension
  • Combining your XPCOM and XUL Extension
  • XULRunner and application deployment