PSU CS 410/510 OSS
Open Source Software Development
Summer 2010 (22 June—12 August)
Morning Section: MW 1030-1250 (Sec 1, 410 CRN 80407, 510 CRN 80410)
Evening Section: MW 1900-2140 (Sec 2, 410 CRN 80406, 510 CRN 80411)
Lab: FAB 88-09 (CS Linux Lab)
Welcome. This Wiki is dedicated to our project course in open source software development for the UNIX environment.
If you are a student, please begin by registering on this Wiki, using the passcode given to you in class. A Wiki is a collaborative web site: once you're registered, you can (and should) help maintain these pages, and use the site as a work area.
The course email list (for registered users only) is at mailto:ossclass@svcs.cs.pdx.edu (instructions on how to sign up are at the bottom of this page). On the rare occasion that someone is hanging on IRC, they'll be at irc://irc.cat.pdx.edu:6667/oss.
Much information is available at the pages of the 2009 offering of this course.
Contact Info
- bart@cs.pdx.edu -- Bart Massey, your instructor.
- support@cat.pdx.edu -- For help with systems and software
- ossclass@svcs.cs.pdx.edu -- Course e-mail list (sign up)
- irc://irc.cat.pdx.edu -- Course IRC channel
News
- bart, 21 Jun 2010: wiki up
User and Project Pages
Once we are up and running, every developer/team should put a link in the course projects area. The pages of individual users also often have links to project pages. There's a list of things that should be on the project page. You will need to pick a day and time for your final presentation.
Web Resources
- http://oss.cs.pdx.edu -- PSU OSS projects.
- http://www.cat.pdx.edu -- The PSU Computer Action Team.
- /. article -- OSS HOWTO (is this the original source?)
- On Naming an Open Source Project
- Etymology of an Open Source App/Project
- Ikiwiki Formatting -- Basic formatting for this Wiki engine.
- Git User's Manual -- Git Manual
- Official Git Tutorial -- Official Git Tutorial
- GIT troubleshooting guide- helps resolve ssh issues
- apply-license -- Bart's shell script for inserting license info into source code files. Thanks Bart!
- Open Source Licensing: Software Freedom and Intellectual Property Law by Lawrence Rosen
- The Case Against Patents
- Bounty Hunters A fun metaphorical look at the evolution of patents
- Gitosis for git hosting A great way to host your own remote git repo
- A Little bit of OSS humor
- Really good hints for Vim from Bram
Free Project Hosting
- GitHub - Git-based
- BitBucket - Mercurial-based
- Launchpad - Bazaar-based
- SourceForge - Subversion, Git, Mercurial, Bazaar, or CVS-based depending on configuration
- Google Code - Subversion or Mercurial-based depending on configuration
Schedule
W | Date | Topic |
---|---|---|
1 | 22 June | Introduction |
1 | 24 June | Projects |
2 | 29 June | Source Code Management; GIT |
2 | 1 July | Legal/Ethical |
3 | 6 July | Makefiles and Autotools |
3 | 8 July | Scripting and Tools |
4 | 13 July | Business and Jobs |
4 | 15 July | Debugging |
5 | 20 July | Work Day |
5 | 22 July | OSCON Day |
6 | 27 July | Work Day |
6 | 29 July | Legal Discussion with IP Attorney, David Madden of Mersenne Law |
7 | 3 Aug | Project Deployment |
7 | 5 Aug | Work Day |
8 | 10 Aug | Project Presentations |
8 | 12 Aug | Project Presentations |
To be added:
Open Source Community Building
There is also an e-mail discussion list associated with this website that you may be interested in.
Final project requirements
(see also here)
- project home page
- name + project name
- descrption (1-2 paragraphs)
- user/dev docs (have someone review them)
- source:
- SCMS repo link
- option: tarball (autobuild? Only use if the SCMS is weird)
- option: binaries (autobuild? platform-specific?)
- "stable" commits or tarballs
- Build instructions:
- checkout/download
- prereqs
- build instructions
- install instructions
- Contact: email/list/bug tracker
- License
Final project due: Friday, August 13th at 5:00 PM
A note on plagiarism: You are expected to follow the PSU student conduct code. Plagiarism is using other people's intellectual work (code, writing, ideas) without proper attribution. Open source is all about sharing code and ideas, but if you take them without saying where you got them you are a plagiarist; if I catch you I will do what I legally and ethically can to end your academic career.