JavaFree.org | RubyOnBr.org

Acompanhar Blogosfera Ah! Blogosfera!

Última atualização: 1 minuto atrás

Pedro Pimentel

Slides from RS on Rails 20102010-08-31 17:19

Rs on Rails 2010

On August, 21st of 2010, at RS on Rails 2010, I and Robson Mendonça gave a talk about a game development framework for Ruby called Chingu. Our main goal with this talk was to show that you can have fun with pure Ruby without riding Rails. I believe we successfully achieved that! :D

For those who might have interest, below are our slides (Portuguese only).  Our game’s source code you can find at zukunftsalick’s github.

Ah, one more thing: On September, 12th, I and Carlos Villela will be giving a talk at qCon São Paulo. We’ll be presenting “Especificações de Fora pra Dentro Usando BDD e Selenium 2” roughly translated to “Specifications from outside-in using BDD and Selenium 2″. See you guys there!

Probably Related posts:

  1. RELEASED – “Rails 2.1 – What`s new ?” Book
  2. Open Source Rails
  3. Internacionalizando uma aplicação rails

Comente esse post


Area Criações - Web e Design - Home

Imersão Ruby on Rails2010-08-30 19:54

Este ano, na Egenial, foram abertos vários cursos voltados ao mundo Ruby.

Um destes cursos foi Imersão Ruby on Rails. Como já trabalho em parceria com a e-Genial a mais tempo, o Carlos Eduardo (proprietário da empresa) me convidou para ser o responsável por criar este novo curso e a partir de então ficar apenas com esta nova turma.

Depois de pensar bastante, cheguei a conclusão que a melhor opção seria eu ministrar tanto o curso do básico ao avançado como o imersão. Apenas desta forma eu teria controle total de tudo que é necessário para um interessado em Rails entrar com pé direito na tecnologia e em seguida entender com precisão as internas da linguagem Ruby

Como é um curso intensivo com apenas 4 dias com 4 horas por dia (nos sábados), depois que o material estivesse pronto, eu não ficaria sobre-carregado administrando duas turmas e os iniciantes de Rails poderiam seguir a mesma linha de aprendizado deste o início, com o primeiro curso, e se aprofundarem nas internas da linguagem com este segundo. Por estes motivos, atualmente, sou instrutor do curso do Básico ao Avançado e do Imersão.

Durante a preparação da grade e do material eu tentei agrupar todos os temas que considero essenciais para um Rubista. Mas temas que não são tão triviais de se aprender.

Tentei compilar o conhecimento que não aprendemos em blogs ou palestras de 50 minutos. Assuntos como Object Model da linguagem que não vemos em muitos livros mas que são fundamentais para aplicar da forma correta metaprogramação ou para entender, de verdade, técnicas simples como “class << self”.

Outros temas importantes que tentei abordar neste novo curso são por exemplo a influência de dsls no cotidiano (e como criar dsl’s), refactoring (na prática melhorando um pequeno projeto em Ruby puro coberto com MiniTest), boas práticas de Rails como arquitetura rest para organização ao invés de criar API’s, design SOLID e criação de Gems.


Grade com detalhes

É bem provável que esta seja a última turma deste curso para 2010 então corra e faça sua matrícula. A grade do curso detalhada você pode ver abaixo (ou no próprio site do curso):

  1. Ruby Object Model
    1. A verdade sobre programação orientada a objetos
    2. Os segredos para identificar o “self”
    3. Method Lookup
    4. Superclass e Metaclass
    5. Eigen Class ou Ghost Class
    6. A verdade sobre o que são classes
    7. Métodos de classe não existem
    8. A verdade sobre os módulos
    9. Usando módulos da forma correta
  2. Metaprogramação
    1. Mágica é para os fracos, entenda o que é metaprogramação
    2. Importância da reflexão
    3. Compreendendo o que são e as diferenças entre blocos, proc e lambda
    4. Entendendo corretamente o escopo e como alterar o self
    5. Família “eval”
    6. Classes Abertas
    7. Criando métodos em runtime
    8. Criando classes em runtime
    9. method_missing
    10. Hooks do Ruby
    11. Exemplos reais sobre metaprogramação
  3. Ruby DSL’s
    1. Entendendo o que são DSL’s
    2. DSL’s internas em Ruby
    3. Importância de DSL’s para melhor o design do software
    4. Técnicas mais comuns para criação de DSL’s
    5. Exemplos práticos de DSL’s (ex.: Whenever, rotas do Rails, delayed_job e etc)
  4. Ruby best pratices
    1. Como diferenciar um bom design e de um ruim
    2. Evitando erros comuns em manutenção
    3. Aprendendo conceitos de um design S.O.L.I.D)
    4. Refactoring na prática (usando Ruby 1.9 e MiniTest)
    5. Forwardable
    6. Delegate
    7. Comparable
    8. Enumerable
    9. Parâmetros nomeados
    10. Expressões condicionais
    11. Convenções do Ruby
  5. Rails Best Pratices
    1. Boas práticas em desenvolvimento Rails
    2. Como organizar sua aplicação pensando no futuro
    3. Restful como ferramenta de design e não apenas para API’s
    4. Refatorando controllers
    5. Refatorando Views
    6. Refatorando Models
  6. Rails Best Pratices
    1. Controllers magros
    2. Models gordos
    3. Single Responsibility em Models
    4. Princípio do menor conhecimento
    5. R.E.S.T para arquitetura de software
    6. Rotas saudáveis
    7. DRY com metaprogramação
    8. Módulos para repetição
    9. Composição
    10. Callbacks em Observers
    11. Índices em Migrations
    12. Alimentação do banco com Seeds
    13. Sempre mantenha um rollback em Migrations
    14. Separação de lógica das views
    15. Técnicas avançadas com partials e layouts
    16. Refatorando forms com FormBuilders
  7. Gems
    1. O que são realmente Gems
    2. Erros graves ao escolher uma Gem
    3. Como ler uma Gem
    4. Importância de se criar Gems
    5. Criando uma Gem na prática

Comente esse post


AkitaOnRails.com

Rails 3.0 FINAL, Acaba de Ser Lançado!2010-08-29 20:35

O Rails 3 foi liberado há 1 minuto! Versão 3.0 FINAL! O DHH acabou de fazer o anúncio oficial.

Foram quase 2 anos no forno, desde o anúncio da junção dos projetos Merb e Rails no dia 23 de dezembro de 2008.

Muita coisa mudou desde então. O Yehuda Katz liderou esse projeto de ponta a ponta e contou com a ajuda de diversos excelentes rubistas como nossos amigos latino americanos Emilio Tagua, Santiago Pastorino e o brasileiro José Valim. Parabéns a todos os envolvidos por este grande projeto!

Para instalar, claro, agora basta fazer o de sempre:

1
gem install rails

Indo direto ao ponto, se você ainda está aprendendo o caminho do Rails 2.3, superficialmente não mudou muita coisa. O que você vai ver logo de imediato que está diferente são os scripts de linha de comando. Por exemplo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# criando novo projeto em Rails 2.3
rails meu_projeto

# criando novo projeto em Rails 3
rails new meu_projeto

# fazendo scaffold em Rails 2.3
script/generate scaffold Post title:string body:text

# fazendo scaffold em Rails 3
rails g scaffold Post title:stirng body:text

# abrindo o console em Rails 2.3
script/console

# abrindo o console em Rails 3
rails c

# subindo servidor em Rails 2.3
script/server

# subindo servidor em Rails 3
rails s

Além disso, você deve estar acostumado a ver as configurações do projeto em config/environment.rb mas agora isso está em config/application.rb. Tirando isso, a estrutura do projeto em si é basicamente a mesma, com os mesmos diretórios. Por padrão os templates HTML ainda são em ERB, o mapeador objeto-relacional é o ActiveRecord.

As mudanças mais drásticas de API estão no dispatcher de rotas que você configura no mesmo arquivo config/routes.rb. Os comentários lá devem ser suficientes para você entender o que mudou e as configurações antigas de rotas devem continuar funcionando.

No caso do ActiveRecord agora temos a dependência do componente Arel que permite códigos como este:

1
2
User.where(users[:name].eq('amy'))
# => SELECT * FROM users WHERE users.name = 'amy'

Mas a API do Rails 2.3, na maioria, ainda deve funcionar. Então o equivalente ao código acima seria:

1
User.all(:conditions => { :name => 'amy' })

Outra mudança drástica é um novo módulo de ActionMailer e, nesse caso, a API antiga não deve ser mais compatível.

Felizmente deu tempo da comunidade preparar dezenas de materiais, screencasts, tutoriais e documentação suficiente para qualquer um começar um projeto em Rails 3. A melhor forma de se exercitar, talvez seja pegar uma aplicação em Rails 2.3 e fazer o upgrade para Rails 3 e a melhor forma de fazer isso é comprar o material do Jeremy McNally, o Rails 3 Upgrade Handbook, que acompanha um PDF detalhado e a documentação para usar sua ferramenta open source rails_upgrade, que vai ajudá-lo a encontrar o que precisa ser modificado no seu projeto.

Se quiser apresentar o Rails 3 para alguém, a melhor de fazê-lo é usar os screencasts oficiais produzidos pela EnvyLabs, de Gregg Pollack, que foram apresentados na RailsConf deste ano.

O Ryan Bates também fez uma série em 3 partes para atualizar sua aplicação de Rails 2.3 para Rails 3:

Fora isso, o Ryan também fez screencasts apresentando rapidamente alguns dos novos componentes do Rails 3, como:

Fora isso a Engine Yard montou um site especial só para o Rails e, chamado Rails Dispatch que já colocou screencasts e material sobre:

Outro componente importante do Rails 3 é sua dependência com o Bundler, o sistema de gerenciamento de RubyGems para projetos. Com ele você consegue ter um repositório isolado de gems que não atrapalham outros projetos. Além disso ele deve tornar mais fácil instalar uma aplicação em servidor de produção, com todas as dependências corretas. Pode ser um pouco estranho no começo mas vale a pena entender como funciona. O site oficial tem documentação suficiente para entender seu funcionamento.

Além disso também temos o Rails Guides com toda a documentação em forma de Guias para facilitar seu aprendizado. Mais do que uma lista de APIs, sintaxes, o importante é entender em quais contextos usar o que. O Xavier Noria tem feito um excelente trabalho em dar manutenção em todo esse material. Espero que mais pessoas comecem a contribuir. E, claro, precisamos de uma lista de referência das APIs também e o Rails Searchable API Doc e o APIDock tem feito um excelente trabalho em tornar a consulta muito fácil para nós.

Agora, seus maiores problemas serão em checar se as rubygems ou plugins que você depende já estão compatíveis com Rails 3. Para isso, vá ao site Rails Plugins para averiguar. Se você é desenvolvedor de gems ou plugins, não deixe de atualizar essas informações lá.

Além de excelente líder técnico o Yehuda Katz também documentou muita coisa em seu próprio blog. Recomendo ler todos os artigos dele para entender muito da parte interna do Rails 3, por exemplo, estes artigos:

O Kevin Faustino compilou recentemente uma lista de websites que você pode consultar sobre Rails 3. Vale a pena conferir.

Se está interessado em livros:

Até então, nosso ambiente padrão de desenvolvimento era o Ruby 1.8.7 e Rails 2.3.8. Finalmente podemos começar a usar Ruby 1.9.2 e Rails 3.0. Isso nos trás performance de graça, mais funcionalidades e novas possibilidade. A promessa do Rails 3 foi cumprido e tudo que precisávemos foi adicionado: mais flexibilidade, mais agnosticismo, APIs modernas, segurança por padrão, modularidade.

Resumindo

Enquanto isso o desenvolvimento do que será o 3.1 já está em andamento. Versões são apenas formalidades, uma barreira psicológica para as pessoas começarem a usar. Nenhum projeto de software “acaba”. Ainda há muito a ser refinado, com o feedback de projetos em produção devem surgir novos bugs, problemas de performance, enfim, software é como vinho: vai amadurecendo com o tempo. Mas isso deve ser o suficiente para elevar o ecossistema para o próximo nível.

Divirtam-se!


Gostou deste artigo? Considere fazer uma doação a este site.



Comente esse post


Area Criações - Web e Design - Home

Eventos e mais eventos2010-08-27 14:22

Neste segundo semestre do ano estamos tendo vários eventos com temas focados em Ruby ou eventos genéricos mas com espaço para a linguagem.

Apenas em Julho e Agosto tive o prazer de participar de 6 desses eventos. Uma coisa fica bastante claro, o interesse por Rails tem crescido assustadoramente.

Quando comecei a estudar a linguagem Ruby e framework Rails por volta de 2006 era comum ouvir que Ruby/Rails eram apenas modinhas e que logo isso tudo morreria.

Hoje é muito gratificante ver que esta “modinha” evoluiu para algo bem sólido no mundo todo e aqui no Brasil estamos começando a conseguir o mesmo resultado.

Isto fica bem nítido quando participamos dos eventos e vou compartilhar com vocês um pouco de como tem sido participar deles :

Mini-curso do RailsMG na UNA

Mensalmente fazemos encontros do nosso grupo, o RailsMG. Até entao nao tknhamos feito nada voltado para o publico que está interessado em começar no Ruby e no Rails.

Pensando nisso aplicamos um mini curso no meio de Julho onde eu fui o instrutor. O local para o treinamento foi cedido pela UNA e com lotação aproximada de 60 pessoas.

No esperávamos chegar perto da lotação mas o mais impressionante é que as 60 vagas foram preenchidas em menos de 5 horas.

O curso correu perfeitamente e foi bem interessante para conhecer várias pessoas de BH que tem interesse na tecnologia e mostrar um caminho por onde começar.

Os slides podem ser vistos aqui

FISL

No final de Julho, com um convite Maúricio Portal, tive o prazer de participar do FISL em Porto Alegre. Também um mini-curso mas desta vez com 6 horas (ao invés de 4 como o do RailsMG).

O curso foi quebrado em três dias com 2h por dia. No primeiro dia tivemos lotação máxima no auditório e o pessoal participou bem, com várias perguntas. O receio era que nos dias seguintes talvez o interesse diminuiria, mas isto não ocorreu e tivemos o auditório cheio nos 3 dias.

O mais interessante é que no último dia tivemos 6 horas de palestras de Ruby. Começamos com uma apresentação perfeita do Fábia Akita sobre o ecossistema Rails. Mostrando que Rails não é apenas um framework mas um plataforma sólida, focada em empreendimento e que caminha sozinha sem investimento de nenhum gigante como MS ou Oracle.

Na sequência tivemos mais uma palestra do Akita sobre boas práticas de desenvolvimento web usando a ferramentas do Ruby como exemplo. Para terminar o dia eu concluí com as duas horas restantes do mini-curso.

O resumo geral do FISL foi sensacional, vários contatos interessantes e deu para rever muita gente da comunidade Ruby e fazer aquele pós evento com direito a hora extra original com o pessoal do Rio.

Os slides do Mini-curso estão aqui.

EDTED BH

Em Julho recebi um convite da Arteccom para o EDTED de BH. O tema seria uma introdução ao Rails mas como evento coincidiu com o OxenteRails e eu já tinha confirmado com a organização do Oxente acabei não podendo comparecer ao EDTED (infelizmente).

Mas não podíamos deixar o EDTED sem uma palestra de Rails então Bruno Alves da Dito aceitou convite e a palestra parece ter sido um sucesso ( já era o esperado vindo do Bruno :).

OxenteRails

Sobre o Oxente Rails, em Natal, não tenho palavras suficientes para descrever o evento.

Acabei indo de última hora e também não tinha comparecido no ano anterior então eu não sabia muito bem o que esperar.Mas o evento superou todas as expectativas possíveis. Extramente bem organizado e com palestrantes de auto nível.

O evento correu em duas trilhas paralelas e eu imaginei que não teria audiência para lotar os dois auditórios mas foi o contrário.

Foi bem legal para reencontrar a comunidade toda e conhecer pessoas como Caike da Envylabs, Geoffrey do Peepcode, Arthur Geek e várias outras pessoas que não vou me lembrar agora.

Quantos as palestras, pessoalmente gosto mais de conteúdo técnico e nesta linha as que me chamaram mais antenção (das poucas que assisti) foram as do Caike sobre refactoring e a do Geoffrey sobre sugestões de arquitetura em Rails.

Eu falei sobre Steak e você pode ver os slides neste link

Sobre o oxente eu só tenho a agradecer ao Paulo Fagiani, Annaysa e toda a equipe da Tink (Rafael, Anderson, etc). E claro não posso esquecer do Vinicius Teles por me fazer abrir o olho e enviar um tema para o evento e não deixar a oportunidade passar.

<iframe src="http://player.vimeo.com/video/14350633?byline=0&portrait=0&color=b30000" height="304" width="540"></iframe>

Definitivamente o evento mais importante de Rails do Brasil (já que Rails Summit virou RubyConf :).

Serpro

Duas semanas após o Oxente eu ministrei uma apresentação sobre o ecossistema Rails no Serpro MG a convite da Kátia, Alexandre e Harley (mais uma vez obrigado aos três).

Para o conteúdo eu usei boa parte da palestra que o Akita usou no FISL (com autorização dele). É um conteúdo que acho perfeito para dar uma visão geral de como caminha a comunidade em volta do Rails.

Os slides da palestra você encontra aqui

Próximos eventos

Durante este meio tempo também concluímos um treinamento da Egenial com 40 alunos e houveram vários eventos que não tive como comparecer. Destaque para o RSonRails e o encontro do pessoal do Rio.

Nos próximos meses vamos participar do seminário de “computação da UFOP” e também teremos uma palestra de Ruby na Inforuso, que está sendo organizado pelo Márcio Sete. Também não dá para esquecer do encontro de sábado agora (amanhã) do RailsMG.

Conclusão

Com todos esses eventos acontecendo e com o resultado fica bem claro que o interesse por Ruby no Brasil está começando a explodir agora.

Outra coisa que percebi é que mesmo com tantos eventos este interesse crescendo, são poucos os desenvolvedores mais experientes. Então é muito importante que os organizadores de evento tenham isso em mente.

Apesar de nós que trabalhamos como Rails a bastante tempo querermos eventos mais pesados e com conteúdo mais avançado, somos a minoria e qualquer evento no Brasil que carregue Ruby ou Rails no nome deve lembrar-se do iniciantes ao menos em algum momento na grade.

Além de introdução ao Ruby e ao Rails também é importante introdução a temas como TDD, Git, automatização de deploy e tudo mais que já é cotidiano de desenvolveres Ruby.

Nos vemos na Ruby Conf :)

Comente esse post


Wagner Andrade

--no-ri --no-rdoc2010-08-27 10:57

Hoje o acesso à internet é trivial para o desenvolvedor de software. Por isso raramente utilizamos a documentação local da instalação do Ruby e das gems.

Muitos até já instalam as gems sem essa documentação, com os argumentos

--no-ri --no-rdoc
. Instalar o Rails sem documentação local fica assim:

gem install rails --no-ri --no-rdoc

Escrever esses argumentos é um saco, mas o pior é esquecê-los.

É fácil padronizar a instalação da gem para incluí-los automaticamente. Edite o arquivo

~/.gemrc
, adicione:

gem: --no-ri --no-rdoc

É isso.

Comente esse post


Wagner Andrade

Wind Wordpress Importer2010-08-25 15:23

Daniel Tamiosso escreveu o primeiro plugin do Wind, o Wordpress Importer. Como o nome já diz, serve para importar os artigos escritos no Wordpress.

É muito fácil de instalar: copie o arquivo

wordpress_to_wind.rb
para o diretório de plugins do Wind. Apenas o usuário admin terá acesso ao widget de administração.

Para utilizar basta enviar o arquivo de exportação do Wordpress (WordPress eXtended RSS file) pelo widget de admin.

Qualquer dúvida é só comentar.

Sugestões e melhorias são bem-vindas. E novos plugins também. Se você tem uma idéia, coloque a mão na massa e submeta o seu.

Update

Esqueci de mencionar que é necessário instalar a gem hurricane para usar o plugin.

Comente esse post


AkitaOnRails.com

Vem aí mais um Barcamp Locaweb de Ruby on Rails2010-08-25 14:55

Em março do ano passado organizamos um encontro de Ruby on Rails e este ano vamos repetir: Barcamp Locaweb, no dia 26 de Agosto, quinta-feira, das 19hrs às 23hrs. O local será o mesmo, no Café Zim, um bar na Vila Olímpia na Rua Ramos Batista, 270. CEP: 04552-020. Fone: (11) 3044-4797, São Paulo.


View Larger Map

As fotos do ano passado estão disponíveis no Flickr e eu escrevi sobre como foi na época também.

A idéia é fazer um encontro para aumentar o network do pessoal, onde os rubistas possam se conhecer, onde interessados venham nos conhecer, onde as pessoas possam expôr idéias. Tragam seus notebooks e vamos codificar um pouco também. Como desta vez estamos fazendo o evento um pouco mais tarde no ano, vai valer praticamente como um pré-RubyConf Brasil – que, aliás, será nos dias 26 e 27 de Outubro.

Ano passado, por coincidência, o Barcamp acabou acontecendo bem no dia em que mais choveu naquela temporada. Achei até que ninguém ia aparecer, mas acabou enchendo o local. Este ano vamos ver se conseguimos pegar um tempo bom :-)


Gostou deste artigo? Considere fazer uma doação a este site.



Comente esse post


AkitaOnRails.com

Semana de Ruby2010-08-25 12:13

Ao mesmo tempo que eu estava numa semana atípica de eventos, o mundo Ruby também estava numa semana atípica de lançamentos.

O primeiro grande lançamento foi do Ruby 1.9.2. A gerente da série 1.9 é a Yuki Sonoda, se você entende japonês siga-a no Twitter :-) A versão 1.9.1 tinha vários probleminhas chatos, mas a versão 1.9.2 evoluiu até que rápido nos meses finais antes desse lançamento. Essa é a versão considerada estável da série 1.9 e o Rails 3 suporta ele inteiramente. Novos desenvolvimentos devem usar essa versão. A partir de agora o Ruby Core Team deve ir em direção à versão 2.0.

Alguns reclamam da forma como o Ruby é versionado porque o Ruby 1.9.2 é incompatível com a antiga série 1.8, portanto poderia ter sido já chamada já de 2.0. A versão 1.9.1 seria a versão de “desenvolvimento” e o 1.9.2 agora é a “estável”. Mas o Ruby não segue bem o padrão de número ímpar para versão instável e par para estável já que a versão estável do Ruby 1.8 é a versão 1.8.7 agora. Enfim, você se acostuma :-)

Também foi meio estranho ser listado apenas o Debian 5 32-bits como versão oficialmente suportada, faltando suporte oficial à versão 64-bits também. De qualquer forma, ele funciona bem na maioria das plataformas mais usadas. Por exemplo, recomendo que vocês usem RVM, claro, e faça:

1
2
3
rvm update
rvm reload
rvm install 1.9.2

O Luís Lavena também já atualizou as versões de Windows e com isso você pode usar o Ruby mais recente no Windows também. Instale também o DevKit, que permite que algumas gems com extensões em C sejam compiladas a partir do código-fonte mesmo no Windows. O Luís havia me dito que a série 1.9 usava algumas APIs não otimizadas de I/O no Windows, tornando essas operações de I/O comparativamente mais lentas do que num Linux. Não sei se isso já foi corrigido ou não.

O Ruby 1.9.2 é uma versão moderna de Ruby. Dentre as principais características, ele finalmente fecha o gap de performance em comparação a outras linguagens de script como Python e Perl, sendo bem mais competitivo.

Falando no RVM, acho que hoje em dia não há quem pelo menos não saiba para que ele serve. E graças ao Ruby Summer of Code, ganhamos uma versão 1.0. Os créditos vão para Darcy Laycock, inclusive o codenome dessa versão é “Laycock” em sua homenagem. O RVM se tornou bem maduro, polido e com excelentes APIs. Se você ainda não usa, vale a pena tentar. Para quem é de Windows o problema é que o RVM é uma coleção de scripts de Bash. Uma alternativa é usar o Pik, que não é tão completo quanto o RVM mas deve ajudar para quem está limitado ao uso do Windows.

Finalmente, o último grande lançamento foi o Rails 3 Release Candidate 2. O Rails 3 evoluiu muito no último ano e meio. Porém diversos problemas de última hora começaram a atrasar seu lançamento. Desde a RailsConf, em Baltimore, estamos esperando pela versão final e parece que desta vez estamos chegando perto disso.

O Rails 3 sofreu muitos refatoramentos, ganhou muito código novo, e isso significa muita coisa que precisou amadurecer mais nos últimos meses. Em particular o novo ActiveRecord ActiveModel teve perdas de performance, que só foram corrigidas recentemente. Além disso há dependências grandes com outros componentes como o Bundler, que levou meses para estabilizar. Para ter uma idéia de como a operação do Bundler em combinação com outras características do sistema pode ser difícil de debugar, leia este último artigo do Yehuda.

No final, o Rails 3 conseguiu corrigir os principais pontos de lentidão, ganhou polimento em suas APIs. Componentes como o Arel e o Bundler estão se aproximando também de estar maduros o suficiente e tudo indica que em poucos dias deve sair o Rails 3 versão final. Eu não me surpreenderia se isso fosse esta semana mesmo.

Com tudo isso, sempre vem aquela velha pergunta: “devo já começar projetos novos com Rails 3 e Ruby 1.9.2?” E a resposta simples é: “Sim!” Tecnicamente eles devem funcionar bem para a grande maioria dos casos. Muitos já estão usando Rails 3 em produção. Algumas gems e plugins não vão funcionar, porém ou os autores já estão atualizando ou você mesmo fazer uma correção normalmente não chega a ser muito complicado.

Se você quer aprender a migrar uma aplicação Rails 2.3 para a 3.0, recomendo o Rails 3 Upgrade Handbook do Jeremy McNally e a última série de screencasts do Ryan Bates, parte 1, parte 2 e parte 3.

Para aprender as diferenças do Ruby 1.8 para 1.9, também recomendo os screencasts da EnvyCasts, à venda via Peepcode, parte 1 e parte 2. Além disso o Nando Vieira tem um bom e-Book com o que mudou no Ruby 1.9 que recomendo comprar.

A comunidade Ruby/Rails está se movendo depresssa e o lançamento do Ruby 1.9.2 e do Rails 3 RC2 com certeza vão acelerar ainda mais essas mudanças.


Gostou deste artigo? Considere fazer uma doação a este site.



Comente esse post


MouseOver Studio

Realiza deploys à la Heroku de tuas aplicações Rails 3 com Inploy2010-08-24 23:02

Eu não sou fã dos deploys estilo Heroku, mas sei que muitas pessoas são e que muitas delas não sabem que o Inploy suporta um estilo similar de realizar essa tarefa.

Thomas Ritz contribuiu com um template no Inploy chamado rails3_push que no setup cria um repositorio no servidor e no update da um push nele, seguido por todas as tasks que o Inploy executa normalmente em cada deploy.

Para utilizar esse template. que nem com qualquer outro, basta especificar ele no arquivo deploy.rb:

template = :rails3_push
application = "tweerrer"
hosts = %w(...)
...

Após isso, para configurar o ambiente e realizar deploys em todos os servidores, basta executar respectivamente os seguintes comandos:

inploy setup
inploy

Considera me recomendar no Working With Rails. Para ficar mais perto das novidades, não deixa de me seguir no Twitter.

Comente esse post


AkitaOnRails.com

Retrospectiva: Eventos de Ruby em Agosto2010-08-23 17:27

Essas últimas semanas foram bem corridas. Mal acabou o FISL 11 e o mês de Agosto já começou com um evento bombástico: o Oxente Rails 2010, organizado pelo grande Paulo Fagiani e a competente galera da Tink!. Aliás, se você quer bons Railers da Região Norte (Natal), não deixe de contactar esse pessoal.

O evento foi dividido em 2 dias, com 2 tracks paralelos. Por algo imagino que participaram quase 300 pessoas que vieram de diversas partes do Nordeste como Ceará e Piauí (que vieram de caravana). Todos os suspeitos da comunidade Rails estavam presentes como a galera do Rio (Vinicius Teles, Marcos Tapajós, Henrique Bastos, Sylvestre Mergulhão, etc). Tivemos a ilustre presença do Caffo (!), também do Pedro Belo do Heroku e Thaís Camilo da HashRocket Chile. Brasileiros mostrando nossa competência no mercado Norte-Americano. Nós paulistas também marcamos presença, incluindo a Plataforma Tec em peso (José Valim, Hugo Baraúna, etc). Enfim, muita gente muito legal.

Natal é uma cidade é fantástica, o clima estava muito bom, e bem quente. Quem pôde aproveitar a praia e as dunas se deu bem (minha segunda vez lá e, pra variar, eu não aproveitei de novo). Além disso o pós-evento a cada dia sempre foi muito bom, excelente networking, conhecendo mais pessoas novas e incríveis. O Nordeste está fervilhando Rails, sem dúvida nenhuma, e espero ver mais e mais vindo de lá!


Fantástica Caravana do Piauí!

A organização estava impecável, o hotel que escolheram para o evento foi muito bom, o ambiente estava agradável. Além de palestras tivemos atividades como o XP Game, todo mundo muito aberto para conversas. O Nordeste entrou no circuito dos grandes eventos Brasileiros. Espero ver muito mais edições do Oxente!

Para esse evento, eu preparei uma palestra um pouco diferente do habitual. A idéia era uma palestra para quem já tem uma noção pelo menos de Ruby e Rails, contando alguns episódios dessa história. Uma das mudanças que fiz foi no estilo da apresentação. Slides de tecnologia normalmente tem uma “jeitão” meio parecidos, e para este resolvi pesquisar slides de apresentações do pessoal realmente de graphic design. Acho que para uma primeira tentativa foi bem sucedido e vocês podem ver meus slides abaixo:

Ainda conheci o Nerdson (não sabia que ele era de Natal!) e ganhei até uma participação em uma de suas famosas tirinhas, com os cumprimentos dos muy amigos Cariocas pela tirada :-)

Depois tive uma semana sem eventos, mas logo em seguida já comecei na GoNow, na segunda-feira. Na terça-feira mesmo fui para outro evento: o Consegi 2010 em Brasília, com participação do Serpro (agradecimentos ao Giuseppe e Luíz Guilherme pelo convite novamente). O evento foi na Esaf, a Escola de Administração Fazendária, onde também ficamos hospedados. Esse congresso, resumidamente, não deixa de ser como um FISL, com o tema de Software Livre e um certo foco também em governo eletrônico.

Foram diversos assuntos acontecendo em paralelo, de Python, a PHP, a Linux e muito mais. Para falar a verdade eu estava um pouco preocupado quanto à minha palestra. Imaginava que fosse palestrar para uma sala quase vazia :-) Isso porque eu não conheço quase nenhum Railer em Brasília e estava imaginando qual seria o interesse sobre o assunto. Para minha surpresa a sala ficou bem cheia como podem ver abaixo:

Railers de Brasília, é hora de se organizarem para aproveitar o interesse crescente e formar uma comunidade, reunindo-se frequentemente. Eu vi na lista Rails-BR que alguém está começando esse movimento novamente, dêem continuidade! Se eu puder dar uma humilde sugestão, que tal chamá-la de GURU-DF? Não há nenhuma obrigação, claro, mas seria legal ver diversos “Grupos de Usuários RUby” (GURU) aparecendo por todo o Brasil.

A minha palestra no Consegi foi o “Dicas de Desenvolvimento Web com Ruby”, a mesma que dei no FISL. Os slides estão aqui:

Exatamente no dia da minha palestra, tivemos a feliz coincidência do lançamento oficial do Ruby 1.9.2, que pude mencionar na palestra.

Voltei de Brasília quinta-feira de manhã cedo e logo no fim do mesmo dia, fui até a Caelum para comemorar o WhyDay junto com o pessoal do GURU-SP. O José Valim deu uma palestra para dar o kick-off e passamos o resto da noite discutindo assuntos variados. Foi legal reencontrar o povo. Por coincidência, muitos dos encontros do Guru foram justamente quando estava acontecendo outros eventos que eu estava e por isso acabei não participando de muitos. Mas pretendo participar mais!

E a Caelum sempre demonstrou grande participação nesta comunidade e só temos a agradecer ao Paulo e ao Guilherme pela força.

No dia seguinte, coloquei o pé na estrada novamente e já estava voando para Porto Alegre (pela terceira vez este ano!) para participar do RS on Rails, o evento organizado pela Softa. Na sexta à noite me encontrei com o pessoal da Softa, Fande e o Marcelo Nogueira da Reload Brazil para uma boa Red Ale artesanal e conversas aleatórias :-)


Gabriel da Fande e Juan Maiz da Softa

Na manhã seguinte começamos com força total no auditório da PUC. Felizmente o tempo estava muito bom, então não morri de frio desta vez :-)

O Carlos Antônio, da Plataforma Tec abriu com a primeira palestra e eu segui com a mesma palestra que dei no Oxente Rails (slides mais acima). O evento foi até quase umas 7 da noite, sem nenhum problema. Conheci mais pessoas legais e notei que tem muito mais gente interessada em Rails em Porto Alegre do que eu imaginava!

Tive um bom papo com o pessoal da RedeHost, uma hospedagem de sites de lá mesmo e que está pensando em suportar Rails também. Conheci o Luíz Claudio Garcia que apresentou o case de uso de Rails no Tribunal Regional Eleitoral (TRE-RS). Ele me contou que hoje eles tem cerca de 11 desenvolvedores Rails e diversos projetos em andamento. Um bom exemplo para outros órgãos públicos relutantes em usar novas tecnologias.

Além disso me surpreendeu a quantidade de empresas prestando serviços de Rails. Conheci o pessoal da Softa, Fande, Reload Brazil, Woompa, PowerTask, fora a ThoughtWorks, claro. A comunidade do Rio Grande do Sul vai crescer muito! Isso sem contar que recentemente começaram os esforços para o GURU-SC e o pessoal de Santa Catarina e Rio Grande do Sul devem começar a interagir mais. Pessoal do Paraná, onde estão vocês!?

Terminamos o evento na Lagom, uma excelente cervejaria artesanal que abriu recentemente e tem excelentes cervejas. Recomendo muito que visitem o local! Aliás, fazendo as contas por alto, devo ter consumindo 2 dúzias de latinhas de Red Bull neste último mês. Se por acaso você, leitor, trabalha na Red Bull, estou aceitando patrocínio, em espécie! :-)

E esta semana, dia 26 de Agosto, quinta-feira, teremos o Barcamp de Rails da Locaweb!! Você que é de São Paulo, já se inscreveu? Vamos nos encontrar para mais um happy hour, para networking e discussões geeks. Estaremos esperando vocês lá!

Depois disso, finalmente terei um período sem eventos. Devo estar de volta à estrada só na segunda semana de Setembro agora. Foi um excelente mês. Cansativo, mas excelente! Nos vemos por aí!


Gostou deste artigo? Considere fazer uma doação a este site.



Comente esse post