2010年2月2日星期二

CIO應對開放源代碼的法律問題

SEO CIO應對開放源代碼的法律問題

發佈者:作者:Web Design香港網頁設計大皇 - 網站優化
網站排名
Karen Copenhaver 是美國Choate, Hall & Stewart 律師事務所的合夥人,他給《CIO》的記者講述了有一次自己為某家大公司主持研討會的故事。這個研討會的目的在於幫助公司弄清這樣一個事實:軟件開發人員要遵守公司特定的代碼工作規則,並對此負責任。這些特定的工作規則涉及對開放源代碼、免費代碼和第三方提供代碼的使用。 Copenhaver 認為當時研討會進行的很順利。然而開發部門的經理接著找到她說,「這些開發人員不能完成需要每天做完的開發工作,並且擔心很多事情,他們總是要求助於開放或免費資源」。 這位經理的話體現了一個關鍵問題,這個難題已經影響到今天遍佈全球的無數開發部門。面臨預算緊縮、開發時間緊迫、擔心業務被轉給更低的報價方,以及對前所未有複雜軟件日益增加的需求,程序員被誘使從各種第三方資源那裡找來小部分、片斷甚至大量的源代碼,目的是為了讓手頭的工作完成的更快。 這種外借代碼的情況會造成一定的不良後果,它的作用類似於鎮痛劑,一時痛快,但遺患無窮;也就是說,可能永遠不會有人留意你的代碼內容、產品在內部的流轉或外部發貨,借用代碼之後,你的生活可能還會繼續。反過來說,這種後果有可能是災難性的,但是未發生之前你卻不會感覺到風雨預來。按照知識產權律師的說法,在很多收購案中,不潔代碼(Dirty Code) 已經導致了收購拖延,代價可謂昂貴。 這個過程中,由於一位獨立程序員??? Linux 代碼的核心貢獻者Harald Welte的呼籲、訴訟的努力,至少有100家公司被迫從自己的產品中刪除或放棄多段開放GPL代碼(GPL,通用公共許可證,General Public Liscence),他們沒有恰當遵守代碼提供方的許可協議就借用了這些內容。 其實大可不必如此麻煩。公司本可以避免出現使用開放源代碼的不利後果。《CIO》訪談了部分法律專家,他們提供了不少技巧和策略,這些專業建議和實務總結能讓公司和開發部門保持必要的靈活性,從而更恰當、更有效和更穩妥地利用好每個軟件開發人員工具箱裡都有可能找得到的這種重要開發工具,這些方法實施得當特別能夠限制未來的法律糾紛的發生。 假設被捉 程序員會複製一些代碼,會改變外部代碼的函數變量,調整空行等等,他們這麼做時有人指導要注意什麼前提嗎?審查不正當使用他人開發的部分代碼這種事情,過去也許可能性不是很大。但是現在時代變了。像Black Duck 和Palamida這樣的軟件兼容性測試工具已經出現,它們能掃瞄數百萬行的代碼,並且把這些代碼和包括了大量已知軟件的龐大後台數據庫中的代碼樣本進行對比,這讓公司得以定位查找(並且相當快速)之前已經寫出來的代碼是否符合開發和知識產權要求??? 即便是對修改過的那部分變量命名和空格的搜索也是如此迅速而精確。 Black Duck公司的客戶名單在過去一年當中已經增加了300%,目前包括了財富500強及全球500強中的跨國公司中的11家(Black Duck公司,開放軟件開發公司,其產品幫助企業有效、合法利用開放源代碼軟件,同時確保他們滿足與使用這些代碼相關的規範。)。根據公司提供的信息,由他們提供的代碼評估服務程序「ProtexIP/OnDemand」被上百家公司下載,並且在超過140宗企業併購案中被使用,這些併購案中的盡職審查交易費用估計總額達到了90億美元。 開放源代碼和免費軟件的文化因素對借用企業的行為也有影響。Whistle- blowers 公司曾經因為員工不當使用開放源代碼而開除他們。一些違反通用公共許可證(GPL)的案例也引起世界性的關注,關注者是那些有經濟權益在裡面的用戶,他們注意到在商業軟件產品中可能也有類似代碼不當使用的行為。舉個例子,網絡硬件製造商Linksys在2003年被思科收購不久,就高調發佈其WRT54G 型路由器的防火牆產品,當時有證據在手的用戶發現這個產品中的部分代碼是以Linux開放源碼為基礎改寫的。 專注的通用公共許可證(GPL)捍衛者Welte擁有Linux 防火牆軟件代碼的版權,他使用這一版權鼓動超過100家的公司刪除產品中的侵權代碼,或公開自己的商業源代碼,對此他已經在德國法庭提起訴訟。涉訟公司包括一些小型公司,也包括Asus、Belkin、 Fujitsu和 Siemens這樣的信息產業巨頭。Welte計劃在德國創建一家非營利組織以更積極地追究侵權,這樣一個計劃可能有助於促進他的工作。 「在我看來,有必要提高公眾的知情權,並且讓案件本身公開審理」,Welte說。但是他堅持:「這並非政治迫害或某種宗教信仰鬥爭。這只是讓公司級的開放源代碼用戶按照規則操作,這些規則曾經被這些公司忽視,不管是出於什麼樣的原因」。 即便如此,開放資源的製作者得到的不公正對待依然被關注甚少。然而,隨著開放源代碼軟件進入公司一些非常關鍵的系統,如果公司被抓住有侵權行為,那麼他們風險就會急劇提高。 有很多類似這樣的律師對話: MPL有什麼特別專利權法律規定嗎(MPL,Mozilla Public License)? GPL 能保護二次開發(derivative work)多遠? 告訴我什麼是二次開發? 簡單地迴避難題可能比較容易,但是避難就易的做法會增加公司的風險。「要明白,代碼來源是真正必須回答清楚的,認識其重要性是CIO和IT經理人的義不容辭的責任所在」,Mark Radcliffe 警告說,他是DLA Piper Rudnick Gray Cary(一個全球法律服務組織,其會員是獨立的法人實體)的合夥人和一個致力於開發GPL 3的委員會的主席。 然而,並不只是因為引入律師的工作,就意味著你得到了解決所有授權問題的決定性答案。開放源代碼判例法不是這些律師經常涉足的法律。「如果這個領域中有更多的判例存在,那麼我們就很容易給客戶提供相關法務建議」,Ira Heffan承認,他是Goodwin Procter事務所的合夥人,Goodwin Procter在1997年寫了一篇法律審查方面的文章,探討GNU 公共許可證的可實施性。但是他指出,有很多人在努力實現開放源代碼糾紛領域的司法意見一致,包括2006年初在華盛頓大學設立一個所謂的「模擬法庭」(由法學專業實習學生主持),這個法庭審判後出具法律簡報,這有助於和聯邦巡迴法院法官建立對話,就各種開放源代碼案件展開交流。 重大規則的制定 在和法律代表會談的同時,你也要留意請他們幫助確立有關開放源代碼使用的內部規則。「有的開發主管或CIO習慣下達簡單禁令的管理模式,可是這種做法並不具有現實主義功效」,Radcliffe說。相反,他說公司必須建立規則。在他的經驗看來,這些規則的發揮作用時具有非常大的差異。舉個例子,他知道一家「硅谷重量級公司」,在他們的軟件開發協議裡,把開放源代碼稱作「傳染性軟件」。他說其他公司開發完全不同的盡職審查程序,來處理併購過程中的開放源代碼事務。而且他指示某家公司在內部使用開放源代碼,但是在給客戶提供的產品中卻禁止這麼做。 關鍵在於給開發人員設立規則,讓他們知道什麼時候採用什麼方式把某類外部代碼整合進他們的開放資源項目。「非常清楚的一點是,如果實際寫碼的人沒有獲得指示,並且沒有某類執行機制的制約與引導,那麼他們就會在互聯網上抓來任何能夠抓下的東西」。 審查你的程序代碼 儘管幾年之前有人聲稱「我們不瞭解這些開放源代碼是什麼東西」,這種辨詞在法庭上會對判決產生影響,或者在和潛在收購合作夥伴溝通時發揮煙霧彈作用,但是這種情況現在已經不復存在了。開放源代碼已然成為主流,這已經不是什麼秘密,而且負責任地使用開放資源已經成為一種既定準則。 法律專家說,公司主動設置一個流程,來對產品代碼的出處進行核查很重要。Choate事務所的Copenhaver也是Black Duck公司的辯護律師,她說公司應該為高層執行官設立一個就重大開發主題下達指令的計劃,並且在代碼核查結束後的某個時間點上進行盡可能的修正。 她說,這個流程也應高包括和開發人員的日常會面環節,開發人員總是被發現在缺乏恰當的授權許可的情況下就使用免費或開放資源。這些開發人員需要被告知不遵守工作規章的嚴重後果??? 規章不僅是公司要遵守,他們本人更要遵守。「有些人有過這樣的經歷:只有對產品徹底分解,並重新進行質量評估之後,產品才算最終通過,任何有過這樣經歷的人」都不想重複這一經歷,Copenhaver說。 而且為了防止開發人員秘密在別處抓取代碼,管理層需要幫助他們。「有 CIO或開發主管會說,『這些傢伙(開發人員)不能完成工作,並且擔心後果的嚴重性』,這話的問題在於,這麼講話的人不曾建立這樣一種機制,這種機制能給開發人員提供支持,從而讓他們的問題能夠快速得到回答和解決」, Copenhaver說。 她斷言,開發人員能否得到這些答案,將是關乎開發團隊和法務專家之間能否建立信任的大事。「我們真正想得到的就是一次真誠的談話。如果你說『就對開發人員說『不』好了,我們不使用任何開放源代碼的東西』,這句話等於告訴面臨困難的開發人員,『不要問我們,我們不告訴你』。而這個時候你的正確做法是,告訴他們:『最大限度地利用這些可用代碼資源,我們能獲得巨大的制衡力量和競爭優勢』,但是我們需要在完全明白遵守規則責任之後才能這樣做」。 來自一位讀者的觀點: 這是一個如此簡單的命題。作者認為任何人都應該理解。這個命題包括了所有的代碼開發模式??? 包括開放的和不開放的。對此我本人提供的答案如下: 1) 大學裡允許欺騙嗎?你被允許複製我的考試答案嗎?如果不,那麼是什麼讓你認為你已經得到了複製我開發出來的軟件代碼的許可。 2) 還記得安然公司嗎?商業誠信是一個選項,如果你不想待在牢獄裡,那這就是唯一的答案。任何未經許可就複製外部資源的開發人員都應改立即終止自己的侵權行為,這和商店警衛幫助自己從錢櫃裡往提包裡裝錢一個道理。 3) 如果管理層告訴你繼續欺騙,那麼就從這裡撤吧。你不值得冒喪失自己聲譽的風險去為這樣一家公司工作。 4) 如果你發現下列情形,就馬上尋求法律援助: a) 你自己打算使用外部代碼資源; b) 你發現有人未經授權就使用外部代碼資源; c) 你發現一位經理人實施自己的職權,來使用外部代碼資源。 就像我說的那樣??? 這是件簡單的事情。如果有人打破了規則,他們就應該被解雇。如果你發現因為有公司的人打破規則而讓公司陷於不守規的境地,那麼就立刻承認事實,並且改正錯誤。 誠實是一種如此令人尊敬的品德??? 而且是得到如此尊重的原因之一,這正是我們近來在開放源代碼領域四處碰壁所得到的真諦。網上推廣

没有评论:

发表评论