Changes

Jump to: navigation, search

DPS909 & OSD600 Winter 2019

3,064 bytes added, 14:11, 15 January 2019
no edit summary
** [https://github.com/filerjs/filer filer]
** [https://mochajs.org/ mocha]
 
== Week 2 ==
 
* [[OSD & DPS909 Winter 2019 Release 0.1|Release 0.1]] Overview
** Due Wed Jan 30th
** [https://nodejs.org/api/fs.html node fs module] vs. [https://github.com/filerjs/filer filer]
 
* Licenses
** Rights, privileges, responsibilities, etc. applicable to someone other than the work's creator
** "Terms and Conditions"
** These must be granted by a copyright holder
 
* No License
** What can you do with code you find that has no license?
** [https://choosealicense.com/no-license/ what can I, can't I do?]
 
* Public Domain
** [http://www.sqlite.org/copyright.html SQLite], which is now used by literally everybody, see http://www.sqlite.org/famous.html
** [http://unlicense.org/ Unlicense]
 
* BSD License
** Family of Licenses, including [https://opensource.org/licenses/bsd-license.php 2-Clause BSD], [https://opensource.org/licenses/BSD-3-Clause 3-Clause BSD (aka New BDS)], [https://en.wikipedia.org/wiki/BSD_licenses#4-clause_license_.28original_.22BSD_License.22.29 4-Clause BSD]
** [https://www.freebsd.org/doc/en/articles/bsdl-gpl/article.html "Why you should use a BSD style license for your Open Source Project"]
** BSD Licenses code is usually compatible with other open/closed code, when you want to mix them.
** Example software projects licensed under the BSD License:
*** Many Google Projects, including [https://developers.google.com/v8/ V8], [https://www.chromium.org/Home Chromium], [https://golang.org/ Go]
*** [https://d3js.org/ D3.js]
*** [https://www.djangoproject.com/ Django]
*** [https://www.nginx.com/ nginx]
*** [http://ex-vi.sourceforge.net/ Vi]
*** Facebook uses a modified version of the 3-Clause BSD they call [BSD + Patents license]. This has been controversial
**** [https://opensource.org/licenses/BSDplusPatent BSD + Patent]
**** [https://github.com/facebook/react/blob/master/PATENTS PATENTS in React]
**** https://code.facebook.com/posts/112130496157735/explaining-react-s-license/
** Summary:
*** You need to retain the license and copyright notice
*** You can use it commercially or non-commercially (privately)
*** You can distribute it freely
*** You can modify it freely
 
* Open Source and Code Reading
** [https://blog.safia.rocks/post/169466425525/node-module-deep-dive-fs Deep Dive on the node fs module] by [https://blog.safia.rocks/ Safia Abdalla]
** <code>fs.truncate()</code>
*** [https://github.com/nodejs/node/blob/8a86d9c1cf35fe4f892d483e3673083f5d8f42cf/lib/fs.js node.js source for truncate]
*** [https://github.com/search?q=truncate+repo%3Anodejs%2Fnode+path%3A%2Ftest+language%3AJavaScript+language%3AJavaScript&type=Code Search results in nodejs/node's test/* directory for JavaScript files including 'truncate']
*** [https://coverage.nodejs.org/coverage-3bdc61d4d194e205/root/fs.js.html#L612 Code Coverage for fs.truncate]
*** [https://github.com/filerjs/filer/blob/master/src/filesystem/implementation.js#L2353 Filer source for truncate]
*** [https://github.com/filerjs/filer/blob/master/tests/spec/fs.truncate.spec.js Filer tests for truncate]
 
* [[DPS909/OSD600 Winter 2019 Lab 1|Lab 1]]

Navigation menu