20/09/2005
Novo site do Colégio!
Publiquei hoje o novo site do Colégio Salesiano Itajaí, um site totalmente administrável (até o título pode ser mudado via formulários) que usa a linguagem PHP e o banco de dados MySql. O site também segue os padrões web, mesmo com formulários rich text que às vezes deixam o site pouco semântico (é que os monitores do Colégio devem poder atualizar) e está disponível em: salesianoitajai.g12.br.
A notícia de estréia da página está disponível aqui e conta com um lindo screenshot do meu Fluxbox com Mrxvt e o Vim com três splits. Embora o site já esteja publicado, ainda tenho que arrumar alguns detalhes como por exemplo o Sitemap que eu cito nesta notícia.
Uma coisa bem legal que eu coloquei no site foi um JavaScript, usando a função addGlobalStyle do Dive into Greasemonkey, que nos Mozillas (ereg("Gecko/", $_SERVER["HTTP_USER_AGENT"])) faz o site ficar maior se o usuário usar uma resolução igual ou maior a 1024x768. Dá pra fazer pra todos os navegadores, mas eu sou meio newbie em JavaScript e por isso só usei esse código do Greasemonkey, que só funciona nos Mozillas mesmo... Mas o resultado ficou ótimo!
Ontem o Sr. Paulo Matias me ensinou como trabalhar com operadores bit-a-bit no C. Achei muito massa! Agora comecei até a economizar fazendo:
numero = outronumero << 1;
... ao invés de simplesmente:
numero = outronumero * 2;
... para meus programas serem mais rápidos! Hehehe
Fiz uma função que converte de decimal para binário, e depois vou postar aqui.
Observação: Tenho que descobrir porque os emoticons não funcionam quando tem código... Quer dizer, descobrir eu já descobri, mas preciso ver como eu faço pra resolver de forma boa essas expressões regulares...
Editado!
Corrigi o problema... Confira abaixo o novo trecho de ERs da função de emoticons, onde $o é o vetor de origem (com as carinhas originais), $d é o vetor de desgino (com o <img src...) e replace() é uma função que eu criei para substituir os emoticons:
<?php if (!ereg("<code", $texto)) { $texto=replace($o, $d, $texto); } else { preg_match_all("/<\/code>(.+)<code/sU", $texto, $mat1); for ($i=0; $i<sizeof($mat1[1]); $i++) { $texto=str_replace($mat1[1][$i], replace($o, $d, $mat1[1][$i]), $texto); } preg_match("/^(.+)<code/sU", $texto, $mat2); $texto=str_replace($mat2[1], replace($o, $d, $mat2[1]), $texto); $rev=strrev($texto); //Tenho medo do PHP5.0.5 preg_match("/^(.+)>edoc\/</sU", $rev, $mat3); //Nossa, que código louco! $rev=strrev($mat3[1]); //Repito... Tenho medo do PHP5.0.5 $texto=str_replace($rev, replace($o, $d, $rev), $texto); } ?>
Ficou feio, né? Não consegui pensar em outra coisa mais fácil que usar o strrev() ali... :blink:
Compare Preços de: iPod, home theater, plasma, lcd, câmeras digitais, games, ps3
18/09/2005
MRxvt e Controle Anti-flood
Formatei minha partição Linux e instalei o novo Slackware 10.2 para ver quais eram as novidades...
Ainda estou configurando o sistema, mas ele já está bastante estável, com Kernel 2.6, Grub, XDirectFB em desenvolvimento e hoje testei um programa que merece um post especial aqui no blog chamado MRxvt. É um terminal que abre na velocidade do Xterm, mas tem os recursos do Konsole do KDE! Hehehe...
Abas, transparências, entre outras coisas de uma forma leve que eu nunca tinha visto. Eu descobri o programa quando eu e o Thotypous estávamos pensando em baixar o source do Gnome-Terminal e tentar modificar para deixar bem levinho e só com abas, ou pegar o xterm e implementar abas...
Mas esse programa é simplesmente fabuloso. Acabou com nossos problemas... Baixem aqui!
O Hélio (a.k.a. hlegius) me deu uma idéia bastante útil que é um controle anti-flood para os comentários do meu site... Já implementei usando sessões... Valeu Hélio!
Bom... Por enquanto é só!
Resolvi agora postar mais aqui, e fazer posts menores. Fiz várias mudanças aí no lado direito do site nos últimos dias (e no meio também), deixando o site mais semântico além de mais atualizado e "correto". Também atualizei a minha biografia (colocando até o MRxvt) e acho que vou dar uma reformulada no sistema de BBCode (ER) do meu blog, porque quando eu coloco um código depois não funciona mais os emoticons embaixo dele.
Compare Preços de: notebooks, acer aspire, hp pavilion, computadores, pentium 4, nintendo wii, ps3, celulares, câmeras digitais
16/09/2005
De volta à resolução de problemas
Hoje, depois de umas férias de dois meses, resolvi um problema lógico do USACO Training Gateway: o Superprime Rib é um problema bem simples em que precisa-se determinar os primos de N dígitos (com N máximo = 8 ) que, tirando o último dígito, continuam sendo primos. A solução é trivial, uma função recursiva bastante simples que se auto-explica no meu código, que está disponível aqui. O problema passou de segunda porque na primeira, por falta de hábito, eu tinha colocado scanf e printf ao invés de usar o sistema da USACO onde deve-se usar arquivos de entrada e saída.
Agora para eu ir para a seção 2 do USACO Training Gateway falta só o programa Checker Challenge, que parece ser complicado.
Instalei os pacotes do Slackware 10.2, que saiu essa semana, no laptop. Não tem nenhuma grande mudança, mas é sempre bom estar com os programas atualizados...
O Paulo Matias (Thotypous) me convidou para fazer parte da equipe de desenvolvimento da distro Guaranix, consertando alguns bugs do XDirectFB (que eu citei aqui). Acho que irei pegar um trabalho com a Meetweb também (o Hugo Dias, para quem eu fiz o serviço da Coalizão Antituberculose me convidou) e estou acabando o site do Colégio Salesiano, que é totalmente administrável em PHP e usa um banco de dados MySql. Ele deve sair semana que vem...
Dia 24 é a segunda fase da Olimpíada Regional de Matemática. Essa semana fiz a folhinha de treinamento e dos seis problemas, consegui fazer cinco (na verdade, alguns problemas - ou todos - eram repetidos do ano anterior e por isso fica mais fácil, porque eu já lembrava o caminho).
Compare Preços de: iPod, home theater, plasma, lcd, câmeras digitais, games, ps3
Assine via RSS
Assine gratuitamente o meu blog e receba todas as atualizações na hora, em seu agregador de feeds favorito.
Busca no blog
Escreva palavras-chave para buscar e clique em Pesquisar.
Veja também...
Blogs de minha autoria
- 1001 Gatos de Schrödinger (discordianismo e mindfuck)
- Algoritmos computacionais (estudo para olimpíadas e aprendizagem sobre lógica de programação)
Artigos por mês
- May 2008
- April 2008
- February 2008
- December 2007
- November 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- October 2006
- September 2006
- August 2006
- June 2006
- May 2006
- April 2006
- March 2006
- February 2006
- January 2006
- December 2005
- November 2005
- October 2005
- September 2005
- August 2005
- July 2005
- June 2005
- May 2005
- April 2005
- March 2005
- February 2005
- January 2005
tiagomadeira.net © Todo o conteúdo deste blog, exceto quando especificado o contrário, está licenciado sob uma Licença Creative Commons por Tiago Madeira.
Os comentários são de responsabilidade de seus respectivos autores.

