The OOPSLA diaries

Meu diário na OOPSLA'2006 apontando algumas das coisas mais interessantes que vi.

Tuesday, October 24, 2006

dia 3 - 24/10/2006 - terça-feira

Hoje começa a parte principal da conferência e na abertura, a coordenadora, Peri Tarr, da IBM nos informou que a OOPSLA teria 1150 participantes, 450 dos EUA e o resto do exterior (de 46 países).

Seguindo a tradição, a OOPSLA foi aberta com uma palestra excelente de um grande nome de fora da Ciência da Computação; este ano foi Brenda Laurel, professora de Design do California College of Art in San Francisco. Ela falou sobre "designed animism"; animism é a idéia de associar características de vida/espírito a objetos inanimados (a computação ubíqua faria este "designed animism") e como isso cria uma "poética de um novo mundo". A idéia dela é que muito do que a humanidade cria na arte (e hoje na computação) tem muito a ver com padrões encontrados na natureza.

Não vou entrar em detalhes aqui sobre isso mas quero ressaltar apenas o que
ela disse no final em relação a uma pergunta do público: a perguntaram se ela compartilhava com a idéia do Christopher Alexander de que o objetivo da computação era melhorar a vida das pessoas. O que ela respondeu é que a computação, como qualquer coisa, pode ser usada para o bem ou para o mal e que era papel de cada desenvolvedor de software definir o que ele gostaria de fazer com seu trabalho. E a esperança dela é que sim, as pessoas aqui presentes usassem seu trabalho para tornar a vida das pessoas melhor. Eu acho isso muito importante; vejo muitos alunos preocupados em ganhar dinheiro, se enfurnando numa empresa fazendo software medíocre trabalhando com idéias de negócios medíocres para tornar o dono da empresa mais rico mas sem dar uma contribuição real para melhorar a vida das pessoas. We have to change that!



A trilha Onward! da OOPSLA trata de idéias e conceitos que serão importantes para a computação daqui a 10 - 20 anos. Se você gosta de filosofia e de palestras sem uma conclusão cartesiana definida, esta é a sua trilha. Ela se iniciou com uma apresentação poética e heterodoxa (como sempre) do Dick Gabriel e o principal que eu tirei de lá e posso passar para vocês é o seguinte:

Entender o que acontece num nível de complexidade não é simplesmente atingido a partir do entendimento do nível de complexidade inferior; entender o que acontece no nível macroscópico tem muito pouco a ver com as interações entre os átomos; entender o que acontece numa cidade tem muito pouco a ver com os módulos das cidades (prédios, ruas, esgoto, pessoas) isoladamente; entender o que acontece com um sistema de software de grande escala tem muito pouco a ver com os algoritmos e estruturas de dados que estão codificados lá dentro.

Logo em seguida, a Elisa Baniassad apresentou um trabalho sobre The Geography of Programming que aborda as diferenças na forma de pensar e programar dos ocidentais e os orientais (chineses, japoneses e coreanos). Ela diz que ocidentais são mais analíticos e prestam atenção nos objetos enquanto que os orientais são mais holísticos, prestando atenção nas mudanças e nas contradições que precisam exisitir no mundo. Orientais não são obcecados por modularização como nós... O material da apresentação é bem interessante e está disponível na página dela.




A Linda Northrop deu uma palestra sobre Ultra-Large-Scale Systems chamada Scale Changes Everything. É um conceito que está ficando na moda na comunidade e várias atividades da OOPSLA estão tocando neste assunto principalmente porque um conjunto de pesquisadores aqui presentes foram contratados pelos militares americanos para pesquisar este assunto durante um ano e gerar um livro.

Em seguida, o assunto foi destrinchado numa mesa redonda sobre o assunto incluindo pessoas como Gregor Kikzales (criador de Aspect-Oriented Programming que disse que nós ainda não sabemos direito como construir small-scale systems), Doug Schmidt, Martin Rinard (do MIT e que trabalha com sistemas que funcionam mesmo na presença de erros) e Ricardo Lopez que trabalhou em projetos que visavam fazer sistemas (como os de aviação, por exemplo) que fossem capazes de perceber falhas no sistema do avião durante o vôo e consertar as falhas dinamicamente no ar.

Na mesa redonda, foi dito várias vezes que já sabemos como construir prédios (ou sistemas de 1 milhão de linhas de código como o Eclipse e o Linux) mas que precisamos aprender a construir cidades (ou sistemas com 1 bilhão de linhas de código). Por exemplo, apenas a Internet (e a Web) são sistemas desse tipo mas futuramente outros sistemas de ultra-grande escala irão surgir.

À noite tivemos um tributo ao John Vlissides da Gang of Four que faleceu no ano passado. Foi uma festa com sobremesa (parte favorita do John) e uma mesa redonda com os outros 3 membros da GoF (o Helm via um vídeo enviado da Australia onde ele vive). É uma grande pena não termos mais o Vlissides, além de brilhante, ele era uma pessoa humilde, acessível por seres humanos normais como nós e simpática. Só para dar um exemplo disse, uma vez ele até me mandou um presentinho pelo correio pois eu enviei para ele um Uso Conhecido para um padrão que ele estava escrevendo. Durante o painel, o Gamma contou como foi todo o período da escrita do artigo e mostrou uns 10 ou 20 emails dentre os mais de 3 mil que eles trocaram em 92, 93 e 94 durante a escrita do livro.


A OOPSLA tem uma coisa bem legal que são as sessões Birds of a Feather ou simplesmente BoF. A idéia é que alguém posta na parede um assunto que gostaria de discutir dizendo a sala e a hora e todos os interessados aparecem lá para discutir a coisa. Pois bem, hoje de noite, fui ao BoF sobre o Squeak Smalltalk (que usamos há 2 anos na disciplina de POO do IME) e fiquei contente de ver que a comunidade está crescendo (devarinho mas crescendo) e mais e mais sistemas comerciais e de pesquisa usando Squeak estão aparecendo. Dentre os projetos interessantes que foram citados me lembro do:
  • Spoon - um Squeak BEM pequenininho (1300 bytes no mínimo) e extensível; umas das coisas legais que foi demonstrado foi um visualizador gráfico da memória ocupada pelos objetos.
  • Scrutinizer - um verificador de CSS e HTML feito em Squeak/Seaside por um funcionário da Amazon para verificar se as páginas da Amazon estavam sintaticamente corretas. Sugiro experimentar com suas próprias páginas Web.
  • Sophie - um ambiente para autoria de livros multimídia, ou O Livro do Futuro...
  • Gjallar - um "web-based issue tracker" altamente configurável que é baseado no Squeak/Seaside e em um BD OO chamado Magma. Dizem que ele é mais difícil de usar mas muito mais poderoso e flexível do que outras alternativas mais famosas como o Mantis que é um "bug-tracking system".

0 Comments:

Post a Comment

<< Home