Winter 2010 SBR600 Weekly Schedule

From CDOT Wiki
Revision as of 12:58, 20 January 2010 by Chris Tyler (talk | contribs) (Week 2 (September 15) - RPM Packages I)
Jump to: navigation, search

Please note:

  • The schedule here is tentative.
  • Week-by-week details will be filled in as the course progresses.

Week 1 (January 11) - Introduction

Tuesday

  • Welcome
  • Introductions
  • Intro to Build & Release
    • Brief overview of the process
      • Versioning & repository systems
      • Compilation
      • Testing
      • Packaging
      • Compositing
      • Release
      • Distribution
      • Mirroring
    • These steps vary according to the particular project/product. For example, when distributing software physically, "Release" means performing a RTM, where the final "gold disk" is sent to the duplicating house to be mass-produced; but when distributing software electronically, "Release" means sending the software to the online distribution system. The sequence of steps also varies between projects/products.
  • Course Layout
    • Project-based course
    • Working with Open Source
    • Working with the Fedora Project
  • Communication Tools
  • Course Outline
  • Visit the CDOT Area

Friday

  • Make
  • Makefile Basics
    • Targets, Dependencies, and Commands
    • Implied rules (e.g., .o files)
    • Examples
  • Building software from a source tarball using a makefile

Readings/Resources

ToDo

Communication Lab: By Friday, January 15, Set up your accounts (wiki, IRC, FAS2).

  • Create a blog post which will appear on the OpenSource@Seneca Planet, containing:
    • A portion of an IRC conversation you've had with someone on a Fedora or Seneca IRC channel.
    • A link to your User page on the Seneca wikis
    • A link to your User page on the Fedora wiki
    • Note: don't just dump this stuff in a blog post, add some introductory text as well!
  • Add an entry to the Winter 2010 SBR600 Participants page

Lab 1: By Tuesday, January 19:

  • Build 2 packages from Source
    • The NLED editor from http://cdot.senecac.on.ca
    • Any package that uses a configure script -- SourceForge might be a good place to look for such packages.
  • Blog about the experience.

Week 2 (September 15) - RPM Packages I

Wednesday

  • Discussion of issues related to building
    • Finding dependencies.
    • -jX flag to enable multiple jobs

RPM Packages

  • Purpose
  • What's in an RPM package file
    • Metadata
      • What the package provides
      • Dependencies
      • Packager, date, license, summary, description, ...
    • Digital signature
    • Software
    • Data
      • Fonts
      • Icons
      • Sample data
    • Documentation
    • Configuration files
    • Setup scripts
      • Pre-install
      • Post-install
      • Pre-uninstall
      • Post-uninstall
      • Triggers

The RPM Database

  • Purpose of the database
  • Querying the RPM database
    • rpm -q


ToDo

  • Finish tasks from week 1 if not already completed.
    • Remember, marking in this course is done on the basis of blog posts which appear on the planet.
    • You should have two blog posts on the planet by now: One with a link to your Seneca and Fedora user pages plus a snippet of IRC conversation, and one with a reflection on your experience compiling software from source code.
  • Find out what -j value results in the fastest build time for the software you have chosen. Blog about your results.
  • Listen to the audio recording of last semester's conference call with Jesse Keating, Fedora Release Engineer


Week 2 (January 18) - Overview of the Build and Release Processs

Week 3 (January 25) - Creating RPM Packages I

Week 4 (February 1) - Creating RPM Packages II

Week 5 (February 8) - Repositories/Distributing

Week 6 (February 15) - Compositing

Week 7 (February 22) - Server Farms I

Study Week (March 1)

Week 8 (March 8) - Server Farms II

Week 9 (March 15) - Distributed Processing

Week 10 (March 22) - Virtualization

Week 11 (March 29) - Monitoring & Management

Week 12 (April 5) - Presentations

Week 13 (April 12) - Wrap-Up

Exam Week (April 19)