Open Source Computing

Week 4, Sept 16

Dividing into teams

echo "hello and welcome to Open Source" | shasum -a 512 python3

import numpy as np
from randomgen import ChaCha
rg=np.random.Generator(ChaCha(seed=0x1234567, rounds=20))    # use the seed from above
# now rg.integers(A,B) chooses a good integer random value between A and B-1, inclusive
# So to pick someone from among rows A to B on the spreadsheet, we use r.integers(A,B+1)

The ChaCha cipher (here used as a random-number generator) was developed by Daniel Bernstein. See cr.yp.to/chacha/chacha-20080128.pdf.

Each team should select a reporter who will email me every week (generally on Fridays) to let me know your team's progress. You don't have to make progress, but you do have to report. At the moment, your main issue is selecting a project.

Licensing

Monday: AGPL and the anti-Amazon movement

Wednesday: Dual licensing, clang, github copilot


Demo of git?

Mininet: github.com/mininet/mininet

Sphinx: github.com/sphinx-doc/sphinx.git.

Open Source as a business

Linux history

What made Linux such a successful open-source project? Why did Linux beat BSD?
The email from Linus Torvalds to Mauro Carvalho illustrates two things:
  1. Torvalds' somewhat abusive style
  2. Torvalds' firm no-regression policy: user code that used to work should never be broken by a kernel update.

How do these factors play out in the success of Linux?

A third factor is Torvalds' policy on contributions: all are welcome, but they start out as non-mainline extensions, patches or modules.

386BSD

LibreOffice, bash