21 truques de Ruby que você deveria estar usando
Creio que a maioria já viu o artigo 21 Ruby Tricks You Should Be Using In Your Own Code no Ruby Inside. O texto contém truques realmente interessantes, mas esse post é apenas para uma dica: se você ainda não assina o feed do Ruby Inside, faça-o agora! ![]()
Conheça suas gems
Uma boa forma de aprender mais sobre Ruby é “fuçar” no código-fonte de gems. Vagando pelo GitHub e RubyForge esses dias, encontrei um conjunto de pequenos utilitários escritos por Dr Nic (que deve ser um robô ou extraterrestre).
Um desses utilitários chama-se find_gem (não achei um site oficial, apenas esse arquivo de texto explicando como configurar e usar). Ele instala dois comandos em seu sistema:
- find_gem <nome_da_gem>: retorna o caminho completo da gem passada como parâmetro.
- edit_gem <nome_da_gem>: abre os fontes da gem passada como parâmetro no editor configurado com a variável de ambiente EDITOR. Assim você pode vasculhar o código-fonte das gems com mais comodidade.
No MacOS X Leopard funciona muito bem. Outra funcionalidade legal é o auto-complete no comando gem (tanto para os comandos, como install e list, quanto para nomes de gems).
Veja aqui a lista de utilitários do Dr Nic Utilities. Estou utilizando também o git_autocomplete e recomendo.
Duas ótimas notícias para Rubistas
Finzinho de semana agitado no “mundo” Ruby, com duas ótimas notícias:
- Rubinius roda Rails! Essa foi antes do que a maioria esperava.
- MRI 1.8 passa a utilizar RubySpec. Uma especificação unificada deve trazer muitos benefícios!
Rubylearning: mais uma turma em Março
Satish Talim me informou hoje que a quarta turma para seu curso online gratuito de Ruby terá início em 1º de Março.
A última turma teve 2190 participantes, dos quais 35% eram brasileiros.
Se tiver interesse, faça sua inscrição aqui.
Erro ao instalar gem: undefined method `[]=’ for Gem::ConfigFile
Há alguns meses me deparei com este erro quando configurava o ambiente de desenvolvimento de Ruby on Rails no Ubuntu Linux em meu computador. Hoje, ao fazer o mesmo no computador que uso no trabalho, ocorreu a mesma coisa.
Em ambos os casos estava utilizando o pacote Ruby instalado via Synaptic (sudo apt-get ruby-full e sudo apt-get rubygems).
No meu computador pessoal, a solução foi editar o arquivo config_file.rb (localizado no diretório onde está instalado o rubygems, no meu caso é /usr/local/lib/site_ruby/1.8/rubygems) e adicionar o seguinte método:
def []=(key, value) @hash[key.to_s]=value end
(encontrei essa solução aqui: Gems through the proxy (or the «undefined method `[]=’» error) )
Já no computador da empresa em que trabalho, apaguei todos os pacotes relacionados ao Ruby e instalei tudo (ruby e rubygems) manualmente a partir dos fontes.
Bom, que o Google indexe essa página e essa solução não fique tão escondida. Se você souber alguma outra solução, comente.
Tradução - Produtividade do desenvolvedor: Média vs. Mediana
Neal Ford, da ThoughtWorks, foi muito gentil ao permitir que eu traduzisse seu artigo “Developer Productivity Mean vs. Median“.
O artigo fala sobre algumas falsas crenças da “indústria” do software: linguagens restritivas, economia na forma de contratação de desenvolvedores medíocres e tentativa de encurtamento de prazos de entrega através da adição de mais pessoas aos projetos, entre outras.
Boa leitura!
Novo PickAxe
Dave Thomas anunciou que o livro “Programming Ruby”, mais conhecido como PickAxe, chegou a sua terceira edição, voltada ao Ruby 1.9, e já está disponível em beta.
O livro é uma referência unânime em toda a comunidade. Altamente recomendado.
Para quem tem dificuldades com o inglês, uma boa referência em português é o livro “Ruby - Conhecendo a Linguagem“, de Eustáquio Rangel.
Tradução de artigo - Aquecimento Ruby, parte 2: Métodos ausentes, móveis e manufaturados
Finalizando a série, Russ Olsen mostra técnicas mais exóticas para definição de métodos em Ruby.
Russ, obrigado novamente por autorizar a tradução de seus artigos. Boa sorte com o livro.
(Russ, thank you again for authorizing the translation of your articles. Good luck with the book.)
Curso online gratuito de Ruby
Satish Talim me pediu para divulgar a abertura de uma nova turma no curso online de Ruby ministrado por ele. Participei da segunda edição do curso neste ano e posso afirmar que o material é bom e os exercícios e desafios postados no fórum pelo Satish ajudam bastante a praticar.
A terceira edição terá início no dia 7 de janeiro de 2008. Siga as instruções nessa página para se matricular.
Tradução de artigo - Aquecimento Ruby: “De onde veio esse método?”
Russ Olsen iniciou uma série de artigos sobre Ruby em seu blog Technology As If People Mattered. Russ é o autor do livro Design Patterns in Ruby, já em pré-venda, à ser lançado em breve pela Addison-Wesley.
Conversei com Russ e pedi autorização para traduzir seus artigos, pois acredito que o conteúdo é muito bom e merece ser compartilhado no comunidade brasileira. Ele foi muito receptivo e autorizou sem problemas. Então, vamos ao artigo…