Twitter

@felipernb: RT @osuporte: Os Santos meteram 10 x 0 nos Navi. Será o fim precoce - antes de 2012 - de Pandora?

(Updated 10 hours, 7 minutes ago)

Browsershots.org – Teste seu site em vários browsers

Posted: January 31st, 2008 | Author: Felipe Ribeiro | Filed under: browsers, desenvolvimento de software, web 2.0, webdesign | Tags: , , , | No Comments »

A dica do dia é: http://browsershots.org, um site onde você pode obter o screenshot do seu site nos mais diversos browsers em diferentes versões e SO’s. Realmente muito bacana!

Update: E para pegar um shot da pagina completa, tem esse serviço web bem bacana


O Mantra das REGEX – As 8 Expressões Regulares que precisamos saber.

Posted: January 29th, 2008 | Author: Felipe Ribeiro | Filed under: apache, desenvolvimento de software, php, regex | Tags: , , , | No Comments »

RegexVocê tem medo de REGEX!? Eu também!

Nos últimos tempos tenho lidado bastante com REGEX editando regras do Apache mod_rewrite e com a classe que publiquei no PHPClasses, a SiteMapGenerator Tabajara, que se propõe a gerar um mapa do site em xml no padrão estabelecido pelo Google para melhorar a indexação.

Mas depois de tirar onda da galera do Perl no post anterior, vou exaltar a importância que expressões regulares têm nas nossas validações, e para isso vou citar as 8 expressões regulares que todo programador Web deveria saber (exemplos em PHP, mas são válidos para qualquer linguagem com suporte a PCRE).

Validação de nomes de usuário

4 a 28 caracteres alfanuméricos e underscores:


$string = "userNaME4234432_";
if (preg_match('/^[a-z\d_]{4,28}$/i', $string)) {
echo "exemplo 1 ok.";
}

Validação de números de telefone

(##) ####-#### ou ##-####-####

$string = "(32) 5555-5555";
if (preg_match('/^(\(?[0-9]{2}\)?|[-. ]?)[ ][0-9]{4}[-. ]?[0-9]{4}$/', $string)) {
echo "exemplo 2 ok.";
}


Endereços de e-mail

foo@bar.foo

$string = "first.last@domain.co.uk";
if (preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.]

[a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',
$string)) {
echo "examplo 3 ok.";
}

CEPs

#####-### ou ########

$string = "55324-432";
if (preg_match('/^[0-9]{5,5}([- ]?[0-9]{4})?$/', $string)) {
echo "exemplo 4 ok.";
}

Endereços IP

255.255.255.0

$string = "255.255.255.0";
if (preg_match('^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$'

, $string)) {
echo "exemplo 5 ok.";
}


Código de cores RGB em Hexadecimal

#FFFFFF, #FFF, FFF, FFFFFF

$string = "#666666";
if (preg_match('/^#(?:(?:[a-f\d]{3}){1,2})$/i', $string)) {
echo "exemplo 6 ok.";
}

Comentários de múltiplas linhas

/* Lorem
Ipsun
dolor*/


$string = "/* commmmment */";
if (preg_match('/^[(/*)+.+(*/)]$/', $string)) {
echo "exemplo 7 ok.";
}

Datas

DD/MM/YYYY ou MM/DD/YYYY

$string = "30/01/2008";
if (preg_match('/^\d{1,2}\/\d{1,2}\/\d{4}$/', $string)) {
echo "exemplo 8 successful.";
}

Esses exemplos foram retirados do site Devolio[1] , porém algumas expressões eu alterei para ajustar aos padrões brasileiros de telefone e cep. Se por acaso fiz alguma besteira, peço que um REGEXPERT comente e corrija! E no segundo link[2] um validador de expressões regulares.

[1] 8 Practical PHP Regular Expressions – Devolio
[2] Perl Compatible Regular Expression Tester


Voltando das férias

Posted: January 29th, 2008 | Author: Felipe Ribeiro | Filed under: php | Tags: | No Comments »

Depois de férias relaxantes, longe (mas nem tanto) das “geekices” habituais,com a pele despelando porém “da cor do pecado”, vamos voltando devagarinho!

E só pra continuar na descontração, vou publicar uma imagem que vi hoje numa comunidade the Trolls xiitas de PHP que participo! :D

fuck mod_perl - PHP Programming with attitude


Não acredito em profissionais "Bombril" na Web

Posted: January 3rd, 2008 | Author: Felipe Ribeiro | Filed under: desenvolvimento de software, web 2.0, webdesign | Tags: , , | 3 Comments »

Com o aumento da complexidade de recursos dos sites na Web, o termo Webmaster entra cada vez mais em extinção.

Antigamente, quando tudo era mais simples e feio, com sites em HTML estático e cheio de GIFs piscantes, era comum ter um cara que era responsável por tudo, o webmaster.

Mas agora é cada vez mais difícil ter conhecimento suficiente para ser um bom designer e bom programador, eu me atrevo a dizer que seja impossível. E vou justificar…

As duas áreas podem ser extremamente profundas, design não é só fazer efeitos legais no Photoshop, nem programação é apenas fazer um CRUD em drag’n'drop Net dot Net

Um profissional de design precisa ter conhecimentos teóricos na área, saber criar conceitos, prezar pela usabilidade, ergonomia, sem esquecer da beleza e do conforto do usuário com cores e formas adequadas, e isso requer estudo, não é só questão de ter um “bom gosto”. Fora que muitas vezes a arte que é mostrada no site de uma empresa é a continuação de toda uma campanha que ocorre também fora do “cybermundo”.

E um profissional de desenvolvimento de software precisa conhecer algoritmos, padrões de projetos, tecnologias diversas, técnicas de otimização de performance, segurança, etc.

Existem pseudo-profissionais que se auto-intitulam web designers e programadores, e eu sinceramente não acredito nisso. Um programador pode até escolher um formato bacaninha pra mostrar sua informação e tal, mas está longe de ser um designer profissional, e um designer pode até colocar um reloginho em JavaScript mas também está longe de ser um programador.

São mundos bem diferentes com profissionais de perfis diferentes que se juntam na Web, e para que essa junção seja mais harmoniosa, existe um cara que é híbrido, é o programador de interfaces, caras que sacam um pouco de cá e um pouco de lá e que trabalham na equipe para fazer com que as coisas encaixem mais perfeitamente, pois nem sempre um designer vai saber XHTML, CSS, e etc. Em muitos casos ele sabe criar e desenhar, o programador de interfaces que se vira para adaptar a arte dele para o mundo da Web e interagir com o sistema que é criado pela equipe de programação. Mas também há casos que designers desempenham essa função e há outros em que o programador o faz, cada caso é um caso… mas ainda não existe profissional completo que cuide de tudo, e se faz não é profissional ou não faz bem feito como deveria.

P.S.: Quero avisar aos poucos, porém queridos, leitores desse blog que meu aniversário é domingo, e caso queiram presentear esse que vos escreve, sintam-se a vontade! :-D Aqui vai um endereço que talvez possa lhe ajudar: http://feliperibeiro.com/wishlist