Aprendendo Ruby on Rails

Atualmente, sou um desenvolvedor Java e C #. Quanto mais olho para Ruby on Rails, mais eu realmente quero aprender.

O que você achou ser o melhor caminho para aprender RoR? Seria mais fácil desenvolver no Windows ou eu deveria apenas executar uma máquina virtual com o Linux?

Existe um IDE que possa corresponder à robustez do Visual Studio? Quaisquer programas para desenvolver que dão uma boa sobrecarga do que fazer? Algum bom livro?

Sério, quaisquer dicas / truques / reclamações seriam incríveis.

Eu tenho mudado de C # em minha carreira profissional para Ruby e RoR em minha vida pessoal, e achei o Linux um pouco mais atraente para o desenvolvimento pessoal. Particularmente agora que comecei a usar o git, a implementação é mais limpa no linux.

Atualmente eu tenho dual boot e estou ficando mais perto de executar o Ubuntu em tempo integral. Estou usando o gedit com vários plugins para o ambiente de desenvolvimento. E a partir do final de 2010, estou fazendo o esforço para usar o Vim para desenvolvimento, mesmo com o Textmate no OS X.

Uma grande quantidade de desenvolvedores do Rails está usando (gasp) Macs, o que realmente me fez pensar nessa direção.

Embora eu não tenha tentado, o Ruby in Steel oferece um IDE Ruby dentro do Visual Studio, e o IronRuby é o sabor .NET do Ruby, se você estiver interessado.

No que diz respeito aos livros, o livro Programming Ruby (também conhecido como Pickaxe) dos Pragmatic Programmers é, de fato, o aprendizado de Ruby. Mordi a bala e comprei esse livro e o Agile Web Development with Rails ; ambos os livros foram excelentes.

Screencasts Peepcode e livros PDF também foram ótimos para começar; por US $ 9 por screencast, é difícil dar errado. Eu realmente comprei um pacote de 5.

Confira também o seguinte:

  • Guias oficiais de rails
  • Railscasts
  • railsapi.com ou Ruby on Rails – APIdock
  • The Ruby Show
  • rails para zumbis
  • Softies on Rails – Ruby on Rails para desenvolvedores .NET
  • Rails Podcast
  • Melhores Práticas do Rails

Eu gravei o backlog dos podcasts Rails e Rails Envy no mês passado e eles forneceram informações maravilhosas sobre muitos tópicos, mesmo em relação ao desenvolvimento de software em geral.

Cuidado, o mundo dos rails é uma bagunça maciçamente frustrante de documentação e exemplos desatualizados e inconsistentes. É talvez uma das comunidades de desenvolvimento mais rápidas e mais modestas que existe. Quando você aprender alguma coisa, isso já terá mudado. Mesmo os livros não são consistentes em qual versão dos rails eles estão falando. Documentação por blogs! o suficiente disse.

Eu atualmente faço roR no windows. Meu conselho é evitar janelas, se puder. Muitas coisas não funcionam e a comunidade de rails realmente não se importa com você. A mudança para o Git realmente me atrapalhou, já que não funciona muito bem no Windows. Um monte de jóias irá falhar por causa disso (Heroku parece uma ferramenta legal – muito ruim para mim, não pode lidar com a configuração do Git da janela). Capistrano está fora. Continua e irritantemente ligado.

Além disso, no fundo da sua mente, você sempre se pergunta quando algo não funciona “É um problema de rails / janelas?” Eu não tenho certeza se isso é resolvido usando linux porque o linux traz suas próprias dificuldades como ter que atualizar constantemente todas as diferentes dependencies, etc … Se esse é o tipo de coisa que você gosta, pode ser uma boa escolha para você. Esses dias de curtir o sistema estão atrás de mim e eu só quero continuar fazendo meu trabalho. Estou planejando instalar o Ubuntu em uma máquina doméstica apenas para que eu possa me familiarizar com coisas como o Capistrano, então talvez minha opinião mude.

Eu sugiro que você faça rails dev por qualquer tempo que considere seriamente comprar um Mac. Se você valoriza seu tempo e sua sanidade, ele se paga quase que instantaneamente. Dependendo de como você valoriza o seu tempo, 10 horas depurando problemas de configuração do windows / linux e você gasta tanto quanto um Mac custa de qualquer maneira.

O Rails é uma alegria comparado ao que ele substitui, mas é um pouco trabalhoso que seus proponentes ignorem muitas coisas chatas, mas importantes, como documentação, problemas de compatibilidade e construção da comunidade. É muito mais poderoso que outros frameworks como o Django, mas às vezes eu examino a documentação e a comunidade do Django e suspiro como um cara com uma namorada sexy e selvagem olhando para a esposa simples, sadia e estável de seu amigo. Mas, em seguida, rails adiciona um recurso e eu vou “Ohhh shiny!”

Screencasts IMO the Rails são melhores que os screencasts Peepcode. O RubyPlus também tem screencasts, lembre-se, eles são um pouco ásperos nas bordas. BuildingWebApps tem um curso on-line gratuito que começa a fazer screencasts no meio do caminho.

Caminho de menor resistência:

  • Tenha um projeto web simples em mente.
  • Vá para rubyonrails.org e olhe para o seu “Blog em 15 minutos” screencast para ficar animado.
  • Obtenha uma cópia do Ruby de aprendizado da O’Reilly Media
  • Obtenha uma checkbox Mac ou Linux.
    (Menos frustrações iniciais do Rails, devido ao fato de que o Rails geralmente é desenvolvido sobre elas.)
  • Obtenha uma cópia do Agile Web Development with Rails .
  • Obtenha a versão do Ruby and Rails descrita nesse livro.
  • Percorra a primeira seção do livro para ter uma ideia de como é.
  • Vá para railscasts.com e veja os primeiros vídeos para um olhar mais atento.
  • Compre o Rails Way de Obie Fernandez para entender melhor o Rails e o que ele está fazendo.
  • Em seguida, atualize para a versão de produção mais recente do Rails e veja os vídeos mais recentes do railscasts.com.

Eu escrevi um post chamado “Getting Started With Rails – O que eu gostaria de saber” que muitas pessoas acharam útil.

O básico:

  • Desenvolvimento ágil com Rails (livro)
  • InstantRails para ambiente rápido de ruby ​​/ rails no Windows
  • Aptana como o IDE
  • Subversion para version control

Os tutoriais on-line são decentes, mas espalhados. Invista $ 30 em um livro para uma compreensão mais abrangente.

Eu encontrei http://railstutorial.org/book para ser um ótimo recurso para aprender Rails

Eu gosto muito do RubyMine da Jetbrains. Parece um IDE muito completo que sinto falta de muitas outras alternativas. Também por um env simples eu aprecio e o editor de texto. Claro e simples.

 IDE: NetBeans
 Livro: Desenvolvimento Web ágil com rails
 Instalação: rails Instantâneos
  1. Estruturas de Dados e Algoritmos com Padrões de Design Orientados a Objetos em Ruby Bruno R. Preiss | Publicado em 2004

  2. Aprenda a programar Chris Pine | Pragmatic Bookshelf Publicado em 2006, 176 páginas

  3. Livro de Rubis Humilde do Sr. Vizinhança Jeremy McAnally | Publicado em 2006, 147 páginas

  4. Programação Ruby: Um Guia Pragmático do Programador David Thomas, Andrew Hunt | Addison-Wesley Publicado em 2000, 608 páginas

  5. rails em uma casca de noz C. Fauser, J. MacAulay, E. Ocampo-Gooding, J. Guenin | O’Reilly Media Publicado em 2009, 352 páginas

  6. Melhores Práticas Ruby Gregory T. Brown | O’Reilly Media Publicado em 2009, 328 páginas

  7. Ruby Essentials | Techotopia Publicado em 2007

  8. Segurança Ruby on Rails Heiko Webers | OWASP Publicado em 2009, 48 páginas

  9. Guia do usuário Ruby Mark Slagell | Publicado em 2005

  10. O livro do ruby Huw Collingbourne | Publicado em 2009, 425 páginas

  11. O Pequeno Livro de Ruby Huw Collingbourne | Dark Neon Ltd. Publicado em 2008, 87 páginas

  12. por que (comovente) guia para Ruby por que a sorte dura | Publicado em 2008

Há uma série contínua muito sólida no NETTUTS agora que você pode estar interessado.

http://railsforzombies.org/ é uma boa ideia. Apresentando uma maneira totalmente nova de aprender Ruby on Rails no navegador sem nenhuma configuração adicional necessária.

Como você, sou um desenvolvedor Java / C # tentando aprender mais Ruby On Rails.

Estou fazendo o curso online gratuito Ruby on Rails Programming com Passion , é um bom curso introdutório, confira.

Estamos usando o NetBeans como IDE (win / mac / linux / solaris), se você está acostumado com o Eclipse ou o Visual Studio, há uma boa chance de que você goste.

Decisão fantástica! É extremamente útil obter um aterramento em Ruby antes de ir para Rails, então aqui está minha opinião sobre o melhor caminho para Rails:

  • Aprenda a programar por Chris Pine – Você pode ler isso em uma tarde para ter uma ideia da linguagem Ruby.
  • O Rubyist Bem Fundamentado por David Black – Como o título diz que lhe dará uma excelente base na língua.
  • Eloquent Ruby por Russ Olsen – Este livro é sublime, parece um romance.
  • Melhores práticas de Ruby por Gregory Brown – Por este ponto, você deve estar pronto para o nível avançado deste livro.
  • Rails for Zombies – Tutorial divertido que você pode completar em uma tarde.
  • Rails Tutorial de Michael Hartl – Fantástico (e gratuito) tutorial e eu ouvi seus screencasts que acompanham são surpreendentes.
  • Agile Web Development com Rails por Sam Ruby – Quando você terminar, você agora é uma pessoa completamente capaz do Rails!

Além de livros, o mais importante é obter feedback sobre o que você está fazendo. Para fazer isso eu recomendo gastar tempo em irc.freenode.net #ruby e #rubyonrails. Também é extremamente útil postar coisas nas quais você está trabalhando ou tendo problemas aqui no stackoverflow, já que comentários, explicações e maneiras diferentes de pensar sobre coisas que as pessoas fornecem são inestimáveis.

Você também deve verificar o podcast Ruby Rogues , eles fornecem informações valiosas e os comentaristas são pessoas extremamente respeitadas na comunidade Ruby. E para o seu prazer de ler e ler (nessa ordem), vá até Railscasts de Ryan Bates e depois Asciicasts de Eifion Bedford.

Finalmente, eu recomendo olhar em diferentes gemas no github, lendo o código e, em seguida, contribuindo para elas. Você não precisa ser excessivamente ambicioso e recodificar em massa, especialmente no começo. Basta começar com pequenas coisas como editar e tornar os arquivos README um pouco mais fáceis de ler.

Eu não uso um IDE, mas no Railsconf eu vi uma demo do Rubymine da Jetbrains e pareceu bastante incrível.

0) APRENDA RUBY PRIMEIRO. Isto é muito importante. Uma grande vantagem do Rails é o Ruby: uma ótima linguagem que é muito poderosa, mas também incrivelmente fácil de entender mal. Execute alguns tutoriais on-line do Ruby. Quando os desafios de codificação aparecerem no Daily WTF, escreva-os em Ruby. Você vai pegar rápido.

1) Vá comprar o livro “Ruby for Rails”

2) Confira um tutorial sobre Rails e assine o blog Riding Rails .

3) Standup um aplicativo localmente. Não use andaimes.

4) Quando você instala plugins em seu aplicativo, vá ver o código desse plugin (no diretório do seu fornecedor) e aprenda-o. É uma das melhores maneiras de aprender internamente sobre Ruby e Rails. Quando você não entende como algo funciona, poste aqui e 1.000 pessoas irão ajudá-lo.

Quanto às suas outras perguntas:

Sim, você precisará de um ambiente Linux para se desenvolver. Você pode desenvolver o Rails no Windows, mas isso não significa que deva ser feito. Muitas gemas não estão prontas para o Windows.

O NetBeans funciona bem como um IDE. Se você estiver em um Mac, você terá credibilidade em usar o Textmate.

Encontre um grupo de usuários Ruby próximo e comece a participar disso. Descobri que é uma ótima maneira de conhecer muitas pessoas que são apaixonadas pelo desenvolvimento e dispostas a ensinar.

Estou surpreso que tenha havido tão pouca menção do Why’s (Poignant) Guide to Ruby. Por que não pode ser mais em torno, mas o guia é fácil de encontrar na net (o Google aponta aqui primeiro ) é uma leitura muito fácil e desde a minha introdução ao Ruby.

Depois do guia, eu recomendo qualquer um dos livros que os outros sugeriram, ou seguindo a série de screencasts no Learning Rails, que é como eu peguei bastante Ruby on Rails para ser perigoso. Depois de concluir a série Learning Rails. O que você quer fazer com o Rails vai começar a divergir dos tutoriais gerais e é aí que o Railscast se torna uma ferramenta maravilhosa. Não há muito o que fazer com o Rails que o Railscasts não tocou em algum momento.

Minha primeira sugestão seria aprender um pouco sobre os símbolos primeiro. O Rails não é o framework mais pequeno de todos os tempos, e apesar de haver muito a aprender, a maioria começará a fazer sentido se você tiver pelo menos um pouco de compreensão do que o torna diferente (“especial”) de outras linguagens. Como foi apontado, não existe um análogo exato em nenhum dos principais idiomas, mas eles são muito usados ​​pelo Rails, para fazer as coisas lerem diretamente e terem um bom desempenho, e é por isso que o trouxe. Minha primeira exposição ao Rails também foi minha primeira vez olhando para Ruby (bem antes de 2.0), e a primeira coisa que chamou minha atenção foi o bobo :things pelas :things eles estavam passando, e eu perguntei: “WTF é isso ?”

Além disso, confira o RubyQuiz e leia as respostas de outras pessoas nesse site.

Eu vim de um fundo Java para Ruby para. Eu achei este tutorial útil http://www.ruby-lang.org/en/documentation/ruby-from-other-languages/to-ruby-from-java/ . Quando se trata de aprender rails, não posso dizer quanto uso script \ console. Ele permite que você jogue com o código e aprenda a fazer coisas das quais você não tem certeza.

O único livro que comprei foi o Desenvolvimento Ágil da Web com Rails, Terceira Edição http://www.pragprog.com/titles/rails3/agile-web-development-with-rails-third-edition . Foi bastante útil e forneceu uma boa visão geral do framework Rails. Além disso, eu assito regularmente no Railscasts ( http://railscasts.com ), que é um ótimo blog de transmissão de canvas que cobre todos os tipos de tópicos do Rails.

Eu pessoalmente prefiro usar o Linux (porque o git funciona melhor). Mas, eu também usei windows e além do git eu não acho que a escolha do SO irá impactar sua programação.

Eu uso netbeans para o meu IDE e, ocasionalmente, vim (com o plugin rails). Eu gosto de netbeans mas, eu acho que ainda pode ser um pouco esquisito quando se trata do suporte Rails (nem todos os resources funcionam o tempo todo).

Isso parece um ótimo recurso para pessoas como eu que estão vindo do PHP para o RoR

http://railsforphp.com/ Há também um livro Rails for PHP Developers

Eu costumava fazer Java e C # no Windoze.

Eu segundaria essas fonts:

IDE : Tente Apatana RadRails 3 Sneak Peek: http://www.radrails.org/3 . É a coisa mais próxima que você vai chegar ao Visual Studio. Eu brinco com isso aqui e ali, mas ainda amo a leveza do Textmate.

OS : O Mac OS obtém o máximo, se não todo o amor, da comunidade Ruby. Qualquer outra coisa é tratada como um filho bastardo.

Livros :

  • O guia dos programadores pragmáticos (o livro da picareta)
  • Desenvolvimento Web Agile com Rails

Screencasts :

  • Peepcode (pagamento) é uma boa maneira de pegar conceitos rapidamente
  • Railscasts (grátis) é uma boa maneira semanal de pegar novas gemas e conceitos incrementalmente
  • Railscasts (pro) também é uma boa maneira de pegar conceitos por um preço bem baixo.

A fonte ubber para qualquer coisa Rails é http://www.rubyonrails.org/ se eles não tiverem no site, você provavelmente não precisa.

Um livro de receitas rápido é o Ruby on Rails: Up and Running você pode obtê-lo da O’Rielly ou pesquisar no Google por uma versão on-line. Eles andam pelas convenções do Rails e usam o Instant Rails, o que é bom.

Um melhor livro de Rails “Desenvolvimento Web ágil com Rails” Esta é a sopa para nozes do Rails. Ele leva você embora baixando e configurando Rails, Gems, tudo.

Se você quer um ‘cara’ Java e quer um livro de transição, O’Reilly tem o “Rails for Java Developers” http://oreilly.com/catalog/9780977616695/?CMP=AFC-ak_book&ATT=Rails+for+Java+Developers

Outra IDE que você poderia tentar é o Aptana .

Eu quase me esqueci. Aqui estão mais alguns resources de screencast Ruby:

SD Ruby – com um monte de vídeos online – eu encontrei suas conversas de descanso SD9 e SD10 para estar entre as melhores das introduções. Outras conversas de descanso assumem que você sabe tudo. Estes são muito introdutórios e ao ponto.

Obie Fernandez na InfoQ – Restful Rails. Eu também li o livro Rails Way dele e achei isto informativo mas realmente longo sem fôlego e meandering ea qualidade é um pouco inconsistente. Eu aprendi muito com este livro, mas senti que era um pouco chato ter que ler as coisas repetitivas e irrelevantes para chegar aos bons pedaços.

O NetBeans é uma boa mão segurando IDE que pode lhe ensinar muitos truques de linguagem se você tiver paciência para esperar por suas dicas de ferramentas (é um IDE dolorosamente lento mesmo em uma máquina realmente rápida) e você pode usar o IDE para navegar graficamente os geradores disponíveis e coisas assim. Obtenha as versões mais recentes e você até terá o teste Rspec em execução.

Bort é um aplicativo base pré-construído com muitos dos plugins padrão já conectados. Se você baixar e jogar com ele e descobrir como ele é configurado, você está prestes a criar seus próprios aplicativos com todos os resources.

Eu comprei o livro “Simply Rails 2” de Patrick Lenz.
Este livro é uma ótima introdução ao Ruby e ao Ruby on Rails.
Quanto a minha instalação ruby ​​e db, usei o Cygwin.
Ele vem com PostgreSQL, ruby ​​e svn.
Eu gosto do PostgreSQL porque eu venho de um Oracle
fundo para que se sinta mais confortável do que o MySQL.

O outro utilitário que eu achei muito útil foi o pgAdmin
para acessar os bancos de dados do PostgreSQL.

A primeira coisa que eu precisava fazer era instalar as gemas.
Eu tenho o arquivo tar gemas de rubyforge
wget ” http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz

Uma vez que eu tinha configuração de gemas, eu instalei

rails
ruby-postgres
postgres
prateleira

Eu também precisava de um sistema de rastreamento de problemas, então eu instalei o redmine.
wget ” http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz

Descobri que usar um ambiente semelhante ao UNIX (Cygwin) era
preferível no meu caso, porque muitos dos tutoriais eram
taylored para OS X ou Linux.

O editor de texto que uso é o Textpad. Estou procurando uma alternativa. Eu acho que o vim com o plugin rails pode funcionar bem.

Eu venho de um fundo não-programação. Eu aprendi PHP por conta própria e recentemente me juntei a uma empresa especializada em Ruby on Rails. Eles têm um programa abrangente de treinamento em Rails, que é flexível o suficiente para acomodar quaisquer mudanças que desejamos implementar. Embora eu não seja um profissional de rails, gostaria de compartilhar minha experiência com rails. Espero que ajude.

Aqui está o caminho que estou seguindo [combinado com as ferramentas que estou usando]

  • Comece com um guia simples de rubys. Isso ajudará bastante, já que o framework de rails inteiro gira em torno de classs e objects.
  • Ambiente e sistema operacional não são importantes. Embora eu esteja trabalhando em um Mac, frequentemente trabalho em Linux e Windows, e não enfrento nenhum problema.
  • Comece com um bom livro que explique o uso de um aplicativo de demonstração. [Estou usando o Agile Web Development com Rails – pela pragmática Bookshelf]. Existem muitos outros bons livros também.
  • Depois de concluir o aplicativo, você terá uma boa ideia do framework.
    • Tente entender as consultas SQL geradas pelo módulo Active Record.
    • Percorra os Guias de Rails. Você vai encontrar o quadro muito mais fácil.
  • Continue praticando.

Alguns pontos imp

  • Leva anos para aprender uma língua completamente. Portanto, seja paciente e não pare de aprender.
  • Vá através de rails api como quando necessário. [Enquanto desenvolve seu primeiro aplicativo]
  • Google as coisas que você não entende. As pessoas escreveram ótimos artigos sobre quase todos os tópicos.
  • Use Stackoverflow 🙂 [somente quando você não conseguir encontrar a solução por conta própria.]
  • Carregue railscasts no seu telefone ou player de vídeo. Assista enquanto viaja ou no seu tempo livre. Eles são de poucos minutos cada. Você aprenderá muitas coisas e também aprenderá a melhor maneira de fazer as coisas.

Ferramentas

  • Shell [no Mac e no Ubuntu]
  • Editor [Textmate no Mac, Gedit no Ubuntu e Notepad ++ no Windows]
  • Firefox com o Firebug instalado para teste.

Finalmente, tenho uma coisa a dizer “Continue tentando”. Muito bem sucedida.

A maneira mais rápida de aprender qualquer coisa, incluindo o Ruby on Rails, é a programação em pares.

Encontre alguém que conheça o Rails, escolha um aplicativo de exemplo, sente-se e trabalhe na correção de bugs, adicionando resources.

O compartilhamento de conhecimento é inacreditável.

Minha sugestão é apenas começar – escolha um pequeno projeto que você usaria geralmente para aprender uma linguagem no estilo MVC (ou seja, algo com um database, talvez algum stream de trabalho básico) e, quando precisar aprender um conceito, use um (ou ambos

Desenvolvimento Web ágil com Rails ou The Rails Way

para saber como funciona e, em seguida, tente.

Os problemas com o Agile Web Development são que ele está desatualizado e que o cenário é executado por muito tempo para que você realmente queira construí-lo uma vez; O Rails Way pode ser difícil de ser seguido, já que ele é refletido de referência para aprendizado, mas quando é bom, é melhor que o Agile Web Development.

Mas no geral eles são bons livros, e ambos são bons para aprender, mas nenhum deles fornece um caminho de “educação” que você deseje seguir. Então eu li alguns capítulos do primeiro (o suficiente para obter os conceitos básicos e aprender como inicializar o primeiro aplicativo – existem alguns artigos on-line que ajudam com isso também) e então comecei, e depois a cada poucos dias eu li sobre algo novo ou eu uso os livros para entender alguma coisa.

Mais uma coisa: os dois livros são muito mais livros de Rails do que livros de Ruby, e se você for escrever um código limpo, vale a pena passar um dia aprendendo a syntax de Ruby o mais cedo possível. Por que o Guia para Ruby é bom, existem outros também.

Eu acho que os screencasts e os livros curtos do Peepcode são realmente bons. Eles têm screencasts para você começar e ter um pouco mais avançado.

Existe um site chamado Softies on Rails que é escrito por um par de desenvolvedores ex-.NET que podem ser de alguma utilidade. Eles têm um livro chamado Rails for .NET Developers, que será lançado nos próximos meses …

Eu comecei em uma checkbox do Windows usando o plugin RadRails para o Eclipse e a extensão RubyWeaver para o Dreamweaver (de volta durante os 1.x dias do Rails). Desde então, mudei para um Mac rodando o TextMate e não pensei em voltar.

Quanto aos livros, comecei com o Ruby Way e o Agile Web Development with Rails. Definitivamente ajuda a construir um plano de fundo em Ruby quando você começa a entrar no desenvolvimento do Rails.

Definitivamente assistir a série Railscast por Ryan Bates.

Eu encontrei “The Rails Way” por Obie Fernandez excelente e muitas vezes me vi referindo-se a ele quando o Agile Web Development with Rails não parecia ir longe o suficiente. Obie Fernandez tem um blog decente também.

Espere alguns meses por Learning Rails, de Simon St. Laurent, e Edd Dumbill , em novembro. Essa série de livros é estupenda, e este livro abordará a última versão do Rails.