25 Julho 2012, 11:08 h
Atualização 5/8: dica sobre Gatekeeper, veja seção ao fim do artigo.
Atualização 27/7: mais algumas dicas para instalar Rubies antigos. Veja última seção.
Atualização (17h): resolvi investigar mais um pouco os problemas que eu documentei no final do artigo e cheguei a uma solução para meus problemas. Veja no fim do artigo como eu fiz.
Se você é usuário de Mac, a atualização para o recém-lançado Mountain Lion é basicamente algo que você nem precisa pensar muito. $19.99 é praticamente um preço simbólico. A atualização sobre o Lion é limpa, rápida e sem dor de cabeça, da mesma forma como foi do Snow Leopard para o Lion e assim por diante.
Quem ainda está iniciando com Macs, não deixe de ler meu artigo Comprei meu Primeiro Mac, e Agora?, que desde 2009 é um dos meu artigos mais lidos.
24 Julho 2012, 13:42 h
After a long gap I finally managed to contribute a bit to RubyLearning.org. I’ve written a 2 part article about Internationalization (i18n) in Brazilian Portuguese a few days ago. I’ve adapted it into English and you can read it at Satish’s blog. I’m showing snippets of code from a demonstration app and you can see the code at my Github repo and you can also see the app up and running here, thanks to Heroku’s free accounts. I hope you enjoy it!
23 Julho 2012, 23:54 h
Hoje alguns sites ficaram inacessíveis porque o provedor de DNS Zerigo sofreu um ataque de Denial of Service (DDoS). Levaram várias horas para estabilizar.

Normalmente nunca nos preocupamos com DNS porque se existe um serviço que atualmente é praticamente transparente é DNS, mas esse ataque nos relembra da importância de redundância e backup.
23 Julho 2012, 19:36 h
Vocês devem ter notado que agora as tags de cada post estão listadas e são clicáveis, levando a uma listagem de todas as posts com a mesma tag. Essa funcionalidade já existia nos outros sistemas de blog que usei, mas desde que comecei o blog eu nunca gerenciei as tags corretamente. Só que hoje eu tenho mais de 860 artigos. Eu preciso olhar uma a uma e reeditar as tags. Mas o fluxo normal de:
São muitos passos nos admins antigos. Eu queria navegar pela listagem e editar as tags “in place”, mas sempre tive preguiça de implementar :-)
22 Julho 2012, 07:11 h
Desde o dia 15 de julho decidi que já tinha passado da hora de mudar um pouco meu blog. Sinceramente faz tanto tempo que coloquei o tema anterior que nem me lembro mais quando foi. Historicamente, entre 2006 e 2008, se não me engano, eu usei os sistemas de blog Typo3 e Mephisto. Depois pulei para o mais simples Enki, do Xavier Shay. Com o Enki este blog já passou por dois redesigns, o último deles foi basicamente um tema de Wordpress de licença aberta que eu retirei as entranhas PHP, claro, e adaptei ao Enki.

Mas agora resolvi brincar um pouco mais. E para ser “hipster” nada melhor do que abusar um pouco do Twitter Bootstrap.
14 Julho 2012, 22:44 h
Este artigo inicia na Parte 1. Leia primeiro antes de continuar.

Se quiser ver como essa aplicação se comporta de verdade, eu subi uma versão numa conta free do Heroku, então clique aqui e veja.
14 Julho 2012, 22:39 h
Aviso: Não se esqueçam que dias 30 e 31 de Agosto teremos a Rubyconf Brasil 2012! Já garantiu seu ingresso? Compre agora mesmo!
Este é um artigo que eu queria escrever há muito tempo, finalmente consegui formatá-lo como queria. Um dos assuntos que até hoje ainda é difícil de explicar para iniciantes é como utilizar o suporte de I18n do Rails. Todos sabem que o Rails possui uma excelente infraestrutura para internacionalização (i18n) e localização. Porém, a instalação básica do Rails fornece somente a infraestrutura, ou seja, o desenvolvedor é quem deve escolher quais componentes adicionais instalar sobre essa infraestrutura para retirar o máximo que o Rails pode oferecer.
I18n e L10n vai muito mais do que a simples tarefa de substituir strings de texto. Formatação de dados (data, hora, moeda) variam. Codificação dos dados (o padrão sempre tem que ser UTF8!). URLs sensíveis à localização. Modelos sensíveis à localização. Para começar, não pretendo repetir o que todo desenvolvedor Rails já deveria saber, portanto se ainda não leu o Guia Oficial sobre a API de Internacionalização do Rails sugiro que faça isso antes de continuar lendo este artigo.
11 Julho 2012, 14:13 h
Registrations are open through the official Rubyconf Brazil 2012 website. The opening price is BRL 150, roughly USD 75 that you can pay through Paypal. If your company is going to sponsor your registration, ask the person in charge to register himself as a company. After registration he can subscribe many people and pay just once. Time goes by very fast and who would say that one day we would be opening the 5th consecutive Ruby conference in Brasil? It feels like it was yesterday that Locawe...
11 Julho 2012, 14:03 h
As inscrições acabaram de abrir oficialmente no site da Rubyconf Brasil 2012 (quem se cadastrou via Facebook, não se preocupe, já está cadastrado). O preço de abertura está fixo em R$ 150 por pessoa até o dia 31 de Julho, quando aumentará para R$ 200. Então aproveite agora! Se sua empresa for patrocinar sua ida, peça a um responsável que se cadastre como empresa e dessa conta será possível adicionar diversas pessoas para pagar de uma só vez. Além das inscrições via o site oficial, a Locaweb ...
08 Julho 2012, 20:43 h
Quem acompanha o mundo Mac já deve ter visto que uma entrevista muito antiga, que se imaginava perdida, foi encontrada em VHS recentemente, restaurada e agora está acessível. Mais recentemente, se tornou disponível para alugar no iTunes Store – e outras fontes mais “geeky”, se preferir.
Além disso, quem já leu e assistiu tudo que foi publicado sobre Steve Jobs, a maior parte dessa entrevista não tem nenhuma novidade. A parte interessante é ver ele mesmo dizendo essas palavras. Em particular, eu gostei muito de rever a forma como ele pensa sobre produtos, gerenciar empresas, gerenciar pessoas. Particularmente porque eu penso da mesma forma e gosto de estar ao lado de pessoas que pensam da mesma forma.

Isso dito, vamos ver mais sobre isso na palavras do Steve Jobs:
06 Julho 2012, 16:50 h
Aproveitei o dia hoje para testar o tão falado Rbenv. Tecnicamente não tenho nenhum motivo para mudar do RVM a não ser curiosidade de testar alguma coisa diferentes (fator “geek”, se quiserem). Desde que o Wayne lançou o RVM eu venho utilizando sempre a versão mais recente instável (rvm get head) e ao contrário do que muitos dizem, eu nunca tive nenhum problema do tipo precisar reinstalar tudo depois de uma atualização.
A grande maioria dos problemas que eu já vi são relacionados à atualização de sistema operacional, em particular do Snow Leopard para Lion, mudança no XCode do compilador GCC para Clang, de 32-bits para 64-bits, coisas desse tipo.
02 Julho 2012, 09:29 h
Há 1 mês anunciamos que a Codeminer 42 continua em expansão, apresentando nossa filial de Porto Alegre e a parceria em Belo Horizonte com a Objetiva Software. Agora temos o prazer de anunciar mais um grande passo, a parceria com a Guilda de Fortaleza, CE, trazendo a bordo mais profissionais excepcionais do calibre do Alisson Sales, Stephen Eilert e Tiago Bastos. Além disso já começamos a contratar mais profissionais no novo escritório.
A Guilda tem experiência provendo serviços para clientes...
01 Julho 2012, 23:35 h
Não perca o início deste artigo, na Parte 1
01 Julho 2012, 05:34 h
Este é provavelmente um dos assuntos mais confusos para quem está iniciando com Ruby on Rails. Antigamente, as regras eram simples:
Pronto, está tudo preparado para funcionar. Porém, existiam e ainda existem muitas situações que essa regra não cobria e diversas técnicas, “boas práticas” e gems externas precisaram ser criadas para resolvê-las. Em particular, temos as seguintes situações cotidianas em desenvolvimento web:
Para resolver essas e outras situações é que foi criado o chamado Asset Pipeline, que é um conjunto de bibliotecas e convenções para resolver o problema de assets da melhor forma possível. O Asset Pipeline sozinho não resolve tudo, ele é um framework para que seja possível integrar diferentes soluções de forma organizada.
Tudo que será explicado neste artigo vale para o Rails 3.2 e superior, existem diferenças importantes nas versões anteriores que não serão tratadas aqui. Leia o Rails Guides, especialmente os Release Notes de cada versão.