De novo, boa propaganda faz milagres

Humanized

É um Katapult, um QuickSilver. Só que rodando em Windows. Ou seja, nada de novo, mais uma vez o Windows tem a mesma coisa que os outros sistemas, com alguns meses ou anos de atraso. E parece maravilhoso porque muito usuário de Windows nunca viu nada parecido.

Assista o vídeo e veja no final, onde aparece o desenvolvedor com a barba engraçada. Na parte em que ele fala sobre como estender o sistema, preste atenção na linguagem de programação que você vai usar se quiser ensinar novos truques.

Antes que alguém venha dizer que o Katapult ou o QuickSilver não fazem todos os truques que o Enso, eu quero lembrá-lo de que estamos falando de sistemas Unix. O shell do Unix é a coisa mais flexível que já se inventou em relação à integração de programas diferentes. Tomei um tempinho agora e escrevi 18 linhas de Python + Shell Script, para tentar fazer algo parecido com o que o Enso faz. Veja o resultado:

Usei o próprio Katapult, o Kmenuedit para criar as entradas e colocar os ícones, e o xvkbd para falar com as aplicações abertas. Levei uns 30 minutos, incluindo a gravação do vídeo. Se gastar mais um tempo nisso, é possível fazer muita coisa legal.

Speedy Vantagens, da Telefônica, e minha breve participação no Google Codejam

Como estava curiosíssimo com o assunto, resolvi participar do Google Codejam Latinamerica. O round de qualificação foi muito divertido. Participando por hobby, não tive tempo de me preparar, sequer de ler o regulamento, o que me fez perder um problema inteiro por um detalhe boboca. Apesar disso, me classifiquei para o segundo round na posição 218. Desse round 250 avançam para o próximo, por isso, vendo minha posição, fiquei ainda mais animado para participar.

Diferente da rodada de qualificação, a de hoje aconteceu com hora marcada. Das 20h às 21h. Cheguei em casa às 19h30, depois de muita correria para chegar a tempo. Estou ministrando um treinamento de dia inteiro numa cidade próxima. Liguei o computador e tentei conectar. Nada.

Luzes do modem[bb] acesas, access point funcionando, cabos conferidos. Acessei a telinha de administração do access point e vi que ele havia se conectado via PPPoE normalmente. Tinha obtido um IP e um gateway, e os endereços de DNS. Tentei pingar o gateway. Pingou. Tentei pingar o DNS. Nada. Não era preciso ser nenhum gênio do TCP/IP para perceber que o problema era na Telefônica.

Liguei para o suporte da Telefônica. Disquei o DDD e o número de telefone, disquei o CPF, disquei as opções do menu e esperei. Quase dez minutos. Me atendeu uma mocinha, perguntou o meu nome, em seguida no que podia ajudar. Disse que me conectava via PPPoE, obtinha um IP, conseguia pingar o gateway mas não conseguia pingar mais nada além do Gateway.

– O senhor quer dizer que não consegue navegar no Speedy? – me perguntou ela, deixando claro que não tinha entendido nada desse papo de PPPoE e Gateway.

– Exato.

Ela me perguntou o modelo do meu modem, em seguida a versão do meu Windows.

– Eu não tenho Windows.

– E que sistema o senhor usa para conectar ao Speedy?

Linux[bb].

Eu não saberia descrever o que acontece depois dessa resposta. Aquela mini-eternidade de silêncio, aquele clima de “Houston, we have a problem.” Você quase consegue sentir os dedos trêmulos da atendente revirando suas anotações, tentando entender porque nunca viu aquela pergunta em seus roteiros.

– Um momento senhor, eu vou verificar. – Uma coisa há de se elogiar no suporte da Telefônica, eles não colocam dois gerúndios por sentença. “Estar verificando” é a última coisa que eu gostaria de ouvir nesse momento. 😉

Musiquinha de fundo. Alguns minutos depois a moça volta para informar que conversou com o pessoal do suporte técnico e foi informada de que o Speedy não tem suporte para Linux. Passei mais de cinco minutos tentando explicar que o problema não era o meu Linux, que eu tinha certeza disso, que o problema era na Telefônica. Dizer que contratei um serviço que não está funcionando, pelo qual eu pago todo mês, e que eu não quero suporte para meu sistema operacional, que quero apenas a conexão pela qual pago, não fez diferença nenhuma.

Ao final dos cinco minutos ganho um outro “vou verificar”, seguido de dois minutos de musiquinha e propaganda, e sinal de ocupado. Gosto de pensar que a atendente da Telefônica não desligou na minha cara, mas que eles tiveram um problema com o sistema de atendimento deles e a linha caiu.

Fiz mais duas tentativas em seguida. A mesma história. Pelo menos dez minutos tentando convencer o atendente a me deixar falar com alguém capaz de entender minimamente o que estou dizendo, seguido de um “vou verificar”, alguns minutos de musiquinha e propaganda, e sinal de ocupado.

Antes de contar minha última tentativa, convém lembrar do momento mágico, quando o atendente ouve a palavra “Linux”. As reações são as mais diversas, mas raramente positivas. Um dos atendentes me respondeu:

– Ah, senhor, o Speedy não é compatível com Linux. Não funciona.

– Mas eu me conecto no Linux há mais de cinco anos nesse mesmo Speedy.

(Cinco segundos de silêncio.)

– Senhor, o software de instalação do Speedy não funciona no Linux.

Outro chegou a me sugerir reinstalar o Linux. Quando eu tentei explicar que a idéia é absurda, ele me disse que, uma vez que o Speedy não oferece suporte a Linux, eu poderia solicitar a visita de um técnico, mas o técnico teria de qualquer maneira que reinstalar meu Linux!!!

Na quarta ligação, depois de mais de quarenta minutos ao telefone, resolvi tentar uma abordagem diferente. Me atendeu um tal de Marcos, sujeito simpático. Expliquei como estava me sentindo com o atendimento. Expliquei que já havia ligado três vezes, que me mandaram esperar e a linha caía. Deixei bem claro que estava insatisfeito e desanimado. Quase implorei ajuda.

Depois de escutar minha história toda, ele fez as perguntas do roteiro. Quando ouviu “Linux”, aquele mesmo silêncio. Oh-oh!

Mais dez minutos de papo, tentando explicar para o moço que, embora a Telefônica não pudesse me ajudar com meu Linux, não pode se recusar a pelo menos me atender. A mesma conversa dos outros e, ao final da conversa, o mesmo “vou verificar”. Quase desliguei quando começou a musiquinha insuportável das propagandas do Instituto Telefônica. Mas, para minha surpresa, menos de um minuto depois o Marcos voltou! E havia uma outra pessoa na linha. O Marcos o apresentou, Luciano, do suporte avançado (ou algo parecido.)

O Luciano ouviu minha conversa e pareceu entender o que eu dizia! Aleluia! Ele me pediu alguns segundos para fazer um teste na linha, em seguida perguntou sobre as luzes do meu modem. Pediu mais alguns momentos e digitou uma porção de coisas em seu teclado.

– Senhor, a Telefônica está fazendo uma manutenção em sua região para o aumento da segurança dos usuários. O serviço foi iniciado às 19h20, e a previsão é que seja terminado em três horas, ou seja, perto das 22h20.

Agradeci ao Luciano, desliguei e esperei. Porque não me deixaram falar com ele, ou com alguém que pudesse pelo menos entender o meu problema, logo de cara? Porque tenho que gastar cinqüenta minutos ao telefone para encontrar alguém cuja resposta não fosse: “seu sistema operacional é feio e nós não queremos nem falar com você”?

Outra coisa que me deixa com a pulga atrás da orelha é o fato de eles realizarem uma manutenção programada e os clientes não serem avisados. Um e-mail ou telefonema teria resolvido o problema todo, e eu teria participado do Codejam no escritório.

Ah, que inveja do Janio! E lá se foi o Codejam…

Um passo além do Akismet

Qualquer um que tenha um blog com comentários dos usuários conhece o problema: spam de comentários. Este blog recebe centenas de comentários por dia sobre assuntos tão diversos quanto viagra ou tramadol, fotos de angelina jolie e britney spears nuas, encontros, jogos online e uma série de outras coisas que não tem absolutamente nada a ver com o assunto desse blog.

Quem usa WordPress certamente conhece o Akismet, um plugin com um filtro de spam, semelhante ao de Gmail, que acerta mais de 97% das vezes neste humilde blog. É fabuloso. Mas de vez em quando erra.

Se o Akismet deixa passar um comentário que deveria ter sido considerado spam, tudo bem, eu modero isso manualmente. Mas quando ele coloca na caixa de spam um comentário legítimo, o risco de que esse comentário se perca no meio das centenas de spam que recebo todos os dias é muito alto. Verificar a caixa de spams é um trabalho extremamente chato.

Foi pensando nisso que eu criei o Navalha do Spam, um pequeno script Python[bb] que eu fiz em cinco minutos, e que você pode baixar aqui. O navalha funciona através da antiquìssima idéia de se ter uma blacklist de palavras. É simples, a esmagadora maioria dos spams que recebo contém nomes de remédio ou de doenças, como viagra, cialis, phentermine, lexapro, acyclovir, mesothelioma ou prozac, nomes de celebridades escandalosas como britney spears, angelina jolie, briana banks, referências a pornografia ou outras palavras muito manjadas, como ringtone, insurance, refinancing ou wallpapers. E os comentários em meu blog, devido aos assuntos que abordo e ao idioma, raramente contém uma dessas palavras.

Então o que o Navalha faz é ler uma lista de expressões, uma por linha, no arquivo keywords, e excluir todos os comentários que estiverem na caixa de spam e contiverem qualquer uma dessas palavras.

Para usá-lo, você vai precisar apenas de Python e MySQLdb. Coloque os dados de sua conexão no arquivo settings.py. Depois basta executar, dentro do diretório do script:

$ python spamkill.py

E pronto. Aqui para mim o resultado é que geralmente sobra meia dúzia de comentários. Dois ou três legítimos, que eu vou restaurar. Se ainda sobrar muito spam depois de rodar o script, é hora de olhar o que sobrou e incluir novas palavras chaves no arquivo de keywords.

Ensinando crianças a programar

Acabo de ler:

Why Johnny Can’t Program

O sujeito conta a sua experiência em ensinar crianças a programar. Ele usou a linguagem LOGO, que eu também usei em minha infância, e que eu já usei para ensinar crianças a programar.

LOGO é, de longe, a melhor maneira de se ensinar programação para crianças. A metáfora da tartaruga torna a coisa bem divertida, e permite à criança obter resultados interessantes muito rápido.

Para quem usa Linux, uma excelente opção é o kturtle. O Manual do KTurtle é bastante completo e bem escrito.

Preparei um rápido vídeo para que você tenha uma idéia de como funciona. Escrevi o programa abaixo:

clear
pendown
repeat 9 [
  forward 100
  turnright 160
]
penup
turnleft 90
forward 50

Veja rodando:

Se você usa Debian ou Ubuntu, pode instalar o kturtle usando o synaptic. No Ubuntu, pode também fazer, num terminal:

sudo apt-get install kturtle

Gravação de screencast no Ubuntu é com o recordmydesktop

Já tinha usado duas ferramentas para gravar screencasts no Linux[bb]: o xvidcap e o ffmpeg. Dois programas cheeeios de opções. O ffmeg é um programa de terminal para trabalho com mpeg em geral, que além de gravar screencasts faz muito mais. O xvidcap é um programa com interface gráfica, feito para a gravação de vídeos do Desktop, mas nem por isso menos complicado que o ffmpeg para se produzir um screencast.

Descobri recentemente o recordmydesktop, que me faz aposentar os outros dois. No fórum do Ubuntu há link para os pacotes deb. É preciso ter um login no fórum para baixar os pacotes. Baixe e instale os dois (duplo clique deve abrir o pacote no instalador de pacotes do Ubuntu.)
O programa, depois de instalado, vai estar em Aplicações -> Som e Vídeo -> gtk-recordMyDesktop. Experimente. Você vai ver como é sem graça. Descontando o fato de estar em português de Portugal e com os acentos errados, o programa funcionou perfeitamente aqui. Você abre o programa, escolhe a região da tela que quer gravar, clica em “Gravar” e pronto. Há uma série de configurações no botão “Avançado”, mas as escolhas para as opções mais comuns já foram feitas para você, de modo que se você não clicar em “Avançado” e for direto ao “Gravar” o programa deve funcionar perfeitamente.

O programa vai gerar um ogg, cujo nome padrão é out.ogg. Para convertê-lo para um formato DiVX mais fácil de se abrir no (argh!) Windows, você pode fazer:

mencoder out.ogg -o pronto.avi -oac mp3lame -ovc lavc -lavcopts vcodec=msmpeg4v2

Divirta-se.

computação traiçoeira

A robotização do controle:

“Em 2010, o presidente Clinton pode ter dois botões vermelhos em
sua mesa – um que manda mísseis à China e outro que desliga todos
os PCs da China – e adivinhem qual deles os chineses mais
temerão?”
Ross Anderson

Se você ainda não tinha entendido porque os defensores do software livre fazem tanto barulho quando se fala em trusted computing, precisa ler isso.

Barreiras cada vez mais finas

Caramba, dá uma olhada nisso:

The Road to KDE 4: Full Mac OS X Support

Ou seja, além do Windows, você vai poder rodar o KDE 4 no Mac OS X.

Ou seja, acesso às excelentes aplicações do KDE, das quais eu simplesmente não consigo me livrar, mesmo usando Gnome, para todo mundo. Windows, Mac, Linux[bb], FreeBSD, não importa. Você vai poder usar Kmail, Kate, Konqueror e até Kreversi!

Devolva seu Windows e receba seu dinheiro de volta.

Este camarada aqui comprou um computador[bb] novo na Dell, com Windows, por falta de opção.

Chegando em casa, documentou cada passo da instalação do novo computador, fotografando[bb] tudo, desde a abertura da caixa. Ao iniciar o Windows pela primeira vez, copiou o texto do EULA, para poder falar ao telefone, dando atenção especial ao trecho que diz que você pode devolver o Windows ao vendedor se não concordar com os termos. Clicou em “Do Not Accept” e ligou para a Dell.

Depois de muita conversa, conseguiu um reembolso de US$ 52,50. E escreveu o artigo dando as dicas para quem precisar fazer isso.

Será que isso funciona aqui no Brasil?

Navegando

O YouTube está bloqueado no seu provedor. Fure o bloqueio, mas proteste.

Provedor “legal”:

Acessar o Youtube bloqueado é fácil.

Minha sugestão é que você, além de fazer as coisas que o Falcon Dark sugeriu, entre em contato com o seu provedor de acesso, peça maiores explicações e expresse seus sentimentos a respeito da situação. Sugiro isso porque concordo com o Falcon Dark, as operadoras de telefonia não estão nem aí para o interesse de você, cliente. Então também precisam ser incluídas em sua lista de reclamações.
Entenda aqui que com “provedor” quero dizer a empresa que realmente conecta[bb] você à Internet. No meu caso, a Telefonica, e não o Terra que sou obrigado a assinar por nada.

Acabo de entrar no atendimento da Telefonica:

Shirley Santos : Bem Vindo(a) Elcio, em que posso ajudar ?
Elcio: Olá, não estou conseguindo acessar o YouTube.
Shirley Santos : Boa tarde Sr. Para localizar seu cadastro e melhor lhe atender, por gentileza, informe o DDD, número do telefone e nome completo do assinante da linha.
Elcio: (omitido)

Elcio: Shirley? Está ainda aí?
Shirley Santos : Por uma ordem judicial foi determinado o bloqueio ao acesso do site YouTube (www.youtube.com) por todos os provedores de internet no Brasil.
Elcio: Sério? Porque?
Shirley Santos : Refere-se a uma ação judicial.
Shirley Santos : Há mais alguma dúvida em que posso ajudar?

Elcio: Na verdade, sim. Eu gostaria de entender melhor porque vocês bloquearam meu acesso aos meus vídeos.
Elcio: Shirley?
Shirley Santos : Senhor,o site foi bloqueado por motivos judiciais o que não refere-se especificamente a “Telefônica” e sim por uma Ordem Judicial.
Shirley Santos : Verifique essas informações no próprio site.
Elcio: em qual site?

Shirley Santos : Site YouTube.
Shirley Santos : Aparece as informações referente o ocorrido.
Elcio: Na verdade, apenas diz que se trata de uma ação judicial.
Elcio: Eu estou querendo mais informações da parte de vocês, de quem eu contratei o serviço de acesso. Quero entender o porque disso.
Elcio: Tenho videos lá, que uso no trabalho. Estou impedido de trabalhar por isso.

Elcio: Preciso entender melhor o problema, saber o que posso fazer para recuperar meus vídeos.
Elcio: Preciso entender também se é política da Telefonica fazer esse tipo de bloqueio sem avisar previamente seus clientes.
Shirley Santos : Este bloqueio se refere ao cumprimento do ofício nº 07/2007 processo 583.00.2006.204563-4, assinado pelo merítissimo Juiz de Direito Dr. Lincon Antônio Andrade Moura, por decisão da Quarta Câmara do Tribunal de Justiça do Estado de Sâo Paulo e, portanto, não se refere a um problema técnico por parte da Telefonica e sim ao cumprimento de uma determinação judicial.
Elcio: Tenho medo de que, no futuro, meu próprio site seja bloqueado, ou coisa assim, entende?
Elcio: Sim, esse é o texto que eu já li, Shirley.

Elcio: Não sei se você entendeu minha preocupação.
Elcio: Eu faço sites[bb], e vendo através de meu site. E tenho medo de que, numa pendenga judicial qualquer, a Telefonica bloqueie meu site.
Elcio: Ou o de algum cliente.
Elcio: Preciso entender melhor qual a política da Telefonica em relação a esse bloqueio.
Elcio: Shirley, está aí ainda?

Elcio: Shirley?
Shirley Santos : As informações que me cabem orientá-lo já foram informadas se houver dúvidas referente ao Processo Judicial compareça a um Fórum e lhe informarão precisamente o porque do processo.
Shirley Santos : Há mais alguma dúvida em que posso ajudar?
Shirley Santos : Caso haja mais alguma dúvida, por favor, retorne o contato. A Telefônica agradece, tenha uma Boa Tarde!
Em seguida fui desconectado do chat e até agora não consigo voltar.

Preste atenção à qualidade do atendimento recebido. Acordo pela manhã, tento acessar um site em que tenho vários vídeos[bb] armazenados, e recebo uma mensagem da empresa que eu contratei para ter acesso a Internet dizendo que não posso acessar meus vídeos por causa de uma ação judicial. A mensagem não dá detalhes sobre o bloqueio, ou sobre a política da empresa em bloquear sites.

Procuro a empresa para ter mais explicações, uma vez que tenho medo de acordar amanhã e não conseguir acessar meu próprio site. A resposta que recebo é: “tudo que tinha que ser dito já foi dito, e se você quiser saber mais, procure um fórum.”

Se você está tão incomodado quanto eu, escreva ou telefone, reclame. Se reclamarmos juntos, podemos fazer alguma coisa em prol do fim da censura. Você pode escrever:

  1. Para o pessoal do Supremo Tribunal Federal. Escreva pedindo o fim da censura no país.
  2. Para o Tribunal de Justiça do Estado de São Paulo. É aqui que a decisão foi tomada. Explique para eles o que é a Internet, diga que o YouTube é um site em que os usuários publicam o conteúdo e que, se alguém tem que ser penalizado, é a pessoa que publicou o vídeo lá, e não você. Explique que o YouTube fez o possível para bloquear o vídeo, que inclusive não está lá agora. Conte de sua alegria ao descobrir que não consegue acessar seus próprios vídeos por causa da digna e respeitável senhora e seu não menos digno namorado.
  3. Para o seu provedor, pedindo explicações a respeito do bloqueio e da política deles em bloquear os sites. Expresse sua alegria pelo fato de eles não terem avisado a tempo de você poder salvar seus vídeos que estavam lá. Não aceite “procure um fórum” como resposta. Você assinou um contrato com quem, afinal?
  4. Para a MTV. E para qualquer outro lugar que ameace contratar ou mesmo entrevistar Daniela Cicarelli. Conte-lhes a respeito da vergonha que você tem dessa história toda, e tente mostrar como é ruim para a imagem deles dar emprego a quem prejudicou toda a Internet brasileira (além de ser uma desavergonhada.)
  5. Para a Cicarelli. Alguém tem o e-mail dela?

Depois conte para a gente se obteve resposta de alguém e que resposta foi.

PS: Se você tem talento e disposição para criar uma “mensagem-modelo”, com campinhos para preencher e enviar, principalmente para os tribunais, por favor faça isso. Você vai estar ajudando muito com um pouquinho de seu tempo.

PS2: Parece que o tal juiz voltou atrás. A decisão deve ter mexido com gente demais, talvez inclusive os familiares do próprio juiz ;-) Não deixe de protestar porque o site voltou ao ar. Seu provedor precisa de uma política definida para quando esse tipo de coisa acontecer, e precisa te atender bem. Quem sabe quando será a próxima loucura dessas?

Mais:

Revista Guia do Hardware

Revista Guia do Hardware

A revista Guia do Hardware.net é uma proposta inovadora. Uma revista digital, produzida com o mesmo cuidado e qualidade de uma revista impressa, contendo artigos e tutoriais aprofundados sobre hardware, redes e Linux[bb], porém distribuída gratuitamente :). É só acessar o http://guiadohardware.net/revista/ e baixar a sua todos os meses. Não existem condições nem limitações. Você pode baixar, indicar para seus amigos, imprimir as matérias que mais gostar e assim por diante.

A longo prazo a meta é equilibrar os custos da revista com anúncios, mas, por enquanto, ninguém está preocupado com isso, estamos trabalhando no que gostamos e fazendo algo novo.

Acabo de baixar a primeira edição. Excelente. A reportagem “Linux: usando o terminal”, por exemplo, tem 24 páginas é uma verdadeira introdução ao Linux, que recomendo para qualquer um que esteja iniciando no mundo Unix[bb]. A “História da informática” tem 28 páginas e está primorosa. São mais de 100 páginas de excelente conteúdo.

É uma primeira edição, então há seus probleminhas. O projeto gráfico precisa melhorar um bocado, para ficar próximo ao da Tux Magazine, por exemplo. As páginas de texto claro sobre fundo escuro tornam a impressão inviável. Senti falta também de um feed RSS[bb] ou até uma (argh!) newsletter para ser avisado quando sair o número 2. A despeito disso, uma excelente iniciativa. Ao que parece, a revista é feita por apenas quatro pessoas. Muito, muito obrigado pessoal, ficou muito bom!

Lasagna, o mini-framework

Para mim é difícil dizer quem foi a grande estrela do Intercon 2007: o Luli ou o Twitter. Durante as palestras víamos boa parte do público de cabeça baixa, olhando para seus celulares[bb], exercitando freneticamente seus polegares.

Saindo do Intercon e voltando ao mundo real descobri um fato estarrecedor: a maioria das pessoas não sabe o que é o Twitter. Mesmo num evento de desenvolvedores de que participei no domingo, ninguém sabia o que era! Então vamos começar com o básico:

Qualquer um pode entrar lá e criar uma conta. Em seguida o twitter pergunta “o que você está fazendo agora?” E você pode entrar lá, quantas vezes quiser, e dizer o que está fazendo agora. E também pode encontrar seus amigos lá e clicar em “follow”. Ao fazer isso, você é avisado sempre que um deles escrever alguma coisa. Isso pode ser simplesmente publicado em sua página no Twitter ou enviado para você por Gtalk ou SMS. Você também pode escrever via Gtalk ou SMS, sem abrir a página do Twitter.

Da primeira vez que vi isso, pensei que fosse completamente inútil. Ora, o que alguém poderia escrever diferente de “escrevendo no twitter”. E que interesse eu tenho se fulano está escovando os dentes ou ciclano está alimentando os gatos? Durante um bom tempo eu, e uma porção de gente que eu conheço, se recusou a usar o Twitter.

Quando resolvi dar uma chance ao Twitter, comecei a entender de verdade seu valor. O truque número um é que você pode responder ao que alguém disse, basta começar sua mensagem com @nomedosujeito. O truque número dois é que você pode escrever o que quiser, não apenas o que está fazendo agora.

Veja, por exemplo, o que aconteceu no Intercon. Durante uma palestra alguém tem uma dúvida ou uma idéia genial. Ao invés de cochichar com a pessoa ao lado, escreve no twitter. É como se estivesse cochichando com cem ou duzentas pessoas que podem responder. Imagine uma sala de bate-papo onde você só escuta quem você escolheu, e que funciona muito bem em seu celular.

Outro exemplo, você resolve almoçar no intervalo do evento. Publica no twitter onde está e para onde vai. Seus amigos ficam sabendo e podem responder na hora. Pense na troca de SMS que você já faz, mas em grupo. Sabe aqueles filmes em que a equipe dos mocinhos tem um comunicador em que quando um fala todo mundo ouve?

Claro, esse é o uso que eu estou fazendo do Twitter, não quer dizer que é o único ou “o jeito certo”. Mas, a julgar pela quantidade de gente que estava usando assim no Intercon, deve ser um dos melhores usos. Os resultados? Confira o que o Manoel Netto escreveu sobre o assunto.

Entenda bem, não é o Twitter, é o fato de estarmos conectados o tempo todo, do mesmo jeito que não era o Napster, era o fato de podermos compartilhar nossas músicas, e não era o ICQ, mas o fato de poder falar com gente do mundo todo, inclusive meus vizinhos. Não sei se o Twitter vai continuar a ser usado por anos, ou se vai surgir algo que vai conseguir substituí-lo, não importa. O que importa é que podemos nos falar, estamos conectados, em qualquer lugar e sempre que quisermos, e em grupo. Isso é algo completamente novo, e muda muita coisa.

Dez bons hábitos no console do Linux

Para aqueles que foram ao workshop, e saíram de lá querendo aprender mais sobre o bash, o shell do Unix[bb], lá vai:

Learn 10 good UNIX usage habits

Muito, muito bom. Sobre a dica do xargs poder ser usado em combinação com outros comandos que não o find, eu gostaria de acrescentar que, ao usar o find, muitas vezes você não vai precisar do xargs. Existe uma opção do find, -exec, que executa o comando que vier depois. Tudo o que vier depois de -exec até o próximo “;” será passado ao comando, e a string especial “{}” será substituída pelo nome de arquivo encontrado.

Por exemplo, o comando:

find -name "*.bak" -exec mv {} ../trash/{} ";"

Move todos os arquivos bak do diretório atual e subdiretórios para a pasta ../trash. Veja, por exemplo, esse outro:

find -name "*.php" -exec grep -l password {} ";"

Vai listar todos os arquivos php dentro do diretório atual que contém a string “password”.

De quantas etapas você precisa para fazer isso na interface gráfica? E se tiver que fazer isso todo dia, três vezes por dia?

Beep no console do Linux com Bash e printf

Você faz um shell script[bb] para alguma ação que pode levar tempo. Ou mesmo executa no console um comando que pode demorar. Pode ser muito útil avisar do término da operação com um beep. O código para isso é bastante simples:

printf "\x07"

Assim, digamos que você esteja buscando por todos os arquivos php com o texto “mail” dentro de um determinado diretório:

find -name "*.php" -exec grep -l mail {} ";"

Dependendo do tamanho desse seu diretório, esta operação pode demorar muito. Sistemas multitarefa existem justamente para que você não precise ficar esperando, e possa fazer outra coisa enquanto o sistema procura por você. Para ser avisado com um beep quando a busca terminar, você pode fazer:

find -name "*.php" -exec grep -l mail {} ";";printf "\x07"

Streamming e download ao mesmo tempo.

Há um vídeo enoooorme na internet em que você tem muito interesse. Por exemplo, a palestra de tableless que eu publiquei esse dias. Você quer baixar e guardar o vídeo, mas ao mesmo tempo quer assistí-lo logo. Se você iniciar o download e tentar assistir via streamming ao mesmo tempo, vai consumir o dobro da banda necessária, o streamming vai ficar pausando a cada dois segundos e o download vai levar muito tempo. O que fazer? Não sei se há no Windows algum player que faça download e toque ao mesmo tempo. No linux[bb] eu resolvo assim, numa janela de terminal:

wget -c http://files.elcio.com.br/tableless.wmv

Em outra:

tail -c 10000000000 -f tableless.wmv |mplayer -

Explicando, o primeiro comando, o wget, faz o download do vídeo. O parâmetro -c faz com que, se o arquivo existir, o download seja continuado de onde parou. Isso é útil porque se o download for interrompido, depois você pode continuá-lo com o mesmo comando.

O segundo é uma concatenação de comandos Unix[bb]. A parte “tail -c 10000000000 -f tableless.wmv” é um comando e “mplayer -” é outro. O primeiro usa o tail, que imprime o final de um arquivo. Experimente, por exemplo:

tail /var/log/syslog

Você vai ver as últimas linhas do log do sistema. O parâmetro -c recebe um número, o número de bytes a imprimir a partir do fim do arquivo. Você pode colocar qualquer número que seja maior que o arquivo inteiro. O parâmetro -f faz o tail ficar esperando por conteúdo novo no fim do arquivo. Experimente rodar num terminal, por exemplo:

tail -f /var/log/syslog

Você vai ver as últimas linhas do syslog e o tail vai ficar esperando por conteúdo novo. Abra programas, execute ações no sistema, pare e inicie daemons e você vai ver as novas linhas aparecendo ali. A mesma coisa acontece como vídeo. O tail vai despejar na tela todo o conteúdo do arquivo, e vai ficar esperando. A medida que o wget baixa mais dados, o tail vai imprimindo o que chega.

O caracter |, chamado pipe, direciona a saída de um comando para outro. Assim, o tail, ao invés de imprimir os dados do vídeo na tela, os envia para o mplayer. Ao invés de indicar ao mplayer um arquivo ou url que ele deva tocar, colocamos como parâmetro um hífen (-) que diz que ele deve ler da entrada padrão. Assim, ele lê os dados que o tail envia para ele.

Percebe o que fizemos? Colocamos para trabalhar juntos três programas diferentes, escritos por pessoas diferentes, e tudo funcionou. As coisas geralmente são assim no Linux, porque os programas Unix são feitos para que você possa usá-los juntos. Se você quiser saber mais sobre isso, recomendo um livro, disponível gratuitamente online: The Art of Unix Programming, do Eric Raymond.

Ubuntu 6.10

Já está todo mundo anunciando, foi lançado o Ubuntu 6.10, Edgy Eft. Parece que tem muita coisa interessante. Versão nova do Gaim, do F-Spot, do Firefox, do OpenOffice, sistema de boot novo, tema novo. E a versão server parece que tem bastante coisa interessante. Inclusive, automatizaram aquele truque, chatíssimo de se fazer, de o sujeito ter acesso ao pen-drive dele no Thin Client (olha aí, Diego, é disso que a gente precisa, né?)

Algumas pessoas me escreveram pedindo reviews, mas eu não vou instalar por enquanto. Não por medo, mas por praticidade.

Diferente do Windows, em que a versão nova é segredo até a véspera do lançamento e meia dúzia de pessoas teve acesso aos betas, no desenvolvimento da maioria das distribuições do Linux a nova versão é testada pela comunidade a cada passo do desenvolvimento. Assim, o Edgy já vem sendo testado por gente do mundo inteiro desde o início do seu desenvolvimento, até o último release candidate, semana passada. A versão final então é bastante estável, e posso instalar sem medo. Ou seja, não é como no Windows, em que você precisa esperar alguns meses antes de instalar uma versão nova numa máquina de produção.

Porque então eu não vou instalar logo o Edgy? Porque minhas máquinas estão funcionando, e muito bem, e eu tenho um milhão de outras coisas para fazer. Então, amigos, sinto muito, mas nada de review. Até porque vocês vão encontrar uma porção de reviews bem escritos pela web logo, muito logo.

Ah, de passagem, deixe-me aproveitar para dizer: que tal trabalhar desenvolvendo o Ubuntu? Em casa, ganhando em Euros e fazendo ocasionais viagens internacionais. Você está preparado?