首頁 > 網頁教程 > JavaScript > 月下載超300萬的JS Standard要在安裝時植入廣告,開發者不干了

月下載超300萬的JS Standard要在安裝時植入廣告,開發者不干了

時間:2019-08-30    作者:小智   來源:InfoQ公眾號

JS Standard 是一個月下載量超過 300 萬的流行 JS 庫,該項目在 GitHub 上也有接近 2.2 萬 Star,但其同時也被詬病為誤導新手。近期該項目陷入了爭議的旋渦,理由是項目團隊發現開源模式難以周轉,因而選擇在安裝時植入廣告以換取收入。

1 開源 + 廣告,用戶說別鬧

JavaScript Standard Style 是一個月下載量超過 300 萬的流行 JS 庫,該項目在 GitHub 上擁有接近 2.2 萬 Star。它是一個 JavaScript 代碼規范,自帶 linter & 代碼自動修正,根據其 ReadMe 文檔,該工具通過以下三種方式為開發者及其團隊節省大量時間:

  • 無須配置。史上最便捷的統一代碼風格的方式,輕松擁有。

  • 自動的代碼格式化。只需運行 standard --fix 從此和臟亂差的代碼說再見。

  • 提前發現風格及程序問題。減少代碼審查時的反反復復修改過程,節約時間。

包括 GitHub、Node.js、MongoDB、Elastic 等在內的多個企業、組織在使用其作為 JS 開發規范。該項目在 GitHub 的代碼檢查類工具 展示列表中也排名第一。

但最近,該項目卻陷入了輿論危機,因為該項目官方團隊決定在項目中展示廣告,以獲取收入支持項目發展。

Standard 項目官方人員在 GitHub 上發布了 npm install funding #1381 的 issue,表達了目前團隊維持開源的模式不可行,為了”更好地“運轉,他們決定在項目中展示廣告,顯示來自開源贊助商的消息。

示例

該項目的成員 feross 寫道:

無論何時安裝 standard 14,我們都將顯示來自支持開源的公司的消息。贊助的資金將直接支付維護人員用在編寫新特性、修復 bug、回答用戶問題和改進文檔上的時間。這個實驗的目的是回答一個問題,即:我們是否可以使用不跟蹤用戶或收集數據的廣告,為開源軟件募集資金?

截止目前,Linode 和 LogRocket 兩個贊助商的廣告已經生成。與此同時,來自社區開發者的反對聲浪也開始此起彼伏。作者發起的討論獲得了 49 個贊,以及 713 個踩。

2 開發者怎么看?

在這個 npm install funding #1381 的 issue 下面,開發者們非常明確地表達了自己的反對意見,用數量堪稱碾壓的踩表明了自己的鮮明態度。

支持者留言的贊 / 踩情況

大多數開發者表示不能接受開源項目中出現其他贊助商的廣告,因為這太奇怪了(It's weird)。

ID:morgansliman 的用戶寫道:

無可否認,我對這個開源項目沒有做出過巨大的貢獻,因此我可能沒多少話語權。但我仍然不希望這個解決方案成為最后的標準。我認為在上面加廣告不是解決問題的辦法,起碼在我看來不是。對我而言,Yarn 或者 Standard 13 將成為我的“標準”,直到廣告被移除以后。

ID:mhogerheijde 的用戶表示:

任何我不想看到廣告的地方,我的終端絕對排名第一。另外我也搞不懂這個廣告跟這個項目有什么關系,我花了很長時間才搞明白這個廣告是怎么出現的。

而在 Reddit 上,開發者們表達了同樣的關心:

  • 如果廣告開始出現在我的 build log 里,我會非常擔心。我看不出作者是如何期望事情進展順利的。

  • 知道我想要什么嗎?到處都是廣告!想象一下,調試內核驅動程序問題時,必須每 30 秒停止一次,并觀看一個 10 分鐘的商業廣告。爽不爽?

  • 我為這類廣告設計了一個廣告攔截器,希望能阻止這種現象的發生。

    https://github.com/kethinov/no-cli-ads

有一位 ID:crabbytag 的用戶說得很有道理:

這讓我想起互聯網早期,網站通常只用添加一兩個 banner 廣告就能賺到收入,因為人們點擊 banner 廣告純粹出于好奇。隨著互聯網的發展,這種新奇感消退,網站運營人員不得不添加更多具有侵略性的廣告,比如動畫橫幅、彈出窗口、彈出菜單等等。

試想一下,該項目的團隊可以通過這個廣告植入獲取收入,如果其他庫的作者也有樣學樣,那么很快所有的開源軟件就會變得跟現在的互聯網廣告一樣。

ID:BadMoonRosin 的用戶則更為犀利:

這個項目甚至都算不上一個軟件項目,不就是一些 ESLint 的配置文件和腳本嘛,取了個名字搞了個網站好像就成了 JavaScript 的一部分了,對外包裝得自己如何“權威”、“官方”、“認可”等等,這不誤導人嗎?他們居然還用這個賺了好幾千美刀?簡直了……

3開源軟件越來越商業友好,誰對開發者友好?

毫無疑問,開源軟件的概念已經徹底改變了軟件世界。在軟件世界接受這種新的格局之前,它們花了數十億美元與這個想法斗爭了好多年。但是,現在有不少人開始懷疑開源軟件的本質,幾乎所有人都可以使用開源軟件,并將它們用于任何目的。

開源與商業化似乎一直以來都是一對矛盾,許多開發者認為開源的就應該是免費的,但開源項目沒有商業化的能力卻始終難以為繼。開源軟件與文學作品版權的區別在于,舊文學作品不會因為時間的推移而喪失魅力,但軟件項目卻需要長時間的更新與維護。

小項目倒無關緊要,但像 Python 這樣的大項目通常是需要由基金會提供全面的支持。然而,這些對整個世界起到至關重要作用的大型項目卻資金匱乏。這些項目只有少數維護人員,而這些人在完成本職工作的同時還要花精力來維護這些開源項目。

2018 年,兩家著名的開源軟件廠商修改了開源協議,矛頭直指云廠商,Redis Labs 首席執行官 Ofer Bengal 甚至直接表示:多年來,我們就像個傻子一樣,他們拿著我們開發的東西大賺了一筆”。

MongoDB 總裁兼首席執行官 Dev Ittycheria 曾說:“每當一個新的開源項目變得非常流行時,云提供商就會剝奪我們的技術,將免費軟件放在他們的平臺上,然后從中獲取大部分(如果不是全部)價值,但幾乎不回饋開源社區”。

哪怕是這些大型的開源企業,在開源與商業化的探索中都艱難前行,更何況那些由個人維護的小項目。隨著 Nginx 等開源廠商的“委身賤賣”,開源軟件的商業化前景更加不容樂觀。有觀點表示,現在的開源軟件越來越商業友好,開源軟件們開始構筑自己的“付費墻”,未來會發展得更好。

可開源軟件越來越商業友好,誰對開發者友好呢?值得深思。

相關推薦
用Javascript實現文字放大的效果
分享10款精美的焦點幻燈和圖片特效jQuery插件
利用javascript技術實現網頁圖片預加載功能
如何用JS獲取當前頁面的URL網址參數
11種通過JavaScript特效控制內容展示的方法
JavaScript編程中的for與in循環的用法實例
用JS代碼簡單實現checkbox的全選與反選
如何處理JS的'null'為空或不是對象
用javascript代碼實現對瀏覽器判斷的思路
25款有趣好玩的JavaScript小游戲
JS代碼的window.location屬性詳解
用javascript把XML解析為JSON的方法
5大當下最流行的JavaScript框架介紹
19個輕量級用于web開發的JavaScript庫
20款華麗酷炫的jQuery圖片相冊插件
用Js操作Cookie的代碼教程附有詳細注釋
JS教程:NodeList集合跟Array數組的區別
深入理解JavaScript的caller,callee,call,apply函數
獲取Javscript執行函數名稱的代碼實例
web開發常用的Javascript函數大全
JavaScript的split函數詳解及代碼實例
JavaScript中indexOf函數
用JavaScript實現表單驗證電話號碼的代碼實例
用正則表達式實現JavaScript表單驗證中文大寫字母
寫給JavaScript庫開發者們的11條規則
理解JavaScript中0...n屬性及代碼實例
新手教程:107條Javascript的常用語句
js禁用下拉框的代碼實例
js編程經驗分享 原始Ajax與jQuery中的Ajax比較
Javascript新手教程:從入門到精通(完整版)
10個超級實用的javascript動畫框架分享
10款基于Javascript的超酷繪畫和畫布類庫
12個移動應用開發的jQuery和HTML5框架
10個基于jQuery的標簽頁tabs和手風琴效果推薦
13款優秀實用的JavaScript圖表和圖形繪制插件推薦
12個Ajax學習者必備的優秀網站

精彩推薦

熱門教程

忍者法宝试玩
3d过滤器缩水软件下载 欢乐彩官网aqq 2019绩优蓝筹股排名 天津麻将手机游戏 广西快三三号码推荐 _博彩现金网 广西3d开奖结果 成都麻将怎么玩 贵州麻将下载 香港六合彩八肖中特 快乐10分开奖查询 赛车竞猜彩票骗局 双色球25选7 卡五星手机下载 哈灵浙江麻将下载app 体彩新11选5技法