DPS909 and OSD600 Fall 2014 Notes
Week 1
- Course introduction
- Question: What is Open Source? Why work on Open Source as a student?
- Success in this course requires:
- Willingness to be lost and not panic
- Curiosity
- Being driven, persistence
- Willingness to ask for help
- Willingness to give others help
- Independent learning
- Doing more, much more, than the bare minimum
- What are Seneca and Seneca students capable of accomplishing? Some examples
- Intro to open source
- TODO
- Create an account on this wiki for yourself (note: requires manual creation)
- Add your info to the Fall 2014 Open Source Students page.
- Create a blog (wordpress or blogspot or whatever) and create a feed category or tag called "open source"
- Read the Blog Guidelines for instructions on how to use your blog in the course
- Add your blog feed and info to the Open Source@Seneca Planet List so that it appears in the OpenSource@Seneca Planet
- Pick one Closed and one Open license/EULA, and read them from start to finish. Pick 3 things that struck you, blog about it and your reactions to the readings this week.
- Begin learning how to use IRC for communication. We'll cover this in detail next week, but it's better to get started early.
Week 2
- Open/Closed Licenses
- Discussion of findings in license readings from week 1
- Case Study: Markdown and open licensing, open standards, forking, blogging, and Twitter
- Markdown 1.0.1 (2004)
- Markdown's license
- Markdown is used everywhere, by everyone
- Example: Markdown for documentation - https://github.com/antirez/redis-doc/pull/417
- calling out a maintainer (2009)
- call for standardization of Markdown (2012)
- failed attempt to standardize (2012)
- podcast of Gruber discussing Markdown
- a second attempt, Standard Markdown (2014)
- Standard Markdown rejected
- the difficulty with standardizing
- naming fallout
- a third attempt, Common Markdown (2014)
- ...and finally http://commonmark.org
- Winer's open email to Gruber, with parallels to RSS/Atom
- Discussion of Class Projects: enabling browser based cloud sharing
- Filer - https://github.com/js-platform/filer
- MakeDrive - https://github.com/mozilla/makedrive
- Brackets - http://brackets.io/
- Nimble - https://github.com/mozilla/nimble.webmaker.org
- Appmaker - https://github.com/mozilla-appmaker/appmaker
- Mobile Appmaker - https://github.com/mozillafordevelopment/mobile-appmaker/
- Release 0.1
- Option 1 (for those new to open source):
- Implement du in Filer
- You will learn git, github, JavaScript, node.js, npm, Filer, code review
- You must fix the bug yourself and have it reviewed by another student *and* review another student's implementation (i.e., do a pull request against another student's fork, and vice versa)
- Option 2 (for those with more experience):
- Find and fix a bug in one of the projects listed above which is of an equal size to Option 1
- Releases 0.2, 0.3, and 0.4 will be like Option 2 for everyone
- Option 1 (for those new to open source):
- TODO
- Sign-up for a case study and begin researching and immersing yourself - 2014 Open Source Project Case Study
- Reading for Wednesday's class: The Cathedral and the Bazaar. Please be prepared to discuss next class.
- Figure out which option you will do for Release 0.1 and begin working on it.
- Sign-up for an Open Source Case Study
- Write an introductory blog post about the case study project you chose, and the project that you will be researching.