PSU CS 410/510 OSS
Open Source Software Development
Summer 2012 (25 June—15 August)
Morning Section: MW 1030-1250 (Sec 1, 410 CRN 80477, 510 CRN 80485)
Afternoon Section: MW 1530-1750 (Sec 2, 410 CRN 80476, 510 CRN 80484)
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 by email. 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 oss2012@svcs.cs.pdx.edu (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.
Much information is available at the pages of the 2011 offering of this course.
Other offerings that are still available: 2010, 2009 2008 2007
Contact Info
- bart@cs.pdx.edu -- Bart Massey, your instructor.
- support@cat.pdx.edu -- For help with systems and software
- oss2012@svcs.cs.pdx.edu -- Course e-mail list
- irc://irc.cat.pdx.edu -- Course IRC channel
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
Entrepreneurship
- 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.
Schedule
W | Date | Topic |
---|---|---|
1 | 25 June | Introduction, Projects |
1 | 27 June | Open Source Bridge Day: no class meeting |
2 | 2 July | Project Setup |
2 | 4 July | US Independence Day: no class meeting |
3 | 9 July | Source Code Management; GIT |
3 | 11 July | Legal/Ethical |
4 | 16 July | Makefiles and Autotools |
4 | 18 July | Scripting and Tools |
5 | 23 July | Debugging |
5 | 25 July | Business and Jobs |
6 | 30 July | Work Day |
6 | 1 Aug | Work Day |
7 | 6 Aug | Project Deployment |
7 | 8 Aug | Work Day |
8 | 13 Aug | Project Presentations |
8 | 15 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)
- 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 17th 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.