人在江湖

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            82 Posts :: 10 Stories :: 169 Comments :: 0 Trackbacks

          周末去聽Hadoop大會,看見的都是玩兒開源項目的好手,突然就想起敏捷了。敏捷強調(diào)溝通,尤其是面對面的溝通,并且有每日例(立)會,iteration plan meeting, 還有retrospect meeting。突然就在想,開源項目常常聚集來自不同國家的人,他們很多時候根本互相不認(rèn)識,兩個不同公司不同時區(qū)不同國家的人咋面對面溝通?。空埤R開會?。咳思移綍r溝通全靠mail, 但是他們做大項目也能成功,人家是怎么做到的?我們搞敏捷,這么神奇的武器,開發(fā)過程仍然捉襟見肘,還不如開源項目有序,為什么?

          猜想世界范圍的開源項目溝通成本高,所以他們必須千方百計降低溝通需要,通過一些手段可以做到,比如

          一,清晰,自然的架構(gòu)。

          二,高質(zhì)量代碼,代碼像文檔一樣流暢。

          三,模塊化,面向接口。

          四,務(wù)實的文檔。

          五,自動化測試。

          ……

          有些溝通是必然免不了的,比如需求的溝通,我覺得最復(fù)雜的需求溝通往往起因于程序員不了解行業(yè)領(lǐng)域知識,而開源項目往往是工具類,框架類的項目,絕大多數(shù)不涉及特定行業(yè)領(lǐng)域知識,了解“domain”的門檻不高,所以需求方面的溝通要求天生就相對較低。我們平時工作的很多溝通來自于技術(shù)問題的溝通,我絕不懷疑,技術(shù)手段能夠降低溝通技術(shù)問題的需求,而一個不那么倚重程序員溝通技術(shù)問題就能把技術(shù)做好的項目,才說明技術(shù)風(fēng)險低,技術(shù)好。一些事情,比如技術(shù)選型,的確需要Involve比較多的人討論。但是當(dāng)技術(shù)選型確定,模塊劃分清楚,接口清晰之后,技術(shù)溝通的需求就應(yīng)該比較低了。有的時候技術(shù)上會遇到一些dilemma,這樣寫程序不好,那樣寫也不對,有時候確實是因為技術(shù)本來也沒有完美的解決方案,總要trade off掉一些事情。但更多時候是因為架構(gòu)不好,才引發(fā)了隨后的種種麻煩。程序員之間扯皮什么事情該誰做,是不是因為模塊化做得不好?“xx,你給我講講某塊代碼實現(xiàn)吧,我懶得看了”,是程序員懶還是程序?qū)嵲谑且粓F漿糊,慘不忍睹?同一個問題A給B解答一邊,給C解答一邊,后面還有E,F,G….是不是早該寫好文檔?

          coding的工作不神圣,但確實不同的人做出的設(shè)計可以大相徑庭,同一個功能背后的代碼也可以天差地遠(yuǎn)。做產(chǎn)品不是靠人堆出來的,三個臭皮匠頂不了一個諸葛亮,三個臭皮匠還不如一個臭皮匠,因為安排一個諸葛亮可以帶好一個臭皮匠,三個臭皮匠能把諸葛亮也熏臭了。開發(fā)團隊?wèi)?yīng)該是全高手陣營,人不必多,但要個頂個而的強。玩兒開源項目的人都是有熱情的程序員,往往都是高手,程序員用程序說話就好了,電話不用天天打也不耽誤溝通。

          跑下題說team work. 最近在想,team work表面上看是相對于個人英雄主義來說的,仔細(xì)一想,其實個人英雄主義應(yīng)該是team work的前提。程序員就是要有這樣的本領(lǐng),當(dāng)他把手放在鍵盤上的時候,就能源源不斷創(chuàng)造價值。一個人沒單打獨斗的能力,就沒資格談team work, 笨蛋當(dāng)然喜歡team work了,不然很容易暴露自己的無知和無能。

          posted on 2011-12-04 22:39 人在江湖 閱讀(2113) 評論(10)  編輯  收藏 所屬分類: process

          Feedback

          # re: 一點兒也不敏捷的成功 2011-12-05 01:28 allenny
          這個1.2.3.4.5是你開源項目中經(jīng)驗的總結(jié)還是你猜想出來的?  回復(fù)  更多評論
            

          # re: 一點兒也不敏捷的成功 2011-12-05 09:37 人在江湖
          @allenny
          純猜想,很可能說的不對,請指教。
            回復(fù)  更多評論
            

          # re: 一點兒也不敏捷的成功 2011-12-05 13:10 kevin lee
          其實個人英雄主義應(yīng)該是team work的前提。程序員就是要有這樣的本領(lǐng),當(dāng)他把手放在鍵盤上的時候,就能源源不斷創(chuàng)造價值。一個人沒單打獨斗的能力,就沒資格談team work, 笨蛋當(dāng)然喜歡team work了,不然很容易暴露自己的無知和無能。

          說的好!!  回復(fù)  更多評論
            

          # re: 一點兒也不敏捷的成功 2011-12-07 17:12 女鞋
          說的不錯  回復(fù)  更多評論
            

          # re: 一點兒也不敏捷的成功 2011-12-13 21:03 zzg
          有點意思  回復(fù)  更多評論
            

          # re: 一點兒也不敏捷的成功 2012-12-21 12:53 dohkoos
          笨蛋當(dāng)然喜歡team work了,不然很容易暴露自己的無知和無能  回復(fù)  更多評論
            

          # re: 一點兒也不敏捷的成功 2012-12-21 12:57 dohkoos
          >我們搞敏捷,這么神奇的武器,開發(fā)過程仍然捉襟見肘,還不如開源項目有序,為什么?

          背景不同呀!公司項目和開源項目能一樣嗎?開源項目延期就延期,架構(gòu)有問題就重寫,你公司項目能這樣做嗎?  回復(fù)  更多評論
            

          # re: 一點兒也不敏捷的成功 2013-01-29 05:42 Skywalter
          敏捷只是一個神奇的武器為幾個所謂的專家騙名騙財而已。我的經(jīng)歷證明敏捷只是誤人而已。你聽說過造成汽車,幾個工程師和工人坐在一起,‘敏捷’一把, 討論這樣造輪子, 那樣造方向盤,然后立刻動手做?如果這樣能高效高質(zhì)量造成汽車,太陽不打西邊出也得從地下冒出來。軟件也是一種產(chǎn)品,居然能“敏捷”一把。
            回復(fù)  更多評論
            

          # re: 一點兒也不敏捷的成功 2013-08-08 17:09 francisliu
          lz說得太精辟了,我佩服得五體投地啊。其實很多東西一再推敲到最后都是文化基因的問題。但是基因的問題豈是一蹴而就的呢。而往往國人就是喜歡一針頂破天的簡單的做法,而且往往這種做法短期的成本還非常低,擺在國內(nèi)的市場環(huán)境中還往往很有可能成功。呵呵。就是這樣了。然后就是不斷的輪回了,用程序猿的說法就是不停的遞歸直到棧溢出咯。。  回復(fù)  更多評論
            

          # re: 一點兒也不敏捷的成功 2013-08-09 11:05 francisliu
          @Skywalter
          一般敏捷不過只是維護項目的一個方法論罷了,僅此而已,等到這些項目枯死在硬盤或者其他介質(zhì)上面后,敏捷便將被拋棄,不過很多小人往往就是這樣,到那個時候往往詆毀敏捷的往往就是那群現(xiàn)在捧著敏捷猶如飯碗的那群人而以。  回復(fù)  更多評論
            

          主站蜘蛛池模板: 封丘县| 和静县| 辉南县| 禹城市| 营口市| 新郑市| 合作市| 武清区| 怀集县| 西峡县| 西林县| 佛冈县| 平利县| 南宫市| 北辰区| 大厂| 铁岭县| 西贡区| 沁水县| 柘荣县| 娄烦县| 临城县| 青川县| 鲁山县| 盘锦市| 勐海县| 武宁县| 拉萨市| 定南县| 靖边县| 集贤县| 兴山县| 大荔县| 武邑县| 旺苍县| 宁河县| 锦州市| 兴隆县| 平顶山市| 长沙市| 安龙县|