Joel on software讀書筆記一

          本來想等讀完之后再來寫讀后感的,不過由于引起的共鳴或者說帶來的感想確實(shí)不少,還是決定先寫寫,免得以后有所忘記,^_^
          Joel on software不愧是jolt的得獎(jiǎng)書籍之一,寫的非常的不錯(cuò),不過建議大家直接看E文版,不要看中文版,中文版翻譯的實(shí)在不怎么樣,給人的感覺根本就是直譯的方法,象其中體現(xiàn)出不夠?qū)I(yè)的翻譯的詞到處都是,象連編、內(nèi)用軟件等等詞,里面翻譯的很多話都翻譯的很晦澀,估計(jì)如果對joel講的那個(gè)方面不懂的話,看中文版反而會(huì)完全看不懂...
          Joel on software是本很薄的書,講的主要是joel在軟件方面的一些經(jīng)驗(yàn)、想法、實(shí)踐,joel是以前Microsoft Excel團(tuán)隊(duì)的領(lǐng)導(dǎo)之一。
          目前看了大概一半,流水帳式的記錄下讀書的筆記:
          1、Joel測試:改進(jìn)代碼的12個(gè)步驟
          ????? Joel測試,業(yè)內(nèi)非常知名的對于軟件團(tuán)隊(duì)的一種評(píng)價(jià)手段,12個(gè)步驟都點(diǎn)中要害,雖然估計(jì)大家都了解,還是決定在這里再次列出:
          ????? § 使用源代碼版本控制嗎?
          ??????§ 能一步完成系統(tǒng)構(gòu)建嗎?
          ??????§?做日構(gòu)建嗎?
          ????? § 有Bug庫嗎?
          ????? § 在編寫新代碼之前修復(fù)Bug嗎?
          ????? § 有最新的進(jìn)度表嗎?
          ????? § 有功能規(guī)格說明書嗎?
          ????? § 程序員擁有安靜的工作環(huán)境嗎?
          ????? § 你用到了你資金能力內(nèi)可買到的最好工具嗎?
          ??????§ 有測試人員嗎?
          ????? § 新聘人員在試用期寫代碼嗎?
          ????? § 進(jìn)行走廊可用性測試嗎?
          ?????? 以上12點(diǎn)就是著名的Joel測試了,你可以試著對你的團(tuán)隊(duì)打打分,只有得到11分或12分的才是比較好的軟件團(tuán)隊(duì),而10分以及10分以下的團(tuán)隊(duì)都存在這樣那樣的問題。
          ?????? Joel舉了個(gè)例子是微軟中的軟件團(tuán)隊(duì)都在12分以上.........
          ?????? 其實(shí)自己看了下,確實(shí),這12點(diǎn)都是對于團(tuán)隊(duì)來講很基本的要求,但是你的團(tuán)隊(duì)能得幾分呢?
          2、Unicode與字符集知識(shí)
          ????? Joel認(rèn)為每個(gè)程序員都應(yīng)該了解Unicode與字符集知識(shí),java界的程序員由于基本都會(huì)碰到編碼問題,所以我覺得這個(gè)部分對于java程序員來說通常都不是大問題,不過我從這章節(jié)中仍然是學(xué)到了更為底層的編碼知識(shí),^_^
          3、功能規(guī)格說明書
          ????? 這個(gè)部分一直就認(rèn)為至關(guān)重要,無論是產(chǎn)品性質(zhì)還是項(xiàng)目性質(zhì),功能規(guī)格說明書其實(shí)和平時(shí)寫需求規(guī)格說明書還是有些不同的,功能規(guī)格說明書其實(shí)通常都已經(jīng)向用戶展現(xiàn)了一套真實(shí)的系統(tǒng),joel在書中說的一點(diǎn)給我感觸頗深,就是寫這種書的時(shí)候應(yīng)該寫的帶有些趣味性,這點(diǎn)看似容易,做起來難,就像XP中的系統(tǒng)隱喻一樣。
          4、每日構(gòu)建
          ??????這個(gè)相信大部分業(yè)內(nèi)人士都已經(jīng)認(rèn)同了,但有多少團(tuán)隊(duì)在真正的執(zhí)行呢?
          ????? 這個(gè)章節(jié)給我?guī)淼淖畲蟮捏w會(huì)不是每日構(gòu)建的好處的學(xué)習(xí),這個(gè)我都已經(jīng)知道了,最大的體會(huì)是當(dāng)joel講到編譯器是為了提升edit-compile-test這個(gè)環(huán),給我?guī)淼淖畲蟮母邢刖褪且嵘龍F(tuán)隊(duì)能力、效率其實(shí)同樣也是這樣,去尋找這個(gè)環(huán),就像jira這樣的工具就可以幫助提升report-fix-test這個(gè)環(huán)的效率。
          5、Bug修復(fù)
          ????? 這個(gè)章節(jié)讓人體會(huì)到了做軟件各個(gè)環(huán)境還是要想到軟件的本質(zhì)的,軟件的本質(zhì)是商業(yè)性質(zhì)的服務(wù),所以即使在進(jìn)行Bug修復(fù)要有去考慮商業(yè)性質(zhì)上的因素。
          6、稿紙?jiān)烷_發(fā)
          ??????^_^,這個(gè)章節(jié)帶來的共鳴來源于我很多時(shí)候都傾向于用紙、白板來表達(dá)我的設(shè)計(jì)思路,而不是用visio、rose去繪制那些受N多規(guī)范約束的圖,更討厭別人在看這些圖的時(shí)候首先看的是這些圖是否符合這種、那種規(guī)范。
          ????? 稿紙?jiān)瓦@種方法其實(shí)同樣,更容易進(jìn)行快速的交流....
          7、自動(dòng)獲取用戶故障報(bào)表
          ????? 這個(gè)我想是N多軟件人員都想做到的,^_^,自動(dòng)的獲取用戶的故障報(bào)表,這樣對于修復(fù)bug會(huì)有很大的幫助,多么的希望有這樣的記錄方式:對于出現(xiàn)異常的部分就會(huì)有操作過程的完整錄像,同時(shí)提供相關(guān)的環(huán)境信息等,這樣的話對于bug的修復(fù)會(huì)有很大的幫助。
          8、面試游擊指南
          ????? 面試絕對是個(gè)很大的學(xué)問,要求在很短的時(shí)間較準(zhǔn)確的去評(píng)估一個(gè)人是否適合某個(gè)職位,joel給出了他的面試步驟:
          ????? § 介紹自己
          ????? § 詢問應(yīng)聘人員最近從事的項(xiàng)目情況
          ????? § 問不可能回答的問題。(如北京有多少個(gè)公交車站)
          ????? § 程序設(shè)計(jì)提問
          ??????????? 這個(gè)環(huán)節(jié)很重要,目前情況來看,還是能現(xiàn)場讓面試者在機(jī)器上寫點(diǎn)代碼比較好.....
          ????? § 你滿意嗎?
          ????? § 你有任何問題嗎?
          ?????? joel表達(dá)的重要思想和我之前寫的一篇blog一樣,面試人員應(yīng)該給應(yīng)聘者創(chuàng)造一個(gè)輕松的環(huán)境,讓應(yīng)聘者盡量的展示他自己的能力,joel認(rèn)為對于應(yīng)聘者他最看重的是機(jī)敏和成事這兩個(gè)方面,機(jī)敏表明了joel很重視應(yīng)聘者的學(xué)習(xí)和適應(yīng)能力,成事則表明joel很重視應(yīng)聘者的實(shí)戰(zhàn)能力,而不是純粹的理論水平。
          9、不配備測試人員的五個(gè)首要(錯(cuò)誤)原因
          ????? 這個(gè)環(huán)節(jié)給我很大的體會(huì),至少在我經(jīng)歷過的幾個(gè)公司都沒有做到配備測試人員的條件,而且測試人員到底需要什么樣的水準(zhǔn),在現(xiàn)在的業(yè)界也沒個(gè)準(zhǔn),反正我是一直認(rèn)為合格的測試人員應(yīng)該是由高程、系統(tǒng)設(shè)計(jì)師這樣的人發(fā)展過去的。
          10、任務(wù)換人有害無益
          ??????? 這點(diǎn)深有體會(huì),在這個(gè)章節(jié)中joel講的重點(diǎn)是同時(shí)面對多任務(wù)的現(xiàn)象,這里他舉了個(gè)例子,是多線程處理的例子,我們都知道,一直以來都認(rèn)為多線程處理方式的支持是業(yè)界的重大發(fā)展,joel舉了個(gè)例子去說明多線程處理的時(shí)候效率遠(yuǎn)比順序執(zhí)行的時(shí)候慢,當(dāng)然,其實(shí)我覺得這是joel舉的一種特例,他主要還是為了去表達(dá)人去面對多任務(wù)通常來講是不如讓這個(gè)人按順序的完成任務(wù)的好,這點(diǎn)我是非常同意的,至少我自己就是這樣,就像joel書中所說的一樣,當(dāng)面對一個(gè)任務(wù)的時(shí)候我基本都會(huì)較好的完成,但當(dāng)同時(shí)面對兩個(gè)任務(wù)的時(shí)候很容易造成兩個(gè)都完成的很慢或者一個(gè)完成的較好,而另一個(gè)則根本就沒怎么做,主要是在任務(wù)切換的時(shí)候需要花費(fèi)很長的切換時(shí)間,joel在書中所說,本來一天八小時(shí)的有效工作搞不好會(huì)變成兩小時(shí),^_^,我就經(jīng)歷過這樣的現(xiàn)象。

          BTW:
          Joel網(wǎng)站:http://www.joelonsoftware.com

          posted on 2006-06-01 21:44 BlueDavy 閱讀(2617) 評(píng)論(2)  編輯  收藏 所屬分類: 業(yè)界隨想

          評(píng)論

          # re: Joel on software讀書筆記一 2006-06-02 08:48 KnowNothing

          Thanks,your summary gives me many good ideas.  回復(fù)  更多評(píng)論   

          # re: Joel on software讀書筆記一 2006-06-26 17:47 郁也風(fēng)

          其它且不論,對于“10、任務(wù)換人有害無益”深有同感,這也是我一直對領(lǐng)導(dǎo)層的建議,可惜能被采用的機(jī)會(huì)不大。領(lǐng)導(dǎo)喜歡的是運(yùn)籌帷幄之中,決勝千里之外的快感啊^_^  回復(fù)  更多評(píng)論   

          公告

           









          feedsky
          抓蝦
          google reader
          鮮果

          導(dǎo)航

          <2006年6月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          統(tǒng)計(jì)

          隨筆分類

          隨筆檔案

          文章檔案

          Blogger's

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 余姚市| 江永县| 册亨县| 楚雄市| 左权县| 茌平县| 光泽县| 卓尼县| 普安县| 荥经县| 兴安盟| 临武县| 眉山市| 南川市| 信宜市| 定兴县| 西盟| 禄丰县| 绵竹市| 巢湖市| 九台市| 陇西县| 南充市| 西丰县| 五常市| 仙居县| 牙克石市| 泸定县| 闵行区| 华蓥市| 多伦县| 南城县| 行唐县| 武汉市| 镇雄县| 陈巴尔虎旗| 大厂| 城步| 大化| 察哈| 丰镇市|