Mais um blog inútil.

Abril 27, 2008

Amadores

Arquivar em: Drama, Useless, coding, fail — dcoder @ 1:10

O FiSH é uma valente seca para se compilar - é um facto. Em particular quando se fala em compilá-lo num SO opensores numa arquitectura não x86. A biblioteca MIRACL que aquilo usa é essencialmente o problema aqui. Portanto a escolha lógica é acabar com esta biblioteca e usar uma ligeiramente mais decente.

(more…)

Abril 17, 2008

Cracking X-Chat — part ii

Arquivar em: Cracking, Drama, Uncategorized, Useless, coding, fail — dcoder @ 23:21

Aparentemente saiu uma nova versão do xcrap, 2.8.7a. Eu reparei nisto e lembrei-me que houve um post do falso ha uns tempos que falava de como crackar opensores. Infelizmente, não tenho muito tempo por isso vou ser sucinto.

(more…)

Fevereiro 17, 2008

Wonder Shaper GUI

Arquivar em: Linux, coding — amg @ 16:20

Isto é um GUI que fiz para oferecerem às vossas namoradas para elas configurarem o wonder shaper sem terem muito trabalho.

Ler o README para mais detalhes.

Wonder Shaper GUI

Janeiro 29, 2008

Gerador de Galeria de imagens HTML (Python)

Arquivar em: Work, coding — amg @ 18:28

É um script que fiz em Python para gerar uma galeria de fotos em html a partir de um directório com fotos, pois precisava de o fazer porque tinha um directório com várias fotos e “colocar” uma foto de cada vez em código html é trabalhoso, por isso aproveitei uma biblioteca de Python e pus mãos à obra.

A minha primeira dificuldade foi certamente criar uma thumbnail da imagem em questão, por isso dei uma visita ao Google (http://www.google.pt) e rapidamente encontrei o que queria: Python Imaging Library (http://www.pythonware.com/products/pil/). É óbvio que não sabia como trabalhar com este, então disse a mim mesmo: RTFM, fi-lo e em questão de minutos já sabia minimamente o que queria.

Primeiro de tudo tive que indicar que imagem abrir, para isto atribuí a uma variável o resultado de

Image.open(imagem)

Em que imagem será uma variável com o caminho da foto/ficheiro.

Também declarei outra variável: THUMBSIZE, em que atribuí a esta a largura e altura da thumbnail (230×153), mais propriamente o valor 230,153. Após isto utilizei a função

Thumbnail

da biblioteca PIL (Python Imaging Library) para a criar, que tem a seguinte sintaxe:

Img (esta foi uma variável criada por mim em que terá como valor o resultado de image.open(imagem) –

img.thumbnail(THUMBSIZE)

OK. Já tenho a thumbnail da imagem, agora tenho que a salvar… mas há um problema: Imaginemos que o utilizador do script já o correu anteriormente, mas agora acrescentou mais imagens, só que as thumbnails das imagens já existentes encontram-se no directório… como fazer para não criar uma thumbnail de uma thumbnail?

É simples, basta utilizar um if para verificar se as primeiras 5 letras da variável imagem são constituídas pela palavra thumb

If imagem[0:5] != “thumb”:

Após esta verificação, caso o resultado seja Verdadeiro e não Falso, o script vai executar o que vem a seguir a esta condição:

Img.save(’thumb.’ + str(imagem), “JPEG”)

Ou seja, o ficheiro ficará: thumb.Foto1.JPG note-se aqui o uso da função str() para converter o valor de imagem para uma string (cadeia de caracteres alfanuméricos). Basicamente a função save do PIL é para salvar num ficheiro as alterações feitas à imagem.

E pronto, temos o problema de criar as thumbnails resolvido.

Aqui abaixo segue-se o código completo do script.

galeria.txt

Tive que o colocar num ficheiro porque não sei mandar o wordpress ignorar tags html.

Nota: As tags html do código não estão terminadas porque fiz isto um pouco à pressa.

Janeiro 20, 2008

Conversor de Binário para Decimal

Arquivar em: Useless, coding — amg @ 21:34

O sadik pediu-me para não postar mais, mas vou postar…

Este é um programinha que fiz o ano passado em Programação (Pascal), era para se utilizar operações com strings mas utilizei o método (010 = 0 * 2 ^ 0 + 1 * 2 ^ 1 + 0 * 2 ^ 2 = 2)
O código é estranho, até usei uns ifs que não sei porquê, mas resolveram os problemas que tinha (caso o último número fosse 0 acrescentava um valor: 010 ficava 3, 0100 ficava 5, mas já 011 ficava 3 e 0101 ficava 5):

Program bin_dec;

function expoente(x,y:longint):longint;

var

z,n:longint;

begin

n := x;

for z := 2 to y do

n := n * x;

expoente := n;

end;

var

num, aux, multi, digito, valor, soma:longint;

exp:integer;

begin

write(’Num (bin): ‘);

readln(num);

multi := 10;

aux := num;

exp := 0;

soma := 0;

while (aux <> 0) do

begin

digito := aux mod 10;

aux := aux div 10;

multi := multi * 10;

if (exp = 0) and (digito = 1) then

begin

soma := 1;

exp := 1;

end

else

begin

valor := expoente(2,exp);

exp := exp + 1;

soma := soma + digito * valor;

end;

end;

writeln(num,’(bin) = ‘,soma,’(dec)’);

readln;

end.

Podem testar com o FPC.

EDIT: Coloquei blocos de identação para o código ficar mais bonito.

Janeiro 11, 2008

Arvorezinha em Asus OLED

Arquivar em: Linux, Useless, coding — mirage @ 14:42

Não queria deixar de participar na saga das arvorezinhas (pena já não ser natal e fazermos pinheirozinhos). Aqui fica uma arvorezinha desenhada no OLED do Asus G1S, um lcd de 128×32 pixels e programável em Linux.

asusoled_arvorezinha.jpg

Arvorezinha em perl

Arquivar em: Useless, coding — devnull @ 12:51

Já que tamos numa de fazer arvorezinhas, aqui vai o meu one liner em perl
$i=1;while($i <=5 ) {print ‘*’ x $i++ . “\n”;}

Made on a Mac Powered by OpenBSD