How to become a good developer?

Algumas dicas para nos tornar-mos melhores programadores...

Resumo:
1. Attitude.
2. Read the books.
3. Code! Code! Code!
4. Try out tools and utilities that make your work easier.
5. Try out new technologies.
6. Look how other guys develop systems.
7. Everything that shines is not gold.
8. Participate in communities.
9. Visit technology events.

Cache em AJAX

Após o desenvolvimento de um controlo de autenticação todo boneco, com as necessárias preocupações em termos de segurança, usando uma estratégia de desafio-resposta deparei-me com um problema. Um utilizador depois de fazer login e logout já não conseguia fazer login novamente! wow, o que é que se passa...

Como desconfiei logo do que se passava encontrar a solução foi rápido. Mas voltando ao problema, o segundo pedido do desafio era realizado para o mesmo URL que o primeiro, logo, como o browser tinha a resposta a esse pedido em cache nem fazia o pedido ao servidor... conclusão, retornava o mesmo desafio que, naturalmente, já não era válido do ponto de vista do servidor e o processo de login falhava mais à frente.

Solução: meti um parâmetro adicional na queryString só para o pedido ser "diferente" (usei a data actual do sistema do cliente)