Hoje aprendi um recurso muito interessante no PostgreSQL, criação de índices com função. Com este recurso é possível fazer consultas utilizando índices mesmo quando você estiver utilizando funções.
Vamos para um exemplo simples:
clientes: nome, sobrenome, email, cidade, etc..
Utilizando os filtros da tua aplicação você normalmente utilizaria o filtro abaixo para procurar um cadastro.
SELECT * FROM clientes WHERE nome ilike 'Nei' AND sobrenome ilike 'Santos' ORDER BY nome desc LIMIT 20
Devido a utilização da função ILIKE, o postgres não irá utilizar os índices que temos na tabela nome e sobrenome.
Então como resolver essa consulta já que não sabemos como o cliente digitou o nome.
A solução é criar índices para campos com função:

Hoje encontrei um artigo muito interessante na smashingmagazine.com escrito por Christian Heilmann um desenvolvedor que trabalha para o Yahoo Developer Network.
O título é "Seven JavaScript Things I Wish I Knew Much Earlier In My Career" que na tradução fica "7 coisas em javascript que eu queria saber muito antes na minha carreira".
O texto possui algumas manhas na programação javascript que nós precisamos saber para desenvolvermos códigos com qualidade em javascript.