667
edits
Changes
no edit summary
** Watch online lectures for this week about open source community, blog your reactions.
== Week 3 and 4 (Jan 25) - Managing and Building Large Source Trees ==
* Revision Control Systems (RCS)
*** '''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 '''complete''' your [[Winter 2010 OSD600 Initial Project Plan|Initial Project Plan]] due by Friday at midnight.
== Week 5 (Feb 8) - Navigating the Mozilla source tree ==
* Learning to be Lost Productively
** Adding to Mozilla is not like writing a program from scratch
** Leverage the existing code by reading, studying, and copying existing code and styles
* Mozilla Source Code structure and style
** [https://developer.mozilla.org/En/Mozilla_Coding_Style_Guide Mozilla Coding Style Guide]
** [http://developer.mozilla.org/en/docs/Mozilla_Source_Code_Directory_Structure Mozilla directory structure]
** [https://developer.mozilla.org/En/Source_code_directories_overview Mozilla Source Code Directory Overview]
** [http://www.mozilla.org/hacking/portable-cpp.html Portability Rules for C++]
* Searching for Code
** http://mxr.mozilla.org
*** [http://mxr.mozilla.org/mozilla-central/ Firefox Source code (trunk)]
*** [http://mxr.mozilla.org/comm-central/ Thunderbird, SeaMonkey Source (trunk)]
** [http://scotland.proximity.on.ca/dxr DXR] - a Seneca/Mozilla project to add more data to MXR.
* How to Make Changes
** building with ''client.mk,'' ''clobber'' builds, ''incremental builds''
** Working with Patches
*** [http://developer.mozilla.org/en/docs/Creating_a_patch Creating a patch]
* '''Readings/Resources'''
** Reading: Chapter 11 (pages 379-397) of Diomidis Spinellis, ''Code Reading: The Open Source Perspective'', ISDN 0-201-79940-5 - [http://www.spinellis.gr/codereading/ information about the book] - [http://proquest.safaribooksonline.com/?uiCode=seneca&xmlId=0201799405 eBook version via Seneca Library and Safari]
* '''TODO'''
** Lab - [[Real World Mozilla Source Code Reading Lab|Source Code Reading Lab]]
** Lab - [[Working with Patches Lab|Working with patches]]
** Begin work on your project, based on your initial project plan.
** Review, and where appropriate, comment on blog postings by other students.