Todos os posts de Rafael Biriba

Youtube ao avesso

 

http://www.youtube.com/
http://www.youtube.com/

Como todo mundo já sabe, é bem comum que o Google faça brincadeiras no dia 1º de abril. De acordo com o site do G1: http://g1.globo.com/Noticias/Tecnologia/0,,MUL1066713-6174,00.html, diversas piadas já foram feitas como, o orkut virar yogurt e o google ia abrir um centro de pesquisa na lua, ou a piada que o Ipod ia virar barbeador.

Este ano, durante todo o dia 1º de abril, o youtube foi exibindo alguns de seus vídeos de cabeça pra baixo. Não só os vídeos, mas todo o portal estava ao contrário, desde os textos, o vídeo e inclusive o player e seus comandos.

Abaixo segue as dicas encontradas em: http://www.youtube.com/t/new_viewing_experience para utilizar o novo layout:
youtube-avesso-dicasVirar o monitor ao contrário, entortar o pescoço ou viajar para austrália ! São as alternativas que o youtube ofereceu para aproveitarmos o novo layout !

Uma brincadeira bem divertida, que pouca gente descobriu. Pelos menos quase ninguém com quem comentei conhecia essa forma “um tanto divertida” de visualizar o youtube. O legal, é que ainda funciona, se for habilitado manualmente.

Abaixo segue um pequeno exemplo de como habilitar a “nova” visualização:
Eis uma URL normal de um video no youtube: http://www.youtube.com/watch?v=oYgIIRLjXiY
Para habilitar a visualização ao contrário, basta acrescentar ao final da URL, o parametro &flip=1
Veja a url acima com o parametro informado: http://www.youtube.com/watch?v=oYgIIRLjXiY&flip=1

O mesmo vídeo invertido. Legal não ?
Teste com outros vídeos… Funciona com todos eles… Pelo menos todos que eu testei… =)

Só pra complementar: Fiz alguns testes e realmente não é possivel incorporar o vídeo ao contrário nos seus sites e blogs. Isso sim seria bem legal. =)

youtube-avesso-video

Share

QR Code: Gere com o Google Chart API

Devido à rápida difusão e com vários sites e revistas dando ênfase a esse assunto, na semana passada tive mais de 100 visitas vindas diretamente de buscas sobre Qr code pelo Google.

Então resolvi continuar postando, e dessa vez, como gerar utilizando a ferramenta Chart API do Google.
Você que ainda não conhece esta tecnologia, pode ler mais em: https://rafaelbiriba.com/category/tecnologia/qr-code

A imagem ao lado está sendo gerada pela seguinte URL: ( dividida para uma melhor visualização )

http://chart.apis.google.com/chart?
&chs=150×150
&cht=qr
&chl=https://rafaelbiriba.com
&choe=UTF-8

Recomendo que apenas os valores em negrito/colorido sejam editados para facilitar a exibição. Qualquer alteração nos outros parâmetros, recomendo ler a documentação em http://code.google.com/intl/pt-BR/apis/chart/#qrcodes.

Clique aqui para acessar o link completo do gráfico.

&chs = Dimensões em pixel. De acordo com a documentação do google, a maior dimensão deve ter no máximo 300000 pixel, como por exemplo: 600×500, 300×1000, etc…

&cht = Tipo do gráfico. Neste caso qr

&chl = Conteúdo à ser codificado, lembrando que quanto maior o conteúdo, mais linhas e colunas a imagem vai ter, aumentando o seu tamanho, automaticamente.

&choe = Especifica opcionalmente como será a saída codificada. As opções mais comuns são UTF-8 e ISO-8859-1

Antes de gerar o código QR, considere o tipo de dispositivo a ser usado para a leitura do código. Os melhores leitores de código QR conseguem ler códigos versão 40, dispositivos móveis podem ler somente até a versão 4.

O Google recomenda manter a versão 4, que equivale a cerca de 100 caracteres alfanuméricos no nível de EC padrão.

Linhas e Colunas de um QR code:

  • A versão 1 tem 21 linhas e colunas e pode codificar até 25 caracteres alfanuméricos ( EC = L )
  • A versão 2 tem 25 linhas e colunas e pode codificar até 47 caracteres alfanuméricos ( EC = L )
  • A versão 3 tem 29 linhas e colunas e pode codificar até 77 caracteres alfanuméricos ( EC = L )
  • A versão 4 tem 33 linhas e colunas e pode codificar até 114 caracteres alfanuméricos ( EC = L )
  • A versão 40 tem 177 linhas e colunas e pode codificar até 4,296 caracteres alfanuméricos ( EC = L )

Parâmetro opcional: Correção de erros: ( EC )

&chld = Adicionando esse parâmetro no final da URL para gerar o QR Code, você pode especificar o tipo de correção de erros. Abaixo segue cada uma das opções disponíveis:

L permite que 7% de um código QR seja restaurado
M permite que 15% de um código QR seja restaurado
Q permite que 25% de um código QR seja restaurado
H permite que 30% de um código QR seja restaurado

Clique aqui para acessar o link completo do gráfico com o parâmetro de correção de erros ( EC = H ).

Acessando o link: http://code.google.com/intl/pt-BR/apis/chart/#ec_level_table, é possível analisar a tabela com informações de quantos caracteres podem ser armazenados em cada versão da imagem e com cada um dos nível de correção.

🙂

Share

Ruby: Alternativas para require ‘rubygems’

ruby-logo-justruby

Baseado no comentário de Guilherme Chapiewski encontrado em https://rafaelbiriba.com/2009/04/13/ruby-require-rubygems.html, resolvi postar alternativas para suprir essa necessidade do require ‘rubygems’ e porque é errado utilizá-lo !

Primeiramente, vamos para a pergunta que originou este post:
O que há de errado em utilizar require ‘rubygems’ no meu script ?

Bom, analisando o exemplo que eu dei no post do require rubygems, transcrito logo abaixo, onde se você quiser utilizar o pacote “hpricot”, instalado pelo comando gem install hpricot, o código não irá rodar, retornando um erro referente ao rubygems. Usando o require ‘rubygems’ o problema é resolvido, mas não está correto. O motivo é bem simples. Primeiro vamos ver o código em questão:

require 'hpricot' 
require 'open-uri' 
meuXml = Hpricot.XML(open("http://www.exemplo.com/exemplo.xml"))

Concordam comigo que o código acima, é uma simples aplicação em ruby ? O que eu quero dizer é que você pode instalar o hpricot de várias maneiras diferentes ! Por exemplo, acessando o link: http://wiki.github.com/why/hpricot/installing-hpricot, você pode observar que o Hpricot pode ser instalado sem o Rubygems. Sendo assim, ao usar o require “rubygems” em um máquina que não tem o rubygems instalado, vai dar problema na execução !

Então o que fazer se eu instalei o Hpricot pelo rubygems ? Simples…

Você pode facilmente rodar o seu script incluindo -rubygems na linha de comando, conforme o exemplo abaixo:

ruby -rubygems meu_script.rb

Isso fará rodar o pacote rubygems antes de executar sua aplicação meu_script.rb

Fonte: http://gist.github.com/54177

Bom, então é isso.

Share

Ubuntu: Não foi possível resolver ‘br.archive.ubuntu.com’

ubuntu-splash-brownBom, hoje a tarde instalei o Ubuntu 9.04 no computador de casa. Como de costume, fui rodar os comandos do aptitude no terminal ( aptitude update e aptitude upgrade ), porém ainda no update, recebi vários erros. Alguns deles seguem logo abaixo: ( Foram mais de 10 )

Err http://br.archive.ubuntu.com jaunty Release.gpg
Não foi possível resolver ‘br.archive.ubuntu.com’
Err http://br.archive.ubuntu.com jaunty/main Translation-pt_BR
Não foi possível resolver ‘br.archive.ubuntu.com’
Err http://br.archive.ubuntu.com jaunty/restricted Translation-pt_BR

Foi então que eu resolvi tentar descobrir o que estava acontecendo.
Bom, pesquisei em vários forums a tarde toda, testei algumas das soluções e por fim consegui chegar a alguma conclusão.

Uma das recomendações foi alterar o repositório para o principal, no lugar do brasileiro.
Para fazer isto, basta entrar em SISTEMA > ADMINISTRAÇÃO > CANAIS DE SOFTWARE
Altere a opção BAIXAR DE: Servidor no Brasil para Servidor Principal
Em seguida, execute o aptitude update novamente.

Na verdade, pelo que pude analisar, isso não foi uma solução e sim uma camuflagem. Diferentemente da opção Servidor no Brasil, que retornou diversos erros ao tentar baixar os pacotes, com a opção Servidor Principal, os mesmo pacotes que davam erros, agora apenas são ignorados.

Agora vem a parte que ninguém esperava… Algumas horas depois, alterei o repositório para Servidor no Brasil, e ao rodar o update novamente, os pacotes que antes davam erro, foram baixados corretamente…

O porque disso ? Será que o fato de ter trocado o repositório tem alguma coisa haver ?
Bom, na verdade não. Fiquei com tanta curiosidade, que tive que instalar Ubuntu novamente, desde do zero. E para surpresa de todos, sem alterar qualquer configuração, os pacotes foram baixados normalmente sem nenhum erro.

Agora fica a pergunta no ar: O que realmente aconteceu ?
Minha opnião: Simples, a unica explicação lógica para isso foi: os pacotes que deram erro estavam em manutenção, ou sendo atualizados nos repositórios. Isso explica porque o mesmo pacote não foi baixado nos dois repositórios que tentei inicialmente, pois todos eles estavam indisponíveis temporariamente para download.

Portanto, se você passar pelo mesmo problema, fique calmo e espere algum tempo e logo conseguirá conectar ao repositório !

Share

Ubuntu: 9.04 disponível para download !

http://www.ubuntu.com/
http://www.ubuntu.com/

Um dos diferenciais encontrados nessa versão,  é o Ubuntu 9.04 Netbook Remix. Desenvolvido para Notebooks de tela pequena e com pouco desempenho, este pacote pode solucionar o problema de muita gente. Veja os requisitos mínimos:

  • A 1GB USB flash drive (aka thumb drive)
  • An Intel Atom processor
  • At least 384MB of RAM

Como podem ver, é necessário pouco espaço e um memória mínima para rodar esta versão !
Disponível em: http://www.ubuntu.com/getubuntu/download-netbook

Características da nova versão ( em inglês ): http://www.ubuntu.com/products/whatisubuntu/904features

Download para desktop, server ou notebook: http://www.ubuntu.com/getubuntu/download

Bom, eu já postei isso anteriormente, mas resolvi publicar novamente para dar ênfase ! Não é necessário baixar o CD do 9.04 para atualizar seu Ubuntu. Você pode fazê-lo seguindo o procedimento abaixo, sem a necessidade de reinstalar seu sistema operacional.

Recomendo que você faça o Backup de todos os seus dados antes de fazer a atualização, para evitar qualquer tipo de problema. Mas eu atualizei, e ocorreu tudo certo, o sistema novo é excelente e não houve nenhum erro durante o processo.

Atualizando seu Ubuntu de 8.10 para 9.04

Acessando o terminal ( geralment ALT+F2 ), digite:

update-manager -d

Isso fará com que o Gerenciador de Atualizações abra, exibindo a seguinte informação: Nova versão da distribuição ‘9.04’ está disponível

Basta apertar atualizar e iniciar o processo de atualização. Abaixo segue uma figura de exemplo:

atualizacao904ubuntu

Share

Ubuntu: Vem por aí a versão 9.04

masthead-cds Para quem ainda não foi informado sobre o assunto, vem por aí a versão 9.04 do Ubuntu !

De acordo com o site oficial, o lançamento será no dia 23/04/2009 !

Já existem diversas versões de teste, há algum tempo, mas como o lançamento já está bem próximo, melhor aguardar a versão final !

Algumas alterações na nova versão:

  • Brasero: Programa para gravar CDs e DVDs agora é padrão do Nautilus
  • Aprimorado o painel de configuração para múltiplo monitores.
  • O mais esperado por todos: Performance melhorada na inicialização do sistema ( Boot mais rápido )
  • X.Org server 1.6: Suporte a mais placas de vídeo com performance melhorada
  • Atualização no kernel

Mais informações: http://www.ubuntu.com/getubuntu/releasenotes/904overview

ubuntu904commingsoonAtualizando seu Ubuntu de 8.10 para 9.04

Acessando o terminal ( geralmente ALT+F2 ), digite:

update-manager -d

Isso fará com que o Gerenciador de Atualizações abra, exibindo a seguinte informação: Nova versão da distribuição ‘9.04’ está disponível

Basta apertar atualizar e iniciar o processo de atualização. Abaixo segue uma figura de exemplo:

atualizacao904ubuntuBom, mesmo ainda não finalizada, vou estar atualizando para 9.04 ainda hoje, então, depois eu posto alguma coisa mais específico sobre a nova versão !

Share

Host Tracker: Monitoração de Servidores

 

Host Tracker: http://host-tracker.com/
Host Tracker: http://host-tracker.com/

Bom, se você anda atrás de algum programa ou site que faça a monitoração de uptime de seu servidor, lhe apresento o Host Tracker !

O serviço é gratuito, com alguns recursos extras, caso resolva assinar algum plano. Após criar uam conta no site, é possível adicionar servidores para monitoração. Na verdade, basta apontar qualquer URL válida que o host-tracker irá monitorar de tempo em tempo, definido por você !

Ele também um pequeno banner, para você colocar em seu site, como no exemplo abaixo, onde temos a monitoração de rafaelbiriba.com:

server monitor

A imagem é atualizada automaticamente de acordo com o seu uptime real. Clicando no banner, é possível ver detalhes como tempo de monitoração, tempo total de downtime, e etc…

No site ainda é possível configurar os alertas e relatórios ( semanais, mensais e anuais ). Os alertas são os mais importantes, pois avisa quando seu servidor ou seu site está inacessível e ainda mostra em que lugar que não foi possível acessa-lo. Atualmente a host-tracker conta com mais de 30 pontos de verificação, espalhados pelo mundo todo. A lista pode ser visualizada em http://host-tracker.com/our-monitoring-network/

Para quem quiser verificar os planos este é o link: http://host-tracker.com/order-page/, algumas vantagens como relatório diário e verificação de conteúdo podem ser liberadas de acordo com o plano que você escolher ! Experimente um desses planos habilitando o período de teste de 30 dias.

Para ativar a monitoração, primeiro eu recomendo se cadastrar em: http://host-tracker.com/register/ e depois criar um novo monitor. Mas para os apressados, aqui tem um link para criação direto de um banner: http://host-tracker.com/fget_uptime_button/.

Então é isso. Monitore seu site, e saiba exatamente quando ele estiver inacessível. Assim, você poderá correr para resolver o problema, antes mesmo do problema correr para você ! E ainda, coloque o banner em seu site, e mostre a todo mundo, o quão estável é o servidor em que seu site está hospedado !

=)

Share

Ruby: require ‘rubygems’

ruby-logo-justruby

Essa semana estive escrevendo alguns códigos usando Ruby on Rails, e encontrei um problema, que demorei um pouco para descobrir sua solução, mas no fim se tratava de algo muito simples e lógico.

Ao instalar o Rails e qualquer outro pacote pelo rubygems ( gem install hpricot, por exemplo), para importar esse pacote no código, é necessário importar a biblioteca do rubygems primeiro.

Manual do RubyGems ( http://docs.rubygems.org/read/book/1 ).

Na prática, eu estava utilizando o código abaixo:

require 'hpricot' 
require 'open-uri' 
meuXml = Hpricot.XML(open("http://www.exemplo.com/exemplo.xml"))

Este codigo abre uma URL, captura seu XML e armazena o conteúdo em uma variável ( string ).

Porém, isso só é possível se incluir a biblioteca do rubygems. Verifique o código abaixo, desta vez, funcionando:

require 'rubygems'
require 'hpricot'
require 'open-uri' 
meuXml = Hpricot.XML(open("http://www.exemplo.com/exemplo.xml"))

 

Bom, então é isso !
—————–
Baseado no comentário recebido depois da publicação deste Post, visite também:
https://rafaelbiriba.com/2009/04/29/ruby-require-rubygems-alternativas.html

Share

Travian: Greasemonkey e seus Scripts

Travian: http://www.travian.com.br/
Travian: http://www.travian.com.br/

Para quem ainda não conhece o jogo, sugiro ler o post: Travian: Jogo online multiplayer

Para os que já jogam, aqui vai umas dicas bem valiosas. Quem nunca ouviu falar do greasemonkey e seus scripts ? Utilitários para mandar ataques automáticos, ou fazer uma fila de contrução, ou um pequeno medidor de recursos que diz quando seu armazém e celeiro vão estourar, ou ainda scripts para procurar Crop 9 ou 15  ( Aldeias com vários campos de cereal ), ou um adicioonal para seus relatórios exibindo mais detalhes, e muitos outros scripts que fazem coisas que você nem imagina !

Primeiramente, gostaria de informar o seguinte trecho, retirado das regras no site do Travian:

§3 Uso de auxiliares O uso de qualquer tipo de auxiliares ao jogo como scripts ou bots os que por exemplo automaticamente tomem acções como construir edifícios ou criar tropas não são permitidos. Este jogo pode apenas ser jogado com um Navegador de Internet comum. Para mais é também proibido usar scripts que alterem o código fonte das páginas do Travian (por exemplo o Greasemonkey). Scripts e bots que causem um uso exagerado do servidor como por exemplo ferramentas de scan do mapa são ilícitas. Retirado do link: http://www.travian.com.br/spielregeln.php

Bom como podem ver, usar Greasemonkey no Travian é ilegal e sua conta pode ser bloqueada ! Mas sinceramente, eu já vi bloqueios por linguagem inadequada ( palavrões ), por Pushing ( Quando você envia recursos de uma aldeia para outra constantemente ), dentre outros problemas, mas bloqueio por usar scripts é quase impossível, eu realmente não conheço ninguém que tenha sido pego. Porque ? Porque os administradores não tem como provar se é você ou o script que tá jogando. Obviamente, que se um script é usado pra procurar uma Crop, ele vai acessar as aldeias em volta com intervalos de menos de 5 segundos, em alguns minutos o script vai ter acessado mais de 100 aldeias, isso é meio impossível de se fazer sem script, mas ainda sim, não tem como provar… Se você quiser usar os códigos, continue lendo, senão pare por aqui mesmo. O macete é não falar pra ninguém que está usando esse tipo de recurso !

Vamos começar:

Primeiro você precisa de um Mozilla Firefox para podermos instalar o complemento Greasemonkey. Faça o download do firefox em: http://pt-br.www.mozilla.com/pt-BR/firefox/

Depois de baixar e instalar, abra o link abaixo no navegador firefox: ( Download do complemento Greasemonkey ): https://addons.mozilla.org/pt-BR/firefox/addon/748 Adicione o complemento no firefox, que depois de instalado, vai pedir para reiniciar o firefox.

Pronto, agora você já tem tudo que precisamos, vamos buscar pelos scripts. Neste caso usamos o site: http://userscripts.org/ Se você fizer uma busca simples pela palavra travian no site do userscripts, vai retornar mais de 500 scripts, e a maioria deles tem nomes diferentes, mas fazem a mesma coisa. Por isso, vou dar a vocês uma lista seleção dos melhores scripts, com o nome, o que fazem e o link direto para adicionar no greasemonkey: ( Para instalar algum script basta clicar em instalar e esperar uma tela do greasemonkey abrir, onde deve-se esperar alguns segundos e apertar instalar de novo ! )

Travian: Resource++ v3: Exibe um monitor de recursos para cada aldeia. Ele diz quando seu armazém e seu celeiro vai ficar cheio demais ! Link: http://userscripts.org/scripts/show/44493

Travian Task Queue [With more Feature] + All Language: Permite a criação de uma lista de tarefas. É possível agendar um ataque, um envio de mercadoria e até uma contrução. Com isso, você pode agendar que tudo ocorra na sua aldeia de forma automatizada. Por exemplo, você pode mandar ele construir um celeiro as 15:00h e fazer um 50 soldados as 15:45h e depois fazer um armazém as 15:46h, etc… Link: http://userscripts.org/scripts/show/44300

Travian Map Analyser: Este eu considero o melhor de todos. Quem já joga travian sabe como é difícil e cansativo de achar uma Crop. Este script não só acha a crop pra você como ainda diz a distância que a Crop está e os bônus dos vales que tem em volta. É possível salvar uma busca, e até enviar por mensagem no jogo para algum player, que se tiver o Map Analyser instalado, pode ver o resultado da busca: Link: http://userscripts.org/scripts/show/28846

Travian: Battle Analyse v5.1.2: Acrescenta diversas informações importantes no relatório. Ele diz a porcentagem de eficiência de seu assalto/roubo, isso significa que se ele mostrar 100% de eficiência, significa que você só não roubou mais porque seus soldados não foram suficientes, então você vai lá e ataca de novo… =) Ele exibe também o total de recursos que você perdeu, se morrer alguma tropa e etc… Ele vem com um botão super simples no final: “save report”, onde salva seu relatório automaticamente no site (http://travilog.org.ua/pt/), com o link que ele vai te retornar, você pode passar esse relatório pra qualquer jogador de outra aliança, ou até quem não tem uma conta no travian. Link: http://userscripts.org/scripts/show/10835

Bom esses aí, são os melhores e que fazem algum sentido no jogo. Existem ainda muitos outros. Scripts que te comunicam se vem vindo algum ataque, scripts que removem suas tropas automáticamente, e etc… Só tomem cuidado. Só instalem scripts já testados e conhecidos, pois códigos maliciosos podem ser instalados acidentamente no greasemonkey, e te dar dor de cabeça se alguma coisa ruim acontecer. Bom, pelo menos os links que eu passei, são seguros e funcionam mesmo… =)

Então é isso. Use por sua conta em risco… ! ( Literalmente: Use pela sua conta do travian em risco…  🙂 )

—————————————————————————————————————————–
(Atualizado em: 17/05/2009): A versão 3.5 do travian acabou com o funcionamento de todos os script descritos neste post ! Mas informações podem ser obtidas em: https://rafaelbiriba.com/2009/05/17/travian-versao-35-fim-do-greasemonkey-e-seus-scripts.html
—————————————————————————————————————————–

Share

Ruby: Aprenda a programar

ruby-logo-justruby

Nas últimas semanas estive empenhado para aprender Ruby on Rails. Procurei aqui e ali na internet, juntei conteúdo de todas as partes e blogs, para aprender cada vez mais.

Para quem não sabe, Ruby on Rails é um framework para desenvolvimento Web, bem mais fácil de trabalhar comparando com outras linguagens Web.

Como diz no site do Rails, “Mostre, não fale: Ver é acreditar !”, visite o link abaixo e veja alguns exemplos de Rails na prática:
http://www.rubyonrails.pro.br/apresentacoes

Depois de vários dias, descobri um site ótimo para quem quer aprender a programar: ( Pena não ter encontrado ele antes )
http://aprendaaprogramar.rubyonrails.pro.br/

O site apresenta capitulos divididos em 11 links. A didática é ótima, e diz o autor que os exemplos encontrados no site são realmente “executados” , ou seja, o resultado do exemplo que você vê no site, realmente é executado. Isso é apenas um dos benefícios de usar o Ruby on Rails.

Eu recomendo tanto o site, quanto a linguagem para todos os programadores/desenvolvedores. Inclusive eu recomendo também para os futuros programadores. Quem tem pouco conhecimento na área, vai facilmente aprender a lógica de programação e a linguagem de maneira simplificada.

Em falar nisso, eu achei extremamente fácil de aprender e entender. Pra quem quer começar, visite o site abaixo para baixar a última distribuição do ruby:
http://www.ruby-lang.org/pt/downloads/

Ou então visite direto o site do Ruby on Rails, utilizem seus links para o download tanto do ruby quanto do rails*:
http://www.rubyonrails.pro.br/down
Neste mesmo link ainda exemplos de como criar sua primeira aplicação em Rails.
* Instalação do Rails e muitos outros pacotes, serão efetuadas pelo gerenciador RubyGems.

Bom, espero que se divirtam… =)

Share