Balanço cultural de março

April 26th, 2009 § 2 comments § permalink

Novamente atrasado, chega a vez do balanço cultural de março que, em relação à minha média normal, foi um mês bem fraco. O resultado do mês ficou assim:

  • 3 livros;
  • 2 estórias em quadrinhos;
  • 7 filmes.

Nas estórias em quadrinhos, terminei os volumes três e quatro de Sandman, do Neil Gaiman. Dream Contry, o terceiro volume, é um belo interlúdio centrado no Senhor dos Sonhos de maneiras bem sutis e tipicamente Gaimanianas. Especialmente digna de nota é a última estória do livro, A Dream of a Thousand Cats, que consegue é fantástica e amendrontadora em sua simplicidade lírica. Já o quarto volume, Season of Mists é uma descida na vida íntima dos Perpétuos, mostrando o seu relacionamento–em especial com a história não resolvido da primeiro amor do Senhor dos Sonhos–e contendo uma seqüência absolutamente estonteante em volta de uma épica decisão por parte de Lúcifer em relação ao inferno.

Nos livros, comecei o mês fechando a série Twilight com a leitura do último livro. Como mencionei no balanço cultural anterior, Meyer consegue contar uma boa estória e o quarto livro está à altura do primeiro–depois dos dois intermediários não tão interessantes. O livro finaliza a estória dos personagens chave e fornece um final satisfatório à trama. Meyer realmente tem um bom universo em suas mãos, mas a simplicidade de sua narrativa tira um pouco do glamour que vampiros normalmente possuem na literatura.

O livro seguinte foi The Music of Primes, por Marcus Du Satoy. O livro é a estória da Hipótese Riemann, um dos maiores problemas não solucionados na matemática e sua relação com os números primos e os segredos que se escondem por trás dos mesmos, juntando vários ramos distintos dessa bela ciência. Du Satoy faz um belo trabalho em ilustrar a importância e os mistérios dos primeiros e discorrer eloqüentemente sobre a cadeia de descobertas que levou Riemann à sua hipótese. Finalmente, ele fornece os detalhes das tentativas de elucidar o mistério até os dias atuais, finalizando com os caminhos que poderão ser seguidos frente a uma solução para o problema.

Fechei o mês lendo Camouflage, do Joe Haldeman. Vencedor do Nebula de 2005, o livro conta a estória de dois seres imortais, presente na Terra a milhões de anos, cuja memória do próprio passado é quase inexistente e a busca dos mesmos para descobrir suas origens através de um misterioso artefato encontrado em uma fossa submarina. O livro é rápido e primoroso em seu desenvolvimento dos personagens e da apresentação de inteligências estranhas à Terra fazendo o seu caminho entre humanos insuspeitos rumos ao seu destino. Se passando em um futuro próximo, com breves incursões ao passado para explicar detalhes da trajetória dos dois seres, o livro conseguiu me manter preso do começo ao fim. Leitura bem recomendada.

Nos filmes, o mês começou com Outlander, uma mistura de ficção científica com lendas vikings que, surpreendentemente, consegue funcionar bem. Com exceção da atuação usualmente fraca de Jim Cavieziel, o filme consegue entreter e apresentar uma trama plausível na maior parte do tempo, refazendo o mito de Beowulf com toques alienígenas.

Um outro bom filme do mês foi Taken que apresenta Liam Neeson na pele de um ex-agente da CIA cuja filha é raptada em uma viagem para a Europa começando uma maratona de 96 horas para tentar recuperá-la antes que ela desapareça para sempre. Neeson faz um espião pragmático e inescrupuloso que me lembra muito Jason Bourne dos livros e não dos filmes. O filme vale muito a pena.

You Don’t Mess with the Zohan foi divertido como a maioria dos filmes de Adam Sandler mas sem maiores surpresas. Meet Dave, por sua vez, mostra um Eddie Murphy um pouco mais passável do que seus grotescos filmes dos últimos anos e rende algumas risadas. Swing Vote mostra um Kevin Costner divertido ao lado de igualmente engraçados Dennis Hopper e Kelsey Grammer e consegue passar bem o tempo. Fechei o mês com Death Race, o remake do filme de mesmo nome de 1973, estrelado agora por Jason Statham. Suficientemente divertido para valer o tempo gasto.

Em breve, volto com Abril que, pelo visto, vai render um resumo bem curto.

A pobreza das conexões

April 22nd, 2009 § 17 comments § permalink

Quando eu li Peopleware pela primeira vez, um dos tópicos que mais me chamou a atenção foi o conceito de flow. Esse conceito, advindo em grande parte do trabalho do psicólogo húngaro Mihály Csíkszentmihályi, descreve o estado em que uma pessoa está inteiramente comprometida com a realidade da execução de uma tarefa, seja qual ela for. Flow, em outras palavras, é a imersão completa em uma atividade ao ponto em que a pessoa chega a perder a consciência de que está fazendo algo até que o trabalho esteja completo–ou o estado seja interrompido.

No contexto de Peopleware–e, de fato, do campo da computação/programação em si–flow é algo bem conhecido. Programadores rotineiramente experimentam isso como parte do seu dia-a-dia. Existem argumentos de que não há como existir trabalho produtivo sem flow e livros inteiros dedicados ao tópico de redução de interrupções no ambiente de trabalho para aumentar o tempo em que programadores passam nesse estado. Obviamente, o trabalho de Csíkszentmihályi se aplica a qualquer campo em que criatividade e expressividade sejam parte da equação e existe literatura correspondente para tal.

Eu estava conversando com um gerente recém-promovido cujas preocupações são aumentar a produtividade de sua desmotivada equipe. Uma das atividades que sugeri a ele–retirada diretamente de Peopleware e cujo objetivo é sensibilizar a direção de uma empresa para a necessidade de flow–foi medir o quanto de trabalho um de seus programadores conseguia realizar em um dia e o quanto de interrupções ele sofria. O resulto foi revelador: trinta minutos de trabalho útil para mais de seis horas de interrupções (entre as quais, a importante atividade de atender a porta da empresa, perto da qual o programador em questão está sentado).

E claro, uma das propostas da empresa para aumentar a produtividade dos funcionários é remover o acesso a instant messaging e redes sociais. Como é comum nesses casos, o escape que o funcionário possui da, de outra forma, entediante realidade de seu trabalho, é fomentar suas conexões. Obviamente, como Peopleware discute muito bem, a remoção de tais privilégios terá um único efeito: aumentar o turn-over experimentado pela empresa.

O que me leva a pensar na ironia de uma questão fundamental que aflige a raça humana. Eu não quero filosofar banalidade aqui, mas uma das perguntas fundamentais que permeiam a nossa vida–junto com as tradicionais “quem sou?”, “de onde vim?” e “para onde vou?”–é como escapar da mediocridade que insiste em se insinuar por tudo o que fazemos.

Confrontados com seus dez ou quinze anos de carreira ou com o gênio unidirecional de Albert Einstein e Garry Kasparov, ou, pior ainda, com as realizações de polímatas como Leonardo Da Vinci e John von Neumann, são poucos os que admitem (publicamente, pelo menos) o pavor da mediocridade que assombra os horizontes futuros de suas vidas.

Novamente, a ironia disso tudo está nas substituições precárias que fazemos. Algumas vezes acertamos, mas como o motivo permanece incorreto, a continuidade do que acreditamos ser mediocridade é garantida.

Conversando com um amigo recentemente, falávamos sobre as aulas de Arte (com A maiúsculo) que ele recebe de um conceituado artista brasileiro. Em nossa conversa, a tema central era o real significado de criar Arte e se qualquer pessoa pode atingir esse ideal. Existem milhares de guitarras abandonadas em quartos escuros, esperando a mão que poderá transformá-las em algo transcendente–não para outros, já que é impossível realmente conhecermos o Outrem–mas pela beleza do próprio eu, trazendo à tona o real significado da Arte. Tudo o que se requer dessa mão é dedicação, transformando o tempo que de outra forma seria perdido; um entendimento, enfim, de quais são os demônios a serem combatidos. São os demônios, não a mediocridade, que deveriam nos assombrar.

O que nos leva de volta ao flow e as parcas e infundadas tentativas de produzi-lo através da remoção de artefatos que em outras circunstâncias seriam vistos como incentivos. Mas, o são realmente?

Eu não consigo deixar de pensar em como a manutenção de conexões extrínsecas é um pobre substituto para o tipo de reflexão e prática associados com Arte e Realização (aqui, no sentido filosófico/matemático de atualizar, tornar real, reificar).

Malcolm Gladwell, em seu mais recente trabalho, popularizou a conhecida regra das dez mil horas como sendo o tempo necessário para que alguém se torne proficiente em uma atividade. Gladwell foi criticado pela simplificação, mas quando a asserção é vista no contexto do trabalho de Csíkszentmihályi, ela começa a fazer mais sentido. Flow requer investimento de tempo, e se flow é um pressuposto para trabalho produtivo e permanente, se segue que a manutenção de conexões efêmeras é algo que está na contramão da realização.

Presença, um tópico permanente nas múltiplas ferramentas de conexão das quais a vida moderna parece depender, tem implicações sutis para o flow. Conectividade, vista sobre esse prisma, é uma forma de pobreza porque gera um fluxo constante de interrupções que eliminam completamente a possibilidade da realização de algo de valor concreto. O conectado, em troca da efêmera e duvidosa sensação de intimidade e pretensa consciência do seu ambiente, perde a capacidade de cultivar jardins privados e afastados da Web cujo valor remete ao discutido acima sobre Arte.

Celulares que vibram a cada segundo indicando uma nova mensagem de uma rede social composta essencialmente por estranhos de contato passageiro, o ícone de uma ferramenta de acesso ao Twitter que pisca incessantemente lembrando que alguém acabou de dizer alguma coisa absolutamente sem valor imediato (e muito provavelmente sem valor futuro também), a lista de atualizações de um Orkut ou Facebook desfiando minúcias irrelevantes da vida de outras, vão se compondo, dedos se coçando, porque eu preciso de mais e mais pontos de contato, opondo-se ao virtuosismo representado pelo flow.

Eu não quero somente uma faceta da vida. Eu não quero a mediocridade destilada em pequenas quantidades. Eu quero o imediatismo de uma derrota brilhante no xadrez sofrida para um amigo com o qual compartilho dezenas de horas de conversas entre jogos, estratégia definida em anos e não somente as trocas rápidas e fugidias dentro de uma aplicação Facebook. Eu quero as discussões intensas sobre linguagens de programação esotéricas cunhadas em um des/entendimento mútuo e não somente opiniões (mal) explicadas em cento e quarenta caracteres ou menos. Eu quero o entendimento da transcendência que você vê no jazz e eu vejo no blues, refinada por notas dedilhadas aqui e ali, pelo retorno de uma sessão tocante entre mestres de outrora e do presente, e não por um endereço Web, uma experiência por proxy.

E, acima de tudo, eu quero o tempo necessário para os demônios que me assombram.

Eu fico com a baleia

April 8th, 2009 § 23 comments § permalink

Essa história toda do Twitter me impressionou particularmente por um aspecto: como pessoas que jamais tiveram experiência com sistemas de grande porte acham que são capazes de dar opiniões completamente válidas sobre os mesmos (independentemente de que linguagem usam ou preferem).

Eu não vou ofender meus leitores dizendo que tenho vasta experiência no assunto, e também não vou cometer o erro de dizer que sei alguma coisa a mais do que um bom engenheiro de software saberia. Minha experiência mais recente com o assunto–atual, por assim dizer–é acompanhar o desenvolvimento de uma aplicação que no momento serve 60 milhões de page views por mês e cujo crescimento mensal tem sido constante pelos últimos meses.

Essa aplicação é escrita inteiramente em Ruby on Rails e olhando os desafios que manter, evoluir e operar essa aplicação representam, eu já tenho toda simpatia pelos engenheiros do Twitter. Manter uma aplicação do porte do Twitter no ar, com toda a complexidade distribuída que o núcleo do mesmo precisa é algo para se aplaudir.

O que torna mais impressionante como as pessoas são rápidas para assumir que o código do Twitter é uma completa porcaria. Mesmo que fosse–e mesmo assumindo que pode ser–as críticas nesse aspecto ainda são completamente inválidas. Por mais que uma aplicação acrua débitos ténicos, o balanço entre os mesmos e o valor entre ao usuário–que é inegável no caso do Twitter–é uma decisão de negócio inquestionável.

Martin Fowler fala muito bem desse balanço um texto seu sobre débitos ténicos:

The metaphor also explains why it may be sensible to do the quick and dirty approach. Just as a business incurs some debt to take advantage of a market opportunity developers may incur technical debt to hit an important deadline. The all too common problem is that development organizations let their debt get out of control and spend most of their future development effort paying crippling interest payments.

Do meu ponto de vista, o fato de que o Twitter experimentou com outras tecnologias, fez benchmarks de plataformas, procurou melhores soluções é uma indicador claro de que estão tentando resolver seus débitos. Pedir mais do que isso é assumir uma postura de arrogância e desconhecimento, principalmente de como negócios são operados e de como código real é produzido.

Admitir publicamente problemas e tentar criar um discurso é algo que respeito; dizer coisas do tipo “As far as I’m concerned, Twitter is a case-study in how Ruby on Rails does scale, even in their hands”, por outro lado, é algo que tira qualquer possibilidade de um discurso racional. Os fanboys e pundits da comunidade Rails tem muito do que se envergonhar no seu tratamento da questão.

Programadores não operam em mundos ideais. E até que os detratores do Twitter me mostrem que fizeram o seu dever de casa em lidar com essas questões, eu fico com o Twitter e sua baleinha simpática. Proper for humans, after all.

Balanço cultural de fevereiro

April 6th, 2009 § 0 comments § permalink

Alguém brincou comigo recentemente que eu só escrevo balanços culturais no blogs. Verdade, tirando o texto de ontem. Mas, para continuar a tradução, vamos lá com o balanço atrasado de fevereiro.

O resultado do mês foi o seguinte:

  • 11 livros
  • 1 estória em quadrinhos
  • 9 filmes

Nas estórias em quadrinhos, continuei lendo o segundo volume combinado de Sandman, do Neil Gaiman. Como sempre, Gaiman excede as expectativas e em The Doll’s House é que vemos pela primeira vez uma das suas personagens mais icônicas, a Morte. Ainda mais do que no primeiro volume, fiquei encantando com a mistura que Gaiman faz de mitologia, história e pura imaginação para criar um mundo único onde tudo é possível e onde cada pequena detalhe esconde mais estórias por trás.

Já nos livros, comecei o mês finalizando a minha releitura dos primeiros três volumes da série The Sword of Truth, do Terry Goodkind, com o terceiro volume da mesma: Blood of the Fold. Esse é um dos volumes mais lentos da série e talvez seja por isso que não continuei até o sexto volume, como era minha intenção original. Ainda é uma boa estória, mas bem inferior aos volumes que considero os melhores–o primeiro, o quarto e o sexto.

Na seqüência, li de uma vez os cinco volumes da série The Belgariad de David Eddings. O Eddings me fora mencionado como um bom autor de fantasia e como esse é um dos seus trabalhos mais famosos, acabei decidindo começar por aí. Os cinco livros, na verdade, são um mero artefato de publicação já que forma uma única estória e, com a óbvia exceção do último, sempre terminam em cliffhangers.

Os cinco livros–Pawn of Prophecy, Queen of Sorcery, Magician’s Gambit, Castle of Wizardry, Enchanters’ End Game–referenciam termos do jogo de xadrez e a idéia de uma disputa entre duas forças é uma constante nos livros. A estória segue as linhas gerais de fantasia com um herói predestinado a resolver um conflito pendente no livro–no caso, restaurar o balanço entre dois cenários de profecia que ameaça o universo–e também não mostra nada mais aventuresco em termos literários com um sistema de magia simples, personagens caricatos e especialmente, uma visão patética do interesse romântico/sexual entre dois personagens chave. No geral, fique bem decepcionado com a primeira experiência e é improvável que eu me aventure tão cedo com outra coisa que Eddings tenha escrito. Ele parece ser um autor bem famoso e que vende bem, mas essa estória inicial não conseguiu me dar a sensação profunda e histórica de um Jordan, quando mais de um Donaldson.

O livro seguinte foi Qual é a Tua Obra, do Mário Sérgio Cortella. Ganhei o livro em um de seus seminários–que são muitos bons, por sinal–e o livro é essencialmente um resumo da visão que ele tem sobre liderança. O livro é dividido em grandes sessões temáticas sobre ética da liderança com capítulos pequenos auto-contidos sobre um assunto em particular. Para quem assistiu as palestras que ele dá, é um bom resumo do material e para quem não assistiu, vale a pena a leitura por uma visão honesta e sincera da liderança corporativa nos tempos relativos atuais.

Continuando, li os três primeiros livros da série Twilight, da Stephenie Meyer. Os livros são suficientemente famosos para dispensar apresentações e, apesar dos comentários, não são tão horrendos quanto parecem. Eu gosto de estórias de vampiros e Meyer apresenta algumas variações interessantes para valer uma leitura rápida–os livros são tão simples que podem ser lidos de uma sentada só rapidamente–e, inclusive, usaria os comentários de Stephen King sobre eles para descrever a idéia geral: Meyer escreve mal mas conta uma boa estória. Um pouco mais de cuidado literário teria tornado os livros realmente interessantes. Como eu já disse em várias ocasiões aqui, valorizo qualquer literatura que leve outros a lerem mais. Meyer, pelo visto, conseguiu isso e já merece meu respeito.

Fechei o mês lendo The Way of the Peaceful Warrior, de Dan Millman. Eu tinha visto o filme algum tempo atrás e, dispensando o tratamento Holywoodiano de filmes, achei o assunto suficientemente interessante para procurar o livro. Um colega me emprestou e, infelizmente, é o mesmo tipo de material que Paulo Coelho produz: distorções pseudo-filosóficas de conceitos budistas e de outras religiões orientais. Chega a ser interessante em alguns pontos mas morre pelo excesso de misticismo.

No resumo, literariamente, um mês que eu gostaria de esquecer. :-)

Nos filmes, a coisa não foi muito diferente. Com exceção de dois filmes, o resto não valeu a pena.

O primeiro interessante foi Seven Pounds, com o Will Smith. Smith repete uma performance similar à vista em The Pursuit of Happyness (sic) em uma estória interessante de um homem perturbado por acontecimentos em sua vida que decide procurar a redenção ajudando sete estranhos. Embora convoluto e procurando um excesso de emoções em alguns pontos, conta bem a estória proposta e apresenta uma dinâmica muito boa entre Will Smith e Rosario Dawson.

O segundo bom foi Being There, o último filme de Peter Sellers. Indicação de um amigo, o filme mostra a surreal estória de um jardineiro autista que, com a morte de seu empregador e protetor, se vê atirado em um mundo hostil. Ao sofrer um acidente pequeno, é recebido na casa de um industrial influencial e moribundo que toma suas declarações simples e banais como verdades profundas. Uma deliciosa sátira filosófica em múltiplos níveis sobre o poder da inocência, o significado de humanidade e a indecência da crença, o filme mostra Sellers em seu melhor com um elenco estelar de apoio: Shirley MacLaine, no papel da esposa do industrial, e Melvyn Douglas, que ganhou um Oscar por sua atuação brilhante como um homem poderoso em busca de significado para seus atos e redenção por sua vida.

Babylon AD acabei vendo somente por minha admiração por Vin Diesel, um ator que poderia ser brilhante e ainda assim insiste em escolher participar em filmes medíocres. Ele é divertido o suficiente para fazer alguns filmes funcionar, mas Babylon AD é tão mal contado que nada poderia salvá-lo. Aparentemente o filme acabou em uma briga entre o diretor e o estúdio, tornando-o quase impossível de assistir pelos cortes abruptos e sem sentido na estória.

No mais, Get Smart é um bobo remake da estória do Agente 86; Rambo 4 é uma desculpa para mostrar tripas explodindo e o físico horrendamente bombado de Stallone, Madagascar 2 só se salva nos momentos em que os pingüins aparecem e The Chronicles of Narnia: Prince Caspian é uma versão piorada do primeiro que não se salva nem nos momentos em que o leão gigantesco da estória original está presente–que um leão seja o personagem mais expressivo do filme mostra o quão bom ele foi.

Próximo mês, algumas leituras mais decentes eu espero.

O brouhaha sobre o Twitter e por que evangelistas puristas de linguagens/frameworks são imbecis

April 5th, 2009 § 10 comments § permalink

O cantinho de desenvolvimento de Rails na Web está quente de novo com a discussão sobre o fato de que o Twitter está reescrevendo alguns de seus sistemas de backend em Scala (1, 2, 3. 4). A coisa toda começou com a palestra que o Alex Payne, desenvolvedor responsável pela API do Twitter, deu no Web 2.0 Expo SF.

Obviamente, os evangelistas do Rails já pularam em cima da oportunidade para despejar baboseira sobre o assunto como se a questão fosse a mais importante do mundo e como se o mundo Rails estive para implodir depois das declarações bombásticas do Alex Payne.

Eu me rio.

Eu estou indo para uma década e meia de desenvolvimento esse ano, quase todos na Web. Não é muito mas foi o suficiente para por sistema em produção usando Object Pascal, C/C++, VBScript, PHP, Python, Ruby, Perl, Java, C#, Smalltalk para citar algumas das linguagens que já usei em vários e vários frameworks. Caramba, eu cheguei a desenvolver um framework Web mais um ORM em Delphi que foram usados em produção para um sistema durante quatro anos até que o projeto foi eventualmente reescrito em alguma coisa mais recente depois que eu já saíra do mesmo há muito.

O que eu aprendi nesse anos em relação a linguagens e frameworks é que todos são bons e todos são ruins e que evangelismo purista é uma das expressões mais ridículas no mundo de desenvolvimento. Qualquer desenvolvedor que se sinta compelido a defender sua linguagem/framework (e pior, os que fazem isso uma carreira como os vários Javamen, Rubymen, Scalamen, Whatever-Language-Men que existem por aí) não merecem um aceno patético de respeito.

Eu assisti a palestra do Payne na Web 2.0 Expo e o que vi foi alguém em amor com uma tecnologia nova. A palestra (como a maioria das outras técnicas no evento) foi corrida e não apresentou nada concreto. De fato, durante quase 20 minutos tudo o que Payne fez foi falar sobre as características de Scala e como ela é fantástica sem apresentar um exemplo de código que fosse. Foi o suficiente para despertar curiosidade sobre a linguagem mas não prova nada–como não deveria. No meio da apresentação, Payne fez a declaração que suscitou a ira da comunidade Rails: O Twitter está movendo vários dos seus sistemas de backend para Scala onde o Ruby não está agüentando. Por algum motivo, isso foi distorcido para dizer que Rails não escala e o resto é história.

Eu já dei minha resposta sobre a questão do Rails escalar ou não em um tom mais irônico mas as pessoas parecem gostar de perder tempo sobre isso. Evangelistas de Rails, principalmente, adoram a questão. Parece que há um fator magnético associado à afirmação. Fale isso e caem dúzias de Railers incensados do céu.

O fato de que tecnologias não escalam mas design sim parece passar inteiramente despercebido. Eu já vi sistemas limpos em Rails que não são capazes de servir pouco mais do que algumas dezenas de usuários em hardware similar ao que a empresa para qual eu trabalho usa para extrair 60 milhões de requisições por mês de um backend em puro Rails. Rails escala? Pergunta errada.

Assim, quando um Obie Fernandez diz que sua resposta evangelística ao evangelístico Payne é razoável, eu digo: Bullshit! (Só não vou dizer que é pior porque veio do homem que quer o mercado Rails todo para si porque seria maldade. Ops, que maldade…) Mais engraçado do que isso só ver nego pulando de uma conclusão para outra usando o mesmo artigo como base para evitar ficar associado com o estigma. Sigh…

Anyway, para resumir meus devaneios aqui. Se você é um programador de uma linguagem/framework só que precisa defender sua tecnologia a cada rumor, precisa seriamente repensar sua carreira. Eu, por mim, acredito em segundas chances.

Where am I?

You are currently viewing the archives for April, 2009 at Superfície Reflexiva.