FISL, dia 3

April 20th, 2008 § 4 comments § permalink

Terceiro e último dia do FISL. Mantive o mesmo padrão de ontem e participei de palestras sem esquecer das conversas no meio tempo. O dia foi bem legal com oportunidades extensas de conversas e encontrar com mais gente que eu não via há muito tempo.

Nas palestras, a primeira da qual participei foi a de Seaside com o Randal Schwartz. Muito boa, é claro, e deu para ver que o pessoal na platéia ficou impressionado. Houve expressões literais de surpresa quando ele mostrou o debugger em ação e erros sendo corrigidos diretamente em uma aplicação em execução. Infelizmente, ele só teve 35 minutos para falar e acabou ficando um pouco apertado para fazer tudo o que ele pretendia. Não tive tempo de conversar com ele depois porque já queria em outra palestra mas não tem problema: ele publicou no blog dele que a organização do FISL lhe ofereceu uma sala para três dias inteiros no ano próximo para sessões sobre Squeak, Seaside e Smalltalk em geral. Impressionante, para dizer o mínimo. Com Cincom, Gemstone e outros aumentando seu suporte para Seaside, eu acho que finalmente a Web vai começar a se mover novamente e uma linguagem que merece uma exposição maior vai ter um bom lugar ao sol.

Depois disso, assisti a palestra do Sérgio Amadeu com o tema “Internet sob ataque”. Muita demagogia, pouco conteúdo e eu fiquei bem surpreso com o que escutei porque tinha ouvido o Amadeu em outras ocasiões e ele não me parecia um xiita tão incômodo. Gritando, atiçando o povo, estava mais para um Stallman escandaloso do que um sujeito mais centrado como das outras palestras que vi. Sinceramente, não gostei.

A palestra seguinte foi sobre Scrum e não consegui ouvir nem quinze minutos. O assunto era bom, a sala estava lotada, mas é como a Thaís disse no Twitter: saber de algo não é o mesmo que saber falar. A palestra estava sem rumo, slides misturando português e inglês e acho que quem estava lá não conseguiu extrair muito do que Scrum e XP realmente são. Eu confesso que passei os 30 minutos da palestra lendo um livro.

A palestra final foi a do John “maddog” Hall que deu um banho em todos os palestrantes do evento. Eloqüente, alegre, sincero e bem humorado, controlou os trinta minutos que falou e as perguntas seguintes com uma presença que os outros palestrantes ganharia muito em emular. Ele falou sobre recuperar a parte divertida do código livre e a importância do mesmo para o mundo de uma maneira que evitou completamente a demagogia do Amadeu e o extremismo do Stallman. É quase impossível descrever a palestra porque o velinho gente boa (que foi comparado ao Papai Noel em uma pergunta) tem–como diria o povo–as manhas completas. :-) E de quebra, é super-acessível. Só a palestra dele valeu o FISL inteiro.

Durante os intervalos das palestras, mais conversas com o pessoal que foi aparecendo. De tarde, mais um papo legal com o Vinicius Telles e o resto da galera de Rails que estava lá. Durante o dia encontrei também com o Bruno Torres.

E depois de seis anos, finalmente me encontrei com o Guaracy Monteiro, meu guru programático espiritual, o cara que estava me falando para usar Ruby dois anos antes de que eu pensasse na idéia e publicando screencasts de Seaside antes que qualquer pessoa, eu inclusivo, tivesse ouvido sequer falar nisso.

Acabou que no final fomos todos para uma churrascaria local, a 35, para um rodízio insano de carnes e mais conversa maluca sobre tudo e mais um pouco. Estavam lá o Thiago Silva, Bruno Torres, Guaracy Monteiro, Thais Camilo, Gabriel Reis, Lucas Húngaro, Jony dos Santos, Vinicius Telles, Carlos Eduardo e mais uma porção de gente que eu, como sempre, não vou conseguir lembrar precisamente. Eu, Bruno, Thiago e Guaracy ficamos até quase meia noite batendo papo sobre novos paradigmas Web, hipermídia, transclusão, o futuro hiper-tecnológico, especiação social, REST, e mais um bilhão de tópicos enquanto a picanha rolava solta. E isso sem contar o engraçadíssimo “show” de danças regionais que é o espetáculo local do restaurante. Barulhento em extremo, mas divertido.

O saldo de três dias do FISL foi uma experiência incrível que valeu a pena cada segundo. Clichè, eu sei, mas nem por isso menos verdadeiro. Palestras excelente, conversas com um pessoal super-interessante (gente como o Thiago Silva, Metal e Guaracy Monteiro sempre me deixam com a sensação de que eu ainda nem arranhei certas áreas da profissão e que existe um universo inexplorado). E também a oportunidade de conversar com ídolos da área, gente que você nunca imagina serem tão acessíveis.

Muito bom e espero repetir a dose ano que vêm.

FISL, dia 2

April 19th, 2008 § 2 comments § permalink

Segundo dia do FISL. Depois da agitação de ontem, acordei um pouco mais tarde e cheguei por volta das dez. Como a primeira palestra da qual eu queria participar era às onze, não tinha tanto problema. Infelizmente, a Internet local estava ainda pior do que ontem e não deu para atualizar basicamente nada durante o dia. Sobrou mais tempo para o networking, o que acaba sendo melhor ainda.

A primeira palestra que vi foi sobre o Coding Dojo. Como eu tinha começado a organizar um em Belo Horizonte–que agora, inclusive, acabou meio mudando de formato e que infelizmente não vou poder acompanhar–eu tinha interesse em saber se tinha começado da maneira correta. Essencialmente, a resposta foi sim embora algumas coisas talvez pudessem, é claro, ter sido feitas de uma maneira mais eficiente. Na verdade, ao invés de ser uma palestra, foi realizado um Dojo local mesmo com um Randori Kata sobre o problema de números romanos. A estratégia foi interessante, mas acabou saindo com um tiro pela culatra. Mesmo com a participação de voluntários da platéia, o processo ficou um pouco lento–em parte pela escolha de Java e Eclipse–e metade da sala que estava lotada no começo acabou indo embora mais cedo, alguns reclamando que não estavam entendendo direito. O motivo provavelmente foi fazer o TDD em baby steps excessivamente pequenos que, para quem não está acostumado com a filosofia TDD acaba parecendo um desperdício de tempo. Pena que não deu para ficar até o final porque eu queria ver outras coisas, mas foi bem legal.

Um pouco mais tarde foi a palestra do Rasmus Lerdorf, criador do PHP, cujo título era Large Scale PHP. Eu achei que seria sobre escalabilidade–afinal de contas ele começou falando que o Yahoo! o contratou para reescrever todos os produtos em PHP–mas isso tomou somente a parte inicial da palestra. O resto foi sobre como lidar com problemas de segurança em aplicações Web usando o PHP como exemplo mas em coisas que são válidas para qualquer aplicação. Interessante mas eu esperava exemplos mais práticos de como o Yahoo! lida com zilhões de conexões por dia e coisas assim.

Na seqüência vi uma sobre o impacto econômico do FLOSS, por um pesquisador de economia de uma universidade na Holanda. A palestra foi muito boa, começando pela exploração do tema de uso econômico sem dinheiro, algo que é totalmente dentro da esfera do software livre. O palestrante explorou o tema de troca (reputação, valores, etc) que envolve o software livre e como isso representa uma porção significativa da criação de recursos no mundo moderno de TI. Segundo ele, em 2010 o FLOSS representará 30% de todo o parque tecnológico mundial e 4% do PIB do mundo todo. E isso, em sua maior parte, movimentando tempo e não dinheiro já que a maioria dos programadores envolvidos com FLOSS vendem tempo e não produtos (e a maioria para produção in-house). Recriar todo o FLOSS gerado até 2005 envolveria a bagatela de 12 bilhões de euros e 163 mil anos-homem.

A última palestra que vi foi sobre domínio público e direito autoral que foi muito bem dada, por sinal. Os palestrantes estão envolvidos com o Creative Commons no Brasil e repassaram, com muito humor, a história do copyright e de como chegamos ao ponto atual em que o domínio público é algo bem problemático. Mas para não ficar no teórico, apresentaram dois cases, um do uso e disponibização em domínio público de material criado pelo SESC/Rio e outro da recuperação de obras de domínio público do Noel Rosa.

No resto do dia, aproveitei para continuar a me encontrar com o pessoal que conhecido e pouco visto. Hoje foi a vez de encontrar figuras com o Metal (com quem só me encontro por acaso em filas de cinema e eventos em outras cidades mesmo quando morava em BH), o Thiago Souza (que gerou uma dissonância cognitiva porque estava esperando um negão de dois metros de altura depois de ter confundido a fota dele no IM com a de outro Thiago), o Cesar Cardoso, um monte de gente dos movimentos livres de Brasília, e mais outra porção de gente que eu vou custar a me lembrar.

E para terminar, restaurante com a Thais (Brasigo como eu), Gabriel e Pedro (UOL) e mais um cara do Google (se não me engano, Rodrigo) em um bom restaurante no meio da cidade. Mais papo legal.

Agora é hora de dormir porque amanhã tem mais. Inclusive, palestra de Seaside para começar o dia. :-)

FISL, dia 1

April 17th, 2008 § 2 comments § permalink

Primeiro dia de FISL. Cheguei por volta das nove e meia e o local estava transbordando com mais o que os organizadores disseram ser mais de sete mil e quinhentas pessoas. O credenciamento estava tão impossível que a organização removeu a obrigação do crachá até as quatro horas da tarde. Mas o clima era meio festivo como sempre acontece nesses super-eventos onde 90% do público é geek. Desde que as redes funcionassem e os velhos amigos se encontrassem tudo estava bem.

A primeira coisa que eu fiz foi me enfiar em uma sala e decidir quais palestras eu veria. Com mudanças de programação de última hora, a grade que eu tinha estava completamente desatualizada. Para rolar um networking interessante me limitei a cinco palestras por dia mas com objetivo de ver talvez quatro.

Feito isso, parti para as palestras. Acabei vendo três e passando o primeiro dia mais em conversas com as dezenas de pessoas que eu conhecia pela Internet e estava encontrando pela primeira vez. O pessoal de Ruby e Rails apareceu também e passei algum tempo no estande montado por eles–mais para roubar energia e banda, eu confesso. :-)

Das palestras, a primeira que vi por completo foi do Josh Berkus sobre segurança e PostgreSQL. A palestra se provou bem interessante porque os conceitos são aplicáveis a qualquer aplicação e qualquer banco. Depois aproveitei para conversar um pouco com ele sobre segurança de aplicações Rails. Ele disse ter tido experiências bem ruins com a comunidade e que acredita que a maioria dos programadores Rails não pensa em segurança achando que filtros são suficientes para garantir tudo–o que, de maneira bem geral, é verdade. Depois conversamos um pouco sobre os desafios de transformar uma aplicação Rails para funcionar dentro dos parâmetros que ele descreveu, o que não é uma tarefa fácil.

Depois disso, assisti ao Ken Coar, da Apache Foundation, hacker extraordinaire cujo blog leia há anos. Ele falou sobre as dificuldades de comunicação em software distribuído e como elas acontecem mesmo em times pequenos. Foi bem interessante ver as idéias dele sobre o porquê disso e como resolver algumas situações de maneira simples.

A última palestra que consegui ver foi a de integração entre aplicações RIA e Comet com os autores do Daily Comet. Bem interessante, embora um pouco seca às vezes pelo uso excessivo da leitura de slides. Ainda assim, material interessante.

O resto do dia foi dedicado a conversas extensas com todo o pessoal que estava lá. Júlio Monteiro, Carlos Eduardo, Michel Felipe, Lincoln de Souza, Lucas Húngaro, Rodrigo Sol, Weldys Santos e uma porção de gente que eu não vou lembrar agora de nome.

A única reclamação é a conexão à Internet no evento. Simplesmente deplorável. É impossível mandar qualquer coisa quando você esta entrando e saindo da rede de cinco em cinco segundos. Bateria de notebook nenhuma agüenta ficar procurando rede o dia todo.

Mas no final do dia, eu estou como o Neo no treinamento:

— You want more?

— Yes, please!

Rumando para o FISL

April 15th, 2008 § 4 comments § permalink

Amanhã estou partindo para o FISL. Sendo minha primeira experiência com esse “mega-evento”, imagino que vai ser bem divertido participar e encontrar a moçada toda que vai estar lá. Só espero que a cidade não esteja congelando porque eu não estou muito preparado para essa eventualidade. Vamos ver o que acontece. :-)

Alias, e alguém tem dicas para lidar com o dia-a-dia do evento lá, eu agradeço. Pela quantidade de coisas que estão marcadas, é óbvio que não dá para seguir tudo e eu gostaria de aproveitar as coisas interessantes que passam desapercebidas. Qualquer dica é bem-vinda.

Para o pessoal que comentou aqui, nos vemos lá.

FISL 9.0

April 7th, 2008 § 6 comments § permalink

Depois de vários anos planejando e nunca conseguindo, por várias razões, esse ano devo aparecer no FISL, cortesia da empresa. Isso se a companhia–oficial, inclusive–responsável pelas passagens e hospedagem finalmente resolver colaborar.

Vai ser legal encontrar com alguns amigos antigos que eu não veja há muito tempo e outros que ainda não conheço pessoalmente. E dessa vez vou aproveitar para cobrar o churrasco do Guaracy que está prometido há anos. :-)

Se tudo der certo, vejo alguns de vocês lá.

Editores

March 24th, 2008 § 4 comments § permalink

Eu confesso que tentei. Por causa da falta de um bom editor de texto natural para o Mac OS X, eu acabei comprando o TextMate para ver se ele realmente era tão interessante quando o povo dizia. Existem algumas alternativas grátis, mas o TextMate prometia mais extensibilidade.

Ele realmente é muito bom, mas somente se você quer um editor de texto glorificado. A não ser que o ambiente absolutamente exija, eu não sou muito fã de um IDE. Mas eu quero um editor de texto que seja muito bem integrado em si próprio e que me permita uma flexibilidade extrema de customização. O TextMate permite muita customização–e principalmente, com o uso de Ruby, de maneira relativamente simples–mas falha bastante do critério de integração em si mesmo.

Como ele é simplesmente um editor, algumas coisas acabam saindo pela metade–a não ser que você realmente decida se dedicar a customizar exaustivamente centenas de opções em vários modos e criar os seus próprios, sempre com o medo de ter que fazer uma atualização.

Eu realmente fico com o meu Emacs. Customizar pode demandar mais em termos de uso de linguagem, mas a integração interna é simplesmente imbatível. Para Rails então, nem se fala–eu não preciso sair do editor nem para navegar, se eu não quiser. Isso é facilidade.

We are the blog

March 5th, 2008 § 7 comments § permalink

We are the blog.
Open your markup and surrender your feed.
We will add your informational diversity and style
distinctiveness to our own.
Your templates will adapt to serve our content.
Resistance is futile.

RSA SecurID

February 23rd, 2008 § 3 comments § permalink

Esses dias fui pegar no banco Real o novo “token” que eles estão usando para autenticação do Internet banking. Só depois de usar alguns dias é que fiquei curioso para descobrir mais sobre o assunto e fui procurar o dispositivo.

O trequito–em bom mineirês–é um RSA SecurID (só empresas de segurança para inventarem esses nomes brilhantes mesmo) bem padrão. A página na Wikipedia tem mais informações, incluindo a “bela” idéia da RSA de introduzir isso em outros dispositivos. Se depender da usabilidade do mesmo, vai ser duro. Aliás, no caso do que eu tenho, enquanto você não decora o número de série você é obrigado a segurá-lo contra uma boa fonte de iluminação já que o treco é preto e o número escrito em baixo relevo quase invisível.

O que eu acho engraçado é que o Real usa isso só para empresas, deixando o povão com a autenticação comum (que agora, tudo bem, tem um módulo de segurança a mais). Pelo menos o “token” funciona no Linux embora você tenha que carregá-lo para tudo quanto é lugar se quiser acessar a conta.

Eu só espero que daqui a pouco eles não acrescentem mais coisas. Entre a senha, conta, agência, número de série, número de autenticação e mais segunda senha alfanumérica, em breve eu não vou conseguir logar mais na conta do banco de tanto coisa que estão pedindo.

Kōan

January 29th, 2008 § 7 comments § permalink

Se há uma coisa que eu gosto na tradição Zen são os kōan. Poucas coisas expressam tanto, para o espírito ocidental, a natureza ambígua e intuitiva do Budismo. Embora eu não me subscreva ao Budismo, eu acho bem interessante o tipo de exercício por trás de um kōan.

Dois exemplos em particular na página da Wikipedia sobre o assunto estão entre os meu favoritos.

O primeiro expressa muito bem a contradição inerente em um kōan bem construído:

Se você encontrar o Buda, mate-o.

Linji

O o segundo talvez expresse melhor a necessidade de uma compreensão intuitiva do que o kōan está tentando dizer:

Quando duas mãos batem, há um som. Qual é o som de somente uma mão?

Hakuin Ekaku

Nos tempos modernos, os kōan acabaram se tornando também uma parte inerente da cultura hacker. Veja esse exemplo citado por Eric Raymond em seu Jargon File:

Um dia, quando Sussman era um calouro e estava programando no PDP-6, Minsky sentou-se ao seu lado.

— O que você está fazendo? — perguntou Minsky.

— Estou treinando uma rede neural randômica para jogar o jogo da velha — Sussman respondeu.

— E porque a rede é randômica? — perguntou Minsky.

— Eu não quero que ela tenha conceitos prévios sobre como jogar — disse Sussman.

Minsky então fechou os olhos.

— Para quê você está com os olhos fechados? — Sussman perguntou ao seu professor.

— Para que a sala fique vazia.

Naquele momento, Sussman alcançou a iluminação.

Esse kōan tem uma resposta definida, o que não é o caso da maioria deles, mas representa um exercício similar. Aliás, ao contrário dos kōan Zen, os relacionados com programação tendem a ser um tanto ou quanto humorísticos, representando muito da indisciplinada arte que é o desenvolvimento.

Neste aspecto, um outro exemplo fascinante vem de Guy Steele em uma longa discussão sobre Scheme na lista Lightweight Languages:

O venerável mestre Qc Na estava caminhando com seu estudante, Anton. Com a esperança de levar seu mestre a uma discussão, Anton disse:

— Mestre, ouvi dizer que objetos são um boa coisa. Isto é verdade?

Qc Na olhou com pena para seu estudante e respondeu:

— Pupilo ignorante! Objetos são somente uma pobre versão de closures.

Entristecido, Anton pediu licença ao seu mestre e retornou à sua célula, intento em estudar closures. Ele leu cuidadosamente toda a série de artigos Lamdba: The Ultimate e seus primos e implementou um pequeno interpretador Scheme com um sistema d eobjetos baseado em closures. Aprendeu muito e esperou o momento de encontrar-se com seus mestre e informá-lo de seu progresso.

Na sua próxima caminhada com Qc Na, Anton tentou impressionar seu mestre dizendo:

— Mestre, eu estudei diligentemente o assunto, e agora entendo que objetos são realmente uma versão pobre de closures.

Qc Na respondeu batendo em Anton com seus cajado e dizendo:

— Quando você vai aprender? Closures são uma pobre versão de objetos.

Naquele momento, Anton alcançou a iluminação.

Esse é especialmente interessante porque não tem uma resposta específica mas serve como um excelente ponto de partida para um estudo sobre o que paradigmas realmente representam. O que, obviamente, me leva a pensar que deve existir algum kōan sobre REST. Eu só não encontrei ainda.

Dentro da contradição, ambigüidade e necessidade intuitiva dos kōan, eu acho que eles dão um casamento perfeito com a arte que nós, programadores, praticamos. Como eu disse acima, isso vem da parte que não pode ser disciplinada e que depende de uma compreensão interna que todo programador possui do quê e como ele deve fazer o que faz. O que os torna, é claro, naturalmente interessantes para longas discussões sobre a prática da arte.

De qualquer forma, seja para filosofar ou programar, kōan dão uma bela leiura. E vocês, conhecem algum bom kōan?

Vivendo em código

January 24th, 2008 § 6 comments § permalink

God said, “Cancel Program GENESIS.” The universe ceased to exist.

Arthur C. Clarke

A idéia de que o Universo é uma máquina virtual ou uma simulação é um conceito antigo. E mesmo fora da ciência e tecnologia, culturas muitas vezes apresentaram o existência material como um sonho de um deus.

O próprio Cristianismo–e aqui eu me coloco com um cristão–lida introspectivamente com a questão de como o Universo está em relação a Deus, já que somente aquele existia anteriormente e se houve alguma limitação por parte da divindade ao criá-lo.

Mais recentemente, com o surgimento de condições favoráveis a este tipo de exploração, as pessoas começaram a questionar a possibilidade de simular toda uma realidade mecanicamente. Isso é bem natural, é claro, considerando as perguntas básicas sobre a existência.

Um artigo recente que me chamou a atenção foi The Physical World as a Virtual Reality. O artigo é o resultado da pesquisa de um físico sobre esse mesmo assunto, explorando as implicações de uma possível simulação para o Universo dentro do conceito da física como a conhecemos.

A leitura é fascinante e, embora nenhuma conclusão ou tentativa de criar algo matematicamente consistente seja tentada, a exploração é bem ampla. É claro que se fosse realmente possível provar que o Universo é uma simulação, as implicações seriam estonteantes–o que me lembra, é claro, as tentativas dos personagens de Simulacron-3 / The 13th Floor de escapar de seu plano para simplesmente encontrar outro acima dele.

O que seria realmente interessante, em um contexto de realidade virtual, seria a possibilidade de hackear o Universo, modificando ou introduzindo novas leis. Pode-se imaginar uma série infinita de Universos, cada um com suas próprias simulações e enormes experimentos sendo conduzidos nos mesmos. Esse é, não sem surpresa, parte do tema do livro e filme citados acima.

E é claro que o assunto pede a questão: se estamos numa simulação, qual forma tomaria uma tela azul?

Where Am I?

You are currently browsing the Coisas de Geek category at Superfície Reflexiva.