Η ιστορία προέλευσης του Ruby on Rails

By | January 31, 2024

Αυτό το άρθρο δημοσιεύτηκε αρχικά στο .cult από τη Μελίνα Ζαχαρία. Το .cult είναι μια πλατφόρμα κοινότητας για προγραμματιστές με έδρα το Βερολίνο. Γράφουμε για οτιδήποτε σχετίζεται με την καριέρα, κάνουμε πρωτότυπα ντοκιμαντέρ και μοιραζόμαστε αμέτρητες άλλες ιστορίες από προγραμματιστές σε όλο τον κόσμο.

Η Honeypot παρουσιάζει την ιστορία του Ruby on Rails. Ακούστε την ιστορία προέλευσης που είπαν οι μηχανικοί που εργάστηκαν στο έργο από την πρώτη μέρα. Και αν δεν έχετε χρόνο να παρακολουθήσετε ολόκληρο, το μετατρέψαμε επίσης σε ένα υπέροχο μικρό άρθρο για εσάς.

Το «γνωρίστε το χαριτωμένο»

Ήταν το 1999 (ή το 2000, ο Jason δεν είναι σίγουρος), όταν ο Jason Fried, συνιδρυτής της 37signals, μιας εταιρείας σχεδιασμού ιστοσελίδων με έδρα το Σικάγο, ζήτησε βοήθεια σε ένα διαδικτυακό blog. Δούλευε σε ένα έργο και χρησιμοποιούσε PHP όταν κόλλησε. Και ποιος από όλους θα προσφερόταν να βοηθήσει, αν όχι ένας νεαρός φοιτητής από τη Δανία ονόματι David Heinemeier Hansson;

Ο Ντέιβιντ ακολουθούσε τα σημάδια του 37 για μερικά χρόνια όταν συνάντησε την κλήση του Τζέισον για βοήθεια. Έτσι, όταν είδε την ερώτηση του Jason, σκέφτηκε «Γεια, ξέρω την απάντηση σε αυτό» και έσπευσε να απαντήσει και να βοηθήσει στο πρόβλημά του.

Αφού ζήτησε να δει τη βάση κώδικα του έργου (ενιαίο αρχείο), ο David είπε στον Jason ότι ο κώδικας είναι “χάλια”, προσθέτοντας “πρέπει να ξεκινήσουμε από την αρχή, επιτρέψτε μου να το κάνω για εσάς”. Και έτσι είναι η σχέση μεταξύ DHH και Jason Frito πρωτοξεκίνησε. Μια σχέση που συνεχίζεται μέχρι σήμερα. «Ήταν μια τέλεια συνεργασία από την αρχή», θυμάται ο Jason Fried.

Το <3 της τεχνολογίας της ΕΕ

Το τελευταίο buzz από την τεχνολογική σκηνή της ΕΕ, μια ιστορία από τον σοφό παλιό ιδρυτή μας Μπόρις και κάποια αμφισβητήσιμη τέχνη τεχνητής νοημοσύνης. Είναι δωρεάν, κάθε εβδομάδα, στα εισερχόμενά σας. Εγγραφείτε τώρα!

Το DHH αναδύεται με Rails

Το DHH θυμάται την πρώτη του επαφή με τον προγραμματισμό σε ηλικία 6 ετών, τις πρώτες του απογοητεύσεις και πόσο πραγματικά «κλικ» του έκανε ο ωριαίος προγραμματισμός. Το έτος ήταν 1999 και ο David δούλευε σε έναν ιστότοπο παιχνιδιών χρησιμοποιώντας PHP όταν άρχισε να νιώθει πιο άνετα με τον προγραμματισμό. Ένα χρόνο αργότερα, έδινε συμβουλές στον Jason Fried.

Αφού δούλεψαν μαζί σε πολλά έργα, ο Jason και ο David τελικά συναντήθηκαν προσωπικά στο Σικάγο. Εκείνη την εποχή, ο Ντέιβιντ ήταν ακόμα φοιτητής στην Κοπεγχάγη και δεν ζήτησε χρήματα για τις υπηρεσίες του, το μόνο που ζητούσε ήταν φορητοί υπολογιστές και εξοπλισμός.

Δεδομένου ότι όλη η επικοινωνία του έργου γινόταν μέσω email, ήθελαν να δημιουργήσουν ένα εργαλείο διαχείρισης έργου που θα τους βοηθούσε να διαχειριστούν όλα αυτά τα έργα. Έτσι, ο Jason προσέλαβε τον David για να γράψει τον κώδικα υποστήριξης για το Basecamp (ένα λογισμικό διαχείρισης έργου που σας επιτρέπει να κάνετε τα πάντα σε μια πλατφόρμα).

Το 2003, το DHH είχε μόλις αρχίσει να διαβάζει για τη Ruby. Για εκείνον, το πιο ενδιαφέρον ήταν ότι δεν έμοιαζε με καμία άλλη γλώσσα προγραμματισμού που είχε δει ποτέ. «Έμοιαζε με ψευδοκώδικα», λέει ο David. Παρουσίασε τη Ruby στον Jason και στη συνέχεια άρχισε να εργάζεται στο Basecamp χρησιμοποιώντας τη Ruby.

Η Ρούμπι έκανε «κλικ» για τον Ντέιβιντ. Αυτό που του άρεσε στη Ruby ήταν η αμεσότητα της PHP σε συνδυασμό με μια εξελιγμένη αντικειμενοστραφή γλώσσα προγραμματισμού. Τους επόμενους 6-7 μήνες και ενώ εργαζόταν στο Basecamp, εξόρυξε το Rails. Ο Ντέιβιντ λέει ότι «διέρρευσαν εργαλεία» από το έργο, αλλά ότι δεν υπήρχε αρχική σκέψη να κυκλοφορήσει στον κόσμο. Δούλεψε πάνω σε αυτό από το καλοκαίρι του 2003 μέχρι το 2004 και στη συνέχεια πέρασε άλλους έξι μήνες για να βελτιωθεί πριν το κυκλοφορήσει.

Το να δημιουργήσετε κάτι μοναδικό και να το βάλετε εκεί έξω για να το δει ο κόσμος μπορεί να είναι πολύ αγχωτικό. Το DHH θυμάται την απώθηση που έλαβε όταν έφερε για πρώτη φορά τη Rails στον κόσμο. Για τις χιλιάδες συνεισφορές που εκτιμήθηκαν ιδιαίτερα και εφαρμόστηκαν, υπήρξε επίσης μεγάλος αριθμός απορρίψεων.

Η κυκλοφορία του Ruby on Rails — ωθώντας τους προγραμματιστές Java

Η υποδοχή του Rails από την κοινότητα της Ruby ήταν μια πολύ ζεστή και θετική εμπειρία για τον David. Αλλά δεν μπορούμε να πούμε το ίδιο για την υποδοχή από τον υπόλοιπο κόσμο του προγραμματισμού.

Ήταν το 2004 όταν η DHH μπήκε σε πλήρη λειτουργία μάρκετινγκ και άρχισε να διαδίδει τη λέξη με αρκετά δυνατά τρόπο. Έκανε πολλές αμφιλεγόμενες συγκρίσεις μεταξύ εφαρμογών Java ορισμένων προβλημάτων και υλοποιήσεων Rails των ίδιων προβλημάτων και σίγουρα ταρακούνησε την κοινότητα της Java στον πυρήνα της.

Όπως ήταν αναμενόμενο, αυτή η προσέγγιση κέρδισε πολλούς οπαδούς και πολλές επικρίσεις.

Η κοινότητα Ruby on Rails

Το Διεθνές Συνέδριο Ρουμπίνι του 2004 ήταν όπου ο Τζέιμις Μπακ είδε για πρώτη φορά τον Ντέιβιντ. Το DHH σηκώθηκε και άρχισε να μιλά για το γιατί έγραψε το Rails, εξηγώντας γιατί το Ruby on Rails έχει να δώσει στους προγραμματιστές μια «καλύτερη εμπειρία» και γιατί οι άνθρωποι πρέπει να του δίνουν μια ευκαιρία. Για τον Τζέιμις, το χάρισμα και το πάθος του Ντέιβιντ ήταν που τον ενθουσίασαν με τον Ρέιλς.

Εκείνη την εποχή, η «βασική ομάδα» της Rails ήταν απλώς μια ομάδα ανθρώπων που έστελναν στο DHH τα περισσότερα από τα patches για το RoR. Αυτοί οι άνθρωποι έγιναν μέρος ενός εσωτερικού κύκλου που απέκτησε πρόσβαση στη βάση κωδικών Rails. Και μεταξύ αυτών των ανθρώπων ήταν και ο Τζέιμις Μπακ. Κατέληξε να είναι ο πρώτος προγραμματιστής που προσέλαβε ο David στα 37signals.

Τζέρεμι Ντάερ ήταν μέλος της κοινότητας της Ruby για λίγο όταν το DHH έστειλε ένα μήνυμα στη λίστα αλληλογραφίας του RubyTalk λέγοντας ότι είχε ένα σχέδιο να αναπτύξει τη Ruby. «Ήταν μια πρόκληση», θυμάται ο Τζέρεμι, και συγκλόνισε ολόκληρη την κοινότητα της Ruby.

Η βασική ομάδα

Πώς ήταν η νεοϊδρυθείσα κοινότητα Rails; Και πώς τα πήγε η βασική ομάδα της Rails μετά τον πρώτο χρόνο κυκλοφορίας της;

Το 2004, η Ρούμπι περνούσε πραγματικά μια στιγμή. ΚΑΙ Tobias Lutke έδινε προσοχή. Ήθελε να φτιάξει μια εταιρεία από την αρχή και σκεφτόταν να χρησιμοποιήσει τη Ruby. Έτσι έμαθε για το Rails. Αμέσως μετά, επικοινώνησε με τον David και έγινε μέλος της βασικής ομάδας. Σύμφωνα με τον Tobias, η δουλειά του David με τον Rails τον ενέπνευσε, τον βοήθησε να ανακαλύψει τι άλλο υπήρχε εκεί έξω και του έδωσε το «στήσιμο για τη ζωή του» για να γίνει επιχειρηματίας.

Όταν ήρθε η ώρα να συζητήσουμε το ανοιχτό κώδικα, ο David, ο Jamis, ο Jeremy και ο Tobias, μαζί με μια ομάδα πρώτων υπευθύνων της Rails, άρχισαν να συζητούν εάν το Rails θα έπρεπε να είναι ένα πλαίσιο ανοιχτού κώδικα ή εάν οι εταιρείες θα έπρεπε να πληρώσουν για αυτό. Αλλά για το DHH, αυτό δεν ήταν ποτέ θέμα. Ο ανοιχτός κώδικας ήταν απαραίτητος για το Ruby on Rails.

Θα κλιμακωθεί όμως;

Μια από τις μεγάλες επικρίσεις στις πρώτες μέρες του Rails ήταν ότι «οι Rails δεν μπορούν να κλιμακωθούν». Για τον Ντέιβιντ, αυτό ήταν περισσότερο ανοησία παρά πραγματικό τεχνικό ζήτημα.

Η επεκτασιμότητα έχει γίνει το «μάντρα» των περισσότερων κριτικών του Rails. Πώς αντέδρασαν τότε η βασική ομάδα και η DHH;

Για τον Tobias Lütke, δεν υπήρξε ποτέ ζήτημα επεκτασιμότητας. Ο γίγαντας του ηλεκτρονικού του εμπορίου, Shopify, είναι απόδειξη αυτού. Η πλατφόρμα Shopify (χτισμένη στο Ruby on Rails) αντιπροσωπεύει περίπου το 10% της παγκόσμιας αγοράς λογισμικού ηλεκτρονικού εμπορίου και έχει μια τεράστια βάση κώδικα.

Βασικές στιγμές στην ανάπτυξη της Rails

Για τον Jeremy, το Rails 1.0 ήταν μια σημαντική στιγμή. Αλλά τότε, κάθε νέα κυκλοφορία ήταν άλλο ένα τσιπ ωριμότητας.

Το Rails 1.2 ήταν μια πολύ σταθερή πρώιμη κυκλοφορία που έδειξε στους ανθρώπους τι θα μπορούσε πραγματικά να γίνει το Rails. Και μετά, τον Δεκέμβριο του 2007, η ομάδα κυκλοφόρησε το Rails 2.0. Αυτή η έκδοση έφερε συνεδρίες που βασίζονται σε cookie και επώνυμα πεδία.

Το 2009 και το Rails 2.3, το πλαίσιο είχε όλα όσα θα χρειαζόταν ένας προγραμματιστής για να δημιουργήσει «εφαρμογές μικρής και μεγάλης κλίμακας και οτιδήποτε ενδιάμεσα».

Μετά το 2.3, “η εργαλειοθήκη μας ήταν γεμάτη”, λέει ο Jeremy. Οι προγραμματιστές του Rails είχαν όλα όσα χρειάζονταν και μετά ήρθε ένα νέο παιδί. Ο Merb μπήκε στον κόσμο του προγραμματισμού ως νέος Ruby Framework που αμφισβήτησε το Rails.

«Ο Merb αποδείχθηκε ότι ήταν ένας άλλος δρόμος προς τα εμπρός», παραδέχεται ο Jeremy. Η αξιολόγηση και η εκτίμηση όλων όσων είχε να προσφέρει η Merb ήταν το πρώτο βήμα. Βλέποντας μια ευκαιρία, το DHH αποφάσισε να την εκμεταλλευτεί αντί να την πολεμήσει. Έτσι μίλησαν οι βασικές ομάδες Merb και Rails και αποφάσισαν να συγχωνευτούν!

«Έχουν ήδη συγχωνευθεί οι δομές; Αυτή (πρέπει να είναι η πρώτη) είναι επίσης μια μοναδική ιστορία», ανακοινώνει ο Tobias.

συμπέρασμα

Σε ένα πράγμα συμφωνούν όλοι: «Ήταν η εμπειρία μιας ζωής». Ο Jamis, ο Jeremy, ο Tobias και όλοι οι άλλοι που εργάζονταν στο Rails στις πρώτες μέρες του αποδείχτηκαν τροποποιημένοι προγραμματιστές.

“Η Rails σας επιτρέπει πραγματικά να πάτε από το Hello World στην IPO”, λέει ο David. Για αυτόν, η κοινότητα και η βάση κωδικών δεν ήταν ποτέ σε καλύτερη κατάσταση από ό,τι σήμερα.

Το Ruby on Rails λειτουργεί γιατί δίνει σε ανθρώπους, όχι σε έμπειρους προγραμματιστές, αλλά σε άτομα που μόλις ξεκινούν τον προγραμματισμό, την ευκαιρία να δημιουργήσουν κάτι. Αυτό τους βοηθά να ξεκινήσουν.

Ο ίδιος καταλήγει:

Λατρεύω αυτό το μέρος του Ruby on Rails, λατρεύω την ποικιλομορφία των ανθρώπων που κατάφεραν να χτίσουν μια καριέρα στον προγραμματισμό λόγω αυτού του πλαισίου που δημιουργήσαμε

Δείτε ολόκληρο το ντοκιμαντέρ στο YouTube.

Leave a Reply

Your email address will not be published. Required fields are marked *