Open Source Computing

Monday, Sept 14

Plans for teams

We will use Daniel Bernstein's ChaCha cipher as a random-number generator. See https://cr.yp.to/chacha/chacha-20080120.pdf.

ChaCha achieves cryptographic mixing through additions, xors and shifts. No multiplications or divisions are used, which makes it fast.

Within the crypto community, Bernstein has an impeccable reputation.

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

python3
import numpy as np
from randomgen import ChaCha
seed=0x1234567                # replace this with the shasum512 number
rg=np.random.Generator(ChaCha(seed, rounds=20))    # use the seed from above
# now int(rg.integers(A,B)) chooses a good random value between A and B-1, inclusive


Finish with licenses.

Bradley Kuhn on the AGPL combined with dual-licensing: the latter is supposed to be "selling an exception" but it usually evolves into selling that exception to everyone, even if they don't need it. And this is particularly an issue with the AGPL because nobody really understands the AGPL anyway.

George Hosu, on the other hand, is all in favor of dual licensing.

Wednesday

Git

Calculator

Open Source as a business

    "Open Core"

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