Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Open Source Software
Search
Jeremy Yen
October 01, 2013
Technology
0
77
Open Source Software
A brief introduction of open source software
Jeremy Yen
October 01, 2013
Tweet
Share
More Decks by Jeremy Yen
See All by Jeremy Yen
dEXonation
jeremy5189
0
120
A day of full stack developer @ NFU
jeremy5189
0
220
Club Mate and Hacker - 34C3 @ SITCON
jeremy5189
2
720
SITCON 2017 論壇系統開發分享 @ SITCON 2017 Summer
jeremy5189
0
230
poManeuver: Poland into space
jeremy5189
0
460
How we hacked a forum
jeremy5189
0
510
Bdecisive - Booking.com Taipei Hack 2nd Prize
jeremy5189
0
580
Social Intelligence Smart-device project
jeremy5189
0
65
IoT made easy @ SITCON x HK
jeremy5189
0
110
Other Decks in Technology
See All in Technology
ZOZOにおけるAI活用の現在 ~開発組織全体での取り組みと試行錯誤~
zozotech
PRO
5
4.9k
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
180
データ民主化のための LLM 活用状況と課題紹介(IVRy の場合)
wxyzzz
2
680
Digitization部 紹介資料
sansan33
PRO
1
6.8k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.3k
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
450
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
0
110
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
440
GitLab Duo Agent Platform × AGENTS.md で実現するSpec-Driven Development / GitLab Duo Agent Platform × AGENTS.md
n11sh1
0
120
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.2k
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
97
Building an army of robots
kneath
306
46k
Navigating Team Friction
lara
192
16k
Everyday Curiosity
cassininazir
0
130
Design in an AI World
tapps
0
140
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Optimizing for Happiness
mojombo
379
71k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Docker and Python
trallard
47
3.7k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
110
Transcript
Open Source Software A Brief Introduction NTUST Jermey Yen
What is Linux 2
What is Linux • 1991 年 10 月 5 ⽇日⾸首次發⾏行
2
What is Linux • 1991 年 10 月 5 ⽇日⾸首次發⾏行
• ⾃自由和開放原始碼的類 UNIX 操作系統 2
What is Linux • 1991 年 10 月 5 ⽇日⾸首次發⾏行
• ⾃自由和開放原始碼的類 UNIX 操作系統 • ⼈人類電腦史上最⼤大的協作專案 2
What is Linux • 1991 年 10 月 5 ⽇日⾸首次發⾏行
• ⾃自由和開放原始碼的類 UNIX 操作系統 • ⼈人類電腦史上最⼤大的協作專案 • 以 GPL 條款釋出 2
What is Ubuntu 3
What is Ubuntu • 基於 Linux 架構的開源作業系統 3
What is Ubuntu • 基於 Linux 架構的開源作業系統 • 「Ubuntu」⼀一詞來⾃自⾮非洲南部祖魯語和 科薩語,意指「⼈人性」、「仁愛」
3
What is Ubuntu • 基於 Linux 架構的開源作業系統 • 「Ubuntu」⼀一詞來⾃自⾮非洲南部祖魯語和 科薩語,意指「⼈人性」、「仁愛」
• 發⾳音⽅方法:烏邦兔 3
What is Ubuntu • 基於 Linux 架構的開源作業系統 • 「Ubuntu」⼀一詞來⾃自⾮非洲南部祖魯語和 科薩語,意指「⼈人性」、「仁愛」
• 發⾳音⽅方法:烏邦兔 • 以 GPL 條款釋出 3
Linux 散發套件 (Distribution) 4
Linux 散發套件 (Distribution) 4
Linux 散發套件 (Distribution) 4
Ubuntu 的特⾊色 5
Ubuntu 的特⾊色 • User Friendly 5
Ubuntu 的特⾊色 • User Friendly • 精美的 GNOME 3 圖形界⾯面
5
Ubuntu 的特⾊色 • User Friendly • 精美的 GNOME 3 圖形界⾯面
• 圖形化的設定⽅方式 5
Ubuntu 的特⾊色 • User Friendly • 精美的 GNOME 3 圖形界⾯面
• 圖形化的設定⽅方式 • Ubuntu 軟體中⼼心 5
Ubuntu 的特⾊色 • User Friendly • 精美的 GNOME 3 圖形界⾯面
• 圖形化的設定⽅方式 • Ubuntu 軟體中⼼心 • 多國語⾔言⽀支援(包括命令列) 5
Ubuntu 的特⾊色 • User Friendly • 精美的 GNOME 3 圖形界⾯面
• 圖形化的設定⽅方式 • Ubuntu 軟體中⼼心 • 多國語⾔言⽀支援(包括命令列) • 龐⼤大的社群⽀支援 5
影⽚片欣賞 How Linux is Built 6
認識開源軟體 7
認識開源軟體 開源軟體 商業軟體 共享軟體 免費 V V 開放原始碼 V O
任何⼈人皆可修改、 重製,再發⾏行 V O 授權 公有領域 私有領域 私有領域 開發⼈人員 社群 不⼀一定 不⼀一定 法律條款 GPL等 智財法 智財法 7
為何開源? Why Open Source ? 8
企業利益 9
⼤大企業利⽤用「專利」與「智慧財產權」維護⾃自⾝身利 益,限制使⽤用者⾃自由,形同從前的專制政府 企業利益 9
基本權利 10
開源軟體尊重⽤用⼾戶的基本⾃自由與權利:運⾏行這個軟 體,學習和修改它,以及在改進後,重新發布它的 原版或修改版。 基本權利 10
訊息專制 11
當你氣憤指責「媒體壟斷」「限制⾔言論⾃自由」時, 有沒有發現你使⽤用電腦的⾃自由也正在被侵害呢? 訊息專制 11
信任 12
信任 看⾒見原始碼的軟體才是資訊安全的保證,任何⼤大廠 與政府都無法達到開源的信任層級 12
棄權即是安全 13
棄權即是安全 你的 「棄權」, 就是別⼈人的 「安全」 13
14
• MSN 中無法點擊「ThePirateBay」連結 14
• MSN 中無法點擊「ThePirateBay」連結 • 微軟要求硬體廠商 (如果想得到 windows 8 認證標章) 禁⽌止⽤用⼾戶拿⾃自製的光碟、
隨 ⾝身碟開機。 14
• MSN 中無法點擊「ThePirateBay」連結 • 微軟要求硬體廠商 (如果想得到 windows 8 認證標章) 禁⽌止⽤用⼾戶拿⾃自製的光碟、
隨 ⾝身碟開機。 • Office 2003 版本之後,所儲存的⽂文件檔 皆經過特殊加密(只有Office能讀寫) 14
• MSN 中無法點擊「ThePirateBay」連結 • 微軟要求硬體廠商 (如果想得到 windows 8 認證標章) 禁⽌止⽤用⼾戶拿⾃自製的光碟、
隨 ⾝身碟開機。 • Office 2003 版本之後,所儲存的⽂文件檔 皆經過特殊加密(只有Office能讀寫) 14
• MSN 中無法點擊「ThePirateBay」連結 • 微軟要求硬體廠商 (如果想得到 windows 8 認證標章) 禁⽌止⽤用⼾戶拿⾃自製的光碟、
隨 ⾝身碟開機。 • Office 2003 版本之後,所儲存的⽂文件檔 皆經過特殊加密(只有Office能讀寫) 14
成功案例 Success Stories 15
Microsoft 16
Microsoft • 微軟於1981年買下 DOS 的版權,改名 MS-DOS,其基礎建⽴立在多個可執⾏行檔所 構成的命令列。 16
Microsoft • 微軟於1981年買下 DOS 的版權,改名 MS-DOS,其基礎建⽴立在多個可執⾏行檔所 構成的命令列。 • 2009 年,微軟開始⽀支持
Open Source 軟 體如 jQuery 並讓⾃自家員⼯工貢獻程式碼給 Linux Kernel 16
Facebook 17
Facebook • Mark Zuckerberg 在宿舍架設了 Linux + Apache + MySQL
+ PHP 的環境,以運⾏行 他第⼀一個網站 Facemash 17
Facebook • Mark Zuckerberg 在宿舍架設了 Linux + Apache + MySQL
+ PHP 的環境,以運⾏行 他第⼀一個網站 Facemash • Facebook 於 Github (開源分享網站)公佈 了他們⽤用以改善 PHP 執⾏行效能的程式 HipHop 17
Google 18
Google • Google ⼀一開始便使⽤用 Python 撰寫, Python 是⼀一款開源且直譯式的程式語 ⾔言,以其語法簡潔、執⾏行速度與效率稱 卓。
18
Google • Google ⼀一開始便使⽤用 Python 撰寫, Python 是⼀一款開源且直譯式的程式語 ⾔言,以其語法簡潔、執⾏行速度與效率稱 卓。
• Google 建⽴立 Google Code 平臺,提供並 協助開發者開發開源軟體。 18
Google • Google ⼀一開始便使⽤用 Python 撰寫, Python 是⼀一款開源且直譯式的程式語 ⾔言,以其語法簡潔、執⾏行速度與效率稱 卓。
• Google 建⽴立 Google Code 平臺,提供並 協助開發者開發開源軟體。 • https://code.google.com/intl/zh-TW/ 18
Apple 19
Apple • Apple 電腦所使⽤用的作業系統 Mac OSX 之核⼼心係基於 Linux Kernel 所開發的。
19
Apple • Apple 電腦所使⽤用的作業系統 Mac OSX 之核⼼心係基於 Linux Kernel 所開發的。
• Apple 將之命名為 Darwin,並於官⽅方網 站公開其原始碼 (不含 Mac OSX 圖形化 界⾯面 GUI ) 19
Apple • Apple 電腦所使⽤用的作業系統 Mac OSX 之核⼼心係基於 Linux Kernel 所開發的。
• Apple 將之命名為 Darwin,並於官⽅方網 站公開其原始碼 (不含 Mac OSX 圖形化 界⾯面 GUI ) • iPhone 所運⾏行的 iOS 作業系統也是基於 Darwin 所開發,適合⾏行動裝置使⽤用之OS 19
Apple • Apple 電腦所使⽤用的作業系統 Mac OSX 之核⼼心係基於 Linux Kernel 所開發的。
• Apple 將之命名為 Darwin,並於官⽅方網 站公開其原始碼 (不含 Mac OSX 圖形化 界⾯面 GUI ) • iPhone 所運⾏行的 iOS 作業系統也是基於 Darwin 所開發,適合⾏行動裝置使⽤用之OS • http://www.apple.com/opensource/ 19
開源所衍⽣生的⽂文化 Open Source Cultures 20
共享精神 Sharing Define Success 21
Wiki 維基計劃 22
Wiki 維基計劃 • 由開源軟體開發模式發展⽽而來 22
Wiki 維基計劃 • 由開源軟體開發模式發展⽽而來 • 「⼀一種允許⼀一群使⽤用者利⽤用簡單的描述 來建⽴立和連線⼀一組網⾴頁的社會計算系 統」 22
Wiki 維基計劃 • 由開源軟體開發模式發展⽽而來 • 「⼀一種允許⼀一群使⽤用者利⽤用簡單的描述 來建⽴立和連線⼀一組網⾴頁的社會計算系 統」 • 包含紀錄,差異,還原等版本控制功能
22
Wiki 維基計劃 • 由開源軟體開發模式發展⽽而來 • 「⼀一種允許⼀一群使⽤用者利⽤用簡單的描述 來建⽴立和連線⼀一組網⾴頁的社會計算系 統」 • 包含紀錄,差異,還原等版本控制功能
• http://zh.wikipedia.org/维基媒体 22
開發流程 23
開發流程 作者發佈 開源專案 23
開發流程 作者發佈 開源專案 23
開發流程 作者發佈 開源專案 其他⼈人回報 問題(issue) 或建議 23
開發流程 作者發佈 開源專案 其他⼈人回報 問題(issue) 或建議 23
開發流程 作者發佈 開源專案 其他⼈人回報 問題(issue) 或建議 其他⼈人複製 (clone,fork) 回去修改 23
開發流程 作者發佈 開源專案 其他⼈人回報 問題(issue) 或建議 其他⼈人複製 (clone,fork) 回去修改 23
開發流程 作者發佈 開源專案 其他⼈人回報 問題(issue) 或建議 其他⼈人複製 (clone,fork) 回去修改 修改完成後
請求作者接受更新 (pull request) 23
開發流程 作者發佈 開源專案 其他⼈人回報 問題(issue) 或建議 其他⼈人複製 (clone,fork) 回去修改 修改完成後
請求作者接受更新 (pull request) 23
精確的版本控制 - GIT 24
精確的版本控制 - GIT 24
回歸實務⾯面 為何我要使⽤用 Linux / Ubuntu 25
Ubuntu 優點分析 26
Ubuntu 優點分析 • 易維護性:別管防毒軟體了 26
Ubuntu 優點分析 • 易維護性:別管防毒軟體了 • 穩定性:畫⾯面不會變成藍⾊色的 26
Ubuntu 優點分析 • 易維護性:別管防毒軟體了 • 穩定性:畫⾯面不會變成藍⾊色的 • 社群資源:網路上無時無刻都有⼈人樂意 幫你解決問題 26
Ubuntu 優點分析 • 易維護性:別管防毒軟體了 • 穩定性:畫⾯面不會變成藍⾊色的 • 社群資源:網路上無時無刻都有⼈人樂意 幫你解決問題 •
節省預算:作業系統與應⽤用軟體完全免 費! 26
對應軟體 27
對應軟體 • Chrome:提供 Ubuntu 版本 27
對應軟體 • Chrome:提供 Ubuntu 版本 • Firefox:提供 Ubuntu 版本 27
對應軟體 • Chrome:提供 Ubuntu 版本 • Firefox:提供 Ubuntu 版本 •
Office:LibreOffice / OpenOffice 27
對應軟體 • Chrome:提供 Ubuntu 版本 • Firefox:提供 Ubuntu 版本 •
Office:LibreOffice / OpenOffice • Photoshop:GIMP 27
對應軟體 • Chrome:提供 Ubuntu 版本 • Firefox:提供 Ubuntu 版本 •
Office:LibreOffice / OpenOffice • Photoshop:GIMP • 更多軟體可在 Ubuntu 軟體中⼼心找到 27
嘗試新的操作⽅方法 28
• 安裝軟體再也不⽤用⼀一個⼀一個下載執⾏行 了,⼀一⾏行指令,複製貼上,⾺馬上搞定。 嘗試新的操作⽅方法 28
• 安裝軟體再也不⽤用⼀一個⼀一個下載執⾏行 了,⼀一⾏行指令,複製貼上,⾺馬上搞定。 • sudo apt-get install chromium-browser 嘗試新的操作⽅方法 28
選擇 29
選擇 • Windows 為全封閉作業系統 29
選擇 • Windows 為全封閉作業系統 • Mac OS 為半封閉作業系統 29
選擇 • Windows 為全封閉作業系統 • Mac OS 為半封閉作業系統 • iOS
為半開放作業系統 (可以 Jail Break 獲 取最⾼高權限) 29
選擇 • Windows 為全封閉作業系統 • Mac OS 為半封閉作業系統 • iOS
為半開放作業系統 (可以 Jail Break 獲 取最⾼高權限) • Android 為半開放作業系統 (受限於各廠 商的內建軟體) 29
選擇 • Windows 為全封閉作業系統 • Mac OS 為半封閉作業系統 • iOS
為半開放作業系統 (可以 Jail Break 獲 取最⾼高權限) • Android 為半開放作業系統 (受限於各廠 商的內建軟體) • Linux / Ubuntu 為全開放作業系統 29
授權條款 Open Source License 30
GPL License 31
GPL License • GNU General Public License v3 31
GPL License • GNU General Public License v3 • CopyLeft
NOT CopyRight 31
GPL License • GNU General Public License v3 • CopyLeft
NOT CopyRight • 以任何⺫⽬目的執⾏行此程式的⾃自由 31
GPL License • GNU General Public License v3 • CopyLeft
NOT CopyRight • 以任何⺫⽬目的執⾏行此程式的⾃自由 • 再發⾏行複製件的⾃自由 31
GPL License • GNU General Public License v3 • CopyLeft
NOT CopyRight • 以任何⺫⽬目的執⾏行此程式的⾃自由 • 再發⾏行複製件的⾃自由 • 改進此程式,並公開發布改進的⾃自由 31
GPL License • GNU General Public License v3 • CopyLeft
NOT CopyRight • 以任何⺫⽬目的執⾏行此程式的⾃自由 • 再發⾏行複製件的⾃自由 • 改進此程式,並公開發布改進的⾃自由 • 「感染式」條款* 31
BSD License 32
BSD License • Berkeley Software Distribution License 32
BSD License • Berkeley Software Distribution License • 相較於 GPL
來說,授權條款較為⾃自由 32
BSD License • Berkeley Software Distribution License • 相較於 GPL
來說,授權條款較為⾃自由 • CopyCenter 32
BSD License • Berkeley Software Distribution License • 相較於 GPL
來說,授權條款較為⾃自由 • CopyCenter • 條款中提及「加州⼤大學董事會」皆可⾃自 ⾏行更改成為任意所有權⼈人 32
33
/* * Copyright (c) 1998 著作權由加州⼤大學董事會所有。著作權⼈人保留⼀一切權利。 * * 這份授權條款,在使⽤用者符合以下三條件的情形下,授予使⽤用者使⽤用及再散播本 *
套裝軟體裝原始碼及⼆二進位可執⾏行形式的權利,無論此包裝是否經改作皆然: * * * 對於本軟體原始程式碼的再散播,必須保留上述的版權宣告、此三條件表列,以 * 及下述的免責聲明。 * * 對於本套件⼆二進位可執⾏行形式的再散播,必須連帶以檔以及/或者其他附 * 於散播包裝中的媒介⽅方式,重制上述之版權宣告、此四條件表列,以及下述 * 的免責聲明。 * * 未獲事前取得書⾯面許可,不得使⽤用柏克萊加州⼤大學或本軟體貢獻者之名稱, * 來為本軟體之衍⽣生物做任何表⽰示⽀支持、認可或推廣、促銷之⾏行為。 * * 免責聲明:本軟體是由加州⼤大學董事會及本軟體之貢獻者以現狀("as is")提供, * 本套裝軟體裝不負任何明⽰示或默⽰示之擔保責任,包括但不限於就適售性以及特定⺫⽬目 * 的的適⽤用性為默⽰示性擔保。加州⼤大學董事會及本軟體之貢獻者,無論任何條件、 * 無論成因或任何責任主義、無論此責任為因合約關係、無過失責任主義或因⾮非違 * 約之侵權(包括過失或其他原因等)⽽而起,對於任何因使⽤用本套裝軟體裝所產⽣生的 * 任何直接性、間接性、偶發性、特殊性、懲罰性或任何結果的損害(包括但不限 * 於替代商品或勞務之購⽤用、使⽤用損失、資料損失、利益損失、業務中斷等等), * 不負任何責任,即在該種使⽤用已獲事前告知可能會造成此類損害的情形下亦然。 * */ 33
Chose A License http://choosealicense.com Powered by Github 34
Github Build software better, together 35
Open Foundry (OSSF) 中央研究院 資訊科學研究所 ⾃自由軟體鑄造場 36
資訊⼈人權貴ㄓ疑 資訊⼈人權貴懂得提問題,維護你的資訊⼈人權 http://ckhung0.blogspot.tw 37
The End Together, We Are Ready