sábado, 14 de abril de 2007

FISL8, terceiro dia

Fui dormir tarde ontem e não podia acordar muito tarde hoje pois eu precisava fechar a conta do hotel. Em retrospecto, acho que fiz uma grande besteira marcando a volta pra hoje. Primeiro porque tive que perder as três últimas palestras de hoje pra poder vir pro aeroporto. Mas principalmente porque eu vou chegar em Guarulhos depois do último ônibus direto pra Campinas. O plano é ir de táxi até o terminal Tietê, pegar um ônibus pra Campinas e outro táxi até em casa. Eu havia me esquecido do táxi final. Acho que se tivesse deixado pra voltar amanhã o custo de mais uma noite de hotel seria tranquilamente compensado pelo custo dos táxis que terei que pegar. Sem falar que eu acho que só vou estar em casa de madrugada. Oh well... aprendizado pra próxima.

A primeira palestra do dia foi a do Erwin Tehnumberg, sobre o ODF. O Erwin é um alemão que trabalha na Sun, no projeto OpenOffice.org. O blog dele é um dos mais famosos no tratamento dos assuntos OpenOffice.org e OpenDocument Format. Ele contou a história do desenvolvimento do padrão ODF, desde a sua origem no formato XML do OOo 1.0. Eu não sabia, mas a decisão de desenvolver o formato XML foi tomada pelo dono da StarDivision, a empresa alemã que desenvolveu o StarOffice e que foi comprada pela Sun em 1999. A motivação principal para desenvolverem o novo formato foi prover suporte para Unicode, mas na visão dele, criar mais um formato proprietário era errado, pois eles sabiam o quanto lhes havia custado impletar o suporte aos vários formatos proprietários já existentes. O objetivo, desde o princípio, foi especificar um formato aberto, que pudesse ser usado por outras ferramentas de escritório.

Em 2003 a OASIS formou um grupo de trabalho para especificar um padrão para documentos de escritório e decidiram usar a especificação aberta do OOo 1.0. Em 2005, a versão 1.0 do ODF foi ratificada e em 2006 foi abençoada pela ISO. A versão 1.1 saiu em 2006 e suas modificaçõ­es foram focadas no suporte às funções de acessibilidade. Segundo o Erwin, como o ODF referencia vários outros padrões, para suporte a imagens e a notação matemática, por exemplo, o trabalho acabou sendo mínimo, pois estes outros padrões já estavam melhor preparados para isso. A versão 1.2, que deverá ficar pronta ainda este ano, deverá especificar mais completamente o uso de fórmulas, uma área ainda meio em aberto.

Ele não falou quase nada do Open XML, formato da nova verão do MS Office, e que a Microsoft está forçando para que se torne um segundo padrão ISO para documentos de escritório. No seu único slide sobre o assunto ele mostrou que o ODF usa tags XML mais verbosas, o que é criticado por alguns usuários como causa de bloat, mas que ele justificou dizendo que isto é mais uma garantia de que o formato será legível no futuro distante, pois mesmo sem a especificação ele é bastante transparente.

Acho que ele devia ter falado mais do Open XML, sobre os motivos da Microsoft para tentar transformá-lo num padrão ISO e sobre as diferenças fundamentais entre ele e o ODF em termos de complexidade, completude, independência e implementabilidade.

Na seqüência, assisti à palestra sobre o Samba 4, do Felipe Augusto van de Wiel, mais conhecido como faw. O Felipe é desenvolvedor Debian e atua nos projetos Samba e OpenLDAP. A palestra falou sobre as novidades do Samba 4 em relação ao Samba 3. Basicamente, o Samba 3 funciona bem como um PDC numa rede NT4 e como cliente numa rede Active Directory. Mas o Samba 4 trará suporte completo ao CIFS, coisa que nem o Windows Vista faz, e deverá ser uma alternativa completa para um servidor AD.

Ele contou um pouco da história do Samba, elogiando bastante o Andrew 'Tridge' Tridgel, autor da primeira versão ainda atuando como líder do projeto. Aliás, o Samba foi iniciado em 1992, de modo que está fazendo 15 anos. Uma história interessante é que cada nova versão do Samba precisa passar pelo "Susan Stage" antes de ser considerado pronto. Susan é a esposa do Tridge. O Susan Stage acontece quando ele manda uma mensagem pra lista dos desenvolvedores avisando que sua esposa já está usando a nova versão no seu computador, sem ter perdido qualquer arquivo e feliz.

A palestra do Felipe estava lotada. É o terceiro ano em que ele se apresenta e parece que já fez sua legião de fãs.

A palestra seguinte foi do Theo de Raadt, líder do OpenBSD. Ele falou sobre o problema que eles enfrentam quando querem implementar um driver para algum dispositivo para o qual o fornecedor não disponibiliza a documentação. Ele mostrou para cada categoria de hardware como estava a situação. De longe, a mais complicada é a dos fornecedores de placas wireless. Parece que apenas dois fornecedores disponibilizam a documentação.

Esta situação é ridícula. Quer dizer, há leis obrigando os produtores de automóveis, por exemplo, disponibilizar a documentção necessária para que qualquer pessoa possa dar manutenção no próprio veículo. Por que com computadores a coisa deveria ser diferente? O fato é que não há uma boa razão para que os fornecedores sejam tão cabeças-duras em se negar a cooperar. Não é por causa de patentes, nem de copyrights e nem de medo que os concorrentes possam usar a informação contra eles. O Theo também não acha que haja uma conspiração contra os desenvolvedores de software livre. Ele desconfia que a razão principal seja a vergonha destes fornecedores em ter que expor na documentação a má qualidade da sua implementação. Segundo ele, a lista de bugs que são descobertos por engenharia reversa em alguns dispositivos é assustadora.

Ele criticou duramente alguns desenvolvedores do Linux por não terem comprado esta briga que ele considera da maior importância. Ele diz que se todos os desenvolvedores, as distros e os usuários dos sistemas livres começarem a atuar ativamente (enviando emails para os fornecedores solicitando a documentação) ou passivamente (recusando-se a comprar hardware dos fornecedores que não colaboram) temos uma boa chance de reverter o problema. Mas sem a ajuda da comunidade Linux ele acha que as chances são pequenas.

Depois, resolvi conferir a palestra da Fernanda Weiden sobre seu trabalho como administradora do Google. Ela foi contratada há 15 meses e está trabalhando no escritório de Zurique, no grupo SysOps. O grupo SysOps é responsável pela manutenção dos servidores e do ambiente de trabalho dos funcionários, mas não cuida dos servidores que implementam os serviços externos do Google.

A palestra foi bastante concorrida e, infelizmente, foi escalada pra uma das salas barulhentas.

A Fernanda começou falando dos projetos nos quais já se envolveu. Um deles é o "Office in a Box", que pretende especificar e automatizar o processo de configurar os serviços neccessários para suportar um escritório do Google. É interessante que a primeira abordagem considerava a configuração de um servidor para cada serviço. Essa estratégia teve vários problemas. Um deles é que com o aumento do número de serviços que precisam ser suportados, é preciso aumentar o número de servidores. Outro é que a maioria dos servidores acabam ficando ociosos, enquanto alguns deles podem estar sobrecarregados. Por fim, quando um dos servidores cai, demora até que outro possa ser configurado para substituí-lo.

A solução a que chegaram baseia-se em dois princípios. O primeiro é o de virtualizar todos os servidores, de modo a resolver os problemas acima. Usando o Xen, eles podem configurar uma máquina virtual para cada serviço, o que possibita uma melhor utililização do hardware real e uma maior flexibilidade na migração servidores virtuais no caso de um problema físico. O outro princípio tem a ver com o planejamento de capacidade para estes servidores. Eles decidiram medir a carga em cada servidor em função do número de empregados trabalhando em cada escritório. Deste modo, foram capazes de encontrar a capacidade de CPU e de memória necessária para suportar adequadamente cada servidor virtual, em função do número de empregados.

Outro projeto em que ela se envolveu é o Fast (não tenho certeza do nome pois não o anotei). Trata-se de um sistema de automatização da instalação de sistemas. A idéia é que para configurar um novo servidor, basta preconfigurar sua especificação num servidor central, instalar o sistema operacional básico manualmente (via CD ou PXE-boot) e rodar o script do Fast. O script se encarrega de obter as informações necessárias do servidor central e de configurar todo o necessário no novo servidor, inclusive instalando os pacotes de software necessários. Entendi que o Fast usa tecnologias básicas com as quais todo administrador de sistemas está acostumado, como o rsync para sincronizar arquivos.

Outro projeto é o Zombie para monitoração de serviços e de servidores. Entendi que se trata de uma compilação e integração de produtos livres.

Ela falou sobre o Goobuntu, uma distribuição interna do Ubuntu que o Google definiu como sistema operacional padrão da empresa. Isso não significa que eles vão trocar todos os outros sistemas ou que vão obrigar todos a migrarem para o Goobuntu. Mas será o sistema operacional mais bem mantido pela equipe de SysOps. Parece que há três sabores do Goobuntu: servidor, laptop e workstation. Elas são mantidas por uma equipe que analisa e modifica o que for necessário nos pacotes originais do Ubuntu. Não há intenção de disponibilizar o Goobuntu pra fora do Google. Trata-se de um projeto estritamente interno.

É interessante a maneira como a questão de padronização é levada no Google. Ela disse que ninguém é obrigado a usar uma tecnologia específica, seja o sistema operacional, seja algum aplicativo. Há algumas (poucas) pessoas que até usam o Windows. O que acontece é que a maioria normalmente faz pressão para que os demais migrem gradualmente para o que é considerado padrão. Mas nunca ocorre uma ordem que vem de cima pra mudar tudo. Acho que isso é saudável pois permite a coexistência de várias tecnologias evitando uma "monocultura" que poderia tornar a empresa menos flexível e menos ágil.

Esse papo todo foi rápido e ela abriu a sessão pra perguntas. E foram muitas. Perguram bastante sobre o ambiente de trabalho, sobre o processo de seleção e sobre como ela se sente trabalhando na empresa que é o sonho de emprego de 9 entre 10 pessoas que se interessam por tecnologia. Ela se rasgou em elogios e até pediu desculpas por isso. Confirmou quase tudo o que ouvimos falar sobre o Google, desde os 20% do tempo dedicados a projetos pessoais (os quais ela não usufrui por ser muito desorganizada) até as brincadeiras infantis cometidas no escritório.

Sobre sua contratação, ela não se considera um bom modelo porque não foi ela que foi atrás do Google. Eles é que a chamaram. Ela disse que sua insegurança não a teria permitido sequer tentar participar do processo seletivo. Mas, como foi chamada, raciocinou que na pior das hipóteses não perderia nada. O processo é longo e envolve múltiplas entrevistas com os futuros eventuais colegas de trabalho do pretendente.

Perguntada sobre o nível de cobrança a que os empregados são submetidos ela disse que é bastante normal. A cada três meses cada um se reúne com seu gerente imediato e negocia metas. Ao final do período eles se reunem novamente para discutir avaliar os resultados obtidos.

Perguntada sobre as tecnologias que usa ela disse que sempre foi uma "garota linha de comando" e que se sentia perfeitamente à vontade escrevendo scripts bash. Mas a necessidade de usar uma linguagem mais completa a fez investir em Perl, pelo qual ela se apaixonou. Acontece que no Google a maioria dos seus colegas usam Python, o que a forçou a estudá-lo... Ela não pareceu muito feliz... Eu também não ficaria. :-)

A última palestra a que eu assisti foi sobre LDAP, de novo do faw. Também estava lotada mas não achei tão boa quanto a sobre o Samba. Acho que ele tentou falar demais e acabou não explicandonada muito bem. Pra quem já tinha noção do assunto não houve muita novidade, mas pra quem não sabia nada acho que não ajudou também. De qualquer modo, valeu pra lembrar que LDAP pode servir pra bem mais que meramente unificar o cadastro de contas.

Peguei um táxi e vim cedo pro aeroporto. O avião está atrasado uns 40 minutos e eu já estou me preparando psicologicamente pra enfrentar o problema que vai ser ir de São Paulo até em casa.

No todo, valeu. Sinto que fiquei mais empolgado com o FISL6, mas foi bom o suficiente pra já me deixar com vontade de voltar no ano que vem.

Inté.

4 comentários:

  1. Não achei algo que suporte esta minha suposição, mas acho que a Fernanda Weiden participa do FAI (Fully Automatic Installation), que é uma forma totalmente automatizada de se instalar distros Debian-like, procede?

    Parabéns pelos relatos, submeta-os ao br-linux!!!

    ResponderExcluir
  2. Acho que não. Alguém perguntou pra ela se o projeto do Google era parecido com o FAI e ela deu a entender que não o conhecia direito.

    ResponderExcluir
  3. Seria interessante saber o que o pessoal do openOffice pensa em fazer caso o open XML seja aceito como norma ISO. Mesmo que a contra gosto talvez seja melhor abandonar o ODF para sincronizar o openOffice com o Office. Minha idéia é que uma migracao é mais fácil se for o mesmo padrao.

    Uma questao relevante é com quem está o poder do futuro desenvolvimento do openXML. Alguém sabe?

    Sobre o Goobuntu seria interessante saber qual a cooperacao com a Cannonical. Sabe de algo? Acredito que a Google tenha um bom poder até mesmo de compra de máquinas, que elas estejam certificadas para Linux. Aliás, sobre a palestra do openBSD, eu gostaria de saber se existem listas dos produtos onde há boa cooperacao com o mundo livre.

    ResponderExcluir
  4. Vinicius, acho que o que eles vão fazer é o que já estão fazendo independentemente de o OOXML vir a ser um padrão ISO ou não, i.e., implementar conversores entre OOXML e ODF. Mas acho muito pouco provável que eles abandonem o ODF. Um motivo é o fato de já haver um grande número de organizações investindo no ODF de modo que qualquer decisão contra o ODF iria por este investimento em risco. Mas o principal motivo, creio eu, é o fato de que o OOXML é, na prática, muito menos aberto. Sua especificação tem (pelo que li) mais de 6.000 páginas e ela é cheia de detalhes em aberto e de gambiarras que só estão lá para garantir a compatibilidade com idiossincrasias de versões pré-históricas do MS Office. Isso tudo dificulta enormemente a implementação do padrão, o que vai contra o objetivo de torná-lo um padrão em primeiro lugar. Já o ODF é especificado em menos de 1.000 páginas e não tem essas amarrações. Aliás, o fato de ele já ter sido implementado em um bom número de ferramentas diferentes demonstra a sua adequação como padrão.

    Sobre quem terá o poder de evoluir o OOXML no futuro eu não vejo como ele poderia não estar com a Microsoft. Obviamente, só terá este poder quem tiver investido na implementação do padrão. Como eu acho que ninguém se atreverá a implementá-lo (pelo grande investimento que isso demandaria e pelo grande risco que a concorrência com a Microsoft ofereceria), eu acho que só ela mesma terá poder de mando.

    Sobre o Goobuntu, eu me lembro de ter ouvido a Fernanda dizer que muitas das alterações que o pessoal do Google faz são submetidas como contribuições para os mantenedores do Ubuntu. Mas não acho que o Goobuntu seja tão diferente assim, i.e., não acho que o Google tenha investido muito em criar uma nova distribuição Linux. Acho que eles escolheram o Ubuntu como a que mais lhes serve e fizeram algumas pequenas modificações.

    Não acho que o Google se preocupe com máquinas certificadas pra uma distribuição Linux. Isso é importante para empresas pras quais o Linux funcione como tecnologia habilitadora de negócios. Pra elas é interessante terceirizar a manutenção e o suporte à esta tecnologia. Mas o Google tem centenas de milhares de servidores Linux e pra ele certamente é mais barato manter uma equipe de manutenção e de suporte altamente capacitada na folha de pagamentos. Pra eles é mais confortável saber que têm controle total sobre a tecnologia dentro de casa do que ficar pendurados no telefone, confiando apenas no contrato de suporte.

    Sobre os produtos que cooperam com o mundo livre, eu quase fiz esta pergunta pro Theo mas não consegui. Seria uma ótima idéia mantê-la e divulgá-la.

    ResponderExcluir