Software desejável

Um dos processos mais eficientes para melhorar a performance e o valor de um software é a análise de funil.

Isso é, você procura pelos “gargalos” de performance, aqueles pontos onde, se você melhorar as coisas, tudo vai fluir melhor.

Bem, software é feito para ser usado por pessoas. E aí está, geralmente, o gargalo mais óbvio para que um software dê o retorno que se espera dele.

Nós não somos racionais como gostamos de achar que somos. A maior parte de nossas motivações é emocional e intuitiva.

Por isso, se você construir software que as pessoas gostem de usar, isso pode com facilidade dobrar ou triplicar os retornos que seu software gera para seu cliente.

Isso inclui fatores objetivos, como responder rápido, ser fácil de usar, automatizar tarefas repetitivas e exigir menos passos para completar tarefas.

Mas inclui fatores subjetivos. Coisas que fazem as pessoas gostarem de um software.

Por exemplo, não basta que ele seja fácil de usar, precisa parecer fácil de usar. Não basta ser produtivo, precisa parecer produtivo.

Estou falando do valor de um bom design. O pessoal que desenvolve sites já descobriu isso há uns vinte anos.

Mas muita gente no mercado de software ainda está desperdiçando essa oportunidade. Você já reparou como são feios e complicados os ERPs, por exemplo?

É sobre pessoas

Você está no negócio de atender pessoas.

Se você desenvolve software, lembre-se de que alguém vai usá-lo. Para gerenciar coisas que importam para outras pessoas.

Se você desenvolve sites, lembre-se de que ele será acessado por pessoas. Para comunicar algo sobre outras pessoas.

Computadores são máquinas determinísticas. Ou pelo menos, são feitos para ser. Isso significa que, recebendo as mesmas entradas, um computador deveria se comportar sempre do mesmo jeito.

Seu comportamento pode ser completamente compreendido e previsto. E, se você é um programador, é exatamente isso que você estudou para fazer.

Já pessoas são o oposto. Não são máquinas, não são determinísticas. Seu comportamento também pode ser estudado e previsto, mas nunca com a mesma precisão. E isso exige um conjunto completamente diferente de conhecimento e ferramentas.

Talvez você precise gastar algum tempo para entender de pessoas. No post de amanhã vou falar sobre o porquê.

Quanto mais óbvio, melhor

Quando você está escrevendo código, pense sempre em quem vai ter que lê-lo no futuro. Pode ser você mesmo. Pode ser você mesmo, daqui a cinco, às duas da manhã, correndo para consertar um bug.

É por isso que padrões e convenções são uma ideia tão boa.

Quanto tempo você já passou olhando o código de alguma aplicação, tentando descobrir onde estão as coisas? No web2py, um dos meus frameworks favoritos, quando você cria uma nova aplicação, a pasta de código se parece com isso:

Aplicação nova em web2py, ainda sem nenhum código.

Web2py é um framework MVC, que, você sabe, é a sigla para model, view e controller. Para acessar o banco de dados você escreve um model. E como se chama a pasta onde estão seus models? Ok, models. E as regras de negócio devem ir num controller. E onde estão seus controllers? Na pasta controllers, claro. E as views na pasta views.

Zero esforço para entender, zero esforço para decorar.

Eu sei que é bem pouco esforço decorar que, no seu novo framework da moda, as views estão dentro de /presentation/templates/html, os controllers em /app/core/controllers e os modelos em /persistence/rdbs. Mas pouco é infinitamente mais do que zero. E, acredite, esses pequenos esforços, somados, fazem um bocado de diferença.

Dica de Gmail: atalhos de teclado

Dica básica, mas como ainda encontro muita gente que não sabe: o Gmail possui atalhos de teclado que permitem fazer muita coisa sem usar o mouse. Para ligá-los, acesse “Configurações” (ou “Settings” na versão em inglês) no menu superior direito, e na aba “Geral”, que já deve ser a que estará aberta, procure o título “Atalhos de teclado” (“Keyboard shortcuts”).

Uma vez ligado o recurso, o principal atalho que você precisa conhecer é o ponto de interrogação (“?”) que mostra uma tela de ajuda com a lista de atalhos de teclado. Com essa lista você pode ir aprendendo aos poucos, conforme melhora seu uso do Gmail.

Codificar vídeo no Linux para iPod, iPhone, Android, PSP, etc? Transmageddon

O vídeo possui duas ferramentas fantásticas para a conversão de vídeo: ffmpeg e mencoder. Mas são ferramentas de linha de comando e nada fáceis de usar. Veja, por exemplo, como ripar DVDs para DivX com mencoder. Se a origem, ao invés de um DVD, for um arquivo mpeg, isso tudo muda bastante. Se a saída, ao invés de DivX, for mp4, muda bastante também.

Conheci recentemente o Transmageddon, ferramenta fantástica. Veja um screenshot:

Transmageddon

Se você clica em “Pré-definições”, por exemplo, veja a lista que aparece:

Transmageddon

Serve para quase tudo o que você pode querer fazer convertendo vídeo. Sem dor. Vale a pena experimentar.

Porque meu GPS não fala com a web?

Passei a última semana no IPAE, aqui. É o colégio em que fiz o segundo grau (faz tempo!), um lugar fantástico, ao pé de uma montanha, região com paisagens inacreditáveis. Me hospedei no colégio com minha família, para matar saudades, e todos os dias saíamos para visitar algum lugar em Petrópolis ou Teresópolis.

Há catorze anos, quando estudei lá, telefonava para minha família uma vez por semana apenas, pois os interurbanos eram muito caros. Dessa vez, estava conectado via rede 3G o tempo todo. O mundo mudou muito rápido em catorze anos. Ponto para o 3G da Claro, que funcionou em todo lugar onde fui, inclusive em todo o trajeto paulista (Dutra, Carvalho Pinto, Ayrton Senna) e em boa parte do estado do Rio de Janeiro. Na região de Itatiaia virou 2G, mas continuou funcionando.

Antes de sair para viajar, usávamos o Google Maps e a Wikimapia para encontrar os pontos de interesse. O problema? Depois de encontrar o ponto de interesse, meu sobrinho tinha que digitar os endereços no GPS para obter a rota. E quando o ponto de interesse ficava no meio de uma estrada, o jeito era navegar à mão no GPS até o lugar, arrastando o mapa para cá e para lá.

Será que só eu sofri com isso? Vocês, meus bem informados leitores, conhecem algum aparelho de GPS que fale com a web, através de alguma integração maluca? O ideal seria GPRS. Seria muito interessante se, enquanto estou dirigindo, um passageiro pudesse pegar o GPS e ver a navegação acontecendo sobre a Wikimapia, por exemplo. Alguém já viu isso? Alguma idéia de como fazer?

Brincando com a API do twitter

Resolvi experimentar um pouco a Twitter API. É linda, do jeito que toda API deveria ser. É REST, muito fácil de entender e colocar para funcionar, e devolve dados em XML, JSON, RSS e ATOM.

Essa simplicidade permite interagir com a API usando ferramentas simples da linha de comando do Unix, como o wget e a cURL. Para nossos exemplos, vamos usar cURL. Se você usa Ubuntu, antes de começar faça:

sudo apt-get install curl

Para fazer um simples post, por exemplo, você pode digitar, em seu terminal:

curl -u seu_username:sua_senha -d status="Twittando do terminal. Aprendi com o Elcio: http://blog.elcio.com.br/brincando-com-a-api-do-twitter/" http://twitter.com/statuses/update.json

É isso mesmo, meninos e meninas, é só um post com autenticação, mais nada. RESTful, simples e elegante, deixar qualquer SOAP no chinelo. Inspirador para qualquer um que precise projetar uma API. Isso retorna dados em JSON. Se você quiser os mesmos dados em XML, ATOM ou RSS, basta mudar a extensão na url.

Agora vamos automatizar isso. Eu criei um arquivo /usr/local/bin/twitter com o seguinte conteúdo:

source $HOME/.twitter
curl -u $user:$password -d status="$@" http://twitter.com/statuses/update.json

Naturalmente, criei o arquivo como root e dei permissão de execução para todos os usuários. Agora, no diretório de cada usuário, basta criar um arquivo .twitter com o seguinte conteúdo:

user=seu_username
password=sua_senha

Pronto, tendo feito isso, qualquer usuário que tenha o arquivo .twitter em seu home pode twittar do terminal com:

twitter "Twittando do terminal, aprendi com o Elcio: http://blog.elcio.com.br/brincando-com-a-api-do-twitter/"

Simples e indolor, agora você pode automatizar suas twittadas com shell script. Pode, por exemplo, twittar toda vez que seu servidor baleiar, ou agendar twits com cron.

Search API

A Search API também é espetacularmente simples, dê uma olhada. Fiz a UPBox usando a Twitter Search API, por exemplo, com 22 linhas de código.

FriendFeed é diferente do Wasabi

O Tiago Dória gostou da idéia de se criar um feed pessoal. Em seguida o Cris Dias discordou dele. Os argumentos do Cris são interessantes, ele coloca que a idéia já existia com o Wasabi, que teve o seu momento mas hoje não tem nenhuma relevância.

Eu, porém, vejo uma diferença fundamental entre o Wasabi e serviços como o FriendFeed. Quando me cadastrei no Wasabi, o fiz todo empolgado. Mas eu perdi o interesse logo que percebi que não poderia acompanhar as novidades do Wasabi no Google Reader. Nesse aspecto, o FriendFeed é justamente o que eu queria.

Por outro lado, é claro que eu não vou assinar o feed pessoal de todo mundo cujo blog eu leio. Não me interessam em nada as fotos de fim-de-semana daquele sujeito cujo blog sobre Linux eu acompanho. Nesse aspecto, concordo com o Fabricio Zuardi. Por outro lado, acharia muito interessante o feed pessoal de amigos mais próximos, colegas de escritório, familiares e pessoas que admiro muito. E quando um amigo criar uma conta no Flickr, eu não vou ter trabalho nenhum para ver as fotos.

Bom, para quem quiser, tenho meu feed pessoal no FriendFeed. Cuidado, você vai receber tudo o que eu publico, sobre todos os assuntos!

Intrusividade Windows

Esses dias precisei desenvolver alguma coisa em Windows para um cliente. Tenho algumas licensas de Windows aqui para essas emergências, então resolvi instalar o Windows XP no VMWare. Diferente da instalação do meu sistema operacional predileto, que está pronto para ser usado em menos de dez minutos, instalar o Windows é uma tarefa bastante dolorosa, que envolve um instalador chato e demorado, ativação, instalação de anti-vírus, anti-spyware, e aplicações básicas como um leitor de PDF, um editor de código, um pacote de escritório e etc.

Tudo isso me faz morrer de medo de ter que instalar meu Windows duas vezes. No dia seguinte ao da instalação desse Windows, o que incluiu a instalação do Flash, do Captivate, do Acrobat e uma porção de outras coisas, uma pessoa me ligou para lembrar de um compromisso. Resolvi desligar o computador e sair imediatamente para não me atrasar. Quando mandei a máquina desligar, veja a simpática mensagem que o Windows me mostrou:

Instalando atualização 13 de 85 (Windows XP)

Que ficava alternando com essa outra:

Não desligue ou desconecte o computador; ele será desligado automaticamente. (Windows XP)

Foram eternos 43 minutos nisso. E eu morrendo de medo de desligar e estragar minha instalação do Windows, esperei. Pode ser que eu esteja enganado, mas não me lembro de o sistema ter me perguntando se eu gostaria de instalar nesse momento as atualizações que ele baixou, ou de sequer me avisar antes que minha máquina precisava permanecer ligada.

Perdi meu compromisso e passei muita, muita raiva. Sistema operacional simpático.

Por que o arquivo ISO abre no compactador de arquivos?

Olha que coisa interessante, a Marcelle Ramalho resolveu experimentar o Linux. Pelo texto, dá para perceber que ela é bem iniciante em informática, e sem nenhum contato com o Linux[bb]. Veja esse trecho:

Baixei o arquivo da internet e meu primeiro baque foi gravá-lo em CD. O arquivo é compactado e eu prontamente descompactei-o, pois me parece uma coisa lógica a se fazer. Nada como um arquivo descompactado, não é mesmo? Pelo visto não era tão lógico, já que ao falar para o meu “personal Linux teacher” o que tinha feito ele levou uns minutos para responder: “QUEEEEEEEEEEEEEEEEEEEEE?”

Sim, você entendeu, ela baixou um arquivo ISO e não sabia o que fazer com ele. Essa dúvida é muito comum. E antes de culpar a moça pela desinformação, lembre-se de que ela não tem obrigação nenhuma de saber e foi induzida ao erro pelo Windows[bb], que mostrou o ISO com um comportamento e opções semelhantes ao de um arquivo ZIP, com o que ela já está familiarizada.

E o erro não acontece apenas no Windows. Veja, por exemplo, o que acontece aqui no meu Ubuntu quando eu clico com o botão direito em um arquivo ISO:

Arquivos ISO devem ser gravados em CD, não descompactados

Por que o “Criador de CD/DVD” não é a primeira opção? É muito útil poder abrir um arquivo ISO no compactador e extrair arquivos de lá de dentro, mas quantas vezes você realmente usa isso? A esmagadora maioria das vezes que alguém tem um arquivo ISO, quer simplesmente gravá-lo em CD.

Resolvendo o problema no Ubuntu

Para resolver o problema de verdade, o pessoal do Ubuntu precisaria modificar a distro para que a ação padrão para arquivos ISO seja gravar em CD. Mas você pode fazer isso em seu sistema, de maneira que possa gravar arquivos ISO com um duplo clique. Para isso, clique com o botão direito em um arquivo ISO e escolha “Propriedades”. Na janelinha que vai se abrir, clique na aba “Abrir com” e escolha o “Criador de CD/DVD”. Assim:

abrircom.gif
Pronto, agora duplo clique em arquivos ISO vão abrir no gravador de CD.

Que venham os leigos

Entre os comentários no artigo da Marcelle, há algumas pessoas que fazem questão de deixar bem claro que ela deveria saber o que é um arquivo ISO, que isso é coisa básica e que ela não deveria tentar peripécias no computador sem primeiro estudar o assunto. Teve até um camarada que sugeriu que ela primeiro lesse o Guia Foca Linux. Essa idéia é um absurdo!

Eu aprecio muito o Guia Foca Linux. Aprendi muita coisa com ele. Mas, definitivamente, não é para qualquer um. Dê uma olhada, por exemplo, na versão para iniciantes. São dezesseis capítulos, ensinando coisas como editar o fstab e gravar os dados do cache RAM em disco editar o .bash_profile dentro do /etc/skel e configurar o iptables para filtrar pacotes pelo mac address, tudo pela linha de comando. Ora, a pessoa só quer acessar a web, editar documentos, assistir DVDs e ouvir música, não é pedir demais querer que ela leia isso tudo primeiro?

Vamos deixar as coisas bem claras: eu e você lemos o manual de cada um de nossos aparelhos, muitas vezes antes de ligar e tentar usar. Nós sabemos ligar o closed caption da TV, programar as memórias do telefone e desligar o flash da câmera digital[bb]. Nós somos nerds. A esmagadora maiora das pessoas não lê os manuais, e é muito feliz assim!

Se você quer reclamar das pessoas que não lêem o manual, vá em frente. Vai gastar um bocado de tempo e energia para nada. Nossa obrigação, como nerds espertos, é desenvolver sistemas tão fáceis que pessoas que não lêem o manual consigam usar.

UPDATE: Conforme o Hudson apontou, eu tinha feito conversão entre as versões do Foca. Corrigido. Obrigado, Hudson!

Blogroll

Eu tinha uma idéia a respeito de blogrolls que eu não costumava compartilhar: a de que eles fogem aos objetivos do site. Pensava que o sujeito chega a um site procurando pelo bom conteúdo que há ali, ou porque assina o RSS[bb], logo não vai ver o blogroll, ou porque estava procurando algo no Google e, chegando com um objetivo específico, não vai clicar a esmo em qualquer link que achar bonito. Não costumava compartilhar essa idéia porque era só um palpite, eu não tinha nenhuma certeza disso.

Bom, mudei de idéia. Tenho clicado em tantos links legais em blogrolls por aí, e descoberto tanta coisa interessante, que fui convencido da utilidade disso. Então agora temos um blogroll. Está em ordem randômica, pois foi o jeito mais justo. Só links em português, para que todos possam aproveitar. Boa leitura!

IBM Lotus Symphony Bloated Office

A IBM lançou seu pacote de escritórios gratuito, o Lotus Symphony. Instalei aqui para testar. Para começar, ele não é “baseado no OpenOffice.org” como muitos sites por aí andam dizendo. Ele lê arquivos do formato ODF, o formato criado pela OpenOffice.org, e talvez tenha algum código ali realmente aproveitado do OpenOffice.org, mas ele é baseado mesmo é no Eclipse. Sim, é isso que você entendeu, o Symphony é construído sobre o Eclipe, em Java[bb], lento, lento, lento… Leva uma eternidade para carregar e demora um bocado a responder a alguns comandos. Fica praticamente impossível de se usar.

A primeira coisa curiosa é que o instalador para Linux[bb] coloca o programinha que desinstala o Symphony num lugar escondido e não avisa o usuário. Então fica a dica para você que usa Linux e, como eu, instalou o Symphony e se arrependeu o instalador está em:

/opt/ibm/lotus/Symphony/_uninst/uninstaller.bin

Outra coisa interessante é que a interface do programa ficou muito boa. O investimento em usabilidade que a IBM tem feito há anos, o que eles chamam de User Centered Design, tem dado resultado. O problema é que o software é tão lento que é insuportável usá-lo mesmo tendo uma excelente interface.

Se você já é usuário de OpenOffice.org, não vejo nenhum bom motivo para tentar o Symphony. Se não é usuário de OpenOffice.org, por favor, não instale o Symphony. Tente o OpenOffice.org.

Para mim o Symphony serviu mesmo para mostrar o poder de um padrão aberto. Tenho em minha máquina agora três pacotes de escritório: KOffice, OpenOffice.org[bb] e IBM Lotus Symphony, e os três trabalham com exatamente o mesmo formato de arquivo. Sem segredos, sem royalties, sem truques. Inclusive a compatibilidade entre eles é muito boa. E qualquer um pode fazer um programa que trabalha com o mesmo formato.

Veja, por exemplo, como é simples fazer um shell script que exporta um documento ODT para texto:

#!/bin/bash
mkdir .tmp_odt2txt
cp $1 .tmp_odt2txt
cd .tmp_odt2txt
unzip $1
cd ..
sed -e "s/<text:p[^>]*>/\n/g" .tmp_odt2txt/content.xml|sed -e "s/<[^>]*>//g" > $1.txt
rm -rf .tmp_odt2txt

Como estamos falando de um padrão aberto, usamos ferramentas simples disponíveis em qualquer Unix e lemos o arquivo. Tente fazer isso com um documento do Microsoft Word e você vai entender o que eu quero dizer.

Spesa, desisti logo de cara

Acabo de me cadastrar no Spesa. O Spesa é um gerenciador de finanças pessoais[bb] online. Você controla seu fluxo de caixa, anota cada movimento e sabe exatamente para onde foi o seu dinheiro. O aplicativo parece muito bem desenvolvido, a interface é agradável e fácil de usar, e a idéia é genial.

Não me cadastrei para avaliar o produto, mas porque tenho interesse em usá-lo mesmo. Todas as boas opções que eu conheço para fazer a mesma coisa não são online. Planilhinha no Google Docs? Esquece!

Bom, fiz o cadastro inicial, ativei minha conta e fiz meu primeiro acesso. A primeira tela a ser apresentada é essa:

spesa.png

Legal, você começa a usar o aplicativo indicando seu saldo inicial. O problema é que eu tenho mais de uma conta bancária. Coloquei zero de saldo só para poder passar para a próxima tela e constatei o que eu temia: se você tem mais de uma conta, o Spesa é inútil.

Uma pena, espero que eles ofereçam uma maneira de gerenciar mais de uma conta logo, porque eu realmente preciso de um serviço desses.

Vá de Metrô

Site novo: vademetro.com.br. De um aluno da Visie, Thomas Pomerancblum, o site é um excelente auxílio tanto para quem é de São Paulo[bb] e está procurando por alguma coisa perto do metrô quanto para quem chega de outras cidades e tem que se virar no metrô de São Paulo.

O Thomas citou o meu mini guia para o Metrô no blog do Vá de Metrô. Modéstia dele. O Vá de Metrô substitui com vantagens meu pequeno guia.

Ao encontrar um lugar você pode ver um roteirinho das estações, mostrando como chegar da estação onde você está, e um mapinha do Google Maps[bb] com o lugar onde você vai e a estação do Metrô mais próxima, para o trecho a pé. O projeto está começando, mas já é bastante útil. Acredito que eles vão apreciar bastante suas sugestões. Olha a Visie lá.

CSS de impressão no fechaTag

Acabo de criar um CSS de impressão para este blog. Levei uns dez minutos.

O código ficou assim:

form,#sidebar,iframe,#otop,#respond,.navigation,.rec6,.linkk{
display:none;
}
h2{
margin:0;
}
.entry{
line-height: 150%;
}
#header h1{
margin:0;
padding:0;
font-size:24px;
}
#header .description{
padding:0;
}
h2{
padding:40px 0 0;
margin:0;
}

E o resultado:

Em suma: você esconde tudo o que não pode ser usado ou não faz sentido no papel (menus, formulários, etc.) e tenta não atrapalhar o usuário. Aliás, não dá para fazer muito mais do que isso. Os mecanismos de impressão dos navegadores foram feitos para simplificar as páginas e economizar tinta.

Fácil, não?

Microsoft, Google e o poder da massa crítica

Está todo mundo por aí falando sobre:

  • Microsoft Surface, um computador-mesa realmente impressionante. Entre no site e veja alguns dos videozinhos que você vai entender.
  • Google Gears, uma extensão para Firefox/Internet Explorer que permite ao desenvolvedor web guardar dados locais, na máquina do usuário.
  • O Orkut agora permite que você cadastre feeds em seu perfil.

Quando olhei cada um desses lançamentos, tive a mesma reação: “Ah, grande coisa!”

Nenhuma dessas idéias é nova ou revolucionária. Começando pelo Surface, é uma coleção de idéias velhas. Já vimos parte delas implementada no iPhone e na maneira como o sujeito pode usar os dedos nele. A idéia de colocar um computador numa mesa ou permitir seu uso por mais de uma pessoa também não é nova. E a maquininha da Microsoft está saindo por 10 mil. Dólares.

O Google Gears merece um pouquinho de explicação antes de dizer que a idéia não é nova. O Gears tem três componentes importantes. O primeiro é um tipo de servidor proxy com cache local. É um pouquinho mais do que isso, mas no fim permite a uma aplicação web responder dados ao usuário uma única vez, e ele terá esses dados em sua própria máquina a partir daí. O segundo é um banco de dados local, que permite a uma aplicação web, por exemplo, funcionar offline. O terceiro é um mecanismo para fazer com que seus scripts possam ser executados em segundo plano, sem congelar o navegador. De verdade? Isso não é nem tão novo, nem tão revolucionário assim. Para o sujeito que está desenvolvendo um Gmail, pode fazer diferença. Mas para pequenas aplicações, ou mesmo as medianas, dessas que a gente desenvolve todo dia, tudo poderia ser resolvido com cookies e um pouquinho de inteligência, sem demandar a instalação de um plugin.

Por fim, os feeds no Orkut. Aqui a experiência de quem esperava algo realmente novo pode ser decepcionante. Leia os comentários do Charles Pilger sobre o assunto, por exemplo.

Apesar disso, há algo que pode realmente fazer diferença nesse tipo de produto: massa crítica, quantidade de usuários, visibilidade. O Surface pode mostrar ao mundo a idéia nova. Talvez eu nunca venha a ter um Microsoft Surface, mas quem sabe eu daqui a algum tempo comecem a vender o XingLing Surface, o Itautec Surface ou o Positivo Surface? Tenho perguntado ao auditório, nos Encontros Locaweb, quem usa leitores de feeds e quem fornece RSS de qualquer maneira. Num público de desenvolvedores, o número de pessoas que levantam suas mãos é assombrosamente baixo. Imagino que entre os seres humanos comuns este números deve ser ainda menor. Feeds no Orkut podem ser um excelente recurso educativo. Isso pode fazer muita gente descobrir o RSS.

Em relação ao Gears, assim como em relação ao Silverlight, que não está na lista acima porque já tem um tempo, acontece algo curioso. Quem teria coragem de apostar hoje numa tecnologia que exige a instalação de um plugin para que seu site seja usado? Se fosse qualquer empresa pequena que estivesse lançando um desses produtos, ele logo seria descartado como algo ridículo. Mas todo mundo tem suas em relação ao poder de empresas como a Microsoft ou o Google de fazer com que as pessoas instalem algo em suas máquinas.

Em suma, quando você tem metade da Internet usando seus produtos, as regras podem ser diferentes para você. E quando você lança um Google Notebook ou um Zune, as pessoas parecem se esquecer muito rápido que você fracassou.

Em relação ao fato de não haver nenhuma novidade nesses produtos, vale lembrar o que diz o Getting Real: uma boa idéia não vale quase nada, o que vale mesmo é uma boa execução. Embora o Surface não seja novo, parece pelos vídeos que foi executado de maneira exímia.

E, claro, a história dos computadores mostra que nem sempre os melhores vencem. Nada de certezas, por enquanto.

Links interessantes:

Ubuntu e o poder do Open Source

Bill Gates recomenda Ubuntu

Uma das grandes vantagens do open source, algo que na maioria dos softwares conhecidos é o que realmente movimenta o projeto, é o fato de que qualquer um pode colaborar. Você pode alterar e melhorar um software, enviando as correções para o autor, ou pode criar um “fork”, uma versão sua daquele software. Pode também criar ferramentas para o software, criar arte como temas, templates, ícones, e até criar suas próprias campanhas de divulgação.

Veja por exemplo o Wubi. É um instalador de Ubuntu para usuários de Windows[bb]. Com ele você pode instalar o Ubuntu em seu computador com Windows no tradicional esquema Redmond “Next-Next-Finish”. O Wubi instala o Ubuntu numa “partição virtual”, um arquivo dentro do sistema de arquivos do Windows. Ou seja, você não precisa se preocupar em gravar um CD, formatar ou particionar seu HD e outras tarefas espinhudas.

O Wubi não é uma ferramenta oficial da distribuição. Foi feito por alguém que queria colaborar com o Ubuntu. Software livre é isso aí.

Você pode colaborar como quiser. Por exemplo, criando uma capa personalizada para o seu DVD do Ubuntu e compartilhando com quem quiser.

Songbird ainda não está pronto para mim

Como todo mundo anda elogiando, resolvi testar o Songbird. O programa é lindo! Mas eu acho que ainda não vou conseguir usá-lo. Talvez eu não tenha entendido direito o funcionamento do programa, e algum leitor mais esperto do que eu possa me ajudar.

Eu entendi errado ou o Songbird não entende feeds de Podcast? Só consegui pedir ao programa para assinar o conteúdo de uma página, que carregue no navegador, não um feed XML[bb]. No caso de feeds que possuem uma folha de estilo XSLT para o navegador, como os do Feedburner, a coisa funciona porque o Songbird os entende como uma página web:

Songbird vendo um feed no Feedburner

Já se o arquivo XML não tem nenhuma mágica associada a ele, veja o que acontece:

Songbird vendo um feed XML

Ou seja, eu preciso visitar o site, e mandar o Songbird “assinar” a página que contém a lista de arquivos mp3. Há uma série de problemas com essa abordagem:

  1. Nem todos os feeds tem uma página HTML[bb] que liste os arquivos. Estes eu não posso assinar.
  2. O endereço da página pode mudar. Não deveria, claro, “cool URI don’t change” certo? Mas pode. E muita gente publica conteúdo só no feed, exclusivo para quem assina.
  3. Preciso navegar na minha coleção de podcasts e repetir este processo um a um.
  4. Por falar nisso, não há uma maneira de importar meu OPML. Incluir os podcasts um a um não é divertido. E como ele também não exporta, usar o Songbird significaria repetir o processo no dia em que eu resolvesse migrar para outro programa.

Ou seja, por enquanto ainda não vou me arriscar com o Songbird. É um projeto open source, baseado em XUL, logo é muito fácil criar extensões para ele e melhorá-lo. Qualquer um que saiba javascript pode colaborar. Quem sabe eles não resolvem isso rápido?

Instalei o PidGin 2.0

Acabo de instalar o tal PidGin 2.0.0, o substituto do Gaim, o programa que, ao ser lançado, causou tanto movimento que derrubou o site oficial. Ele está disponível para Windows e Linux[bb]. Para quem não sabe:

O Pidgin é um cliente de mensagens modular capaz de usar o AIM, MSN, Yahoo!, Jabber, ICQ, IRC, SILC, SIP/SIMPLE, Novell GroupWise, Lotus Sametime, Bonjour, Zephyr, Gadu-Gadu e QQ de uma vez só. Ele é escrito usando o GTK+.

Baixei os fontes do SourceForge, o pacote pidgin-2.0.0.tar.gz, aqui no meu Ubuntu 6.10. Depois o processo foi:

$ tar -xzvf pidgin-2.0.0.tar.gz
$ cd pidgin-2.0.0.tar.gz
$ ./configure
$ make
$ sudo make install

Assim mesmo, como manda o figurino, sem nenhum errinho. Ele leu meus contatos e contas do Gaim e já abriu conectando, pronto para usar.

É o bom e velho Gaim, com pequenas melhoras e novas funcionalidades, mais rápido e muito, muito mais bonito. A interface também deu uma boa melhorada em relação à usabilidade. Além disso, agora ele conecta em ainda mais redes que eu não vou usar 😉

Updated: endereço do site corrigido. Obrigado pessoal.