首先自我介紹:我是鄭重,南京人,Java程序員,現在巴黎一個小IT公司任職,做J2EE編程,主要做servlet/JSP,CMS和portal。應龍輝之邀加入huihoo社區。
言歸正傳。我算是關注huihoo的一員。所謂關注,首先要知道的一個問題就是,huihoo是什么。網站上說huihoo是Open Enterprise Foundation,它自己也有一些項目,比如JFox,這樣看來,huihoo很象一個類似Apache或者Codehaus的一個組織。 Huihoo還擁有一個技術論壇,這樣又有點象The Server Side。龍輝還有建立自己的forge的打算,如果forge真的建立起來了,huihoo又有了點sourceforge或者objectweb的模樣。但其實,Apache,The Server Side和sourceforge是完全不同的三個東東,那么huihoo到底是什么?
我個人傾向于把huihoo看成是一個Open Source Foundation。原因如下:
先說技術論壇。我覺得國內沒有必要再存在一個Java技術論壇。最權威的Java技術論壇,堪稱Sun的Java Forum,The Server Side和Java World。國內也有一些有知名度的論壇,比如CSDN,比如China Java World,比如java-cn,所以我覺得技術論壇已經夠多了。而且技術論壇的靈魂是人氣,不是技術本身。國內那些論壇,統統好像菜場,到處充斥著關于 CLASSPATH如何設置之類的問題,這些問題雖然低級,但卻正是一個技術論壇所需要的:不停的有人問問題,有人回答問題,論壇的人氣就起來了,至于問題本身是什么,卻不那么重要。你要去國內那些論壇問castor怎么用,問xmlbeans怎么用,肯定問津者鮮。我想,一個這樣的技術論壇,應該不是 huihoo所需要的。Huihoo不是一個Java初學者俱樂部。
然后說forge。一個forge,本質上是一個服務提供者,所以最重要的是提供的服務是否可靠,是否穩定。Huihoo不是財大氣粗的地主,弄個服務器來為別人提供CVS和問題跟蹤系統,這樣的負荷huihoo肯定受不了。而且,即使能弄來一個這樣的服務器,為什么別人不選擇sourceforge而選擇huihoo?再而且,我覺得項目不貴多而貴精。我三天一個想法,如果用huihoo做forge,一個月我就能注冊10個項目,可這10個項目,我能堅持到底的能有一個就不錯了。成千上萬個半途而廢的項目也比不上一個好項目。爛尾的項目太多,反而壞了名聲。
最后是開放原代碼基金會。做好一個基金會,關鍵是有一個或者n個有技術有激情并能堅持不懈的團隊,和一個或者n個優秀的項目,這也很象目前huihoo的發展模式。如果huihoo意在成為一個這樣的組織,那么我覺得forum也好,forge也好,都好比闌尾,有了是個累贅,遲早要卸載掉,所以干脆不用。看看apache和codehaus,都沒有自己的forum和forge。為什么沒有?因為沒有必要。
在上面所說的基礎上,再談談huihoo的項目。我看了看huihoo網站上列出的一些項目,一個普遍的問題是,似乎堅持下去的不多。很多的項目,最后更新時間都是去年,而今年都快結束了。Java技術日新月異,如果一個Java項目停滯一年沒有進展,基本就可以進回收站了。所以,我覺得huihoo應該把它的成員組織好,把它的項目精簡一下,然后好好進行開發。
開始一個項目,首先要問的一個問題是,為什么需要做這樣的項目。Unix下的 bash,全稱是but another shell。為什么大家不用原來的shell,卻要用這個bash,but這個單詞,很有講究。因為bash提供了shell所不具有的新特性,所以需要這樣的but another。做任何一個項目,都一樣。
不客套了,直接拿JFox開刀。J2EE服務器,市場上已經有很多了,比如 JBoss,比如JONAS,比如Apache的Geronimo。為什么還需要JFox?這個問題,我沒有和列位JFox團隊的成員探討過,JFox的主頁上也沒有找到,所以并不清楚。Apache的Geronimo,開始的時間不久,但主頁上明確說明了為什么在大家有JBoss和JONAS可以選擇的時候啟動Geronimo:因為license的問題,Apache希望創建一個在Apache License 2.0之下的開源J2EE服務器。那么,JFox的理由是什么?
做開放源代碼的項目,關鍵是有人愿意使用。開放源代碼,讓程序員不能從中獲得物質上的所得,那么開發的動力來自哪里?我個人認為,一部分來自于理想,一部分來自于別人的認可,兩者缺一不可。一個沒有人使用的項目,就得不到別人的認可,就難以為繼,即使各位是多么的理想主義。而且,優秀的項目,不是閉門造車的成果,而是無數次的反饋和回應反饋的迭代。沒有人使用,就沒有反饋,就創造不出優秀的項目,這恐怕也是對理想的一個打擊。
我看到JoyAOP,看到Willow,都有同樣的疑問:我為什么要選擇huihoo 的項目,而不是Spring AOP或者aspectJ,不是ObjectWeb的Enhydra?Huihoo需要有自己的項目,每個項目都應該有自己存在的理由。沒有存在理由的項目,為什么要存在?
先說這么多。我想,每一個關注huihoo的人,或多或少都會有類似我的想法。要把huihoo建設好,需要直面這些問題。雖然我心存疑問,但我對huihoo是有希望的,因為huihoo有靈魂,那就是它的成員。措辭直接,不夠委婉,還望見諒。
from http://blogs.huihoo.com