quinta-feira, julho 12, 2007

traceroute.org e aniversário do blog

Um site interessante.

Descobri ele quando estava tendo problemas de roteamento em um dos meus servidores. Pacotes que saiam de um IP específico da minha rede não saiam do país. Além disso, ninguém fora do país conseguia enviar pacotes para esse IP. Mas outros IPs da mesma rede funcionavam OK (no final das contas, foi um filtro na Embratel que estava causando o problema).

Então, comecei a testar as rotas para esse meu IP. Primeiro, fiz um traceroute a partir de um dos servidores da Dreamhost. No traceroute, percebi que no meio do caminho, o pacote era bloqueado. Eu queria fazer mais testes, vindos de outras máquinas no exterior, mas o servidor da Dreamhost era a única máquina com acesso remoto que eu podia entrar.

Nesas buscas pelo Google, encontrei o site www.traceroute.org. A partir deste site, você pode acessar outros sites em várias partes do mundo que permitem que você faça traceroutes para qualquer IP. Com ele, pude fazer testes de traceroute a partir de máquinas em vários outros países.

Muito legal este site. Recomendo aos administradores de redes. :)

PS: Comemoremos! Hoje faz exatamente 1 ano da Casa de Just! :D

segunda-feira, julho 09, 2007

numeros.pl

Estava eu nesse fim de domingo, em casa, sem ter o que fazer. Nesse momento de ócio, lembrei de um numerólogo que estava dando entrevista essa semana na TV e procurei por Numerologia na Wikipédia. Comecei a ler o artigo e decidi fazer uns testes.

O problema é que é chato ficar somando os valores das letras dos nomes pra saber o número da pessoa. Então, como bom cientista da computação que sou, implementei um programinha pra fazer essa tarefa.

Pois bem, escrevi o código em Perl. Como programas em Perl são interpretados e não compilados, você vai precisar ter o interpretador instalado em seu computador pra executar o programa. Quem usa Windows, pode tentar o ActivePerl. Quem usa Linux ou outro UNIX, provavelmente já tem o Perl instalado (se não tiver, você pode baixar o fonte e compilar ou instalar o pacote correspondente). Pra executar o programa, use a linha de comando:

perl numeros.pl


O programa irá perguntar seu nome completo e sua data de nascimento. Em seguida, vai somar os valores de cada letra do nome e dar seu número na numerologia. Depois, vai somar os números da sua data de nascimento e lhe entregar o número correspondente à sua lição de vida. Aí é só usar o artigo da Wikipédia pra saber o que cada número significa.

#!/usr/bin/perl
# Referencia: http://pt.wikipedia.org/wiki/Numerologia

# Soma os digitos
sub soma {
my $numero = 0;
my (@digitos) = split(//, $_[0]);

for (my $i = 0; $i < @digitos; ++$i) {
$numero += abs($digitos[$i]);
}

if ($numero >= 10) {
return &soma($numero);
} else {
return $numero;
}
}

# Tabela de numerologia
my $tabela = ({
a => 1, b => 2, c => 3, d => 4, e => 5, f => 6,
g => 7, h => 8, i => 9, j => 1, k => 2, l => 3,
m => 4, n => 5, o => 6, p => 7, q => 8, r => 9,
s => 1, t => 2, u => 3, v => 4, w => 5, x => 6,
y => 7, z => 8,
});

# Solicita o nome
my $nome = undef;
do {
print "Digite seu nome completo, sem acentos ou cedilha:\n";
$nome = lc(<STDIN>);

chop($nome);
} while ($nome eq '');

# Solicida data de nascimento
my $nasc = undef;
do {
print "Digite sua data de nascimento, ex.: 10\/11\/1982\n";
$nasc = lc(<STDIN>);

chop($nasc);
} while ($nasc eq '');


# Divide as letras e calcula a soma
my (@letras) = split(//, $nome);
my $numero = 0;

for (my $i = 0; $i < @letras; ++$i) {
next if $letras[$i] eq ' ';
$numero += $tabela->{$letras[$i]};
}

# Exibe o resultado
print "Seu numero: " . &soma($numero) . "\n";
print "Sua licao de vida: " . &soma($nasc) . "\n";

sábado, julho 07, 2007

Novo: Slackware 12

Isso aqui vai acabar virando blog de notícias de atualização de distros :P Mas pelo menos tô voltando à ativa, rsrs

Pois bem, o Slackware 12 veio essa semana e algumas mudanças são notáveis. De acordo com o anúncio oficial, o Slackware agora vem com dois tipos de kernels: kernels grandes, que vêm com todo tipo de driver possível, geralmente pra facilitar a instalação do sistema, além do kernel genérico, que tem os drivers compilados como módulo (a forma mais comum de kernel).

Outra novidade é que ele agora vem com o HAL (Hardware Abstraction Layer), aumentando a habilidade Plug and Play do Slackware.

A nova versão atualiza também a maioria dos pacotes: kernel 2.6.21.5, KDE 3.5.7, X.Org 7.2.0, gcc 4.1.2, Apache 2.2.4, etc.

Para a lista completa das mudanças, leiam o anúncio oficial.