2008年12月25日 星期四

Q14: 多想個10秒鐘,你可以『不』說「嗯,這個做得到」。

多想個10秒鐘,你可以『不』說「嗯,這個做得到」


常常我們在最後關頭,答應了顧客,點頭說『嗯,這個可以辦得到』。這是程式設計師惡夢的開始。

Q13: 如果你不了解自己所說的事物,即便你遣詞用字精準,也毫無意義 - John von Neumann

There is no sense in being precise when you don't even know what you're talking about. -- John von Neumann

許多專案的失敗都在於溝通的誤差上。顧客與系統分析師差一點,系統分析師與設計師差一點,設計師與程式設計師在差一點,最後就無法收拾了。每個人在表達自已的想法時,都應確定自己在說什麼。自己都不懂自己在說什麼,就不要期待聽的人能有正確的理解。

2008年12月19日 星期五

Q12: Wirth's Law: 軟體變慢的速度比硬體變快的速度更快


Wirth's Law: Software is getting slower more rapidly than hardware becomes faster. - Niklaus Wirth.

這是一句相當有意思的話。會造成這個原因與『軟體膨脹』(Software Bloat)有很大的關係。過去在記憶體很珍貴與CPU速度不快的年代,寫程式所用到的資源必須斤斤計較。但隨著硬體的便宜,『Time to market』才是重點,開發者重視的是如何用快速的工具快速的開發系統,趕緊讓產品上線,系統大不大,效能好不好就不是那麼受重視了,於是軟體越寫越大。相同功能的產品過去可只需要10k, 現在可能需要 1M。誇張嗎?

看看微軟的產品吧,windows 95 的系統建議是:CPU 25 MHz, 記憶體 8 MB,硬碟50 MB。現在的Windows Vista 的建議規格是 CPU 800 MHz, 記憶體 512 MB, 與硬碟 15 GB,還好硬體跑在前面,要不軟體怎麼吃的消?


Q11: 計畫趕不上變化,變化趕不上老闆的一句話

計畫趕不上變化,變化趕不上老闆的一句話

2008年12月12日 星期五

Q10: Bug 過了一晚可能就變成規格了

Bug 過了一晚可能就變成規格了。

Q09: 搔到設計師的渴望是一個好的系統的開始


Every good work of software starts by scratching a developer's personal itch

2008年12月5日 星期五

Q08: 客戶總是覺得蔥與追加需求是不用錢的

客戶總是覺得蔥與追加需求是不用錢的

Q07: 品質不是動作,是一種習慣-- Aristotle


Quality is not an act. It is a habit. - Aristotle

2008年11月28日 星期五

Q05: 人們會忘記你做的多快,但總記得你做的多好- Howard Newton

People forget how fast you did a job- but they always remember how well you did it. - Howard Newton.


Q06: 說學習好的設計技巧會限制創造力就如同說音樂家不需要學習樂理-Marvin Zelkowitz et al.

The notion that good [design] techniques restrict creativity is like saying that an artist can paint without learning the details of form or a musician does not need knowledge of music theory -- Marvin Zelkowitz et al.

關於 Prof. Marvin Zelkowitz,請參考 http://www.cs.umd.edu/~mvz/

2008年11月21日 星期五

Q03: 在進度落後的軟體專案中增加人力只會讓專案更落後-F.P. Brooks


Adding manpower to a late software project makes it later -- F.P. Brooks


關於 Prof. Brooks, 可參考 http://www.cs.unc.edu/~brooks/

Q04: 要殺一個程式設計師不需要刀,改三次規格就好

要殺一個程式設計師不需要刀,改三次規格就好

2008年11月16日 星期日

Q02: 想要儘早完成專案的關鍵就是儘早啟動專案-Jim Highsmith

The best way to get a project done faster is to start sooner.-- Jim Highsmith


許多的 idea 常常在閒談之間產生,於是朋友們就說,“嘿,寫個軟體把他做個自動化,很有幫助的“,大夥兒也會附和的說,好啊。

好啊,好啊,然後就沒有下文了。沒有指定人來辦,沒有壓時間,沒有投資源 -- 也就是根本啟動專案 -- 那麼 idea 是永遠不會實踐的。

Q01: 在軟體可重用以前, 它必須先可用-Ralph Johnson

Before software can be reusable it first has to be usable.--Ralph Johnson

追蹤者