開源的世界真的很棒,技術的開源不僅僅促進的是社會的發(fā)展鹿寨,有時還能看到一種精神新博,一種人性。當然脚草,開源雖然并不意味著無私奉獻赫悄,但是也不能暗藏玄機,或者暗度陳倉馏慨。真小人和偽君子還是有區(qū)別的埂淮。
最近在知乎上有一個帖子《如何看待百度要求內部全面停止使用 React / React Native?》,非常的火爆写隶,以至于引發(fā)了前端的一片熱議倔撞,整個圈子都在討論這件事。很多人就在公眾號后臺開始問我:作為移動端的程序員慕趴,我還有必要學習 RN 技術嗎痪蝇?
事件由來
這件事之所以最近火爆起來了,是因為大家發(fā)現了 Facebook 專利許可證上的一段文字秩贰,里面暗藏玄機霹俺,導致很多企業(yè),尤其是像 BAT 這樣的互聯網大企業(yè)人心惶惶毒费,不得已終止或者放棄丙唧。
在技術開源的世界,對于開發(fā)者而言觅玻,許可證就是他們使用開源軟件的 “用戶協(xié)議”想际。而 Facebook 的開源方式跟其他家都不太一樣培漏,別家一般用的都是開源社區(qū)公認通用的許可證,而 Facebook 使用的是兩個許可證胡本,第一個是通用的 BSD 許可證牌柄,第二個是自己寫的專利許可證 (patent grant)。
而開源社區(qū)在發(fā)現侧甫,Facebook 在 React 的專利許可證里 “偷跑” 了一堆讓開發(fā)者恐慌和心寒的條款珊佣,如下:
這段文字到底是什么意思呢?意思就是:如果你向 Facebook 及其子公司和其他相關實體發(fā)起專利訴訟披粟,或者對其他使用 React 的公司發(fā)起專利訴訟咒锻,或者如果 Facebook 主動起訴你,如果你以反訴應對的話守屉,你使用 React 的許可證將自動終結惑艇。翻譯成大白話就是:如果你覺得 Facebook 侵犯了你的知識產權,你不能起訴 Facebook拇泛,而且 Facebook 起訴你滨巴,你也不能反訴!因為在起訴的同時你的產品就完了俺叭,產品中不可以繼續(xù)用 React 了恭取。
反正我 Facebook 作為世界級大公司發(fā)明創(chuàng)造的技術,你們的產品如果使用了熄守,那么該產品的知識產權我們可以免費用秽荤,免費用,免費用柠横,而且你們還不能夠起訴我。
其實這種事情课兄,從去年就在前端技術圈開吵牍氛,后來愈演愈烈,形勢每況日下:開源社區(qū)在更多 Facebook 開源的熱門項目中發(fā)現了相同的許可證模式和條款烟阐。開發(fā)者認為 Facebook 的這種許可證模式正在毒害社區(qū)搬俊,污染開源精神。
大公司為什么如此擔心和終止使用呢蜒茄?
據傳不僅僅是百度要求內部全面停止使用 React / React Native唉擂,阿里巴巴內部的技術決策層也都支持棄用 React,要求不再使用檀葛。大公司其實比小公司更擔心玩祟,更害怕,所以盡快停止使用該技術可以減少損失或者防止以后有所損失屿聋。
你可以想想:如果 BAT 這樣的大公司做出來的產品很容易火爆而且引領潮流空扎,而且一般都會推向世界藏鹊,如果 Facebook 抄襲并做出了類似的產品,你不僅不能告他转锈,你和他是競品關系盘寡,他還有可能要求你的產品停止使用該技術。你產品的知識產權我可以免費用撮慨,這對于大公司來講竿痰,將來損失太大了。大公司的法律意識比小的創(chuàng)業(yè)公司強砌溺,而且完善影涉,現在停止使用該技術,是為了避免未來發(fā)生法律糾葛抚吠。
如果這描述的不夠清楚的話常潮,知乎上的答友“我做分布式系統(tǒng)”,如是這樣說:
以百度為例楷力,按照 React 目前協(xié)議喊式,要想不讓 Facebook 事實上免費大膽用自己人工智能、自動駕駛方面獲頒的專利萧朝,唯一選擇就是不讓公司的前端用 React岔留。這筆帳,真的不難算检柬。
那小公司呢献联?
說實話,對于小公司而言危險系數就小多了何址,低多了里逆。畢竟國內的小公司的產品,一是用爪,沒有那么火爆和有影響力原押;二是,小公司的產品一般只在國內用偎血。Facebook 都沒有辦法入華诸衔,你擔心個什么呢?從這兩方面講,對于小公司而言確實不必那么擔心。
而且 Facebook 的這款協(xié)議是防御性的讨阻。條款存在只是為了保護自己的核心專利雪营,抑制不必要的訴訟。話雖然這么說,但是具有壟斷性或者話語權的人來說兼贡,難免會為了自己的強大靴跛,而去抑制強大的競爭對手诊霹。就像美國這樣的超級大國來說羞延,在世界各地挑事不就是為了抑制其強大的競爭對手的發(fā)展,而使自己保持超級大國的地位脾还,擁有世界的話語權嗎伴箩?弱小的國家他們一般都不會在意與關心的,強國鄙漏,大國才是他們的目標嗤谚。所以啊,對于大公司來講怔蚌,有可能威脅到 Facebook 的企業(yè)才會觸發(fā)這項條款巩步,而一般的小公司,他也不會放在心上桦踊。
對于小公司來講椅野,目前影響基本可以忽略,也沒必要擔心籍胯。
我竟闪,還學嗎?
今天的話題就是這個杖狼,有人問:我還能繼續(xù)學 RN 技術嗎?說實話炼蛤,技術的發(fā)展離不開大公司的貢獻,也不離開程序員的支持蝶涩。但是一個技術的火爆理朋,需要大公司的引領,一旦 BAT 這樣的大公司停止了使用 React 這項技術绿聘,自然就會引發(fā)很多人不再去學習 React 這項技術嗽上。在國內使用 React 技術的人可能會減少,減少熄攘,減少……
我感覺我們移動端的程序員沒必要擔心炸裆,即使 RN 很火爆的階段,依然無法替代我們的原生開發(fā)鲜屏,目前來說,我感覺學習 RN 不如學習后臺国拇,學習個 Python 對于大家來說更有用洛史。當然,如果你所在的公司堅持使用 RN 技術酱吝,那么你學習也無所謂也殖,所有的編程思想都是想通的,原理都差不多,多學一門技術也無妨忆嗜。
但是己儒,我相信如果一旦像百度和阿里巴巴這樣的大公司停止使用該技術,那么國內很多程序員都會不再學習該技術捆毫,這應該沒什么疑問闪湾。
目前能夠代替 React 的語言和技術有很多,但是找到一個真正能夠代替 RN 的卻很難绩卤。
技術開源途样,產品無罪
這真的很 Facebook ,?在開源的世界濒憋,得有開源的精神何暇。不要以技術威脅別人家的產品。技術并不可恥凛驮,產品也是無罪的裆站。Facebook 作為世界級的大公司,連點自信都沒有嗎黔夭?不要因為擁有者壟斷性的地位宏胯,就拿技術去威脅甚至盜版,侵犯別人家的產品纠修。技術開源胳嘲,產品無罪。
而且Apache 軟件基金會宣布所有使用 Apache 開源協(xié)議的軟件都不得使用帶有 Facebook BSD + 專利許可證模式的組件扣草。連 WordPress 也決定換個技術重寫 Gutenberg了牛,這可能會導致項目進度變慢,明年才能發(fā)布辰妙,但是 WordPress 目標是沒有任何專利問題鹰祸,不會讓專利風險被轉嫁給我們的用戶。
希望 Facebook 能夠覺醒密浑,更換許可證蛙婴,還開源的世界一片凈土和安靜。