Jump to: navigation, search
updated User link
The course is broken into two parts. First, general open source and and community specific skills and ideas are taught. Students learn how to deal with the tools, techniques, and practices of the project and its community. Second, students are taught about extensibility models, and how to write Add-ons and Extensions.
Most pages related to hosted here can be found through here: [[]].
=Part I – Essential Open Source Development Skills and Concepts=
== Week 1 (Jan 12) - Course introduction Introduction ==
* Course introduction
** Create an '''account''' on this wiki for yourself
** Create a '''personal wiki page''' on this wiki
** Add a link for yourself to the [[People]] page and the [[Winter 2009 Open Source Students]] page
** Create a '''blog''' ([ WordPress] or [ Blogger] or whatever) and create a feed category or tag called "open source"
* Collaborative development using on-line tools
* [[Irc|Intro to Internet Relay Chat (IRC)]]
* [ Blogs] and [ Planets]
** [ Novell's Planet]
** [ Planet]
** [ OpenSource@Seneca Planet]
* Using Wikis wikis for collaborative writing
** [ Wikipedia] and [ MediaWiki]
** Intro to course wiki
*** "Yes, you can edit it!"
*** Common Editing editing tasks, Historyhistory, Reverting and reverting changes
*** Watches, [[Special:Recentchanges|Recent Changes]]
*** Comparing selected versions (cf. diff)
** (To be completed)
 * '''Readings/Resources (Incomplete)'''
** [ Participating in OpenOffice.Org]
** [ OpenOffice.Org Programming]
** [ SVN OOo]
** [ Source Control in Ten Minutes: a Subversion tutorial]
** [ DistCCdistcc]
* '''TODO (Incomplete)'''
** 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. <b>Reminder: Comments have to be approved for them to be be shown on your blog. Check your blog settings.</b>
** Download the [ "Sun Microsystems Inc. Contributor Agreement (SCA)"] from [ OpenOffice.Org Programming], sign it and email it to and CC it to Fardad.
** Subscribe to "dev AT education DOT openoffice DOT org" by sending an email to "dev-subscribe AT education DOT openoffice DOT org" and then confirming it by replying to the confirmation email.
** Add this wiki page to your watch list.
** Here is the [ '''IP addresses''' of the CDOT continent] for you to log in to!
** [[Distcc Setup|Setup distcc on assigned computers]]
== Week 3 (Jan 26) - Complete [[Distcc Setup|distcc Installation]], Managing and Building Large Source Trees ==
* Revision Control Systems (RCS)
** Introduction to RCS
** [ cvs], [ svn], [ hg]
** Common concepts and tasks
*** Repository
*** Local working copy
*** Typical read-only activities: ''checkout, update''
* Using ''make'' to build software
** Intro to [ ''make'']
* Building large open source projects from source
* '''Readings/Resources (to be completed)'''
** [ Version Control with Subversion (Online Book)]
** [ GNU Make]
** Two simple [ makefile examples]
**[ Cpp Coding Standards]
**[ Writer Code Conventions]
* '''TODO (to be completed)'''
** Install distcc to work with all linux boxes at CDOT
** Check out the code with latest milestone from svn:// and time it and blog about it.
** Add this Make two copies of the code and configure them; one to compile locally and other using distcc.** Start Building *** [[OOo Fedora Build]]*** [[OOo Mac Build]]*** [[OOo Windows Build]] == Week 4 (Feb 2) - Building Open Office (Continued), Issues == * Build** Complete your build and update relative build wiki pages** If completed move to next platform (at least two)* [ Issues] ** Filing or submitting [ rules]*** Only one problem per issue*** Summary (recognizable, descriptive, meaningful)*** Able to recreate (step by step instructions)*** Providing samples *** Use attachments*** Avoid links, add relevant info. instead** [ Handling] and [ "Life Cycle"]** [ "Issue Tracker"] (a modified version of [ Bugzilla])*Useful Links for Quality Assurance Testing (QAT/Reporting a Bug)** [ Priority Levels]** [ Bug Writing Guidelines]** [ Issue Life cycle ]** [ About Issues]*Tinderbox Links**[ Tinderbox]**[ About TinderBox]* '''TODO'''** Complete the build at least on two platforms** Collaborative-ly create and complete [[OOo Issues]] wiki page . A brief document from creating an issue to closing it. == Week 5 (Feb 9) - Navigating The Source Code ==* Learning to be "lost productively"** Adding to OpenOffice is not like writing a program from scratch** Leverage the existing code by reading, studying, and copying existing code* source code structure and style** [ Developers guide]** [ OOo directory structure]* Searching for code** [ {OpenGrok]* How to make changes** [ Building]** [[Installing Multiple OOo Builds]]** [ Hacking]** [ Hackers tutorials]* [[Hacking procedure on Fedora]]  * '''Resources'''** [ "Roundtrip to Shanghai via Tokyo!!!"]* '''TODO'''** Complete week 4 TODO** Run, make a change, build, and then run again == Week 6 (Feb 16) - Patches, Build, GDB ==* Guest lecturer Eric Bachard, lead of OOo [ Education Project]** Patches ** Build** [ GDB]* '''Resources'''** [[Debugging OOo]] Lectures by Eric Bachard** [ patch command]* '''TODO'''** Complete week 5 TODO** Test and experiment with patches ie. create, dry run, apply... (blog, wiki)** Use GDB and run OpenOffice in debug mode (blog, wiki) == Week 7 (Feb 23) - Selecting a Project (Issue) ==* '''[ Education project]'''** Become a member: [ Membership]** Select a project: [ Available Projects] (search for those with Seneca tag)** [ Additional projects]** Update Seneca page: [ Seneca Page On Education Project]* '''Resources'''** [[OOo Project List]]** [ OOo Directories description]** [ ChildWorkSpace(CWS)]* '''TO DO'''== Study break Week (Mar 02) - Study break==== Week 8 (Mar 09) - Working on Issues=='''Resources to help you with your watch listprojects:'''* [ The API (application programming interface) Project]* [ API Tutorials]* [ API Global Index]* [ Global Namespace in C++]* [ OpenOffice Class Diagram (.odg file)]* [ Source Code Directories]* [ '''OpenOffice Documentation and all what you need from classes(Amazing!!!)''']* [ C++ UNO tutorial] == Week 9 (Mar 16) - Presenting Issues ==* Tue: filling spots* Thu: ** Andrew Braini, [ Upgrade Python to 2.6], [ Issue 92413]** Daeseon Moon, Improve impress style, Issue Link. == Week 10 (Mar 23) - Presenting Issues ==* Tue: ** No Presentation* Thu: ** [[User:Tiago|Tiago Moreira]], Building OpenOffice on OpenSolaris** Ladan Zahir, Fix MouseWheel jump in Calc, [ Issue 81907].** Bartosz Barcicki, [ Make Impress Master Pages Copyable], [ Issue 380039]. == Week 11 (Mar 30) - Presenting Issues ==* Tue: ** Jerry Pau, [ Implement additional 3D slideshow transitions], No Issue Link.** (Fred Wang, [ Understand the Impress application (6)]) * Thu: ** IRC: #OSD600 == Week 12 (Apr 05) - Presenting Issues ==* Tue: ** On IRC #OSD600 * Thu:** On IRC #OSD600 == Week 13 (Apr 12) - Presenting Issues ==*Tue:** Daeseon Moon, Issue, Issue Link.** Andrew Braini, [ Upgrade Python to 2.6], [ Issue 92413]** Ladan Zahir, Fix MouseWheel jump in Calc, [ Issue 81907].*Thu <b>ON #OSD600</b>:** [[User:Tiago|Tiago Moreira]], Building OpenOffice on OpenSolaris** Fred Wang, [ Understand the Impress application (6)]** Bartosz Barcicki, [ Make Impress Master Pages Copyable], [ Issue 380039].** Jerry Pau, [ Implement additional 3D slideshow transitions], No Issue Link.  '''Resources to help you with your projects:'''* [ OOo Source Code Documentation (fragmentary)]* [ Pages and documentation related to Impress]* [ Nice page to find out what's what] [[]]

Navigation menu