Livre como em Liberdade em Russo: Capítulo 1. A Impressora Fatal

Impressora Fatal

Tema os dinamarqueses trazendo presentes.
– Virgílio, "Eneida"

Novamente a nova impressora atolou o papel.

Uma hora antes, Richard Stallman, programador do Laboratório Artificial
MIT Intelligence (AI Labs), enviou um documento de 50 páginas
impresso na impressora do escritório e mergulhou no trabalho. E agora Ricardo
Desviei os olhos do que estava fazendo, fui até a impressora e vi uma visão muito desagradável:
em vez das tão esperadas 50 páginas impressas, restavam apenas 4 na bandeja
folhas prontas. E aqueles claramente se referiam ao documento de outra pessoa.
O arquivo de 50 páginas de Richard se confundiu com o arquivo semi-impresso de alguém em
complexidades da rede do escritório, e a impressora sucumbiu a esse problema.

Esperar que uma máquina faça seu trabalho é algo comum.
para um programador, e Stallman estava certo em resolver esse problema
estoicamente. Mas uma coisa é quando você dá uma tarefa a uma máquina e a executa
seus próprios assuntos, e é completamente diferente quando você tem que ficar ao lado
máquina e controlá-la. Esta não foi a primeira vez que Richard teve que
fique na frente da impressora e observe as páginas saírem uma por uma
um. Como qualquer bom técnico, Stallman tinha grande consideração por
eficiência de dispositivos e programas. Não é de admirar que isso
outra interrupção no processo de trabalho despertou o desejo ardente de Richard
entre no interior da impressora e coloque-a na ordem correta.

Mas, infelizmente, Stallman era um programador, não um engenheiro mecânico. É por isso
Tudo o que restou foi observar as páginas rastejando e pensar sobre
outras maneiras de resolver um problema irritante.

Mas os funcionários do Laboratório de IA saudaram esta impressora com alegria e
com entusiasmo! Foi apresentado pela Xerox, foi o seu avanço
desenvolvimento – modificação de uma fotocopiadora rápida. A impressora não só fez
cópias, mas também transformou dados virtuais de arquivos de rede do escritório em
documentos de excelente aparência. Este dispositivo parecia ousado
espírito inovador do famoso laboratório Xerox de Palo Alto, ele foi
um prenúncio de uma revolução na impressão desktop que revolucionaria completamente
toda a indústria até o final da década.

Ardendo de impaciência, os programadores do Laboratório imediatamente ativaram o novo
impressora em uma rede de escritório complexa. Os resultados superaram os mais ousados
expectativas. As páginas voavam a uma velocidade de 1 por segundo, os documentos
começou a imprimir 10 vezes mais rápido. Além disso, o carro era extremamente
pedante em seu trabalho: os círculos pareciam círculos, não ovais, mas
as linhas retas não se parecem mais com sinusóides de baixa amplitude.

Em todos os sentidos, o presente da Xerox era uma oferta irrecusável.
recusar.

No entanto, com o tempo, o entusiasmo começou a diminuir. Assim que a impressora ficou
carga ao máximo, surgiram problemas. O que mais me irritou
o fato de o aparelho mastigar o papel com muita facilidade. Pensamento de Engenharia
os programadores identificaram rapidamente a raiz do problema. O fato é que
As fotocopiadoras tradicionalmente exigem a presença constante de uma pessoa por perto.
Inclusive para corrigir o papel se necessário. E
quando a Xerox começou a transformar uma fotocopiadora em uma impressora, os engenheiros
as empresas não prestaram atenção a esse ponto e focaram em
resolvendo outros problemas mais urgentes para a impressora. Engenharia falando
linguagem, a nova impressora Xerox contou com a participação humana constante
originalmente embutido no mecanismo.

Ao transformar uma fotocopiadora numa impressora, os engenheiros da Xerox introduziram uma coisa
uma mudança que teve consequências de longo alcance. Em vez de,
para subordinar o aparelho a um único operador, ele foi subordinado
para todos os usuários da rede do escritório. O usuário não estava mais perto de
máquina, controlando sua operação, agora ele está através de uma intrincada rede de escritórios
enviou um trabalho de impressão, esperando que o documento fosse impresso assim
como requerido. Então o usuário foi até a impressora para pegar o produto finalizado
documento inteiro, mas em vez disso foi encontrado impresso seletivamente
folhas.

É improvável que Stallman tenha sido o único no AI Lab que percebeu
problema, mas ele também pensou em sua solução. Alguns anos antes
Richard teve a oportunidade de resolver um problema semelhante com sua impressora anterior. Para
ele editou isso em seu computador pessoal de trabalho PDP-11
um programa que rodava em um mainframe PDP-10 e controlava a impressora.
Stallman não conseguiu resolver o problema de mascar papel; em vez disso,
isso ele inseriu um código que forçava o PDP-11 de vez em quando
verifique o status da impressora. Se a máquina mastigar papel, o programa
Acabei de enviar uma notificação para os PDP-11 em funcionamento como “a impressora está mastigando
papel, precisa de conserto." A solução revelou-se eficaz - notificação
foi diretamente para usuários que usaram ativamente a impressora, então
que suas travessuras com o papel muitas vezes eram interrompidas imediatamente.

É claro que esta foi uma solução ad hoc - o que os programadores chamam
“uma muleta”, mas a muleta revelou-se bastante elegante. Ele não corrigiu
houve um problema com o mecanismo da impressora, mas fiz o melhor que pude
to do - feedback informativo estabelecido entre o usuário e a máquina.
Algumas linhas extras de código salvaram os trabalhadores do Laboratório
AI por 10 a 15 minutos de trabalho semanalmente, evitando
tendo que correr constantemente para verificar a impressora. Do ponto de vista
programador, a decisão de Stallman foi baseada na sabedoria coletiva
Laboratórios.

Relembrando essa história, Richard disse: “Quando você receber tal mensagem, você não
tive que contar com outra pessoa para consertar a impressora. Você precisa
foi fácil levantar e ir até a impressora. Um ou dois minutos depois
assim que o impressor começou a mastigar o papel, duas ou três pessoas vieram até ele
funcionários. Pelo menos um deles sabia exatamente o que precisava ser feito.”

Soluções inteligentes como essas têm sido a marca registrada do AI Lab e de seus
programadores. Em geral, os melhores programadores do Laboratório são vários
tratou o termo “programador” com desprezo, preferindo-o
gíria para "hacker". Esta definição refletia com mais precisão a essência do trabalho, que
incluiu uma variedade de atividades, desde diversões intelectuais sofisticadas até
melhorias meticulosas em programas e computadores. Também sentiu
uma crença antiquada na engenhosidade americana. Hacker
Não basta apenas escrever um programa que funcione. Tentativas de hackers
mostre o poder do seu intelecto para você mesmo e para outros hackers, colocando
assumir tarefas muito mais complexas e difíceis - por exemplo, fazer
programa ao mesmo tempo rápido, compacto, poderoso e
lindo.

Empresas como a Xerox doaram intencionalmente seus produtos para grandes comunidades
hackers. Foi um cálculo que os hackers começariam a usá-lo,
Eles se apegarão a ela e depois virão trabalhar para a empresa. Nos anos 60 e
no início dos anos 70, os hackers costumavam escrever informações úteis e de alta qualidade
programas que os fabricantes os distribuíram voluntariamente entre seus
clientes.

Então, diante de uma nova impressora Xerox que masca papel,
Stallman imediatamente pensou em fazer seu velho truque com ele - “hackear”
programa de controle de dispositivo. No entanto, uma descoberta desagradável o aguardava.
– a impressora não veio com nenhum software, pelo menos não neste
formulário para que Stallman ou outro programador possa lê-lo e
editar. Até este ponto, a maioria das empresas considerava boas
fornecer arquivos com código-fonte em um tom legível por humanos,
que forneceu informações completas sobre os comandos do programa e os correspondentes
funções da máquina. Mas desta vez a Xerox forneceu o programa apenas em
compilado, formato binário. Se um programador tentasse ler
nesses arquivos, ele só veria fluxos intermináveis ​​de zeros e uns,
compreensível para uma máquina, mas não para uma pessoa.

Existem programas chamados "desmontadores" que traduzem
uns e zeros em instruções de máquina de baixo nível, mas descobrir o que
estas instruções fazem - um processo muito longo e difícil chamado
"Engenharia reversa". A engenharia reversa de um programa de impressora é fácil
poderia ter levado muito mais tempo do que a correção total da mastigação
papel nos próximos 5 anos. Richard não estava desesperado o suficiente
decidir dar esse passo e, portanto, simplesmente deixou o problema de lado
caixa longa.

A política hostil da Xerox contrastava fortemente com a prática normal
comunidades de hackers. Por exemplo, para desenvolver para pessoal
programas de computador PDP-11 para controlar uma impressora antiga e
terminais, o AI Lab precisava de um montador cruzado que montasse
programas para o PDP-11 no mainframe PDP-10. Hackers de laboratório poderiam
escreva você mesmo um cross-assembler, mas Stallman, sendo um estudante em Harvard,
Encontrei um programa semelhante no laboratório de informática da universidade. Ela
foi escrito para o mesmo mainframe, PDP-10, mas para um diferente
sistema operacional. Richard não tinha ideia de quem escreveu este programa,
porque o código fonte não disse nada sobre isso. Ele acabou de trazer
uma cópia do código-fonte para o Laboratório, editei-o e lancei-o em
PDP-10. Sem complicações e preocupações desnecessárias, o Laboratório recebeu o programa,
que era necessário para o funcionamento da infra-estrutura do escritório. Stallman mesmo
tornou o programa mais poderoso adicionando várias funções que não eram
estava no original. “Usamos esse programa há anos”,
– ele diz não sem orgulho.

Aos olhos de um programador dos anos 70, este modelo de distribuição
o código do programa não era diferente das boas relações de vizinhança quando
um divide uma xícara de açúcar com outro ou empresta uma furadeira. Mas se você
quando você empresta uma furadeira, você priva o proprietário da oportunidade de usá-la, então
No caso de copiar programas, nada disso acontece. Nenhum
o autor do programa, nem seus outros usuários, perdem nada com
copiando. Mas outras pessoas ganham com isso, como no caso de
hackers do Laboratório que receberam um programa com novas funções, que
nem existia antes. E essas novas funções podem ser tantas
você deseja copiar e distribuir para outras pessoas. Stallman
lembra um programador da empresa privada Bolt, Beranek &
Newman, que também recebeu o programa e o editou para rodar
no Twenex - outro sistema operacional para o PDP-10. Ele também
adicionou vários recursos excelentes ao programa e Stallman os copiou
à sua versão do programa no Laboratório. Depois disso eles decidiram juntos
desenvolver um programa que já se transformou inadvertidamente em um produto poderoso,
rodando em diferentes sistemas operacionais.

Relembrando a infraestrutura de software do AI Lab, Stallman diz:
“Os programas evoluíram como uma cidade. Algumas partes mudaram
pouco a pouco, alguns - imediata e completamente. Novas áreas apareceram. E você
sempre poderia olhar o código e dizer, a julgar pelo estilo, esta parte
escrito no início dos anos 60, e este em meados dos anos 70.”

Graças a esta simples cooperação mental, os hackers criaram muitos
sistemas poderosos e confiáveis ​​no Laboratório e fora dele. Nem todo programador
que compartilha essa cultura se autodenominaria um hacker, mas a maioria deles
compartilhou completamente os sentimentos de Richard Stallman. Se o programa ou
o código corrigido resolve bem o seu problema, eles também resolverão
esse problema para qualquer um. Por que não compartilhar isso então?
decisão, pelo menos por razões morais?

Este conceito de cooperação livre foi minado por uma combinação de ganância
e segredos comerciais, dando origem a uma combinação bizarra de sigilo e
cooperação. Um bom exemplo é o início do BSD. É poderoso
sistema operacional criado por cientistas e engenheiros da Califórnia
Universidade de Berkeley baseada em Unix, adquirida da AT&T. Preço
copiar o BSD era igual ao custo do filme, mas com uma condição -
as escolas só poderiam obter um filme com uma cópia do BSD se tivessem uma licença da AT&T,
que custou $ 50,000. Acontece que os hackers de Berkeley estavam compartilhando
programas apenas na medida em que a empresa permitiu que o fizessem
AT&T. E eles não viram nada de estranho nisso.

Stallman também não estava zangado com a Xerox, embora estivesse desapontado. Ele nunca
Não pensei em pedir à empresa uma cópia do código-fonte. "Eles e
então eles nos deram uma impressora a laser”, disse ele, “eu não poderia dizer
que eles ainda nos devem alguma coisa. Além disso, as fontes estavam claramente faltando
não é por acaso que esta foi uma decisão interna da empresa, e pedir para alterá-la
foi inútil."

No final, chegaram boas notícias: descobriu-se que uma cópia da fonte
Um pesquisador universitário tem programas para uma impressora Xerox
Carnegie Mellon.

A comunicação com Carnegie Mellon não era um bom presságio. Em 1979
o estudante de doutorado Brian Reed chocou a comunidade ao se recusar a compartilhar seu
um programa de formatação de texto semelhante ao Scribe. Ela foi a primeira
um programa deste tipo que usava comandos semânticos
como “destaque esta palavra” ou “este parágrafo é uma citação” em vez disso
baixo nível “escreva esta palavra em itálico” ou “aumente o recuo para
este parágrafo." Reed vendeu a Scribe para uma empresa sediada em Pittsburgh
Unilógico. Segundo Reed, ao final do doutorado ele procurava simplesmente uma equipe
desenvolvedores, sobre cujos ombros seria possível transferir a responsabilidade por
para que o código-fonte do programa não caia em uso público (até agora
não está claro por que Reed considerou isso inaceitável). Para adoçar a pílula
Reed concordou em adicionar um conjunto de funções baseadas em tempo ao código, então
chamadas de "bombas-relógio" - eles transformaram uma cópia gratuita do programa em
não trabalhar após o período experimental de 90 dias. Fazer
programa para funcionar novamente, os usuários precisavam pagar à empresa e
receber uma bomba-relógio "desativada".

Para Stallman, isso foi uma traição pura e flagrante.
ética do programador. Em vez de seguir o princípio de “compartilhar e
doá-lo”, Reed seguiu o caminho de cobrar dos programadores pelo acesso a
Informação. Mas ele não pensava muito sobre isso porque não costumava
Eu usei o Escriba.

A Unilogic deu ao AI Lab uma cópia gratuita do Scribe, mas não a removeu
bomba-relógio e nem sequer mencionou isso. Por enquanto o programa
Funcionou, mas um dia parou. Hacker de sistema Howard Cannon
passou muitas horas depurando o arquivo binário do programa, até que finalmente
não detectou a bomba-relógio e não a apagou. Isso realmente o irritou
história, e ele não hesitou em contar a outros hackers sobre isso, e transmitir
todos os meus pensamentos e emoções sobre o “erro” intencional da Unilogic.

Por motivos relacionados ao seu trabalho no Laboratório, Stallman foi para
campus Carnegie Mellon alguns meses depois. Ele tentou encontrar um homem
que, segundo a notícia que ouviu, tinha o código-fonte do programa
impressora. Felizmente, este homem estava em seu escritório.

A conversa acabou sendo franca e contundente, no estilo típico dos engenheiros.
Depois de se apresentar, Stallman pediu uma cópia do código-fonte do programa para
controle de uma impressora a laser Xerox. Para seu grande espanto e
Infelizmente, o pesquisador recusou.

“Ele disse que prometeu ao fabricante não me dar uma cópia”, diz ele
Richard.

A memória é uma coisa engraçada. 20 anos após este incidente, a memória
Stallman está cheio de espaços em branco. Ele esqueceu não apenas a razão pela qual
veio para Carnegie Mellon, mas também sobre quem foi seu homólogo neste
conversa desagradável. De acordo com Reed, essa pessoa provavelmente era
Robert Sproll, ex-funcionário do Centro de Pesquisa e Desenvolvimento da Xerox
Palo Alto, que mais tarde se tornou diretor da pesquisa
Divisões da Sun Microsystems. Na década de 70 Sproll era o anfitrião
desenvolvedor de programas para impressoras laser Xerox. Em algum momento de 1980
Sproll aceitou um cargo de pesquisador na Carnegie Mellon, onde
continuou a trabalhar em impressoras a laser.

Mas quando Sprall é questionado sobre esta conversa, ele apenas engana
mãos. É isso que ele responde por e-mail: “Não posso dizer
nada definitivo, não me lembro de nada sobre esse incidente.”

"O código que Stallman queria era inovador,
uma verdadeira personificação da arte. Sproll escreveu um ano antes
veio para Carnegie Mellon ou algo parecido”, diz Reed. Se este
na verdade, há um mal-entendido: Stallman precisava
um programa que o MIT usa há muito tempo, não um programa novo
a versão dela. Mas naquela breve conversa nenhuma palavra foi dita sobre
quaisquer versões.

Ao interagir com o público, Stallman relembra regularmente o incidente em
Carnegie Mellon enfatiza que a relutância em
pessoa compartilhar códigos-fonte é apenas uma consequência do acordo sobre
não divulgação, que estava prevista no contrato entre ele e
pela Xerox. Hoje em dia é prática comum as empresas exigirem
manter o sigilo em troca de acesso aos últimos desenvolvimentos, mas ao mesmo tempo
Os NDAs eram algo novo naquela época. Isso refletiu a importância para a Xerox de ambos
impressoras a laser e as informações necessárias para sua operação.
“A Xerox tentou transformar as impressoras a laser em um produto comercial”,
lembra Reed, “seria uma loucura eles distribuírem o código-fonte para todos
contrato".

Stallman percebeu o NDA de forma completamente diferente. Para ele foi uma recusa
Carnegie Mellon participam na vida criativa da sociedade, ao contrário do que até agora
incentivados a ver os programas como recursos comunitários. Até parece
um camponês descobriria de repente que canais de irrigação centenários
secou e, na tentativa de encontrar a causa do problema, ele alcançou o espumante
a novidade de uma usina hidrelétrica com a logomarca da Xerox.

Demorou algum tempo para Stallman entender o verdadeiro motivo da recusa -
um novo formato de interação entre o programador e
empresas. A princípio, ele viu apenas uma recusa pessoal. "É assim para mim
Fiquei com raiva por não conseguir encontrar nada para dizer. Eu apenas me virei e
“Saí silenciosamente”, lembra Richard, “talvez até tenha batido a porta, não foi?
Eu sei. Lembro-me apenas de um desejo ardente de sair dali o mais rápido possível. Afinal, eu estava andando
para eles, esperando cooperação, e nem pensei no que faria se
eles vão recusar. E quando isso aconteceu, fiquei literalmente sem palavras -
Isso me surpreendeu e me perturbou muito.”

Mesmo 20 anos depois, ele ainda sente o eco daquela raiva e
decepções. O incidente na Carnegie Mellon foi um ponto de viragem na vida
Richard, colocando-o frente a frente com um novo problema ético. EM
nos meses seguintes em torno de Stallman e outros hackers do AI Lab
muitos eventos acontecerão, comparados aos quais aqueles 30 segundos de raiva e
as decepções na Carnegie Mellon não parecerão nada. No entanto,
Stallman presta especial atenção a este incidente. Ele foi o primeiro e
o ponto mais importante na série de eventos que transformaram Richard de
um hacker solitário, um oponente intuitivo do poder centralizado, em
evangelista radical da liberdade, igualdade e fraternidade em
programação.

“Este foi meu primeiro encontro com um acordo de confidencialidade, e eu
Logo percebi que as pessoas se tornam vítimas de tais acordos, - com confiança
diz Stallman: “Meus colegas e eu fomos grandes vítimas.
Laboratórios."

Richard explicou mais tarde: “Se ele tivesse recusado por motivos pessoais, teria sido
seria difícil chamar isso de problema. Eu poderia contar isso em troca
um idiota, e isso é tudo. Mas a recusa dele foi impessoal, ele me fez entender
que ele não irá cooperar não só comigo, mas com qualquer pessoa
era. E isso não só criou um problema, mas também tornou realmente
enorme."

Embora tenha havido problemas nos anos anteriores que deixaram Stallman irritado
Segundo ele, só depois do incidente na Carnegie Mellon é que percebeu que
a cultura de programação que ele considerava sagrada começa
mudar. “Eu já estava convencido de que os programas deveriam estar disponíveis publicamente
para todos, mas não conseguiu formulá-lo com clareza. Meus pensamentos sobre este assunto
eram muito vagos e caóticos para expressar todos eles
Para o mundo. Após o incidente, comecei a perceber que o problema já existia, e
que isso precisa ser resolvido agora.”

Ser um programador de primeira linha em um dos institutos mais fortes
paz, Richard não prestou muita atenção aos acordos e transações de outros
programadores - desde que não interfiram no seu trabalho principal. Enquanto estiver em
A impressora laser Xerox não chegou ao laboratório, Stallman tinha tudo
oportunidades de desprezar as máquinas e programas que sofreram
outros usuários. Afinal, ele poderia mudar esses programas como pensava
necessário.

Mas o advento de uma nova impressora ameaçou esta liberdade. Aparelho
funcionou bem, embora mastigasse papel periodicamente, mas não havia
oportunidades para mudar seu comportamento para atender às necessidades da equipe. Do ponto de vista
indústria de software, fechar o programa da impressora foi
uma etapa necessária nos negócios. Os programas tornaram-se um ativo tão valioso que
as empresas não podiam mais se dar ao luxo de publicar códigos-fonte,
especialmente quando os programas incorporavam algumas tecnologias inovadoras. Afinal
então os concorrentes poderiam copiá-los praticamente de graça
tecnologias para seus produtos. Mas do ponto de vista de Stallman, a impressora era
Cavalo de Tróia. Após dez anos de tentativas fracassadas de distribuição
programas "proprietários" para os quais a distribuição gratuita é proibida e
modificação do código, este é exatamente o programa que se infiltrou na morada dos hackers
da maneira mais insidiosa - sob o disfarce de um presente.

Que a Xerox deu a alguns programadores acesso ao código em troca de
manter o sigilo não era menos irritante, mas Stallman ficou magoado
admitiu que, em uma idade mais jovem, ele provavelmente teria concordado em
Oferta Xerox. O incidente na Carnegie Mellon fortaleceu sua moral
posição, não apenas acusando-o de suspeita e raiva em relação
propostas semelhantes no futuro, mas também colocando a questão: o quê,
se um dia um hacker fizer um pedido semelhante, e agora para ele,
Richard terá que se recusar a copiar as fontes, seguindo os requisitos
empregador?

“Quando me oferecem para trair meus colegas da mesma maneira,
Lembro-me da minha raiva e decepção quando eles fizeram o mesmo comigo e
outros membros do Laboratório, diz Stallman, então
muito obrigado, seu programa é maravilhoso, mas não posso concordar
nos termos de seu uso, então vou ficar sem ele.”

Richard manterá firmemente a memória desta lição nos turbulentos anos 80, quando
muitos de seus colegas de Laboratório irão trabalhar em outras empresas,
vinculados por acordos de não divulgação. Eles provavelmente disseram a si mesmos
que este é um mal necessário no caminho para trabalhar no que há de mais interessante e
projetos tentadores. No entanto, para Stallman, a própria existência do NDA
questiona o valor moral do projeto. O que poderia ser bom
em um projeto, mesmo que seja tecnicamente interessante, se não servir ao interesse geral
objetivos?

Muito em breve Stallman percebeu que o desacordo com tais propostas
tem um valor significativamente maior do que os interesses profissionais pessoais. Tal
sua postura intransigente o separa de outros hackers que, embora
abominam o sigilo, mas estão prontos para ir a extremos morais
compromissos. A opinião de Richard é clara: recusa em compartilhar o código-fonte
isto é uma traição não só ao papel da investigação
programação, mas também a Regra de Ouro da moralidade, que afirma que o seu
sua atitude em relação aos outros deve ser a mesma que você deseja ver
atitude em relação a si mesmo.

Esta é a importância da história da impressora a laser e do incidente em
Carnegie Mellon. Sem tudo isso, como admite Stallman, seu destino foi
tomaria um caminho completamente diferente, equilibrando-se entre a riqueza material
programador comercial e decepção final na vida,
gasto escrevendo código de programa invisível para qualquer pessoa. Não tinha
não faria sentido pensar neste problema, em que o resto mesmo
não vi o problema. E o mais importante, não haveria aquela porção vital
raiva, o que deu a Richard energia e confiança para seguir em frente.

“Naquele dia decidi que nunca concordaria em participar de
isso”, diz Stallman, referindo-se aos NDAs e a toda a cultura em geral,
que promove a troca da liberdade pessoal por alguns benefícios e
Benefícios.

“Decidi que nunca faria de outra pessoa a vítima que me tornei.
um dia eu mesmo."

Fonte: linux.org.ru

Adicionar um comentário