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
用十分鐘《讓你的專案一開始就搞砸》!
Search
陳鍾誠
November 11, 2016
Education
0
94
用十分鐘《讓你的專案一開始就搞砸》!
十分鐘系列:
http://ccc.nqu.edu.tw/wd.html#ccc/slide.wd
陳鍾誠
November 11, 2016
Tweet
Share
More Decks by 陳鍾誠
See All by 陳鍾誠
第 6 章、巨集處理器
ccckmit
0
65
第 7 章、高階語言
ccckmit
0
110
第 9 章、虛擬機器
ccckmit
0
68
第 8 章、編譯器
ccckmit
0
130
數學、程式和機器
ccckmit
1
750
語言處理技術
ccckmit
0
150
微積分
ccckmit
0
380
系統程式 第 1 章 -- 系統軟體
ccckmit
0
390
系統程式 第 2 章 -- 電腦的硬體結構
ccckmit
0
360
Other Decks in Education
See All in Education
Amazon Connectを利用したCloudWatch Alarm電話通知
junghyeonjae
0
260
Padlet opetuksessa
matleenalaakso
4
12k
20241004_Microsoft認定資格のFundamentals全部取ってみた
ponponmikankan
2
330
子どものためのプログラミング道場『CoderDojo』〜法人提携例〜 / Partnership with CoderDojo Japan
coderdojojapan
4
14k
construindo uma carreira com opensource
caarlos0
0
240
2409_CompanyInfo_Hanji_published.pdf
yosukemurata
0
370
Medidas en informática
irocho
0
290
Lisätty todellisuus opetuksessa
matleenalaakso
1
2.3k
1106
cbtlibrary
0
420
Qualtricsで相互作用実験する「SMARTRIQS」入門編
kscscr
0
320
寺沢拓敬 2024. 09. 「言語政策研究と教育政策研究の狭間で英語教育政策を考える」
terasawat
0
200
Requirements Analysis and Prototyping - Lecture 3 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
800
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
31
6.3k
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Gamification - CAS2011
davidbonilla
80
5k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Statistics for Hackers
jakevdp
796
220k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Being A Developer After 40
akosma
87
590k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Transcript
用十分鐘 讓你的專案一開始就搞砸 陳鍾誠 2016 年 10 月 19 日 程式人《十分鐘系列》
程式人《十分鐘系列》 本文衍生自維基百科
大部分的程式人 •都曾經做過專案!
而且 •大家都知道 ...
專案要搞砸很容易
要搞好卻很困難!
有那些困難呢?
第一個困難是 •你做的專案沒有人要用!
為甚麼會沒有人要用呢?
原因很多
像是對於創新型專案 • 創新就是做沒有人做過的東西 • 既然沒有人做過當然就沒有人用過 • 那做出來的東西當然就不知道有沒有人會想用 • 如果你自己都不想用,那結果常常就是沒有人要 用囉!
所以創新型專案 •失敗是很常見的 成功反而是很少見的!
而對於那些委託型專案 • 客戶通常不知道自己想要甚麼 • 開發者通常不是使用者,也沒辦法把 系統納入日常生活運作 • 於是開發出來的東西,客戶沒辦法納 入日常運作的情況就很常見!
更不用說那些學生專題 • 他們很多只是想要老師給歐趴, 壓根就沒想要拿來用!
所以 • 專案做完十之八九沒人用 • 有人用的專案真的不太多 ...
對了 • 我還沒提到像國科會那種專案
那只是要錢用的 •錢拿到專案就沒用了 ...
抱歉 •再講下去就要離題了 ...
讓我們拉回主題
主題是甚麼?
歐、對了 •主題是專案搞砸的原因 ...
除了沒人用之外
專案搞砸的另一個原因是
團隊沒有起來
換句話說
就是 • 團隊離心離德,根本就沒有用心做 專案,所以專案自然就搞砸了!
大家知道 • 軟體專案是出了名的難搞 ...
但是在搞定專案之前
一定要先搞定人的問題
如果人都搞不定
那專案又怎麼做得出來呢?
在專案執行中 •人的問題有很多 ...
像是 • 不想做、不願意做 • 想做、但不想為某人做 • 還有一堆關於政治上的問題 ...
關於這點 • 國父孫中山先生早就說過: 政是眾人之事,治是治理, 治理眾人之事就是政治 ...
問題是 • 程式人比較擅長搞機器的事 但是不太擅長搞人的事情 ...
所以 •程式專案會那麼常失敗, 也是有原因的啦 ...
既然 • 程式專案這麼常失敗,那麼到底 要怎樣才能減少失敗的機率呢?
關於這點 • 我其實也沒有甚麼高明的想法了 ...
或許各位可以請教 • 那些《成功學》和《心靈雞湯》的老師 • 只是如果沒效千萬不要說是我推薦的 ...
我只知道 • 如果要失敗,那就快點發現 • 別等到最後才失敗,最好第一天就知 道會失敗,然後趕快把專案停掉,這 樣才不會損失太大!
就像我們寫程式的時候 • 那些可能會發生錯誤的地方,就乾脆先用 assert 或 throw 把錯誤丟出來,讓整個系統 直接停掉,而不是假裝錯誤不存在繼續執行 • 愈早發現錯誤代價愈小,愈晚發生的愈致命
...
舉例而言 • 像最近發生的三星 Note7 手機爆炸案,如 果在設計或試產時就發現問題,那損失會 很小,但是當貨物都已經出了幾千萬支才 發現,那可就是致命一擊了 ....
所以 • 對於軟體工程有認識的人都知道 • 從《瀑布模式》到《螺旋模式》 • 從後來的《整合建置》,《每日建 置》,到現在的《 continuous integration
》 的那些故事!
這種盡早失敗的法則 • 其實也適用在人的上面 ...
如果你知道 • 某人並不想做這個專案 • 或某人不想為某人做專案 • 或你自己根本不想做這個專案 • 那還是及早處理,代價會比較小一點 ...
如果你接客戶的專案 • 那麼盡早讓客戶瞭解你的專案,使 用你的專案,那麼就比較容易知道 專案是否走偏了方向!
當然 • 如果你只想拿客戶的錢,卻不想完成專案 ... • 或者那個客戶是個奧客,讓他知道之後會來亂, 那麼是可以考慮不要太早讓客戶知道 ... • 不過在後一種情況下,其實你或許不應該接那個
客戶的專案 ....
如果你是個專題學生 • 知道某些人根本不想做專案,只是想 要混過專題,那最好一開始就不要找 他們進來,就算找進來之後也趕快請 他們出去,否則你的專題就會 ....
變成這樣 圖片來源: https://www.facebook.com/benla/posts/10152989817977428
相信每個做過專題的同學 • 都應該能夠理解上面那張圖片的 意義才對!
所以快速失敗 • 是我所知道的《專案管理方法》 當中,最重要的一條原則!
這個原則 • 不只可以用在程式上面 • 也可以用在人、事、物、以及公 司管理上
所以 •失敗不是壞事
但是太晚才發生的失敗
那就是天大的壞事了!
而且 •愈晚發生的失敗就愈致命!
最後
祝你早日失敗!
早日解脫
這就是我們今天的 •十分鐘系列!
我們下回見!
Bye Bye!