sexta-feira, 1 de maio de 2009

Linus Benedict Torvalds

Richard Morris: “Em seu famoso debate com o Tanenbaum sobre microkernel versus monolítico você diz que “de um ponto de vista teórico (e estético) microkernels são melhores”. Você é capaz de prever um dia em que o prático se igualará ao teórico e ao estético e o Kernel do Linux se tornará obsoleto?”Linus Torvalds: “Eu posso certamente imaginar o kernel Linux se tornando obsoleto - qualquer outra coisa seria triste, realmente. Apesar disso, tendo trabalhado na área de sistemas operacionais por mais ou menos 17 anos, eu não acho que serão os microkernels que farão isso acontecer.Em outras palavras, tendo feito kernels “tradicionais” por tanto tempo, eu acabei me convencendo de que eles são feitos como são tradicionalmente pelas mesmas razões pelas quais rodas são redondas - é simplesmente a forma como devem ser feitos. Da mesma forma que rodas são redondas porque é prático e giram melhor dessa forma, você não vai querer dividir um kernel monolítico em várias partes pequenas. Em um kernel, você basicamente precisa conhecer o que todas as partes estão fazendo para poder tomar decisões globais, e isso se torna difícil se dividir muito as coisas.Mas o que pode fazer uma grande mudança em como as coisas são feitas são simplesmente as mudanças no hardware ou mudanças nos costumes dos usuários e na forma como eles interagem com seus computadores. E enquanto eu não vejo nenhuma grande mudança fundamental em como as coisas são feitas, eu acho que é isso o que pode tornar o Linux obsoleto - apesar de achar que isso não acontecerá em um futuro próximo. Software e hardware tem uma inércia impressionante e a forma das coisas serem feitas tendem a permanecer como são por décadas. Por isso não estou exatamente preocupado.”Richard Morris: “Muitos projetos importantes como o Apache, PHP etc não usam a licença GPL. Você acha que isso prejudica a comunidade do Software Livre ou você acha que a heterogeniedade das licenças de código aberto permitiu que mais pessoas contribuíssem com o esforço total?”
Linus Torvalds: “Eu acho que heterogeniedade é uma coisa boa. As pessoas não tem os mesmos objetivos ou motivações e realmente não devem ter. Não existe nenhuma razão pela qual todos devem concordar com uma única licença - não só é irracional esperar que todas as pessoas concordem com algo, mas também existem áreas diferentes que podem ter razões fundamentais para querer fazer as coisas de outra forma. Por exemplo, eu obviamente acredito que a GPL (a v2 em particular) é um grande modelo para trabalhar em conjunto - permitindo que todos compartilhem o código, mas também assegurando que ninguém possa depois tentar tirar vantagem do trabalho dos outros - você “paga” pelo código fonte ao dar o seu código de volta. Eu chamo esse modelo de “isso por aquilo” e ele funciona muito bem não apenas no mundo do software, mas é bem também é conhecido em economia e teoria de jogo.Mas o fato de eu gostar para o tipo de coisa que estou envolvido não significa que outras pessoas não possam ter outros objetivos. Por exemplo, se você trabalha com padronização e quer usar o código aberto como uma forma para distribuir um modelo de referência, você talvez não tenha interesse no “isso por aquilo”, talvez apenas queira espalhar o código de referência para o maior número de pessoas que puder para que elas possam começar com uma certa base, e talvez você também pode querer fazer dessa referência a base para códigos proprietários. Então nessa segunda situação, você pode querer usar uma licença Apache ou BSD.Portanto, mesmo de um ponto de vista puramente racional, faz sentido ter licenças diferentes. E não, não estou dizendo que programadores são puramente racionais. Tem muito ego envolvido e muitas idéias pessoais, o que pode explicar exatamente porque existem tantas licenças diferentes para experimentar.O fato de poder escolher é uma coisa boa! E realmente não existe muita confusão, já que só existe uma pequena porção de licenças muito populares e comuns.”Richard Morris: “Recentemente nós entrevistamos o Dr. Richard Hipp do SQLite fame. O que você acha da decisão dele de remover todas as restrições do uso de seu código e colocá-lo em domínio público? Por que você não faz o mesmo com o Linux - isso faria o código ser realmente livre?”
Linus Torvalds: “Essa palavra, livre, é na verdade uma palavra que eu tento evitar usar pois significa muitas coisas diferentes. E não, eu não estou dizendo apenas da diferença trivial entre “livre de custo” (grátis) e “liberdade”. Mesmo no significa de “liberdade”, diferentes pessoas tem tantas idéias diferentes do que realmente é e de quem realmente deva ter a “liberdade”. Essa é uma das razões pela qual eu uso o termo “Código Aberto”, e uma razão pela sou conhecido por tretar com a FSF. Eles fazem muita questão do termo “liberdade” e definem esse termo de uma forma muito particular.O que é “liberdade” para você? É anarquia? - a liberdade de fazer qualquer merda que você quiser? Se for, a licença BSD é obviamente muito mais livre que a GPL. Ou é qualquer outra das inúmeras formas de descrever o que “liberdade” pode significar? Eu realmente não estou interessado neste tipo de discussão. É o que eu chamo de “masturbação mental”, quando você acaba entrando em algum tipo de exercício intelectual sem sentido e sem nenhum significado possível. Por isso que uso o termo “Código Aberto” quando tento explicar a razão de ter escolhido a licença que uso, e tento explicar a minha escolha da GPLv2 não em termos de liberdade, mas em termos de como eu quero que as pessoas possam melhorar o código fonte - ao desencorajar o fechamento e o controle do código com uma licença, todos podem trabalhar no trabalho de cada um e isso basicamente encoraja um modelo onde as pessoas acabam trabalhando juntas.
Não me entenda mal - Eu não estou dizendo como se fosse uma coisa de escoteiros cantando ao redor de uma fogueira no acampanhamento. É mais um modelo de cada um por si, onde as pessoas são encorajadas a trabalhar nas coisas que acham mais importantes para suas necessidades. Mas a GPLv2 está lá para evitar a anarquia: ela não acaba com a competição e nem evita que algumas pessoas trabalhem em coisas diferentes, mas evita que quem alguém seja anti-social ou prejudique o outro.As pessoas precisam de regras sociais. A mesma coisa vale para projetos. É necessário algumas regras que sejam cumpridas para que as pessoas já saibam desde o começo no que estão entrando. Note que não estou dizendo que a licença BSD é ruim ou que colocar algo no domínio público (que é uma coisa mais do tipo livre-para-todos) é ruim. Se era isso o que Hipp queria para seu código, então foi a escolha certa. Eu acho que a anarquia é “mais livre” do que ter regras, mas também é certamente menos produtiva, e eu acho que ao menos um certo tipo de programadores ficarão menos interessados no projeto justamente porque eles não verão as regras para proteger seus trabalhos.Não são todos que gostam da GPL, mas várias pessoas gostam justamente porque dá uma certa proteção. É essa a proteção que você quer? Essa deve ser sua escolha pessoal antes de você se unir a um projeto que usa essa licença, mas nós podemos olhar pra trás e dizer que ela parece conduzir à produtividade e ao sucesso do projeto.”Richard Morris: “Você acha que patentes de software são uma boa idéia?”Linus Torvalds: “Heh - Definitivamente não. Elas são um desastre. O negócio todo (e a idéia original) por trás das patentes no sentido legal dos Estados Unidos é encorajar a inovação. Se você reparar no estado das patentes nos Estados Unidos hoje, verá que elas não estão fazendo isso. Certamente não em software, e muito obviamente também não em muitas outras áreas.Na verdade acontece o oposto - patentes são muito usadas para acabar com a competição, que é, sem dúvida, nenhuma o modo mais poderoso de incentivar a inovação. Qualquer um que seja a favor de patentes é basicamente contra a abertura de mercados e a competitividade, mas eles nunca dizem isso dessa forma.Então, a objetivo principal das patentes certamente não está sendo alcançado hoje, o que já deve significar alguma coisa. E isso provavelmente acontece em qualquer área.Mas a razão pela qual as patentes são especialmente ruins para os softwares é que softwares não são uma invenção separada onde você pode apontar uma única idéia. De jeito nenhum. Qualquer software relevante é um conjunto altamente complexo de regras bem detalhadas, e existem milhões de pequenas e triviais idéias ao invés de uma única idéia inteligente que possa ser patenteada. O valor do software não está isolada em nenhuma das pequenas idéias, mas em todo o conjunto. Também é angustiante ver que as pessoas patenteiam “idéias”. Não é nem mesmo uma coisa que foi trabalhada; é apenas um pequeno modo de fazer as coisas que tentam patentear, apenas para poder ter uma arma para uma briga economica. Triste. Patentes já perderam todo o valor de redenção, se algum dia tiveram algum.”Richard Morris: “O que você acha dos esforços da Microsoft de ter uma parte na comunidade de código aberto? Você acha que eles são sinceros em seus esforços ou você vê isso como algum tipo estratégia de abraçar-extender-exterminar?”Linus Torvalds: “Eu não tenho como julgar isso. Pessoalmente acho que por um lado os esforços da Microsoft são sinceros, e por outro não são. É uma empresa grande e inchada, e quando uma mão diz que quer participar no código aberto, eu dúvido que a outra sabe o que é ou se importa.”Richard Morris: Se a Microsoft te convidasse para trabalhar no laboratório de código aberto deles, você iria?Linus Torvalds: “Eu não sou um odiador da Microsoft, então eu não iria dizer “Não! Nunca! Eu prefiro cair em cima da minha própria espada do que ir para o lado negro!” Claro que acho improvável que a Microsoft algum dia faça uma oferta que eu consideraria relevante. Dinheiro? Ei, eles tem, e eu gosto, mas eu obviamente não acho o dinheiro mais importante do que outras coisas. E é improvável que eles ofereçam as coisas que eu realmente valorizo.”Richard Morris: “Que parte de um sistema operacional você acha que é mais difícil de escrever?”Linus Torvalds: “Essa é uma pergunta interessante, justamente porque minha resposta é que nunca é nenhuma parte.Claro, todos os detalhes tendem a ser complicados, mas o trabalho real é fazer tudo funcionar junto. Comparado a isso, qualquer detalhe particular que você queira apontar pode até ser um desafio técnico, mas nada que realmente tire alguém do sério. Por exemplo, uma área que realmente nos fez passar por maus bocados (e que ainda causa problemas, mesmo que tenha melhorado muito) é o gerenciamento de energia e todo aquele negócio de suspender/resumir que as pessoas fazem nos laptops.E não foi nenhum detalhe particular irrastreável que fez disso algo tão difícil, mas o fato de mexer com cada subsistema dentro kernel (e muitos outros fora do kernel, na parte do usuário também!), e foi justamente isso que acabou tornando tudo um desafio.”Richard Morris: “Que distribuição Linux você usa?”Linus Torvalds: Eu usei diferentes distribuições por anos. Agora estou usando Fedora 9 na maioria dos computadores que tenho, o que tem mais a ver com o fato do Fedora ter tido um ótimo suporte para o PowerPC na época que eu usava, então me acostumei com ele. Mas eu não ligo muito para a distribuição, contanto que torne fácil de instalar e manter o sistema atualizado. Eu me importo com o kernel e com alguns programas, e o conjunto de programas que eu realmente me importo é até pequeno.Quando o assunto é distribuição, a facilidade da instalação é uma das coisas mais importante para mim - Eu sou um cara técnico, mas eu tenho uma área bem específica de interesse, e eu não quero perder tempo com o resto. Então as únicas distribuições que eu tenho evitado são aquelas que são conhecidas por serem “muito técnicas” - como aquelas que te encorajam a compilar seus próprios programas etc.Sim, eu posso fazer isso, mas acaba com toda a idéia de uma distribuição para mim. Por isso gosto daquelas conhecidas por serem fáceis de usar. Eu nunca usei o Debian puro, por exemplo, mas eu gosto do Ubuntu. E antes dos caras do Debian me atacarem - sim, eu sei, eu sei, deve ser bem mais simples e fácil de instalar hoje em dia. Mas antes não era, por isso nunca tive uma razão para usá-la.”

Nenhum comentário:

Postar um comentário