# 2021q1 Homework1 (culture)
contributed by < `ccs100203` >
###### tags: `linux2021`
> [J03: culture](https://hackmd.io/@sysprog/linux2021-culture)
- [UNIX: Making Computers Easier To Use -- AT&T Archives film from 1982, Bell Laboratories](https://www.youtube.com/watch?v=XvDZLjaCJuw)
- [Revolution OS (作業系統革命)](https://www.youtube.com/watch?v=vWwvh3036Fw)
## 心得
- 這段我非常喜歡,闡述了 Bruce Perens 當初推動開放原始碼的初衷,在後面遇到許多社會壓力時,還是能維持其本心。
> Open-source is a way for people to collaborate on software without being encumbered by all of problems of intellectual property having to negotiate contracts every time you buy a piece of software has a lot of lawyers involved. In general, we just want to get the software to work and we want to be able to have people contribute fixes to that, etc.
- 關於 Richard Stallman
- 在影片中給我的感覺是他非常的有自信、有自己的想法、且固執,勇於追逐自己的理念。
- 他著重在參加社群的自由以及分享與合作開發,而自由軟體的 "自由" 應該是 "能修改的自由"。
- 他提到 GNU 當時是有自己在研發 Kernel,但不是使用 monolithic 的架構,導致其有很多潛在的 bugs,且難以被偵測及排除。可以看出開發一套系統的難度,現在的我肯定還做不到。
- 不過我覺得他對於世人將目光全放在 Linus Torvalds 上好像有些不滿,談話中強調了 GNU 開發了很多在 Linux 上運行的軟體,要有這些優秀的軟體才能使 Linux 成為優勢的平台。也提到 Linux 剛好是當時 GNU 所推行的系統中缺少的 Kernel,才這麼剛好的用他,也重複強調應該命名為 GNU/Linux。
Linus Torvalds 在訪談中就提到,他並不在乎究竟叫作 GNU/Linux 還是 Red Hat/Linux 等等的,誰推出的就可以叫做誰的名字,直接叫做 GNU/Linux 就太多了點。其實他也有說就是因為有像是 GNU C Compiler 這些優勢的軟體,Linux 才得以發揚光大。而他也提到,開發 Linux 所帶來數十億美金的利益,不是自己得到也沒關係,就算他沒有開發出 Linux,一樣也得不到什麼錢。我想這就是他們兩人的態度決定了彼此的高度嗎。(可能是我想太多)
> If I hadn't made Linux available. I mean I wouldn't have gotten any money that way on either side. It's a win-win situation. I'm just the fact that there are a lot of commercial companies means that there are a lot of Linux people who used to work on Linux kind of on the side and now they get paid for doing what they wanted to do that helps me. In the sense that I wanted them to work on Linux anyway.
- 我覺得關於 Larry Augustin 去找風險投資公司的橋段很有趣,該公司一直從不願意採信他的說法,一直到後來 Linus 登上 Forbes 而聲名大噪時,他們才願意相信開源系統真的能夠賺錢,進而投資。
## 問題清單
### free software (自由軟體) 和 open source (開放原始碼) 兩者的理念有何落差?請以創始人的訴求來解讀,儘量引用第一手材料
> Bruce Perens 說他認為他與 Richard Stallman 唯一的差別在於:Richard Stallman 認為所有的軟體都必須是自由公開的;而 Bruce Perens 則認為自由軟體與非自由軟體可以同時存在。
- 我認為 free software 更趨近為一種思想,人們可以自由的使用軟體,就如同言論自由,自由的複製、轉傳、修改。
- 而 open source 與 free software 並沒有太多差異,卻更為實務。同樣強調著程式碼的開源,也有著 license 的保護,但是卻不會限制 open source 與其他 non-open source 軟體的合作,並不強求所有程式都要屬於 open source。
- 儘管 OSI 認為 open source 與 free software 沒有定義上的差異,只是不同的敘述方式。但 FSF 抱持著 open source 與 free software 並不相同的想法。認為其定義較為寬鬆,也舉出符合 OSI 定義卻不符合 FSF 定義的專案。
> The FSF uses a shorter, four-point definition of software freedom when evaluating licenses, while the OSI uses a longer, ten-point definition. The two definitions lead to the same result in practice, but use superficially different language to get there.
> In practice, open source stands for criteria a little looser than those of free software. As far as we know, all existing released free software source code would qualify as open source. Nearly all open source software is free software, but there are exceptions. First, some open source licenses are too restrictive, so they do not qualify as free licenses. For example, “Open Watcom” is nonfree because its license does not allow making a modified version and using it privately. Fortunately, few programs use such licenses.
:::info
- 參考 [The Open Source Definition](https://opensource.org/docs/osd)
- 參考 [Frequently Answered Questions](https://opensource.org/faq)
- 參考 [What is free software?](https://www.gnu.org/philosophy/free-sw.html)
- 參考 [Why Open Source misses the point of Free Software](https://www.gnu.org/philosophy/open-source-misses-the-point.html)
:::
### 從最初的 Cygnus Solutions (史上首間透過 free software 實現盈利的公司), Red Hat (收購 Cygnus Solutions), 到 IBM (收購 Red Hat 並將其既有業務作為主軸),請解釋公司如何透過 free software 及 open source 來獲利?請列出相關的論文和報告
### 在 21 世紀初期,Microsoft 一度負面評價 GPL 與 Linux,但為何一旦該公司主推雲端業務後,即宣布擁抱 GNU/Linux 呢?請討論該公司的態度轉變,以及 Microsoft 如何利用 Linux 提高獲利?
### Compatible Time-Sharing System (簡稱 CTSS) 是史上第一套分時多工作業系統,請簡述其發展背景和關鍵特徵,又有哪些 CTSS 的特徵被 UNIX 或更晚出現的 Linux 所繼承?
### Richard Stallman 建立 GNU 的訴求是 “GNU’s Not Unix”,儘管 Stallman 博士對於 AT&T 收取 UNIX 高額授權金感到不悅,但為何他採用 UNIX 作為 GNU/FSF 發展的藍圖呢?UNIX 有哪些特徵和文化,很直得延續呢?
### 在 Linux 問世前,BSD 早已席捲作業系統的生態,但為何在 1990 年代後期,Linux 無論是聲勢和開發活躍度都超越 BSD 家族呢?請舉出量化數據和相關研究報告說明
### 儘管 Richard Stallman 成立 Free Software Foundation (FSF) 的初衷是打造 GNU 作業系統,但為何他從 gcc 編譯器著手?為了落實他心目中的 free software 生態,這樣的策略有何考量?
### FSF 所提倡的 “Copyleft” 概念,和 “Copyright” 是否衝突?在實務上如何達成?free software 和 open source 的授權條款是否符合著作權精神呢?
### GNU Hurd 採用 CMU Mach 微核心作為基礎設計,該途徑與 Linux 核心大相徑庭,請說明這兩種核心設計手法的優劣
### 1991 年 Linux 核心推出 v0.01,原始程式碼約 1 萬行,到 1995 年的 v1.2 則有 25 萬行,並獲得 50 萬名使用者採納,在 1999 年的 v2.2 則有超過一千萬名使用者,往後的日子,Linux 更是如火如荼,請解釋何以 Linux 能吸引到開發者目光?又,Linux 獲得商業公司採納的考量是什麼?
### Brian Behlendorf 歸納網際網路是 Apache 與 Linux 得以快速成長的重要因素,請說明自 1990 年代中期,Apache 和 Linux 一類的自由軟體/開放原始碼基礎建設,對整個資訊科技產業帶來什麼衝擊?
### 20 世紀最龐大的開放原始碼專案是 Mozilla,儘管後者無法挽救 Netscape 公司的命運,但卻使後續的 Mozilla Foundation/Corporation 有穩健的基礎來發展 Firefox 網頁瀏覽器和相關的軟體。請從網頁瀏覽器的發展,討論自 1998 年以來,活躍和一度活躍發展的開放原始碼網頁瀏覽器實作,以及這些實作對於 W3C 一類的標準制定有何影響?
### GCC 的發展過程中,一度出現以 Cygnus Solutions 為首的開發者建立 EGCS project 分支,挑戰 FSF 的開發策略,但最終 EGCS 成為 GCC 發展主流方向,請說明時代背景,並援引〈教堂與市集〉的模型來解釋