Na fila

December 14th, 2004 § 2 comments § permalink

Outros livros na minha fila para leituras de fim de ano:

Tomorrow Now, de Bruce Sterling
Primeiro livro do Bruce Sterling que vou ler. Esse tipo de previsão do futuro tende a ficar ultrapassada logo, mas com o Sterling a coisa deve ser mais interessante, considerando a qualidade dos artigos e outros textos que já li dele.
The Stand, de Stephen King
Vi pedaços da mini-série uma vez, mas nunca li o livro. Hora de corrigir a deficiência porque a história parece ser realmente interessante.
Misery, de Stephen King
Recomendado por um amigo. A história parece ser interessante também. Espero que não caia em um dos clichês usuais do autor.
O Terceiro Milênio, de José Maria Domenech
Depois de uns dez anos sem me lembrar desse livro, ele foi comentado em uma lista de ficção científica da qual participo. No dia seguinte, por coincidência, passei em um sebo perto de onde eu estava indo resolver um problema. Primeiro livro que acho é o próprio, mesmo ele sendo relativamente raro. Esse livro foi uns dos primeiros que li do gênero na infância e me abriu os horizontes. Eu não imaginava que houvessem aventuras tendo ciência como tema. Daí em diante, não parei de ler ficção científica mais. É também o livro que me inspirou a escrever.
A Strange Valley, de Darrell Bain
Comprei antes de ter lido o Darwin’s Radio e Darwin’s Children. Depois percebi que as estórias tem muitas similaridades, pelo menos considerando o que diz a sinopse do livro. Tomara que seja um pouco diferente.
The Case for Christ, de Lee Strobel
Um jornalista analisa a evidência em favor de Jesus.
The Scar, de China Miéville
Continuação indireta do Perdido Street Station. Já estou salivando só de pensar no livro.
Selected Tales, de Edgar Allan Poe
Li muitos dos contos dele, mas essa seleção tem vários que eu ainda não tinha visto. Poe é um mestre no maior sentido da palavra.
Moby Dick, de Herman Melville
Resolvi ler de novo. Da última vez, eu era bem mais jovem e não me lembro de muita coisa. Vamos ver no que dá.

Magia negra, singularidades e gênios da lâmpada

December 13th, 2004 § 5 comments § permalink

“Em duas ocasiões, [membros do Parlamento] me perguntaram: ‘Diga-nos, Mr. Babbage, se introduzirmos dados errados na máquina, ainda sairão respostas corretas?’ Eu não consigo compreender o tipo de confusão de idéias que motivou tal questão.”

Charles Babbage (1791-1871)

Essa é uma das minhas citações favoritas na história da computação. Ao longo da minha carreira em informática, eu experimentei situações similares na pele. Existem até sites inteiros devotados a descrever incidentes de extrema confusão por causa dessa dissonância cognitiva que a informática muitas vezes causa.

O engraçado é que, por mais que os “profissionais” tentem puxar a sardinha para o seu lado, dizendo que isso é típico de usuários, o fato é que nós caímos muitas vezes no mesmo poço. Afinal de contas, também somos usuários, mesmo que de uma ordem diferente de aplicações.

Isso me lembra a história dos cultuadores da carga. Durante a Segunda Guerra Mundial, as potências aliadas estabeleceram bases em ilhas do Pacífico e o transporte de cargas para equipar os soldados lá estabelecidos se tornou comum. Vastas quantidades de roupas, comida enlatada, armas e outros itens de natureza industrializada começaram a invadir essas ilhas, beneficiando, obviamente, os habitantes das mesmas, que serviam de hóspedes e guias para aqueles soldados. Isso mudou completamente o estilo de vida daqueles aborígenes, antes ignorantes desses aspectos da civilização.

Após a guerra, com a retirada dos soldados e conseqüente fim das cargas trazidas por via aérea, muitos daqueles habitantes começaram a imitar as atividades do soldados em uma tentativa de reestabelecer a chegada de bens. Para isso, eles construíram novas pistas de pouso, aviões de madeira, torres de controle onde se sentavam usando fones de ouvido de madeira e assim por diante. Chegavam ao ponto de praticar procedimentos de sinalização de pouso tentando atrair o “favor” dos novos deuses. Desnecessário dizer, isso só levou à substituição das antigas religiões.

Em programação, existe também uma espécie de culto à carga no que tange ao uso de certas ferramentas. Por vezes, a interface de uma determinada biblioteca é tão esotérica e complicada que o domínio da mesma nunca é conseguido e os programadores que as usam tentam adivinhar os parâmetros necessários para gerar determinadas respostas. A fragilidade do código resultante sempre leva a problemas e erros que são extremamente difíceis de rastrear.

Um exemplo desse tipo de programação é a correção de bugs por meio da modificação aleatória de parâmetros e código até que o programa funcione. Não há a preocupação de entender o problema, apenas resolvê-lo. O uso de certas funções e métodos se torna ritual, motivado apenas pela idéia de que funcionou anteriormente.

Arthur C. Clarke, o famoso escritor de ficção científica, disse que qualquer tecnologia suficientemente avançada é indistingüivel de mágica. É interessante perceber que muitas vezes a programação é comparada a mágica também, pela natureza arcana de algumas técnicas ou bibliotecas.

O Jargon File define alguns termos dessa natureza. Por exemplo, temos a programação voodoo, que é o uso de “receitas” de programação avançadas que não são completamente entendidas pelo usuário mas que ele pode seguir sem precisar conhecer os detalhes por trás da mesma. O uso do mod_rewrite no Apache é freqüentemente citado como um exemplo disso, já que é incrivelmente complexo mas existem exemplos abundantes para quase qualquer coisa que se precise fazer.

Partindo daí, temos a magia negra, aquelas técnicas que funcionam, mas ninguém entende o como ou o porquê. A magia negra é uma forma menos evoluída da arte negra, que são técnicas teóricas que ninguém ainda traduziu em código pela sua complexidade. À medida que a arte negra é tornada prática, ele desce de nível para a magia negra, tornando-se depois apenas magia forte. A magia profunda é parecida com a magia negra, mas é mais prática, embora acessível a poucos. Mas é interessante notar como o que Clarke disse se aplica. Poucos programadores entendem como um stack TCP/IP funciona, embora quase todos sejam capazes de usar um.

Isso me lembra um pouco da questão da Singularidade, a temida convergência tecnológica que causara a transcedência da inteligência para um nível além da compreensão de nossa inteligência normal. Por vezes, me parece que a Singularidade é apenas uma reformulação da afirmação de Clarke aplicada a um crescimento exponencial e rápido da tecnologia. A proliferação tecnológica, impedindo a generalização do aprendizado, causaria o surgimento de inúmeras caixas pretas cujas interfaces são apenas intuídas. E disso surgiria a Singularidade, quando caixas pretas “aprenderiam” a se replicar e construir caixas pretas ainda mais sofisticadas, cheias de magia negra Clarkiana.

Voltando ao começo, então, para o usuário comum, essas caixas pretas começam a parecer varas de condão, gênios da lâmpada capaz de entender implicitamente os desejos de seus mestres e realizá-los mesmo que esses mestres não consigam formular os seus desejos apropriadamente. Isso explica a confusão percebida por Babbage.

Eu acho que parte do sucesso de linguagens como Ruby e Python se deve à clareza do processo de programação que é possível obter nessas linguagens. (Indiretamente, isso explica a valorização de profissionais em linguagens arcanas.) Poucas linguagens são capazes de oferecer o tipo de visão sistêmica que essas duas apresentam. Isso resulta em simplicidade, que por sua vez facilita o aprendizado, impedindo o surgimento generalizado dos cultuadores de carga que são vistos em linguagens como Java, C#, Perl e outras. Gera também sistemas mais explícitos, com interfaces mais compreensíveis.

E isso me faz ficar curioso quanto ao surgimento futuro de uma linguagem de programação natural. Eu fico imaginando o que aconteceria quando a programação se aproximasse diretamente dessa figura do gênio da lâmpada, capaz de processar conceitos ao invés de comandos. Eu realmente não tenho a menor idéia, mas certamente eu pagaria para ver. Enquanto isso, eu vou me divertindo com meus próprios erros.

Essa coisa com nomes…

December 10th, 2004 § 12 comments § permalink

Eu não considero o meu nome complicado, mas isso não impede que os outros o confundam na hora de se dirigirem a mim. Herança talvez, do jeito que a coisa começou.

A história é engraçada. Minha mãe tinha um namorado chamado Ronaldo. O carinha parece que não era lá boa peça e minha mãe desgostou dele depois de um tempo. Quando eu estava para nascer, alguns anos depois, ela disse para o meu pai: “Coloca o nome que você achar melhor, contando que não seja Ronaldo”.

Meio que inevitavelmente, Ronaldo cá estou. O que deu na cabeça do meu pai naquele dia, até hoje nem ele mesmo sabe explicar.

Talvez por causa do jeito que o nome foi dado, ele estava destinado a ser confundido eternamente. Tirando os apelidos, o nome sempre muda quando alguém me conhece. E, depois de alguns minutos, quase sempre vem a pergunta: “Como é o seu nome mesmo?”

Uma vez, em um acampamento, eu comecei sendo chamado de Ronaldo. De Ronaldo, eu passei a Reinaldo; de Reinaldo a Renoldo, via um americano que não sabia português direito. E não parou por aí. De Renoldo, era inevitável Rodolfo. E se havia Rodolfo, porque não Adolfo? Depois de quatro dias de acampamento, esse era o nome pelo qual eu era mais conhecido. (Para os céticos, essa história é verídica).

De Ronaldo para Reinaldo, eu até entendo. Reinaldo e Ronaldo são formas do germano Reginold (que significa aquele que rege por meio de conselhos). Agora, de Renoldo (não muito longe de Reginold) para Rodolfo, a distância é bem maior. Mas se conseguiu mudar tanto, já dá para chegar ao resto: de Rodolfo (lobo famoso) para Adolfo (nobre lobo) já não é tão longe.

Entre os estrangeiros, Renoldo é meu nome mais comum. Mas tem Rolando, que normalmente leva a Orlando. Formas do mesmo nome (terra famosa), ajudam a entender a dislexia alheia. Mas eu não sou um cavaleiro errante e talvez estejam me confundindo com Rinaldo e não com o furioso.

Adolescente, com Ronaldinho no auge da sua fama, era inevitável o mesmo apelido. Considerando que, quando eu jogo futebol, eu acerto mais pernas do que a bola, provavelmente estavam me comparando à feiúra do outro e não aos seus dotes futebolísticos.

Ronaldão veio depois do casamento. A circunferência cresceu e o apelido pegou. Se eu não resolver isso rápido, vai ficar para o resto da vida. E eu não sei o que é pior: o nome trocado ou as insinuações nesses apelidos.

Por isso é que o nome do meu filho não começa com R. Traumatizei.

Sobre rubis e trilhos

December 9th, 2004 § 11 comments § permalink

Como eu mencionei algum tempo atrás, eu comecei a usar o Ruby nos meus projetos Web, através do framework Rails. Eu confesso que estou cada vez mais espantado com as capacidades da linguagem. A exemplo do Python, o Ruby não se coloca no caminho do programador e oferece um produtividade impressionante, mesmo para quem não têm tanta experiência da mesma. É pena que usa tantos underscores nos nomes dos métodos…

Para a aplicações Web, o Rails está realmente se mostrando um dos melhores frameworks que eu já vi. As coisas são tão fáceis e intuitivas que o uso da documentação é quase que desnecessário. Eu vivi uma epifania quando vi como fazer a parte de autenticação no Rails. Tão simples que chega a doer ao pensar em como isso teria que ser implementado em outras linguagens.

Agora são os amigos que têm que me agüentar nos instant messengers da vida, pregando as virtudes do Ruby e do Rails. Mas, vendo como o Rails reduz o tempo de programação, eu não consigo resistir. Um amigo, por exemplo, estava reclamando da repetitividade em fazer formulários com validação em PHP. No Rails, essa tarefa se resume à invocação de um método e à adição de regras em um objeto. O resto, o framework faz transparentemente.

Tem coisa melhor que isso?

Paternidade

December 7th, 2004 § 12 comments § permalink

Quando eu me casei, há quase quatro anos atrás, ter um filho era a última coisa que eu tinha em mente como parte do meu casamento. Na verdade, quando alguém perguntava sobre o assunto durante os primeiros dois anos do casamento, tanto eu quanto minha esposa respondíamos com um enfático não para a possibilidade.

E, naquela época, eu realmente não tinha a intenção de ter um filho tão cedo — se tivesse. Eu não era o tipo que detestava crianças pequenas ao meu redor, mas não era também o tipo que dava atenção para alguma que estivesse perto. Indiferença talvez seja a palavra que melhor caracterizava a minha atitude então.

Imagine então o meu espanto quando a minha atitude mudou drasticamente de um dia para o outro — literalmente. Uma noite, eu não imaginava a possibilidade de ter filhos nas próximas décadas. No dia seguinte, eu acordei querendo ter um filho imediatamente. Minha esposa ficou completamente espantada. Do nada, de repente, eu queria ser pai.

É claro que coisas dessa magnitude não podem ser apressadas. Foram alguns meses de planejamento e depois mais alguns meses de tentativas. Sexta-feira passada, o nosso “pacotinho” completou cinco meses de vida nesse nosso mundinho azul. Já se vão quase dois anos desde o dia em que eu choquei a mim mesmo com minha decisão e eu não consigo imaginar outra vida. Como um amigo meu, que teve uma filha recentemente, disse: “Se eu soubesse que era tão bom, tinha arrumado um mais cedo”.

Hoje, eu estava deitado quando vi minha esposa levantar para dar mamadeira para ele. Voltei a dormir para aproveitar a última meia-hora antes do trabalho. Já estava quase no décimo sono quando senti alguma coisa mexer nas minhas costas. Com relutância, abri os olhos e me virei na cama. Meu filho tinha conseguido se virar na cama e estava tocando minhas costas. Quando ele viu que havia sucedido em chamar, abriu um sorriso esfuziante, estendendo as mãos para que eu o pegasse. Eu acho que nunca senti nada igual em minha vida como naquele momento. E isso compensou todas horas de sono perdidas, toda preocupação e todo o trabalho que um filho representa.

Eu ainda não entendo o que me levou a mudar de idéia tão subitamente, mas eu sei que eu jamais me arrependerei na decisão.

Canon A85

December 6th, 2004 § 4 comments § permalink

Obrigado a todos pelos bons conselhos sobre a compra de uma câmera digital. Eu acabei optando por um Canon A85 tanto por causa das características como por causa do preço. Como ela é de 4 megapixels, acho que vou ter resolução suficiente para brincar bastante. :-)

Graphviz

December 5th, 2004 § 5 comments § permalink

Excelente dica do Guaracy: Graphviz. Eu queria ter ouvido falar dessa biblioteca para a geração de gráficos hierárquicos há alguns meses atrás quando eu estava penando para construir uma funcionalidade assim em uma aplicação. Nenhum das que eu encontrei era tão fácil e óbvia.

Mulheres de 30

December 3rd, 2004 § 3 comments § permalink

Mulheres de 30 é um delicioso blogs de crônicas que, nas palavras dos próprios escritores, “contarão todas as angústias, alegrias, sucessos, fracassos, vida, amor, sexo, paixão, filhos, profissão, família, amigos e tudo mais que envolve a vida de uma mulher de 30 anos, com textos inteligentes e bem humorados”.

Eu encontrei esse blog há algum tempo atrás e fiquei encantado com os textos. Devorei os arquivos e me subscrevi imediatamente ao feed RSS do mesmo. Achei tão bom que passei o endereço a outros amigos e amigas que hoje também são leitores freqüentes. Como eu nunca tinha comentando sobre ele aqui, embora tenha um link para ele no meu blogroll, achei que era hora de remediar essa omissão.

Para a galera do Mulheres de 30, só uma recomendação, não demorem tanto entre cada entrada. Seus leitores agradecem. :-)

Perdido Street Station

December 3rd, 2004 § 2 comments § permalink

Há livros que deixam uma impressão tão duradoura no leitor que este não consegue deixar de pensar nos mesmos por dias a fio depois de terminada a leitura. Perdido Street Station, do China Miéville, é um dos livros que me causou essa sensação. Eu terminei a leitura desse livro fantástico há algumas semanas e ainda me pego pensando nas situações, personagens e possibilidades descritos ou sugeridos pelo livro.

Definir Perdido Street Station é uma tarefa complicada. O próprio autor o caracteriza como weird fantasy, mas eu acho esse rótulo meio sem significado. Toda fantasia (e, por extensão, toda ficção fantástica) tem que ser weird na minha opinião, exibir esse senso de maravilhamento que deixa o leitor preso ao mundo criado e o leva a fronteiras inexploradas. Mas, seja lá qual for a categoria em que Perdido Street Station se encaixe, o livro leva essa estranheza ao extremo e apresenta o leitor com um dos melhores mundos fantásticos já criados, povoados de criaturas ímpares e complexas cujas vidas e desventuras compelem o leitor, o atraindo e repelindo ao mesmo tempo. » Read the rest of this entry «

Câmera Digital

December 2nd, 2004 § 13 comments § permalink

Estou pensando em comprar uma câmera digital, mas estou completamente indeciso sobre o modelo. Minha câmera comum está nas últimas e, se for para trocar, eu prefiro comprar uma digital. Eu andei olhando algumas, lendo alguns sites, mas como não tenha experiência nenhuma no assunto, não sei qual seria mais adequada.

Existem até alguns sites que tem resenhas bem detalhadas de vários modelos, dando recomendação sobre quais são as melhores, mas sempre existe alguma coisa que me deixa em dúvida. E como os modelos encontrados aqui no Brasil estão sempre um pouco defasados e raramente aparecem nesses sites, a dúvida piora. A única coisa que eu sei por enquanto é que eu quero zoom ótico e que o modo vídeo grave voz também.

Se alguém tiver alguma recomendação, eu agradeço.

Where am I?

You are currently viewing the archives for December, 2004 at Superfície Reflexiva.