PSU CS 410/510 OSS
Open Source Software Development
Summer 2011 (21 June—11 August)
Morning Section: UH 1030-1250 (Sec 1, 410 CRN 80471, 510 CRN 80476)
Afternoon Section: UH 1530-1750 (Sec 2, 410 CRN 80470, 510 CRN 80477)
Evening Section: UH 1930-2150 (Sec 6, 410 CRN 82951, 510 CRN 82952)
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 by clicking the Edit button at the top of this page. Use 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 firstname.lastname@example.org (to sign up, click here). On the rare occasion that someone is hanging on IRC, they'll be at irc://irc.cat.pdx.edu:6667/osdl.
There is also an e-mail discussion list associated with this website that you may be interested in.
Much information is available at the pages of the 2010 offering of this course.
- email@example.com -- Bart Massey, your instructor.
- firstname.lastname@example.org -- Martin Cenek, your TA.
- email@example.com -- For help with systems and software
- firstname.lastname@example.org -- Course e-mail list (sign up)
- irc://irc.cat.pdx.edu -- Course IRC channel
- bart, 21 Jun 2011: 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.
- 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
- SCORE - Service Corps of Retired Executives: Great for general small-business advice, free.
- OTBC - Oregon Technology Business Center: Business startup incubator, great resources, cheap.
- PSBA - Portland State Business Accelerator: Don't know too much about their current status.
- Startup Weekend: Good way to get started in a friendly environment.
- Calagator: Go network.
|1||21 June||Introduction, Projects|
|1||23 June||Open Source Bridge Day|
|2||28 June||Project Setup|
|2||30 June||Source Code Management; GIT|
|3||7 July||Makefiles and Autotools|
|4||12 July||Scripting and Tools|
|5||19 July||Business and Jobs|
|5||21 July||Legal Discussion with IP Attorney TBA|
|6||26 July||Work Day|
|6||28 July||OSCON Day|
|7||2 Aug||Project Deployment|
|7||4 Aug||Work Day|
|8||9 Aug||Project Presentations|
|8||11 Aug||Project Presentations|
Final project requirements
(see also here)
- project home page
- name + project name
- description (1-2 paragraphs)
- user/dev docs (have someone review them)
- SCMS repo link
- option: tarball (autobuild? Only use if the SCMS is weird)
- option: binaries (autobuild? platform-specific?)
- "stable" commits or tarballs
- Build instructions:
- build instructions
- install instructions
- Contact: email/list/bug tracker
Final project due: Friday, August 12th 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 be unimaginably unhappy.