Marcio Trindade

Javascript

Pjax

Não faz muito tempo que escutei falar de pjax uma técnica que une ajax + pushState e que o Chris Wanstrath do github difundiu criando o jquery-pjax, recentemente o Ryan Bates do railscts.com publicou um epsódio mostrando como você pode utiliza-la com o rails.

Você já deve ter visto a arvore de códigos (source tree) que o github utiliza, quando você clica em um arquivo ou diretório ele atualiza o conteúdo via ajax e altera a url pra que você possa copiar e mandar pra outras pessoas sem o uso de ancoras que hoje em dia é o uso comum. Isso mantém o histórico de navegação dos navegadores funcionando.


Coffee Script

Hoje eu dei uma olhada mais afundo na linguagem coffee Script. A linguagem é bem enxuta o que facilita a vida de quem precisa escrever muito código além de manter uma boa legibilidade para futuras manutenções mas é importante lembrar que coffee Script não é um Framework.

Eu não pretendo fazer deste artigo um mini-tutorial pra aprendizado, até por que já tem muita coisa no site oficial e o Fábio Akita já escreveu algo neste post o que pretendo abordar aqui são exemplos que não encontrei com muita facilidade.


Live Validations

Em meus últimos projetos utilizei o plugin live-validations que me facilitou trabalhar com as validações no lado do cliente. A lógica do plugin é passar a validação de seus models para js evitando assim posts desnecessários. Este funciona com jQuery ou Prototype No meu caso utilizei a jQuery e vou mostrar abaixo como é simples fazer isso.

jQuery - live-validations


Css Browser Selector

CSS Browser Selector Que atire a primeira pedra quem nunca usou um hack para acertar algum erro entre navegadores e é por este motivo que estou escrevendo este post.

Cansado de ficar fazendo sempre um css diferente para os navegadores resolvi facilitar a minha vida. Hoje quando desenvolvo acabo utilizando o safari como navegador principal, que ainda bem não tem muita diferença em relação ao Firefox, porém quando você passa para um navegador como o InternetExplorer a dor de cabeça aparece e o Rafael Lima resolveu dar uma mãozinha criando o script CSS Browser Selector escrito em javascript que é super simples e minimalista que adiciona algumas classes na tag html de acordo com o navegador, sistema operacional e engine que você está utilizando.


Jammit uma nova opção pra compactar arquivos

A um certo tempo eu venho falando do Jammit uma gem que me chamou a atenção e mudou minha forma de trabalhar com a parte de interface de meus projetos.

Praticamente a mesma coisa que o asset_packager que muitos estão acostumados a utilizar, porém ha algumas diferenças que me fizeram mudar como por exemplo você ter a opção de escolher qual compressor usar o YUI Compressor ou o Google Clouser que pode gerar um arquivo até 40% menor. Outra vantagem é no css que ele utiliza data-uri (um código dentro de um padrão que quando lido pelo navegador gera a imagem dinamicamente) em todas as imagens utilizadas em seu css que estão dentro do diretório embed e que menores do que 32 KB.


Google Analytics lança monitoramento asincrono

O pessoal do Google continua inovando e desta vez lançaram uma nova versão do Google Analytics que trabalhar de forma asincrona. Ta mais o que isso quer dizer? Isso quer dizer que agora as métricas não vão mais atrapalhar no tempo de carregamento do seu site, seu projeto não vai precisar esperar a requisição enviada para o Google e com isso a métrica fica mais rápida, mais precisa e seu site carrega mais rápido também, afinal as coisas passam a acontecer agora ao mesmo tempo.

Abaixo deixo um exemplo de como você pode atualizar o seu código para esta nova versão! (exemplo retirado do blog do Google Code citado acima).


Google lança ferramenta para tradução de sites

Quem visitou meu site recentemente pode perceber que eu adicionei uma ferramenta de tradução do Goole que faz a tradução dos textos e o substitui por Javascript sem precisar recarregar a página.

No escritório da DBurns nós já implementamos um site com tradução para outros idiomas, porém como no modo antigo o site acabava ficando desconfigurado e as requisições ajax acabam não funcionando mais. Porém com esta nova ferramenta este problema não ocorre mais e a formatação do site se mantém como no


Helper para DataTables

Vasculhando pelo site da jQuery encontrei este pluguin DataTables que me chamou a atenção e então procurei aplicar o mesmo na parte administrativa no meu blog. Inicialmente criei um partial para instanciar o plugin javascript com o seguinte código:


Melhorar a velocidade da sua Aplicação

Hoje vou traduzir um artigo do Erik Andrejko falando sobre como melhorar a velocidade da sua aplicação Rails.

Leia o original aqui

Seus usuários ficam felizes quando não notam a velocidade que a sua aplicação responde. Se eles notarem esta velocidade é porque provavelmente está muito lenta. Muitas melhorias acontecem fora da sua aplpicação Rails.


Versão para Iphone

Mais uma novidade para o blog. Desta vez foi a versão para o iPhone. Como o blog está utilizando “page_cache” não quis mudar e fazer uma versão só pra iPhone então fiz o mais simples, apenas trabalhei com javascript e css.

A primeira coisa que eu fiz foi identificar se o usuário estava vindo de um iPod ou iPhone procurando pelas palavras “Safari” e “Mobile” como sugere a própria Apple.