精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Linux之父Linus Torvalds談軟件開發管理經驗

導讀:沒有人比Linus Torvalds更了解軟件開發項目管理中的酸甜苦辣了。作為Linux的創建者,Torvalds在過去二十年指導了數以千計的開發者共同改進開源操作系統內核。此前,CSDN研發頻道發表過一篇文章《Linus Torvalds的軟件開發管理經驗》,文中提到了Torvalds在軟件管理方面的寶貴經驗?,F對此文進行全文翻譯及整理,供開發者學習與參考。

文章內容如下:

Linus Torvalds說,有兩件事,世界上大都數人,無論是獨立開發者還是公司級別的開發團隊,都有普遍的錯誤認知。

其一:“大都數人認為可以把事情丟給其他人,讓他們幫忙。在你公開你的想法后,你得假設自己一個人要干完全部的活,然后你在網上征求人們的意見,你 應該詢問自己該干什么,而不是他們該干什么?;蛟S開始他們會偶爾幫助你解決一些實際問題,但是,必須從一開始就告訴自己這份工作只有你一個人負責,并且做 好完成它的準備?!?/p>

如果你一開始就認為全世界的人們都會聯合起來為你的項目工作,一起創造一個更美好的世界,那么你可能不會走得很遠。

其二:“人們往往認為自己寫的代碼是最重要的東西,而事實不是這樣。即使你編寫了100%的代碼;即使你是世界上最好的程序員并且從來不需要任何幫助。然而最重要的東西也不是你寫的代碼,而是代碼的用戶。代碼本身不重要;只有當用戶真正用到它的時候項目才是有用的。之所以提到這一點是因為它不只是一個程序員的問題,我見過一些公司把追求完美的程序當做事情的全部?!?/p>

Torvalds就第二個問題上繼續展開言論,他說:“這就是為什么Linux內核團隊無法容忍這種‘脫離本質’的東西。比如,為了“修復”某個問 題而打破原來的用戶體驗絕對是錯誤的觀點;千萬不要這么干。如果你破壞了用戶體驗,或許你覺得是在修復問題,但你就犯了剛才說到的第二個錯誤——你以為代 碼質量比用戶重要,大錯特錯?!?/p>

Torvalds最后總結道:“有太多的項目將代碼質量置于用戶之上,結果兩邊都不討好,而且還不肯承認錯誤,因為他們覺得是在“修復”問題,并且一點都沒錯?!?/p>

關于開發工具的重要性

關于SCM(Software Configuration Management軟件配置管理系統 )工具,比如,以Git版本控制系統的問題為例,他回答說:“我不認為工具是最重要的?!?/p>

“現在重要的是你的項目是否有一個好的工作流程,工具當然能夠啟到幫助的作用,”他說,“但是,大多數的項目其實并不是必須要使用這些工具。許多項 目其實并沒有那么多改動,多到必須要在他們整個工作流程中使用這些工具;如果你在每個release中只有幾百個補丁,你可以隨便怎么維護他們,完全手動 也不是問題?!?/p>

當然,Linux就絕對不是同一個層次的了,“對于內核,我們每個release都有成千上萬個補丁,而且基本上每三個月就有一個release, 所以對我們來說SCM工具就尤其重要了。”他說,“但我仍然不認為這所有大的錯誤是因為最初幾年開發的目標球和補丁,這是一個小得多的項目,而且直到很多 年后是因為缺乏管理工具才顯現出來?!?/p>

他還說,“一些工具積極鼓勵工作流程,我認為CVS(Concurrent Versions System并發版本控制系統)”例如已經影響了很多項目,使他們有了一個概念“承諾團體”,

Torvalds繼續說,“我個人認為tar-balls和補丁相比他來說要好得多,因為他們使開發者都是“平等”的。而且你不會遇到這種情況:一 些開發者有委員權限而其他的人都是二級權限。有時全部人都只有二等權限要比有人有特權要好得多?!保ㄗⅲ篢orvalds很熟悉CVS很而且非常討厭有很 多年時間了。就如他在Google Talk 2007所說的,“我討厭帶著許可證的CVS”。)Torvalds還說:“比工具更重要的是人,是維護者和他們的思想?!?/p>

如何把大家都保持在正軌上

現在的人們是怎么一起工作的呢?我向Torvalds提問了關于正在實施中的LKML(Linux Kernel Mailing List ,用來將討論話題轉發給各位開發者。)他回答說:“我認為過去在LKML上發生的討論比現在的多。LKML中的signal-to-noise和純信息量 表明大多數開發者沒有時間仔細地去讀LKML——最多他們會掃一下標題欄。所以,現在我主張大多數開發者都在獨自完成工作,然后他們會在一個大的開發者范 圍中發送email告之對方是如何完成的”。

“并不是說LKML不重要,而是說LKML已經成為了獨立開發者的公共紐帶。所以事情最后會變成這樣:你其實只有4-5個人一同參與一個討論,但是LKML會轉發并且讓其他人有機會能夠參加進來,而不是讓他成為一個封閉的討論。”

接下來說說它怎么工作的,“大多數人其實不閱讀LKML,他們經常讓它自動存檔,只對某幾個關鍵詞或關鍵人物參與的話題感興趣。”它其實有點類似于 某種存檔機制。人們可以在日后查閱它,而且很多Bug可以通過Google找到LKML中以前報道的記錄。如果某人提出了一個問題,它可能只是個別硬件問 題,但如果Google后發現在LKML中已經被提交過幾次了,那這個問題原因會有點不確定,但必然不是個案?!?/p>

“所以我認為LKML非常重要,但我們不是通過它來保持人們走在正軌上的。所有的開發者都非常主動積極,而且他們都有非常好的意見和想法(核心成員 之所以是核心成員因為他們的自我定位)。LKML很重要,因為這是公開討論的,即使實際中參與某些特定問題的只有特定的一小組人。在開源項目中事情就是和 其他不一樣。”Torvalds總結道。

關于信任,托付和保持清醒

曾經Linux是一個個人項目?,F在他有成千上萬的提交者和貢獻者。接下來我問道:“現在有多少工作你是交付給其他人做的?對于如何分配才能保持人們思路清晰和遵循工作流程你有什么想法?”

“如果我從中學到了什么的話,那就是你必須學會放手,不要試圖控制別人和他們的代碼。如果你不信任別人,而一定要監視著他們的話,還是早點放棄這個負責人位置吧。”

他說:“是的,我經常會跟別人糾結一些細節,但不是因為我不信任別人或不愿分配給他們權限。而是因為一些小錯誤最后會鬧到我頭上。要么是個 Bug(而且都是一些平時忽視的小錯誤),要么是一些把我弄煩了的工作流程問題(就像今天早些時候我向一個分負責人抱怨開發者的名字顯示不正常)?!?/p>

Torvalds還說,“你只能偶爾關注一下細節,而不是老是站在開發者后面監視他、檢查他寫的每一句代碼。我相信分負責人做的事99%都是沒問題的,然后偶爾我會大聲抱怨一些東西。”比如說GNOME桌面系統正在怎么改進,或者根本沒有改進。

以上就是全部內容了。這就是Torvalds怎么做的,如果你覺得你比他好,先問問自己:有創造過一個在大多數超級計算機、股票交易和類似于 Google這樣的網站上運行的世界級的操作系統嗎?如果你的答案是沒有,如果我是你,我會重新讀一遍他的答案并且好好想想自己是怎么維護項目的。

本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Linux、Git 之父 Linus Torvalds 的別樣技術人生
亡羊補牢, “心臟流血”漏洞后OpenSSL終獲資助
Linus 耐心禮貌地批評了一個開發者
Linus Torvalds 希望推動Linux在桌面和嵌入式計算方面共同發展
Linux之父Linus Torvalds:我不再是一名程序員了
【IT資訊】Linus Torvalds:我們都老了,但Linux維護真的很難找
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯系客服!

聯系客服

主站蜘蛛池模板: 辽中县| 荣昌县| 巢湖市| 深州市| 高阳县| 钟祥市| 新宾| 苍梧县| 红桥区| 滨海县| 丰顺县| 雷波县| 巴马| 龙井市| 太康县| 赫章县| 堆龙德庆县| 沁源县| 多伦县| 崇礼县| 伽师县| 玛纳斯县| 葫芦岛市| 蚌埠市| 福建省| 太和县| 长岭县| 蒲城县| 简阳市| 化州市| 泰和县| 江阴市| 东丽区| 株洲市| 肥东县| 定襄县| 佛坪县| 慈利县| 建德市| 阜平县| 大姚县|