Difference between revisions of "Winter 2008 OSD600 Weekly Schedule"

From CDOT Wiki
Jump to: navigation, search
(Week 2 - Managing and Building large source trees)
(Week 2 - Managing and Building large source trees)
Line 48: Line 48:
  
 
* '''Readings/Resources'''
 
* '''Readings/Resources'''
** '''Getting started in Open Source projects, or "Learning to be at the festival"''' (on-line lecture) by David Humphrey (given at [http://www.mozilla24.com/en-US/ Mozilla24 in Stanford]): Formats - [http://videos.mozilla.org/mozilla24/1-16_david.mpg mpg], [http://videos.mozilla.org/mozilla24/1-16_david.ogg ogg], [http://videos.mozilla.org/mozilla24/1-16_david.mp4 mp4]  
+
** ''Getting started in Open Source projects, or "Learning to be at the festival"'' (on-line lecture) by David Humphrey (given at [http://www.mozilla24.com/en-US/ Mozilla24 in Stanford]): Formats - [http://videos.mozilla.org/mozilla24/1-16_david.mpg mpg], [http://videos.mozilla.org/mozilla24/1-16_david.ogg ogg], [http://videos.mozilla.org/mozilla24/1-16_david.mp4 mp4]  
 
** Two simple [http://matrix.senecac.on.ca/~chris.tyler/osd600/makefile-examples.tgz makefile examples]
 
** Two simple [http://matrix.senecac.on.ca/~chris.tyler/osd600/makefile-examples.tgz makefile examples]
 
** [[How the Build Works|How the Mozilla Build Works]] (on-line lecture) by Mozilla's J. Paul Reed  
 
** [[How the Build Works|How the Mozilla Build Works]] (on-line lecture) by Mozilla's J. Paul Reed  

Revision as of 00:08, 19 January 2008

Week 1 (Jan 8) Course introduction

  • TODO
    • Create a blog (wordpress or blogspot or whatever) and create a feed category or tag called "open source"
    • Read the Blog Guidelines for instructions on how to use your blog in the course
    • Create an account on this wiki for yourself
    • Create a personal wiki page on this wiki, and add a link for yourself to the People page. Your personal page should initially include your contact information and a link to your blog; as you progress through the course, update this page with information about your work.
    • Add your blog feed and info to the Open Source@Seneca Planet List so that it appears in the OpenSource@Seneca Planet
    • Write a blog posting containing your reaction to and reflections on "The Catederal and the Bazaar" and "Revolution OS".
    • Start lurking on irc.mozilla.org - especially the #seneca and #developers channels (Note: to access the #seneca channel, you must be registered - type "/nickserv help" in your IRC client or refer to http://freenode.net/faq.shtml#registering for more information)
    • IRC tutorial - http://www.irchelp.org/irchelp/irctutorial.html#intro

Week 2 - Managing and Building large source trees

  • Revision Control Systems (RCS)
    • Introduction to RCS
    • cvs, svn, hg
    • Common concepts and tasks
      • Repository
      • Local Working Copy
      • RCS Changes (changesets) vs. Backups
      • Typical read-only activities: Checkout, Update, Log, Status
  • Using Make to build software
    • Intro to Make
    • Mozilla has over 50,000 Makefiles
  • Building Mozilla from Source
  • TODO
    • Complete all TODO items from Week 1
    • Watch online lectures about the Mozilla build system.
    • Practice creating a simple makefile
    • Try performing a Debug Mozilla build on your home machine and blog about the experience
    • Look at the Project List and Potential Projects pages and pick 3 projects on which you'd like to work--next week, you'll narrow this to just one. List them here along with your name so other students can see and groups can form.

Week 3 - Navigating the Mozilla source tree

Week 4 - Collaborative and Community Development Practices

Week 5 – Bugs, Bugzilla, and Debugging

Week 6 – Developing the Browser

Week 7 – Extending the Browser

Break Week

Week 8 – Extending the Browser II

Week 9 – Bug Fixing

Week 10 – XPCOM - Modular Development in Mozilla

Week 11 – XPCOM II - Using XPCOM from JS/Chrome

Week 12 – Major Project Presentations

Week 13 – Presentations / Major Project Due

Previous Versions of OSD600

Fall 2007 Weekly Schedule