Difference between revisions of "DPS909 and OSD600 Fall 2008 Weekly Schedule"

From CDOT Wiki
Jump to: navigation, search
(added week 6)
Line 164: Line 164:
  
  
== Week 6 (Oct 6) – Bug Fixing ==
+
== Week 6 (Oct 13) – Bug Fixing ==
  
 
* Finding a bug, filing, fixing, patching
 
* Finding a bug, filing, fixing, patching
Line 185: Line 185:
 
** Complete and add '''2 new contributions''' to your personal list of contributions.
 
** Complete and add '''2 new contributions''' to your personal list of contributions.
 
** Complete this week's [[Thunderbird Bug Fix Lab|lab]] (hopefully during class time).  Make sure you complete the '''Wiki''' and '''Blog''' requirements in the lab.
 
** Complete this week's [[Thunderbird Bug Fix Lab|lab]] (hopefully during class time).  Make sure you complete the '''Wiki''' and '''Blog''' requirements in the lab.
 +
 +
 +
== Week 7 (Oct 27) – Modifying the Browser -- In Tree ==
 +
 +
* Lab - [[Modifying the Browser Lab]]
 +
 +
* '''Readings/Resources'''
 +
* TBA
 +
 +
* '''TODO'''
 +
** Complete the [[Modifying the Browser Lab|lab]] and '''post a patch''' to your personal wiki page.
 +
** Start looking for opportunities to help other projects as part of your contrib mark.  Each student should have a list of ways you can get involved on their project wiki page.
 +
 +
 +
== Week 8 (Nov 3) – Modifying the Browser -- Extensions ==
 +
 +
* [http://developer.mozilla.org/en/docs/Extensions Firefox Extensions]
 +
** [http://developer.mozilla.org/en/docs/Setting_up_extension_development_environment Setting-up your development environment]
 +
** [http://developer.mozilla.org/en/docs/Building_an_Extension 'Hello World!' Extension Tutorial]
 +
* Lab - [[Dive into Mozilla Modifying Firefox using an Extension Lab|Modifying the Browser Part II - writing an extension]]
 +
 +
* '''Readings/Resources'''
 +
** MozDev documentation on Extensions: http://developer.mozilla.org/en/docs/Extensions
 +
** Personal HOWTO for creating an extension: http://roachfiend.com/archives/2004/12/08/how-to-create-firefox-extensions/
 +
** [http://sparc.senecacollege.ca/pub/mozilla.lecture/mozilla-20073/2-Mozilla-Firefox-extensions.avi Building Firefox Extensions] (on-line lecture) by Mozilla's Mark Finkle
 +
** Video: [http://www.vimeo.com/395422 Best practices & design patterns for add-ons] by Mike Beltzner
 +
 +
 +
* '''TODO'''
 +
** Complete the [[Dive into Mozilla Modifying Firefox using an Extension Lab|lab]] and '''post the .xpi''' to your personal wiki page.
 +
** Be working on your 0.2 release and write a '''blog post''' to update everyone on what you're planning, what you've done since 0.1, etc.

Revision as of 12:49, 3 November 2008

Introduction

The fall is broken into two parts. First, general open source and and community (i.e., Mozilla, OpenOffice.org) specific skills and ideas are taught. Students learn how to deal with the tools, techniques, and practices of their chosen project and its community. Second, students are taught about extensibility models, and how to write Add-ons and Extensions.

Part I – Essential Open Source Development Skills and Concepts

Week 1 (Sept 1) Course introduction

  • TODO
    • 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
    • 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
    • Add your blog feed and info to the Open Source@Seneca Planet List so that it appears in the OpenSource@Seneca Planet
    • Blog on your reactions to the readings for this week.
    • Begin learning how to use IRC for communication. We'll cover this in detail next week, but it's better to get started early.


Week 2 (Sept 8) - Collaborative and Community Development Practices

  • Guests
    • On Thursday September 11th during class, we'll be joined by OpenOffice.org's Community Manger, Louis Suarez-Potts . Louis will talk about open source community, the OpenOffice.org project, and answer your questions. Postponed
    • Also on Thursday September 11th from 5:00 - 6:00, the Fedora project leader, Paul Frields, will be hosting an IRC discussion on freenode:#seneca for the LUX students. You are encouraged to join and listen to Paul discuss the Fedora project, Linux, and how their community works. You can also see a video of Paul talking about Fedora here.
  • TODO
    • Ensure all TODO items from week 1 are completed
    • Comment in at least one other student's blog with your feedback to what they wrote. Reminder: Comments have to be approved for them to be be shown on your blog. Check your blog settings.
    • Watch online lectures for this week about open source community
    • Complete this week's lab by Friday.
    • Look at the Potential Projects page 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.
    • Add your wiki page to the class list for your section: Students in DPS909 Fall 2008 or Students in OSD600 Fall 2008


Week 3 (Sept 15) - 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
  • Building Large Open Source Projects from Source
  • TODO
    • Watch online lectures about the Mozilla build system.
    • Attend part/all of the Mozilla Developer Day (T1014, S1209) and blog about your experience, what you learned, who you met, etc.
    • Create a simple makefile
    • Do the lab on your home machine and blog about the experience. Note: Do not put build output in your blog. You can use your wiki pages for that. The blog should be commentary on the experience of building a large piece of open source software.
    • Pick your project and start working on it. Create a proper project page for your project in the Project List. See instructions here.
  • NOTE
    • Tuesday's class will be special, since the Mozilla Developer Day will be happening downstairs in T1014, and S1209. You are all invited to attend any/all of the Monday/Tuesday sessions. There will be no formal class/lab, as we will be attending the event.


Week 4 (Sept 22) - Navigating the Mozilla source tree

  • TODO
    • Lab - Source Code Reading Lab
    • Lab - Working with patches
    • State your 0.1 release target on your project's wiki page (explain what you will have completed by the time you reach 0.1 release). Discuss this with your professor.
    • Review, and where appropriate, comment on blog postings by other students.


Week 5 (Sept 29) – Bugs, Bugzilla, and Debugging

  • TODO
    • Create a bugzilla account
    • Find 3+ bugs related to your project, and add them to your project wiki page
    • CC yourself on two bugs that relate to your project
    • Watch a user in bugzilla for the week and blog about the experience (e.g., ted, mfinkle, bsmedberg, or someone else related to your project)
    • Be working on your 0.1 release. Ask for help if you're stuck
    • Register for FSOSS or join as a volunteer.
    • Come up with some ways for others to contribute to your project and add them to your project wiki page. Remember, you're asking for help, so be clear about what you need done, and make it easy so that people will pick you vs. another project.


Week 6 (Oct 13) – Bug Fixing

  • TODO
    • Be working on your 0.1 release, updating your blog, your wiki page, etc.
    • Register for FSOSS or join as a volunteer.
    • Complete and add 2 new contributions to your personal list of contributions.
    • Complete this week's lab (hopefully during class time). Make sure you complete the Wiki and Blog requirements in the lab.


Week 7 (Oct 27) – Modifying the Browser -- In Tree

  • Readings/Resources
  • TBA
  • TODO
    • Complete the lab and post a patch to your personal wiki page.
    • Start looking for opportunities to help other projects as part of your contrib mark. Each student should have a list of ways you can get involved on their project wiki page.


Week 8 (Nov 3) – Modifying the Browser -- Extensions


  • TODO
    • Complete the lab and post the .xpi to your personal wiki page.
    • Be working on your 0.2 release and write a blog post to update everyone on what you're planning, what you've done since 0.1, etc.