抽掉 11 行程式就讓網路大崩塌!一場撞名事件,看開源的威力與權力衝突

上個星期,一位在加州奧克蘭的程式設計師 Azer Koçulu 刪掉了 11 行程式碼,在網路世界興起了一陣風波。
評論
評論

上個星期,一位在加州奧克蘭的程式設計師 Azer Koçulu 從 npm 刪掉了 11 行程式碼,在網路世界興起了一陣風波。

導火線:撞名事件

整件事始於 Koçulu 在套件管理服務 npm(Node Package Manager)的模組「Kik」恰巧和一家叫做 Kik 的通訊軟體 撞名,根據 Quartz,Koçulu 數週前接到 Bob Stratton 專利事務所的信件,希望他能將 Kik 模組下架。Koçulu 在 部落格 上聲稱自己斬釘截鐵地拒絕了要求,不過對方卻回覆「我不是故意找麻煩,但『Kik』是我們註冊的品牌,我們的律師將會去敲你家的大門,並且接管你的帳號。」

在 npm,你可以找到各種 JavaScript 的開源模組,而且廣泛應用在網頁開發上,因為其易用的介面和龐大的免費資源,每月使用次數可以達到數十億。

Koçulu 表示,他製作模組時並不知道有一家公司叫做 Kik,也不想因為一家公司的威脅就改名。不過後來對方聯絡上 npm 客服,而且每封轉寄給他的備份信內都強調他們握有法律資源。最後 npm 在沒有經過他的同意之下,奪走了他對 Kik 模組的所有權。

這導致 Koçulu 決定從 npm 撤下他所有的模組,因為他認為這個事件顯示出在 npm,企業權力仍然比一般人大,而這違反了開源「賦權給群眾」的初衷,Koçulu 也強調這絕非一時衝動,並期許開源社群能在 npm 以外的地方找到出路。

(Photo Credit:opensource.com)

開源的精神和企業的利益

Koçulu 加入和離開 npm 都是依據同一個原則,那就是開源的精神。這樣的精神從早期麻省理工發跡的「駭客道德」開始,到了自由軟體基金會創辦人 Richard Stallman 手上,又有了更具體的闡述:

程式設計師之間的友誼是建立在分享程式碼上。

他反對作業系統商業化,並致力開放程式碼讓更多的人使用。這樣的信念也深深影響了包括 Koçulu 在內的程式設計師。

npm 雖然是一家營利組織,不過它同時也經營免費的開源資料庫。他們的使命之一包括要培養 JavaScript 的開源發展,它獲利的方式和 Github 一樣,是另外提供收費、非開源的程式碼。而在這次的事件中,npm 卻採用了「Kik 模組會讓人誤以為是 Kik 通訊軟體提供的服務,」這樣的說詞,選擇站在企業這邊,讓 Koçulu 大失所望。

開源社群常常批評美國的專利和智慧財產法規,各企業好幾年來不斷發出各種技術專利訴訟,常見例子像是網頁圖片顯示或發送電子報更新的方法等等,讓開發者不勝其擾,認為這是創新突破的絆腳石。

(Photo Credit:  PastaWS)

問題爆發:消失的 left-pad

因為 Azer Koçulu 將所有模組撤下,導致世界各地的工程師開始莫名其妙收到各種錯誤訊息,其中最常見的,就是這一條:

npm ERR! 404 ‘left-pad' is not in the npm registry.

這代表跑程式時需要某段程式碼,但它現在卻不見了。這段消失的程式碼叫做「left-pad」,大部分的人連聽都沒聽過,因此在網路上開始出現尋找 left-pad 的求救訊息。出乎意料地,這段程式碼其實很簡單,它的功能就是在一串文字前面加上某些字元,比如開頭自動加 0 或是郵遞區號之類,而且只有短短 11 行。

因為許多龐大的程式都是在前人的程式碼之上,像堆積木一樣層層累積起來的,只要其中一塊突然消失, 就算是簡單的程式碼也會對整個生態造成很大的影響。比如 Facebook 使用的 React 便是廣為使用的套件之一 ,在這次 left-pad 事件中也受到了波及。更諷刺的是,通訊軟體 Kik 的開發工作也因為 left-pad 碰到問題。

事件發生約莫 2 小時後,npm 重新上架了 left-pad,這件事史無前例,npm 的技術長 Laurie Voss 還在 Twitter 上說「一位作者的個人意願和廣大的社群利益產生了衝突,而我們選擇滿足多數人的需求。」

(Photo Credit: Peter McCarthy)

互相依存的網路,牽一髮動全身

事件告一段落,大家便開始 檢討 起這看似荒謬的災難:沒沒無聞、短短幾行的 left-pad 程式碼,竟造成網路世界這麼大的動盪。這不只是一起企業與開源社群的爭執,它還反映出大型軟體對小套件依賴過深的隱憂。

有些人怪罪 Kik 用法律威脅開源專案;也有些人認為 npm 不該輕易答應 Kik 的要求,應該有更好的解決方法。更有不少人認為這些重大專案要是親自寫了這 11 行的簡單程式,就不會惹出這麼多麻煩,並對此大做文章,引起一陣惡搞風潮,還有人半開玩笑地建立了 left-pad.io,號稱「為了避免重蹈覆轍,這裡提供所有 left-pad 能做到的功能。」

最後,Kik 的通訊軟體主管 Michael Roberts 在部落格回應道,他相當後悔當初沒有直接和 Koçulu 聯繫,才產生了這麼多誤會,也表示認同開源社群的精神是「彼此幫助」。

歡迎加入「Inside」Line 官方帳號,關注最新創業、科技、網路、工作訊息

好友人數

 


上雲猶如太空探險之旅,iKala Cloud AIOps Services協助企業輕鬆穿梭多雲環境

人類從上個世紀積極探索外太空,為了將太空人送上天際必須克服各式挑戰,而現代企業要從「地端」飛向「雲端」,困難程度有過之而無不及。iKala Cloud AIOps Services 提供多項關鍵服務,幫助 IT 團隊輕鬆悠遊多雲環境。
評論
評論

探索外太空,曾經是國際間的科技競賽,近年 Tesla 創辦人馬斯克更準備把太空旅行當成商業服務,預計 2026 年要帶著人類登陸火星。完成一趟星際旅行,需仰賴嶄新的科技及跨科學精密計算,但你知道嗎?現代企業要從「地端」飛上「雲端」,其實挑戰程度不亞於飛向太空。

對企業資訊管理者來說,有限的 IT 資源無法應付繁重的維運項目,加上同時管理公私有雲架構更顯困難、資安管理複雜,例如需要人工執行過濾警示,各種大大小小挑戰不勝枚舉。換言之,企業想航行雲端,就像打造火箭需要龐大資源及人力。不過,現在有更輕鬆穿梭雲端的方式,就是使用雲端技術服務商 iKala 所提供的 AIOps Services(自動化雲端託管服務)

火箭升空前的全盤規劃:iKala AIOps 擬定系統架構規劃、教育訓練

完成一趟太空之旅,必須做足各種研究,例如精準計算飛行軌道、降落定位點、燃料耗用數、與地球通訊設定…等。

對沒有雲端架構經驗的企業來說,就如同當時的科學家,必須用土法煉鋼的方式檢查數據是否有誤。換言之,企業 IT 在升級之前,就需要有經驗的「雲端顧問」來釐清需求、協助規劃「升雲」之旅。而 iKala 就是企業的最佳雲端顧問,旗下 iKala Cloud AIOps Services 會搭配一位專責的技術客戶經理,協助企業提供即時的技術服務與專業建議。

究竟 IT 升級之前,iKala Cloud AIOps Services 有哪些服務?首先是「系統設計規劃」,涵蓋系統架構規劃書、系統上線/遷移計畫書,可因應客戶產業需求,提供對應的解決方案以及顧問服務。而越來越多企業會使用到 Google 的雲端資源,iKala 也有提供 Google 雲端平台訓練服務。

GCP 教育訓練課程多元,包含 GCP 基礎架構(網路設定規劃、權限控管、計算資源等)、大數據與機器學習(大數據分析 Pipeline、BigQuery、ML 模型訓練與應用)、軟體開發技術與流程(容器化、CI/CD、DevOps)等。因為 iKala 團隊取得 10 多項 Google 專業技術證照,才能在企業規劃雲端轉型的前期就一步到位,規劃出整體藍圖,提供更全面的解決方案建議。

火箭升空中的精密操作:iKala AIOps 輔助即時技術維運、資安管理

當火箭準備就緒、升空倒數之際便是決定這趟太空之旅能否成功的關鍵時刻。從太空人的行前訓練與身體檢查,到火箭的引擎測試完成,如果有靜電或一點火花都可能引發爆炸事故。光是在升空階段,太空總部就要有結構、熱控、姿態控制、資料處理、電能、遙傳指令、推進以及飛行軟體等龐大的系統工程師在旁待命。

換言之,企業 IT 移轉雲端過程就像火箭發射的當下,需要有專業、經驗足夠的工程師,才能即時協助企業順利上雲,甚至快速排除緊急的狀況。對此,iKala Cloud AIOps Services 提供兩大關鍵的幫助:技術維運、資訊安全管理。

iKala Cloud AIOps Services 的技術維運服務內容,提供 7 x 24 的 Help Desk,像是緊急 GCP 問題報修、產品使用技術諮詢;或是事故管理,如搭建監控系統、設定規劃告警政策、規劃日誌收集與留存。每月也會提供企業維運報告,報告書有營運效率檢討、流程優化、新服務項目、營運系統建議等。

至於資訊安全管理方面,除了基本的 GCP 專案權限控管掃描、應用程式 OWASP(Open Web Application Security Project)前 10 大項目資安弱點掃描,同時也針對近年相當受重視的 DDoS 防護,iKala 可協助企業導入 GCP 平台的 DDOS 防禦機制。iKala 掌握多年軟體開發和雲端管理經驗,可分享給客戶 DevOps、AI 第一手實務的作法與經驗。

火箭升空後啟動自動導航:iKala AIOps 提供 AI 自動化監控、帳務管理

當火箭成功升空後,太空人為了執行下一階段任務,這時候火箭就需要轉換成自動駕駛模式,或在探索其他星球時,出動機器人來協助執行人力無法負荷的任務,讓太空人專心處理更關鍵的工作。換言之,上雲後的 IT 架構就像升空後的火箭,應該減少 IT 人員的負擔,甚至不需浪費例行時間,就能夠快速掌握整體資訊系統的運作狀況。

不過要讓 IT 架構像火箭具備自動駕駛功能,勢必需要相當高的技術門檻,而 iKala Cloud AIOps Services 正好有相對應的服務。如此一來,IT 人員的生產力就能投入在更具商業價值的研發專案,讓 IT 部門轉型成可創造產值的單位,而非單純的後勤支援角色。

盤點 iKala Cloud AIOps Services 在此環節共有三大類服務。其中一項是 AI 自動化監控與通報服務,幫助 IT 成員主動監控系統,掌握是否有異常操作狀況。其二是帳務方面的管理,幫助企業產出雲端服務月用量帳務分析報告,針對軟體授權需求,整合出帳至  Marketplace 與第三方服務商,自動化做到 License 採購管理。

第三項則是針對服務級別協定(SLA)iKala Cloud AIOps Services 提供 24 x 7、5 x 8 兩種模式,在重大 GCP 服務異常中斷服務時,提供電話、e-mail 聯繫。而且每月會舉辦 1 次月會(以 on-site 或遠端視訊會議方式)提交書面報告。目前 iKala 的企業客戶服務超過 400 多家、涵蓋數 10 種產業,可說是企業成功上雲,最能安心託付的合作夥伴。 

事實上,雲端託管服務(CMS)是目前最夯的新趨勢,根據市調公司 MarketsandMarkets Research 報告指出,全球雲端託管服務的市場規模,預計從 2020 年的 624 億美元,到 2025 年成長至 1,162 億美元,複合年增長率(CAGR)為 13.3%。代表未來有大量企業採用 CMS,以降低 IT 基礎設施的投資成本及風險,藉此提升企業營運的競爭力。

由此看來,企業的數位轉型,就像上個世紀的太空軍備競賽一樣。「時間就是決勝點」,越晚起步的公司與其他數位能力領先群的企業相比,差距只會越來越大。現在就攜手 iKala 嘗試 iKala Cloud AIOps Services,打造穩定的 IT 系統、邁向數據驅動的商業模式,讓企業在數位世代站穩腳步,輕鬆穿梭多雲之間。

了解更多 iKala Cloud AIOps Services