Должны ли в ракетах быть только свободные программы? Свободные программы и бытовая техника

Ричард Столмен

Могла бы быть ракета полностью на свободных программах? Следует ли нам требовать, чтобы в SpaceX освобождали программы в своих ракетах-носителях? Я не думаю, что меня спрашивали об этом всерьез, но ответ на этот вопрос может осветить сходные проблемы разного рода изделий, которые люди покупают в реальной жизни.

Насколько я знаю, программы как таковые не способны создавать тягу. Ракета по необходимости является принципиально физическим устройством, так что она не может буквально быть свободной программой. Но в ее состав могут входить компьютеризованные системы управления и телеметрии, а тем самым и программы.

Если бы кто-то предложил продать мне ракету, я относился бы к ней как к любой другой технике. Рассмотрим, к примеру, кондиционер. Если он содержит программы, которые будут изменяться, то все программы в нем должны быть свободны, и я сам должен быть вправе решать, вносить ли какое-то изменение. Однако если программы в нем никогда не предполагается менять и он общается только по ограниченному протоколу, такому как кнопки на панели управления, пульт дистанционного управления, протокол USB с фиксированным набором команд, то я бы не считал жизненно важным знать, что̀ находится внутри кондиционера: содержит он специализированную микросхему или процессор, выполняющий программу,— я как пользователь непосредственно различий не вижу. Если он и содержит программу, ее с таким же успехом могла бы заменить специализированная микросхема, так что мне все равно, как именно это реализовано.

Я возражал бы, если бы этот кондиционер отправлял кому-то сведения о моей деятельности, независимо от того, как это реализовано. Опять-таки, нет непосредственной разницы, специализированная это микросхема или специализированная программа. Свободные программы в нем могли бы дать мне способ отключить слежку, но это не единственный способ. Другой способ — отсоединить или отключить его антенны цифровой связи.

Если ракета содержит программы, выпуск их в качестве свободных мог бы быть вкладом в сообщество и мы высоко ценили бы этот вклад, но это уже другая тема. Такой выпуск делает также возможным для людей, купивших эти ракеты, работать над улучшением программ в них, хотя необратимая природа многих сбоев в ракетах может отбить охоту копаться в них.

Читатели обратили внимание, что SpaceX получала важную финансовую поддержку со стороны правительства США для разработки своих ракет. По-хорошему, условием этой поддержки должен быть выпуск компанией SpaceX программ ракеты под свободной лицензией, даже если она применяет эти программы только внутри своих собственных ракет.

По опыту автомобилей Tesla, которые битком набиты вредоносными программами слежки и наблюдения — эти программы может изменять компания Tesla, но не владелец — я предполагаю, что в ракетах SpaceX это тоже есть. Если когда-нибудь ракеты будут продавать, как сегодня автомобили и трактора, программы в них были бы несправедливы, они, вероятно, были бы вредоносны. Если бы измененные программы мог устанавливать производитель, но не владелец, это тоже было бы несправедливо. Это начинают признавать: возьмем, к примеру, движение за право ремонта, которое борется только за начало этих свобод (гораздо меньше, чем освобождение программ автомобиля) и тем не менее встречает жесткий отпор.

Однако, по-моему, SpaceX ракеты не продает; по-моему, компания предоставляет услуги по запуску аппаратов на своих ракетах. Это полностью меняет дело: если вы клиент, вы не ведете ракету; это делает SpaceX.

Ракета, которой пользуется компания SpaceX,— это не то же, что ваш собственный автомобиль или грузовик, или даже автомобиль или грузовик, сданный вам в прокат. Это сравнимо с грузовиком трансагентства, в котором в настоящий момент транспортируются ваши книги или мебель по указанному вами назначению. Контроля над программами в таком грузовике заслуживает трансагентство, а не текущий клиент.

Есть смысл рассматривать работу по перевозке ваших вещей в открытое море или в открытый космос как услугу, потому что она в основном самостоятельна и в основном независима от клиента (“в основном” не значит “абсолютно” или “на 100%”), так что инструкции по работе просты (доставить эти ящики по адресу А к сроку С).

Если SpaceX выпустила бы программы ракет под свободной лицензией, это дало бы вам право делать, применять и распространять измененные версии, но не дало бы вам права изменять программы, работающие в ракете SpaceX.

Но есть вид деятельности, которым гипотетический космический аппарат будущего мог бы заниматься и который никогда не должен рассматриваться как услуга: частная вычислительная деятельность. Дело в том, что частная вычислительная деятельность — это в точности то, что вы могли бы свободно делать на своем собственном компьютере, когда есть подходящие свободные программы.

Когда задача программы — проводить для вас вычисления, вы вправе требовать контроля над тем, что̀ она делает и как, а не только того, чтобы она подчинялась вашим приказам так, как она их понимает. Другими словами, вы вправе пользоваться своей собственной копией свободной программы, работающей на компьютере под вашим контролем.

Не удивительно, что есть компании, которые хотели бы, чтобы вы уступили им контроль над своей вычислительной деятельностью, помечая эту деятельность как “услуги”, выполняемые на их серверах программами, которые они контролируют. Даже такие вещи, которыми пользователь управляет в самых мелочах, как редактирование текста! По этой схеме вас заставляют заменить их властью вашу свободу. Мы называем это “услугой-заменой программ” (см. “Кого на самом деле обслуживает сервер?”), и мы отвергаем это.

Например, представьте себе гипотетический “интеллектуальный космический корабль” компании SpaceX, который в качестве “услуги” желает знать все о вашем предприятии, чтобы серверы SpaceX могли решать за вас, какие грузы покупать и продавать на каких планетах. Такая услуга планирования была бы услугой-заменой программ — следовательно, медвежьей услугой. Вместо пользования ею вам следует проводить это планирование с помощью своей копии свободной программы на своем собственном компьютере.

Тогда SpaceX и другие могли бы правомерно предлагать вам невычислительную услугу транспортировки грузов, а вы могли бы иногда ею пользоваться; или вы могли бы выбрать какой-то другой метод, например, купить космический корабль и работать на нем самим.