Ah, Ruby on Rails. Il campione del trambusto della startup, e il side project. Questo in sostanza descrive molto il motivo per cui penso che la gente apprezzi la comunità nel suo insieme, perché tutti apprezzano questi due fatti.

Ha sicuramente fatto molto per il mondo delle startup e per le community di sviluppatori. È molto simile a linguaggi come JavaScript negli effetti che ha avuto sul mondo web. Conosco un bel po 'di persone che sono entrate in sviluppo solo per il fatto che Rails è così invitante e Ruby è così bello.

Potresti scoprire che Ruby on Rails è adatto al tuo grande progetto, immergiti nelle nozioni di base e scoprilo.

Ruby on Rails per principianti e startup

Ruby è un linguaggio dinamico ad alto utilizzo che ha tutti i vantaggi di Perl e PHP, senza i problemi di sintassi che portano con sé.

Ruby è stato creato da Yukihiro "Matz" Matsumoto , a metà degli anni '90. Ed è utilizzato all'interno del framework Rails, quindi Ruby on Rails. Rails è un framework di applicazioni web full stack open source che sfrutta tutta la potenza che Ruby offre. Offre anche un'organizzazione e grandi metodologie di programmatore tutte incastonate in un unico framework, e per di più è incredibilmente estensibile.

Ora, non entrerò in dettagli molto più tecnici, dopo tutto, queste sono cose che potresti trovare in una rapida ricerca su google. Quindi prendiamo la carne della conversazione.

Rotaie per principianti

Potrebbe essere un'esagerazione esagerare affermare che Rails ti salverà la vita, ma il fatto è che ho ottenuto più persone per iniziare a programmare attraverso Rails e Ruby di qualsiasi altra lingua o framework. Penso che l'ambiente nel suo complesso sia totalmente accessibile ai nuovi arrivati ​​alla programmazione. Ad esempio, la comunità è piuttosto omogenea e sembra focalizzata sugli stessi obiettivi. Questo significa davvero molto quando si tratta di migliaia di persone che cercano di dirigere la tua attenzione.

Diciamo che dovresti iniziare nella comunità JavaScript, beh, è ​​come il selvaggio west. Ci sono cose incredibilmente incredibili che accadono in quella comunità, dalla robotica alla jQuery, al Nodo, alla spina dorsale, alla verifica delle statistiche avanzate e così tanto richiede la tua attenzione.

Così tante persone stanno cercando di andare in così tante direzioni diverse che può essere difficile per un principiante decidere chi di cosa seguire.

C'è forse un sacco di crossover di persone provenienti da queste due comunità, è chiaro che ciò che interessa in JavaScript non è lo stesso di quello che ci interessa in Ruby e Rails come framework o linguaggio.

Oltre a tutto ciò si ottiene un bellissimo linguaggio di programmazione.

Rails

Immagine di rotaie via Shutterstock.

Preferenza personale solo qui, ma penso che Ruby sia il linguaggio di programmazione più bello mai creato. È la cosa più straordinaria che abbia mai usato per codificare e mi motiva davvero a creare cose sul lato quando torno a casa da una lunga giornata di programmazione nel mio lavoro. Questo è quando sai che una lingua è divertente per te, quando lo fai dopo 8-10 ore di programmazione nel tuo lavoro diurno. Mi rendo conto che potrebbe non essere lo stesso per tutti, ma come regola generale, il creatore di Ruby si è sforzato davvero per la sintassi leggibile dall'uomo e non ha complicato le cose mentre andava. Molto simile al modo in cui il creatore di Clojure si avvicina alla costruzione di un linguaggio: processo. Entrambi hanno scelto la semplicità rispetto alla complessità, perché sappiamo tutti che nella semplicità arriva una grande complessità; e in genere vice-versa, quindi la bellezza di cose come Ruby e Clojure (meno l'uso eccessivo di parentesi in Clojure, ugh ).

Trovare un percorso da seguire nella community di Rails è molto semplice. In altre lingue può essere un po 'più difficile sapere chi sono i "tastemaker" per così dire, ma in Rails è molto ovvio. Questo non vuol dire che devi seguire quelle persone, ma da quelle persone puoi dedurre dove stanno giocando i pesi massimi, e poi andare da lì.

In genere i pesi massimi hanno progetti o sforzi in Rails che sono al centro di una vivace comunità che lo supporta. Quindi quelli sono sempre ottimi posti in cui saltare. Infine, Rails è un framework molto sperimentale e una lungimirante esperienza per codificarti mentre lo usi.

Come principiante non solo godrai della sintassi e della community, ma sarai anche spinto ad imparare cose nuove. E si tratta di imparare cose nuove in questo mondo di programmazione.

Rotaie per startup

Ruby on Rails è uno degli strumenti più potenti e la maggior parte degli strumenti abilitanti, la valle e le start-up di tutto il mondo hanno visto negli anni.

Che si tratti della sintassi, della capacità di alzarsi e correre in poche ore, di prototipare in modo incredibilmente veloce, qualunque esso sia, è decollato.

Anche i negozi di rotaie e le start-up sono decollati per questo, e questo è semplicemente lo zucchero nel budino per cui è un piacere delizioso per te. Non solo hai così tante altre aziende che lo adottano, e possibilmente si imbattono in problemi simili, hai anche un framework testato in battaglia.

Questo non è un prodotto Alpha, non è un prodotto Beta. Questo non è un processo di pensiero astratto per gli sviluppatori di organizzare il codice. Questo è un "gruppo di cani in stile selvaggio" ottenuto da persone che si sono raggruppate per formare questa comunità, il tutto iniziato da uno DHH di 37signals .

Di nuovo, suonerò la comunità, perché è così importante. È una comunità così evoluta e matura (in un certo senso) che puoi trovare letteralmente aiuto in qualsiasi modo tu possa aver bisogno. Che si tratti di sviluppatori che amano programmare in binari o solo persone che vogliono consultarsi per risolvere i tuoi problemi. Fino alle persone che amano usare NoSQL negli ambienti Rails, oltre ad amare l'odio in Asset Pipeline;)

A proposito, è un'altra grande cosa per principianti e start-up. C'è uno strumento organizzativo chiamato la pipeline di asset che ti aiuta a organizzare tutto il tuo JavaScript (o CoffeeScript), CSS e immagini in una cartella che ospita quelle rispettive sottocartelle. Questo di per sé è utile. Tutto sommato, se sei in una startup alla ricerca di una lingua da dilettare, per codificare il tuo prodotto, dai una chance a Rails. Potresti solo scoprire che ti sorprende.

Perché Rails è utile (per i singoli sviluppatori)

Un altro posto che Rails ha davvero decollato è lo spazio dei progetti personali.

Molti sviluppatori sono abbastanza simili, perché sono persone intelligenti e capaci. So che lo so, questa non è una regola, ma è ancora spesso il fatto della questione. E le persone di tale natura spesso desiderano avere progetti personali su cui possono incidere per apprendere o ottenere entrate. E tutti quelli che conosco concordano sul fatto che Rails sia un modo perfetto per farlo.

Rails

Immagine di rotaie via Shutterstock.

L'utilizzo di strumenti come Heroku per l'implementazione e la distribuzione di un'app Rails è letteralmente un 1, 2, 3 step o piuttosto un 1, 2 step. È stupefacente. In effetti, io uso Rails e Heroku per gestire il mio blog. Ogni volta che apporto delle modifiche, compilo i beni di produzione per Heroku, spingo su Github e poi spingo su Heroku. Così semplice E se ho un nuovo computer a cui voglio arrivare, cambio solo alcuni telecomandi con un po 'di facile comprensione magia terminale e questo è tutto - sei pronto per hackerare.

Una delle parti spesso incomprese del processo di sviluppo è la complicazione eccessiva delle cose per caso. È solo una delle cose magiche in sviluppo, a quanto pare. È possibile senza riguardo o casualità complicare letteralmente qualsiasi cosa . È proprio quello che succede, e spesso gli sviluppatori non si rendono nemmeno conto di farlo. Beh, sei fortunato, Ruby ha un sacco di azioni di "convenzione sulla configurazione" in corso, il che ci aiuta davvero a complicare le cose.

Ad esempio, se hai una classe di "Library" che eredita da ActiveRecord, allora cercherà automaticamente una tabella chiamata Library nel database. Sono piccole cose del genere che ci aiutano a non dover scrivere le cose più e più volte. In effetti, esemplifica eccessivamente l'essenza di DRY (Do not Repeat Yourself). Che è sorprendente e molto utile. Perché non risparmiare un po 'di tempo, dopotutto è più tempo per il caffè.

Un'altra cosa che mi piace è che il creatore della lingua è assolutamente ossessionato dalla semplicità e dalla bellezza del codice. Quindi, se può fare qualcosa di più semplice e in un modo più bello, allora lo implementerà, per l'ansia di molti sviluppatori. Ma personalmente lo adoro.

Rails come motore ti aiuterà anche ad apprendere le strutture in generale senza che ti si poggi sulla punta dei piedi, e penso che lo faccia in modo perfettamente bilanciato.

Naturalmente, la gente dirà che i framework PHP lo fanno in un modo migliore perché puoi ancora sbattere la testa contro un muro con PHP senza trovare un modo per aggirarlo (per imparare da). Ma in realtà penso che Rails lo faccia in un modo molto più elegante che PHP abbia mai fatto, e probabilmente lo farà mai.

Rails

Immagine di rotaie via Shutterstock.

Vedete, in Rails dovete ancora imparare tanto per essere in grado di creare un'applicazione Rails reale o addirittura piccola. Non è che tu possa usare l'impalcatura per tutto. In effetti, non puoi farlo attivamente, ma all'inizio lo farai e ti aiuterà a imparare cose come Views, Templating e come Ruby interagisce con HTML.

Ad esempio, una cosa che mi piace fare è mettere una variabile Ruby che sta memorizzando i dati del server di un certo tipo che è già stato impostato in un attributo di dati. Ad esempio: -data-attribute-for-ruby = "<% = Time.now%>" e quindi funziona o interagisce con l'attributo di dati in JavaScript.

Le rotaie possono diventare piuttosto complicate davvero abbastanza veloci, e la bellezza di Rails è che ti costringe ad esplorare anche altre lingue. Ti permetterà di essere veramente bravo con JavaScript e molto bravo con i CSS. Vi darà anche una migliore comprensione di SQL e di come i database operano, tutto implicitamente.

La semplicità rende la barriera d'ingresso così bassa che anche lo sguardo sullo schema del database ha senso, Oh ho fatto quella lezione così è. No, oh aspetta, ho fatto la lezione di classe quindi ora devo fare la cosa del database come faccio a farlo. Non so dei database. Ugh. Al diavolo questo. Niente di tutto ciò in Rails.

Impari senza avere il piede calpestato. Ed è una cosa incredibilmente bella.

In Summazione

Credo davvero che imparare Ruby possa renderti un programmatore più felice in generale.

Posso solo parlare per esperienza personale qui, ma onestamente rinvigorito la vita nel mio sviluppo. Ero un ragazzo di PHP da oltre 8 anni ed era davvero qualcosa che non "amavo", ma lo feci comunque. Dopo aver trovato Ruby, ho letteralmente vomitato le mie mani e non sono mai tornato su PHP. È stato un cambiamento così grandioso nella mia vita che ho creato progetti, ottenuto lavori, fatto consulenza e contribuito ad alcuni grandi progetti open source e al nucleo di Rails, tutto dove prima ero solo uno studente che conosceva PHP.

Naturalmente potevo contribuire e fare quelle cose in PHP, ma il punto è che non ho mai avuto la passione per farlo, e la passione è così importante. Se non hai passione per quello che fai, allora dovresti smettere di farlo. Proprio adesso. E poi dovresti imparare Ruby on Rails. Potrebbe riportarlo indietro.

Ti sei immerso ancora in Ruby on Rails? Pensi che ci sia una migliore piattaforma di sviluppo là fuori? Fateci sapere nei commenti.