domingo, 13 de Novembro de 2011
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...
terça-feira, 08 de Novembro de 2011
Desde que a Phusion lançou o passenger eu sempre o utilizei em conjunto com o apache que já era familizarizado.
Quando trabalhei na Digital Pages me deparei com o pessoal utilizando o passenger com nginx, pra falar a verdade eu só tinha escutado falar deste servidor web e nem dei muita bola, além de que a aplicação caia de tempos em tempos e o log ficava poluído com algumas mensagens que o...
domingo, 06 de Novembro de 2011
Dando continuidade aos últimos artigos resolvi escrever sobre a Guard, uma gem que complementa de forma incrível o uso do spork e automatiza seus testes.
A Guard tem uma função parecida com a Watcher, que praticamente fica monitorando alterações em seus arquivos e pode executar deterinadas ações quando isso ocorre, porém ele é bem estruturado e aceita outras gems complementares pra facilitar...
quinta-feira, 29 de Setembro de 2011
Embalado um pouco com o último post que era pra melhorar a performance do seus test vou falar um pouquinho de outra gem que também melhora a performance, mas agora em modo de desenvolvimento.
A Gem ActiveReload do Robert Pankowecki faz uma boa diferença em projetos grande com muitos arquivos, pois quando você sobe um servidor em modo de desenvolvimento ele carrega todos os arquivos como se...
quarta-feira, 14 de Setembro de 2011
A um certo tempo ouvi falar da gem Spork criada pelo Tim Happer que trabalha como um servidor drb, funciona mais ou menos como um servidor web em modo development onde todo rails e as configurações como rotas, spec_helper, factories e outras são carregadas e persistem em memória, então quando você rodar seus testes usando o servidor drb não será necessário carregar todo o framework e sim apenas...
sexta-feira, 12 de Agosto de 2011
O Slim é uma gem desenvolvida por Andrew Stone pra criação de templates com foco na simplicidade como o HAML, mas que tem um foco mais voltado pra velocidade. A sintaxe dos dois são bem parecidas como maior diferença que no Slim você não precisa escrever o % na frente das tags, outra diferença que encontrei foi que ao meu ver o Slim está com uma organização um pouco melhor no código.
O Fred Wu...
terça-feira, 09 de Agosto de 2011
Recentemente o @leobessa fez um post no twitter com um link desta wiki que mostra como você consegue melhorar a velocidade dos seus testes que usam o Devise, no caso dele a melhora foi de 54.43 para 9.51 segundos.
terça-feira, 14 de Junho de 2011
A gem settingslogic é uma forma simples de consumir arquivos de configuração em uma applicação rails. Já faz alguns anos que utilizo nos meu projetos e recomendo pra quem ainda não a usa.
Esses dias trabalhei em um projeto e vi o pessoal usando uma constante CONFIG que carrega um arquivo config.yml dentro do environment.rb ou em um initializer qualquer. Basicamente o settingslogic tem a mesma...
segunda-feira, 13 de Junho de 2011
O Xavier Shay públicou a alguns dias um artigo mostrando um patch que ele fez alterando mais de 3000 linhas de código e 20 dependências do ruby 1.9.2 e conseguiu fazer o load do rails ficar aproximadamente 60% mais rápido. O que todos achavam estranho é o patch não ser aceito pelo core team, mas a de se entender que alterar tanta coisa como o que o Xavier fez é algo extremamente...
quinta-feira, 23 de Setembro de 2010
Quando você esta usando o ActiveRecord você acaba aproveitando os campos mágicos createdat e updatedat do Rails, mas uma coisa que poucos sabem é como ele lida com estes.
Quando você inicia a aplicação o Rails seta o time zone de acordo com a sua configuração, seja ela no application.rb no rails 3.x ou enveronment.rb no rails 2.x, porém este time zone não é utilizado no ActiveRecord por uma...
segunda-feira, 13 de Setembro de 2010
O formtastic é uma gem mantida pelo Justin French que pode ser considerado com um conjuto de helper que utilizam semântica HTML e facilita a criação de formulários em projetos Rails.
A instalação é bem simples, basta adicionar a linha abaixo no arquivo environment.rb.
quinta-feira, 18 de Março de 2010
Pra quem não conhece o resource_controller é uma gem que facilita a criação de CRUD em seus controllers criando até os 7 métodos básicos pra você dinamicamente (index, show, new, create, edit, update e destroy), se assemelha um pouco ao que o ActiveRecord faz com o model.
Você pode saber mais através da documentação ou no ótimo material disponibilizado pelo autor no github além de encontrar...
terça-feira, 23 de Fevereiro de 2010
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.
sexta-feira, 29 de Janeiro de 2010
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...
segunda-feira, 25 de Janeiro de 2010
Este mês como as coisas estão bem mais tranquilas então voltei a escrever artigos pro meu blog, melhorei algumas funcionalidades, alterei o layout além de trocar de servidor.
O layout Lightword Theme que utilizei é do Wordpress feito pelo @andreiluca que encontrei no blog dele, porém acabei extraindo o html dele e apliquei de forma parecida no meu blog que é desenvolvido em Rails. Para...
segunda-feira, 18 de Janeiro de 2010
O final do ano passado foi bem corrido pra mim, tive muitos posts pra escrever, porém sem tempo acabei deixando tudo acumular. Agora que estou um pouco mais folgado quero voltar a escrever e colocar o conteúdo em dia.
Em Dezembro de 2009 fiz um site pra uma detetive particular e foi uma experiência bem legal. O Murilo Ferreira fez o layout e me entregou os .png do fireworks.
sexta-feira, 16 de Outubro de 2009
Iniciamos o segundo dia com o Rich Kilmer falando sobre MacRuby, RubyCocoa e HotCocoa.
Apresentou alguns exemplos de MacRuby , como ele herda todos seu métodos das classes do cocoa, mas o que realmente fez a diferença foi quando ele apresentou códigos utilizando o HotCocoa, ai sim os códigos ficaram bonitos como código ruby.
Espero que a Apple continue apostando nesta tecnologia e passamos...
quarta-feira, 14 de Outubro de 2009
Vontando do almoço tivemos a apresentação do Glenn Vanderburg falando sobre o Tarantula pluguin para realizar testes fuzz para aplicações Rails que infelizmente não pude assistir e em paralelo a apresentação do José Valim falando sobre Thor, o novo gerador de códigos que substituirá do rake no Rails3, destaco desta apresentação a facilidade para criar geradores com muito mais suporte do que o...
terça-feira, 13 de Outubro de 2009
Hoje teve início o Rails Summit Latin America 2009.
Nesta primeira etapa já tivemos 4 palestras, inicialmente com Chad Fowler falando sobre a dificuldade de alguma pessoas adotarem Rails para desenvolvimento web. No meu ponto de vista foi uma palestra motivacional para evangelizadores de Rails.
terça-feira, 06 de Outubro de 2009
Michael Deering desenvolveu o plugin gravatar_image_tag e publicou um artigo com alguns detalhes sobre o mesmo.
A forma de utilizar é muito simples e está no Github. A seguir uma tradução deste passos para o português.
sexta-feira, 11 de Setembro de 2009
Ontem eu alterei um projeto meu que estava usando o form_for do rails para usar o semantic_form_for do formtastic. Vou contar aqui como foi a minha experiência para que possa incentivar e ajudar outras pessoas também.
Se você quiser tem tudo sobre esta gem no do github (inglês) que você pode encontrar aqui
sexta-feira, 04 de Setembro de 2009
Recentemente a DBurns Design lançou o site da Queen Latifah. Acredito que este foi o maior desafio do qual passei nesta empresa. Utilizamos Ruby on Rails com Apache e podem acreditar, a performance está muito boa. Acredito que em breve teremos que escalar verticalmente e talvez horizontalmente, mas por hora estamos satisfeitos com a performance e nisso devemos muito também ao Blip.tv por...
sexta-feira, 28 de Agosto de 2009
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:
quinta-feira, 20 de Agosto de 2009
Eu utilizo a DreamHost para hospedar o meu blog, pra mim é uma boa empresa de hospedagem, visto que até hoje tive poucos problemas lá, e gostaria de compartilhar com vocês como resolvi um deles.
Você tem uma lista de gems disponível, porém algo que é muito comum é você precisar instalar algumas gems que não tem no servidor. Então você pode instalar estas gems ou dar um freeze delas no seu...
terça-feira, 18 de Agosto de 2009
Outra dica que também vi com o Shadow11 é como fazer o deploy com repositórios locais. Veja o exemplo abaixo:
O repositório do meu blog está no servidor da DreamHost e o acesso é feito via ssh, com isso na hora de fazer o deploy sempre dava erro por que o caminho do repositório no servidor tinha que ser diferente. Então com esta dica você pode setar um repositório para ser utilizado no...
segunda-feira, 17 de Agosto de 2009
Depois que publiquei o artigo Diminua o tempo de deploy do capistrano encontrando um problema que como não era criado um novo diretório (release) para o deploy ás páginas de cache não eram apagadas. Foi então que o ["]Shadow11](http://blog.shadowmaru.org/) adicionou uma linha nesta receita que poderia resolver nosso problema. Se trata de um shell script que vasculha todos os diretórios...
segunda-feira, 27 de Julho de 2009
A partir do rails 2.1 ganhamos alguns métodos para monitorar as alterações dos atributos.
Com isso você passa a ter um grande ganho de performance para efetuar updates em seus projetos, por que o Rails passa a fazer update somente dos atributos que foram modificados. Vamos ver como isso acontece.
Para os exemplos abaixo vamos supor que eu tenha um model User com os atributos name e email
terça-feira, 07 de Julho de 2009
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.
domingo, 29 de Março de 2009
Estou com alguns projetos que utilizam paperclip para fazer o upload e gerar um thumnail de um arquivo. Mas o grande problema que os clientes sempre acabam reclamando é quando eles fazem o upload de uma foto na vertical o crop automático acaba cortando o rosto das pessoas.
Então o @sadow11 dando uma analisada no paperclip acabou alterando o plugin para que quando for fazer o crop usar sempre a...
terça-feira, 20 de Janeiro de 2009
O Carlos Brando acabou de liberar a versão em português do livro Ruby on Rails 2.2 – O que há de novo?
Aconselho a todos que tem algum contato com Rails ler este livro, já os que não tem recomendo iniciar :)
quarta-feira, 31 de Dezembro de 2008
Como último projeto opensource do ano resolvi publicar um teste que estive fazendo com Mephisto. Tentei criar um plugin (filtered_column_gist_macro) a fim de facilitar a vida de quem usa Gist e Mephisto.
O Resultado não foi exatamente como o esperado, por que utilizei o filtro do Mephisto, que quando salva um artigo aplica este filtro e salva o HTML final na tabela, deste modo você acaba...
segunda-feira, 29 de Dezembro de 2008
Este é o primeiro plugin para Ruby on Rails que fiz! É simplesmente um helper que facilita o trabalho de mostrar resultados em colunas dentro de uma tabela onde você passa um array, o número de colunas por linha e um bloco com a “td” que você pretende utilizar.
O plugin está no github e fiquem à vontade pra colaborar.
sábado, 13 de Dezembro de 2008
Sexta passada solicitei ao Dookie que tentasse criar um sistema para arredondar as imagens que o cliente mandar direto no servidor, sem precisar de gambiarras em javascript para fazer este trabalho.
O cara focou na tarefa e com a ajuda do Shadow11 consegui um ótimo resultado, vocês podem ver um exemplo no post dele Vale lembrar que a imagem gerada é um PNG32 com fundo transparente, deste modo...
quinta-feira, 11 de Dezembro de 2008
Estava fazendo uns testes esses dias com uma aplicação Rails que utiliza acts_as_tree. Estava utilizando o methodo size para saber se o objeto tinha filhos, foi então que me veio a idéia de implementar um counter_cache e assim dar uma boa limpada nas consultas executadas.
Pesquisei na documentação como fazer isso e bastava colocar o campo com o nome de children_count, porém quando adicionei o...
terça-feira, 09 de Dezembro de 2008
Foi desenvolvido mais um projeto DBD utilizando Rails
Este é um projeto simples porém teve algumas coisas legais.
Quem quiser conferir o o site é bem legal vale a pena.
http://www.dognewsdaily.com/
quarta-feira, 26 de Novembro de 2008
A equipe da DBurns Design está trabalhando em seu primeiro ecommerce com Rails utilizando Spree. Surgiu algumas necessidades que o Spree ainda não suportava então o shadow11 providenciou estas alterações e mandou para o mantenedores do projeto que aceitaram e publicaram em seu site em dois posts separados Authorize.net e SSL.
Mais detalhes no blog do shadow11.
segunda-feira, 17 de Novembro de 2008
Bom vamos ao que parece ser o ponto final nesta história de ecommerce.
Depois da aventura com o cakePHP e os cinco projetos feitos com ele resolvemos criar uma nova estrutura com o intuito de ser melhor, mais fácil de manter e implementar. Foi então que junto ao time da DBD resolvemos fazer o novo projeto em Rails, utilizando o Spree como base da aplicação. O líder deste projeto foi o Ricardo...