Ah, Ruby on Rails. O campeão da agitação da startup e o projeto paralelo. Em essência, isso descreve muito porque eu acho que as pessoas apreciam a comunidade como um todo, porque todos apreciam esses dois fatos.

Certamente fez muito pelo mundo das startups e pelas comunidades de desenvolvedores. É muito semelhante a idiomas como JavaScript nos efeitos que teve no mundo da web. Eu conheço algumas pessoas que entraram no desenvolvimento apenas devido ao fato de o Rails ser tão convidativo, e o Ruby é tão bonito.

Você pode achar que Ruby on Rails é ideal para o seu grande projeto, vamos mergulhar no básico e descobrir.

Ruby on Rails para iniciantes e startups

Ruby é uma linguagem dinâmica de alta finalidade que tem todos os benefícios de Perl e PHP, sem os problemas de sintaxe que eles trazem consigo.

Ruby foi criado por Yukihiro "Matz" Matsumoto , em meados da década de 1990. E é usado dentro do framework Rails, daí o Ruby on Rails. O Rails é uma estrutura de aplicativo da Web de pilha completa de software livre que aproveita muito do poder que o Ruby oferece. Ele também oferece organização e ótimas metodologias de programador, tudo em uma estrutura singular e, além disso, é incrivelmente extensível.

Agora, não vou entrar em detalhes muito mais técnicos, afinal, essas são coisas que você poderia encontrar em uma rápida pesquisa no google. Então vamos para a carne da conversa.

Trilhos para iniciantes

Pode ser um exagero dizer que o Rails salvará sua vida, mas o fato é que eu consegui mais pessoas para começar a programar através do Rails e do Ruby do que qualquer outra linguagem ou framework. Eu acho que o ambiente como um todo é totalmente acessível para os recém-chegados à programação. Por exemplo, a comunidade é bastante homogênea e parece estar focada nos mesmos objetivos. Isso realmente significa muito quando se trata de milhares de pessoas tentando direcionar sua atenção.

Digamos que você começasse na comunidade JavaScript, bem, é como o oeste selvagem. Há coisas inacreditavelmente incríveis acontecendo naquela comunidade, desde robótica, jQuery, Node, backbone, testes, estatísticas avançadas, e muitas demandas de atenção.

Tantas pessoas estão tentando ir em tantas direções diferentes que pode ser difícil para um iniciante decidir quem do que seguir.

Há, talvez, um grande cruzamento de pessoas dessas duas comunidades, é muito claro que o que eles se preocupam em JavaScript não é o mesmo que nos preocupamos em Ruby e Rails como uma estrutura ou linguagem.

Além de tudo, você obtém uma linda linguagem de programação.

Rails

Imagem de trilhos via Shutterstock.

Preferência pessoal apenas aqui, mas acho que Ruby é a mais bela linguagem de programação já criada. É a coisa mais incrível que eu já usei para codificar, e isso realmente me motiva a criar coisas ao lado quando eu chego em casa depois de um longo dia de programação no meu trabalho. É quando você sabe que uma linguagem é divertida para você, quando você faz isso depois de 8 a 10 horas de programação no seu dia de trabalho. Eu percebo que pode não ser o mesmo para todos, mas como regra geral, o criador do Ruby realmente se esforçou para sintaxe humana legível e não complicar as coisas como ele foi. Muito semelhante à maneira como o criador do Clojure abordou a construção de uma linguagem: processo. Ambos escolheram a simplicidade em detrimento da complexidade, porque todos sabemos que na simplicidade surge uma grande complexidade; e tipicamente vice-versa, daí a beleza de coisas como Ruby e Clojure (menos o uso excessivo de parênteses em Clojure, ugh ).

Encontrar um caminho a seguir na comunidade Rails é muito simples. Em outros idiomas, pode ser um pouco mais difícil saber quem são os 'formadores de opinião', mas no Rails é muito óbvio. Isso não quer dizer que você tem que seguir essas pessoas, mas dessas pessoas você pode deduzir onde os pesos pesados ​​estão brincando e depois ir a partir daí.

Normalmente, pesos-pesados ​​têm projetos ou esforços no Rails que estão no centro de uma comunidade vibrante que o apóia. Então, esses são sempre ótimos lugares para entrar. Por fim, o Rails é um framework muito experimental e uma experiência progressiva para codificar conforme você o utiliza.

Como iniciante, você não apenas desfrutará da sintaxe e da comunidade, mas também será estimulado a aprender coisas novas. E é tudo sobre aprender coisas novas neste mundo de programação.

Rails para startups

O Ruby on Rails é uma das ferramentas mais poderosas, e a maioria das ferramentas capacitadoras, o vale e as startups em todo o mundo têm visto em anos.

Seja a sintaxe, a capacidade de se levantar e correr em horas, a prototipagem incrivelmente rápida, seja o que for, ela decolou.

As lojas de trilhos e as startups de todo o mundo também decolaram por causa disso, e isso é simplesmente o açúcar no pudim e por que é um deleite delicioso para você. Não só você tem tantas outras empresas adotando, e possivelmente correndo em questões semelhantes, você também tem uma estrutura testada em batalha.

Este não é um produto Alpha, não é um produto Beta. Este não é um processo de pensamento abstracto para os desenvolvedores organizarem o código. Este é um resultado de "estilo de cães selvagens" de pessoas que se agruparam para formar esta comunidade, tudo iniciado por um DHH do 37signals .

Mais uma vez, vou harpa na comunidade, porque é tão importante. É uma comunidade tão evoluída e madura (em certo sentido) que você pode literalmente encontrar ajuda de qualquer maneira que possa precisar. Seja desenvolvedores que amam programar em trilhos ou apenas pessoas que querem consultar para resolver seus problemas. Todo o caminho para pessoas que gostam de usar NoSQL em ambientes Rails, bem como o amor para odiar no pipeline de ativos;)

Falando nisso, é outra grande coisa para iniciantes e iniciantes. Existe uma ferramenta organizacional chamada de pipeline de ativos que ajuda você a organizar todo o seu JavaScript (ou CoffeeScript), CSS e imagens em uma pasta que contenha as respectivas subpastas. Isso em si é útil. No geral, se você estiver em uma startup procurando por um idioma para codificar seu produto, dê uma chance ao Rails. Você pode apenas achar que isso te surpreende.

Por que o Rails é útil (para desenvolvedores individuais)

Outro lugar que o Rails realmente decolou está no espaço de projetos pessoais.

Muitos desenvolvedores são bem parecidos, como eles são indivíduos inteligentes e capazes. Eu sei que sei, isso não é uma regra, mas ainda é muitas vezes o fato do assunto. E pessoas de tal natureza geralmente querem ter projetos pessoais que possam aprender ou obter receita. E todos que eu conheço concordam que o Rails é uma maneira perfeita de fazer isso.

Rails

Imagem de trilhos via Shutterstock.

Usar ferramentas como o Heroku para desenvolvimento de implantação e implantação de um aplicativo Rails é literalmente um passo de 1, 2, 3 ou melhor, de 1, 2. É maravilhoso. Na verdade, eu uso Rails e Heroku para lidar com o meu blog. Toda vez que faço alterações, eu compilo ativos de produção para o Heroku, passo para o Github e, em seguida, empurro para o Heroku. Que simples. E se eu tenho um novo computador que eu quero puxar para baixo, eu apenas mudo alguns controles remotos com um pouco fácil de entender magia terminal , e é isso - você está pronto para hackear.

Uma das partes muitas vezes incompreendidas do processo de desenvolvimento é complicar demais as coisas por acidente. É apenas uma das coisas mágicas em desenvolvimento, parece. Você pode, sem consideração ou acaso, literalmente complicar demais qualquer coisa . É exatamente o que acontece e, muitas vezes, os desenvolvedores nem percebem que estão fazendo isso. Bem, você está com sorte, Ruby tem muita ação de 'convenção sobre configuração' acontecendo, o que realmente nos ajuda a complicar as coisas.

Por exemplo, se você tiver uma classe de "Biblioteca" que herda de ActiveRecord, então procurará automaticamente por uma tabela chamada Biblioteca no banco de dados. São pequenas coisas que nos ajudam a não ter que escrever mais e mais. Na verdade, isso exemplifica excessivamente a essência de DRY (Don't Repeat Yourself). Que é incrível e muito útil. Por que não economizar um pouco de tempo, afinal é mais tempo para o café.

Outra coisa que eu amo é que o criador da linguagem é absolutamente obcecado com a simplicidade e a beleza do código. Então, se ele puder fazer algo mais simples e de uma maneira mais bonita, ele o implementará, para a angústia de muitos desenvolvedores. Mas eu pessoalmente adoro isso.

O Rails, como um mecanismo, também ajudará você a aprender sobre estruturas em geral, sem precisar pisar nos dedos dos pés, e acho que isso acontece de uma maneira perfeitamente equilibrada.

É claro, as pessoas dirão que os frameworks PHP fazem isso de uma maneira melhor, porque você ainda pode bater a cabeça em uma parede com PHP sem encontrar maneiras de contornar (aprender). Mas, na verdade, acho que o Rails faz isso de uma maneira muito mais elegante que o PHP, e provavelmente sempre o fará.

Rails

Imagem de trilhos via Shutterstock.

Você vê, no Rails você ainda tem que aprender muito para poder construir um aplicativo Rails real ou pequeno. Não é como se você pudesse simplesmente usar andaimes para tudo. Na verdade, você ativamente não pode fazer isso, mas a princípio você o ajudará a aprender coisas como Views, Templating e como o Ruby interage com o HTML.

Por exemplo, uma coisa que adoro fazer é colocar uma variável Ruby que esteja armazenando dados do servidor de algum tipo que já tenha sido definido em um atributo de dados. Então, por exemplo: -data-attribute-for-ruby = ”<% = Time.now%>” e depois trabalhar ou interagir com esse atributo de dados em JavaScript.

O Rails pode ficar bastante complicado muito rápido, e a beleza do Rails é que obriga você a explorar outras linguagens também. Isso permitirá que você seja realmente bom em JavaScript e muito bom em CSS. Ele também lhe dará uma melhor compreensão do SQL e como os bancos de dados operam, tudo de forma implícita.

A simplicidade faz com que a barreira à entrada seja tão baixa que, mesmo olhando para o esquema do banco de dados, faz sentido. Oh , eu fiz essa aula, então aí está. Não, Oh , espere, eu fiz a coisa da classe então agora eu tenho que fazer o banco de dados como eu faço isso. Eu não sei sobre bancos de dados. Ugh. Parafuso isso. Nada disso no Rails.

Você aprende sem ter seu pé pisado. E é uma coisa incrivelmente bela.

Em resumo

Eu realmente acho que aprender Ruby pode fazer de você um programador mais feliz em geral.

Eu só posso falar por experiência pessoal aqui, mas honestamente revigorou a vida em meu desenvolvimento. Eu era um cara PHP por mais de 8 anos e realmente era algo que eu não "amava", mas eu fiz de qualquer maneira. Depois de encontrar Ruby, literalmente joguei minhas mãos e nunca mais voltei para o PHP. Foi uma mudança tão grandiosa na minha vida que criei projetos, consegui empregos, fiz consultoria e contribuí para alguns grandes projetos de código aberto, assim como o núcleo Rails, onde antes eu era apenas um estudante que conhecia PHP.

Eu poderia, claro, ter contribuído e feito essas coisas em PHP, mas o ponto é que eu nunca tive a paixão de fazê-lo, e a paixão é tão importante. Se você não tem paixão pelo que faz, então deve parar de fazer isso. Agora mesmo. E então você deve aprender Ruby on Rails. Pode trazer de volta.

Você já mergulhou no Ruby on Rails? Você acha que existe uma plataforma de desenvolvimento melhor? Deixe-nos saber nos comentários.