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
200
Club Mate and Hacker - 34C3 @ SITCON
jeremy5189
2
670
SITCON 2017 論壇系統開發分享 @ SITCON 2017 Summer
jeremy5189
0
220
poManeuver: Poland into space
jeremy5189
0
410
How we hacked a forum
jeremy5189
0
430
Bdecisive - Booking.com Taipei Hack 2nd Prize
jeremy5189
0
540
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
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.2k
Terraform Stacks入門 #HashiTalks
msato
0
360
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
260
AI前提のサービス運用ってなんだろう?
ryuichi1208
8
1.4k
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
520
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
700
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
630
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
190
Platform Engineering for Software Developers and Architects
syntasso
1
520
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
The Invisible Side of Design
smashingmag
298
50k
Agile that works and the tools we love
rasmusluckow
327
21k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Designing the Hi-DPI Web
ddemaree
280
34k
Building Your Own Lightsaber
phodgson
103
6.1k
For a Future-Friendly Web
brad_frost
175
9.4k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Visualization
eitanlees
145
15k
Being A Developer After 40
akosma
87
590k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
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