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
73
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
110
A day of full stack developer @ NFU
jeremy5189
0
210
Club Mate and Hacker - 34C3 @ SITCON
jeremy5189
2
700
SITCON 2017 論壇系統開發分享 @ SITCON 2017 Summer
jeremy5189
0
220
poManeuver: Poland into space
jeremy5189
0
430
How we hacked a forum
jeremy5189
0
460
Bdecisive - Booking.com Taipei Hack 2nd Prize
jeremy5189
0
560
Social Intelligence Smart-device project
jeremy5189
0
62
IoT made easy @ SITCON x HK
jeremy5189
0
100
Other Decks in Technology
See All in Technology
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
7
670
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
6
2.6k
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
600
分解して理解する Aspire
nenonaninu
2
1k
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
Raycast AI APIを使ってちょっと便利な拡張機能を作ってみた / created-a-handy-extension-using-the-raycast-ai-api
kawamataryo
0
210
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
310
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.2k
Perlの生きのこり - エンジニアがこの先生きのこるためのカンファレンス2025
kfly8
2
270
IAMポリシーのAllow/Denyについて、改めて理解する
smt7174
2
200
組織におけるCCoEの役割とAWS活用事例
nrinetcom
PRO
4
130
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
150
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Embracing the Ebb and Flow
colly
84
4.6k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Code Reviewing Like a Champion
maltzj
521
39k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
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