火箭應該只使用自由軟體嗎?自由軟體與家電

有可能存在完全使用自由軟體的火箭嗎?我們應該要求 SpaceX 將其衛星發射火箭中的軟體解放出來嗎?我不認為問我這個問題的人是認真的,但是回答這個問題可能會闡明關於人們今天真正購買的產品類型的類似問題。

據我所知,軟體本身無法產生推力。火箭必然主要是一種物理裝置,因此它不能字面上自由軟體。但它可能包含電腦化的控制和遙測系統,因此包含軟體。

如果有人要賣給我火箭,我會像對待任何其他家電一樣對待它。例如,考慮一個恆溫器。如果它包含要修改的軟體,則其中的所有軟體都需要是自由的,並且我應該獨自擁有決定是否安裝某些變更的權力。但是,如果其中的軟體不打算被更改,並且它通過某些有限的介面進行通信,例如控制面板上的按鈕、電視遙控器或具有固定命令集的 USB 介面,我不會認為了解恆溫器內部是什麼至關重要:無論它包含專用晶片還是執行代碼的處理器,對我作為使用者來說都沒有直接的區別。如果它確實包含代碼,它也可能有一個專用晶片來代替,所以我不需要關心它是哪個。

我會反對該恆溫器將有關我的活動的數據發送給某人,無論這是如何實現的。再次強調,專用晶片或特殊代碼沒有直接的區別。其中的自由軟體可以為我提供一種關閉監視的方式,但這不是唯一的方法。另一種方法是斷開其數位通信天線,或將其關閉。

如果火箭包含軟體,將其作為自由軟體發布可以為社群做出貢獻,我們應該感謝這種貢獻——但這是一個不同的問題。這樣的發布也使購買了火箭的人有可能改進其中的軟體,儘管許多火箭故障的不可逆轉性可能會阻止人們進行修改。

讀者指出,SpaceX 獲得了美國政府重要的財政支持來開發其火箭。理所當然地,接受這種支持應該要求 SpaceX 在自由授權下發布火箭軟體,即使它僅在其自己的火箭內部使用該軟體。

鑑於特斯拉汽車的經驗,特斯拉汽車充滿了監視和追蹤惡意軟體,特斯拉可以更改這些軟體,但車主不能,我猜想 SpaceX 火箭也有這種情況。如果有一天火箭像今天的汽車和拖拉機一樣出售,那麼其中的軟體將是不公正的,並且它很可能成為惡意軟體。如果製造商可以在其中安裝修改後的軟體,但車主不能,那也將是不公正的。人們開始認識到這一點:看看維修權運動,它僅要求這些自由的開始(遠遠少於解放汽車的軟體),但仍然面臨著一場艱苦的鬥爭。

但是,我不認為 SpaceX 出售火箭;我認為它提供在其自己的火箭中發射酬載的服務。這使得問題完全不同:如果您是客戶,您沒有操作火箭; SpaceX 正在做這件事。

SpaceX 使用的火箭不像您自己的汽車或廂型車,甚至不像租給您的汽車或廂型車。相反,它相當於搬家公司的廂型車,目前正在將您的書籍和家具運送到您指定的目的地。應該是由搬家公司來控制該廂型車中的軟體——而不是當下的客戶。

將把您的東西運送到外蒙古或外太空的工作視為一項服務是有道理的,因為這項工作主要是獨立的並且在很大程度上獨立於客戶(「很大程度上」並不意味著「絕對」或「100%」),因此工作的指示很簡單(在 D 日期之前將這些箱子送到 A 地址)。

如果 SpaceX 以自由授權發布了火箭軟體,那將賦予您製作、使用和分發修改版本的權利,但不會賦予您修改在 SpaceX 火箭中運行的程式碼的權利。

但是,未來假設的太空船可能會進行一種活動,這種活動永遠不應被視為服務:私人計算活動。那是因為私人計算活動正是您可以在您自己的電腦上以自由的方式進行的活動,前提是有合適的自由軟體。

當一個程式的任務是為您進行計算時,您有權要求控制它做什麼以及如何做,而不僅僅是它按照自己的理解來服從您的命令。換句話說,您有權在您控制的電腦上使用您自己的自由程式副本執行。

難怪有些公司希望您將對您的計算活動的控制權讓給他們,方法是將這些活動標記為在他們控制的伺服器上使用他們控制的程式完成的「服務」。甚至像文字編輯這樣由使用者精確指導的事情也是如此!這是一種讓您用他們的力量取代您的自由的計畫。我們將其稱為「服務即軟體替代品」,簡稱 SaaSS(請參閱「伺服器實際上為誰服務?」),我們拒絕它。

例如,想像一下假設的 SpaceX 智慧太空船,它作為一項「服務」想要了解您所有的業務,以便 SpaceX 伺服器可以為您決定在哪些行星上購買和出售哪些貨物。該規劃服務將是 SaaSS — 因此是一種損害服務。您應該使用您自己的自由軟體副本在您自己的電腦上進行規劃,而不是使用該損害服務。

然後,SpaceX 和其他公司可以合法地為您提供運輸貨物的非計算服務,您可以有時使用它;或者您可以選擇其他方法,也許購買一艘太空船並自己操作它。