Mudei!

Janeiro 16, 2008

Assinei no DreamHost e agora tenho meu próprio domínio! Oba! Atualizem seus bookmarks [hahaha].

www.eberfdias.com/blog

designup

Não sei porque, no domingo tive a idéia de fazer um site de empregos pra designers. No domingo mesmo já fiz uns desenhos de como poderia ser a interface, de como as coisas poderiam acontecer, fiz uns layouts no Illustrator e na segunda mesmo comecei a escrever o site com a ajuda do CakePHP. Assim nasceu o designup! O site todo, contando todas as horas de trabalho, deve ter demorado, no máximo, um dia e meio pra ser feito, o que me lembra este artigo que despertou meu interesse pra aprender Cake.

Enfim, o site é muuuito simples e eu gostei de fazer ele porque aprendi muitas coisas a respeito de javascritp e ajax. Estou lendo este livro aqui, que tem me ajudado muito, inclusive a reconhecer que meu código javascript está bem mal feito, super obstrutivo e etc. Com o tempo vou tentando arredondar o site, deixar tudo mais legal. O site tem umas características bem legais, tipo:

  • O refinamento da lista acontece via ajax. Quase ninguém percebe, mas quando você muda algo nos select boxes, onde está escrito “Refinar por…” muda de texto para “Aguarde…”. Eu acho que preciso trocar a cor daquilo, se não ninguém vai perceber e vai ficar esperando ser direcionado pra outra página ou coisa assim.
  • Quando você vê mais informações sobre alguma vaga, o título da página muda, como se você tivesse entrado no permalink da vaga.
  • Todas as vagas tem permalinks, mas elas se comportam exatamente da mesma maneira como a página principal, ou seja, você pode refinar suas buscas que a lista vai ser atualizada, o título da página muda também e etc e tal.

Bom, acho que é isso. O que você acha? Fiz este site sem nenhuma intenção de ganhar dinheiro com ele. Ele é totalmente gratuito e não tem banner em lugar nenhum nem nada, por isso eu espero que a comunidade de designers façam bom proveito dele e que as visitas cresçam cada dia mais. Conto com a sua ajuda pra que isso aconteça!

Depois venho aqui falar mais sobre aCoruja.com. A nova versão, feita em Cake, já está on-line! Vá lá ver!

Testando o Flock…

Dezembro 7, 2007

Bom, tá todo mundo falando nele, então eu tive que tentar também né?

Eu tenho uma queda por programas que acabam facilitando todas as coisas. Já tentei usar IM’s que agregam vários IM’s juntos, mas as minhas experiências até agora não foram das melhores. como a internet em geral é uma coisa mais flexivel, acho que um browser que me ajude a integrar todas estas coisas não será de todo ruim, e até agora estou gostando.

Neste exato momento, estou escrevendo este post via Flock [ele possui um editor pra blogs] e já sincronizei meus favoritos do del.icio.us e minha conta no Facebook. Será que existe algo pro Ning?

Bom… Preciso instalar minhas extensões depois pra ver se não acontece nenhuma incompatibilidade, mas até agora, to gostando bastante! Se quiser experimentar, vá ao site do Flock, baixe e instale! Sem dor!

Blogged with Flock

INVÁLIDOS

Shopify - 2 erros
Virb.com - 3 erros
del.icio.us - 12 erros
Technorati - 15 erros
Orkut - 16 erros
Blogger - 19 erros
Purevolume.com - 27 erros
Flickr - 30 erros
Basecamp - 34 erros
Facebook - 36 erros
Google Brasil - 39 erros
Yahoo! - 47 erros
Live.com - 62 erros
StumbleUpon - 75 erros
YouTube - 78 erros
Digg - 90 erros
MySpace - 118 erros

VÁLIDOS

WordPress.com
E só…

Claro que devem existir muitos outros sites válidos. Só não são os que estão logo na lista acima.

Acho que não precisamos ser xiitas com relação ao numero de erros no seu código, desde que ele funcione e funcione bem nos principais browsers disponiveis atualmente, mas pow, 118 erros é sacanagem né?

Parabéns pra galera do WordPress!

Tá, pode até parecer um exagero, afinal, não é a toa que temos por aí sistemas conceituados como phpBB, vBadvanced e, mais ultimamente, o Vanilla, que são fóruns muito legais. Mas eu adoro coisas simples, fáceis, sem enrolação, abstratas e totalmente extensíveis, por isso adorei o CruciForum.

Ele tem este nome porque diz ser um “Fórum Crucial”, ou seja, só possui aquilo que é extremamente básico pra um fórum funcionar. No caso do CruciForum isto quer dizer que qualquer um pode adicionar e responder tópicos livremente, sem cadastros chatos nem nada! Imagine que o CruciForum é como se fosse um blog muito básico, onde qualquer um coloca seus posts e qualquer outra pessoa pode comentar!

E apesar desta idéia parecer estranha numa época em que spams são vastamente propagados por aí, o CruciForum tem suporte ao sistema Askimet de prevenção contra spams! Quem usa WordPress já conhece o Askimet. É um software desenvolvido pela mesma empresa criadora do WordPress que reconhece e marca mensagens que sejam spams. Deste jeito, ninguém vai poder adicionar conteúdos duvidosos no seu fórum.

Outra grande característica do CruciForum e que acabou me levando a um outro grande sistema on-line foi a utilização do sistema Gravatars para exibir imagens dos autores. Gravatars é um acrônimo para “Globally Recognized Avatars” ou “Avatares Globalmente Reconhecidos”. É um site onde você pode anexar seu email a diferentes imagens, que podem ser resgatadas por sites que utilizam códigos especiais pra reconhecer estas imagens simplismente pela informação do seu endereço de email, ou seja, você não precisa de nenhum registro para colocar um avatar bonito de até 80×80 pixels nos posts do seu fórum.

A instalação do fórum é a coisa mais ridícula do mundo e um dos motivos pra isto é que ele não utiliza nenhum banco de dados. Você baixa um único arquivo php, executa ele no servidor, numa pasta com CHMOD 777 e pronto! Ele gera uma série de arquivos e o fórum já está pronto pra rodar. Aí vão uns screenshots:

  1. Tela da primeira vez que o script é executado…
  2. Tela seguinte, logo após a instalação estar completa e o fórum pronto pra uso…
  3. Tela principal do fórum, com a listagem de posts…
  4. Onde acontece o envio dos posts!

Os arquivos gerados são muito simples, então fica fácil criar um tema personalizado, adiconar funções javascript, um css diferenciado e tudo mais, enfim, ele é totalmente extensível, “o fórum dos sonhos”! Claro que não vai servir pra qualquer tipo de site, mas no geral, acho que é totalmente suficiente e eficaz.

Você pode ver um “demo” do fórum aqui! Muito fácil de usar. Ainda existem algumas pendências como a ineficiência do cookie que guarda suas informações pessoais [pra evitar você de ter que digitar os mesmos dados sempre], mas Stuart Langridge, criador do CruciForum e figurinha carimbada do mundo do desenvolvimento pra web, parece estar sempre mexendo aqui e ali no sistema, então novas versões aprimoradas estão sempre aparecendo por aí. Nota 10 [apesar dos bugzinhos]!

Eu sei que pra muita gente isso deve ser óbvio, mas pra mim não era. Eu estava construindo mais uma função de envio de mensagens por um formulário na nova versão do site d’aCoruja.com [que está sendo feito em CakePHP] e queria validar os dados do formulário. O CakePHP tem uma boa função de validação de formulários, mas isso só funciona se associado a um “Model”, e eu não tinha um “Model” pro meu formulário de envio de email [embora eu pudesse ter, deixando o modelo sem associação a nenhuma tabela de banco de dados].

O problema aqui é que eu teria que gerar a validação “on-the-fly”, dependendo do comportamento do usuário. Eu já havia feito algo similar antes e o código ficou feio e gigante, cheio de if’s…elseif’s…elseif’s e assim por diante, até que todas as comparações fossem feitas.

Foi então que perguntei no canal de IRC do CakePHP se era possível usar um parâmetro genérico em switch pra fazer as comparações que eu quisesse. Me disseram que usar switch(true) seria válido [para saber mais sobre a sintaxe básica de switch, clique aqui]. Deste jeito, eu não precisaria determinar apenas uma variável para comparação, e ir comparando as variáveis nos cases de acordo com a necessidade. Olha só como ficou meu código:


$captcha = $this->Session->read('captcha');
switch(true) {
	case (empty($this->data['User']['name'])):
		$this->Session->setFlash(MISSING_FIELDS);
		$this->User->invalidate('name');
		$this->render();
	break;
	case (!preg_match(VALID_EMAIL, $this->data['User']['email'])):
		$this->Session->setFlash(MISSING_FIELDS);
		$this->User->invalidate('email');
		$this->render();
	break;
	case (empty($this->data['User']['msg']));
		$this->Session->setFlash(MISSING_FIELDS);
		$this->User->invalidate('msg');
		$this->render();
	break;
	case ($this->data['User']['captcha'] != $captcha);
		$this->Session->setFlash(MISSING_FIELDS);
		$this->User->invalidate('captcha');
		$this->render();
	break;
	default:
		$to = $data['User']['email'];
		$subject = 'aCoruja.com - Contato Via aCoruja.com';
		$message = $this->data['User']['msg'];
		$headers = "From: ".$this->data['User']['name']." data['User']['email'].">\r\n";
		if (mail($to, $subject, $message, $headers)) {
			$this->Session->setFlash('Seu e-mail foi enviado com sucesso!');
			$this->redirect('/users/view/'.$id);
		} else {
			$this->Session->setFlash('Ocorreu um erro no envio de sua mensagem. Tente novamente ou entre em contato conosco!');
			$this->redirect('/users/msg/'.$id);
		}
	break;
}

Ah sim! Existe também a vantagem de que o switch é um pouquinho mais rápido que o if. Nada de demais no entanto! Qualquer dúvida ou sugestão, é só comentar! Abraços!

Tempo pra sonhar…

Novembro 2, 2007

Será que é a sociedade? Esse mundo capitalista que nos apressa e nos lança no mercado mesmo sem um bom preparo… Ou o governo que nos enche de insegurança, nos obrigando a preparar tudo, e trabalhar, trabalhar, pra então podermos descansar em paz e em segurança? Ou somos nós mesmos que, educados assim, simplismente não sonhamos mais e nos conformamos com o mundo “do jeito que é”?

Existem muitos sonhos [ou idéias] pairando pelo ar, esperando que alguém preste atenção em uma delas pra tornar sua, mas agente tá muito ocupado fazendo outras coisas, ou muito inseguros pra arriscar. Quem déra pudessemos ser sempre como crianças, tendo em quem [ou no que] confiar [pais, amigos, o governo, Deus?] e se arriscar. Mas o mundo é cruel demais e ninguém quer “sair na chuva pra ver se molha”. A capacidade de realmente seguir um sonho ou uma idéia até o fim, independente do resultado, parece ser luxo para poucos.

Será que eu tenho em quem confiar? Será que posso me dar ao luxo de pular e seguir meus sonhos? Será?

Internet Explorer 7

Novembro 1, 2007

VIRBº atacando!

Outubro 25, 2007

Poisé, parece que o VIRBº está muito afim de lutar por um lugar ao sol no mundo das comunidades sociais. Os caras acabaram de fazer este post anunciando muitas mudanças no sistema. Eles estão, basicamente, reconstruindo tudo do 0.

Ao ler sobre coisas novas no novo VIRBº, descobri coisas muito bacanas no sistema atual. A mais legal delas é a possibilidade de retirar as customizações dos usuários clicando um simples botão. Ou seja, se você não gostou do jeito que seu amigo customizou a página dele, não tem problema, clique no botão e você terá o visual ‘default’. Não é genial?

Sobre as novas funcionalidades, você pode ver algumas coisas aqui, aqui e aqui! Lindo visual! Não vejo a hora da estréia! Não vejo a hora de ver todo mundo usando VIRBº!

[Que 'fanboy'...]

Braintest

Outubro 21, 2007

Vi este teste no blog do Anderson e resolvi fazer. Olha o meu resultado:

Eber, you are somewhat left-hemisphere dominant and show a preference for visual learning, although not extreme in either characteristic. You probably tend to do most things in moderation, but not always.

Your left-hemisphere dominance implies that your learning style is organized and structured, detail oriented and logical. Your visual preference, though, has you seeking stimulation and multiple data. Such an outlook can overwhelm structure and logic and create an almost continuous state of uncertainty and agitation. You may well suffer a feeling of continually trying to “catch up” with yourself.

Your tendency to be organized and logical and attend to details is reasonably well-established which should afford you success regardless of your chosen field of endeavor. You can “size up” situations and take in information rapidly. However, you must then subject that data to being classified and organized which causes you to “lose touch” with the immediacy of the problem.

Your logical and methodical nature hamper you in this regard though in the long run it may work to your advantage since you “learn from experience” and can go through the process more rapidly on subsequent occasions.

You remain predominantly functional in your orientation and practical. Abstraction and theory are secondary to application. In keeping with this, you focus on details until they manifest themselves in a unique pattern and only then work with the “larger whole.”

With regards to your career choices, you have a mentality that would be good as a scientist, coach, athlete, design consultant, or an engineering technician. You can “see where you want to go” and even be able to “tell yourself,” but find that you are “fighting yourself” at the darndest times.

As porcentagens foram as seguintes:

Auditory : 27%
Visual : 72%
Left : 68%
Right : 31%

Até que faz sentido, eu acho… =]