Gettings ξεκίνησε με Ruby on Rails 2.0 για Windows




Έτσι, όπως και πολλοί άνθρωποι, είμαι ενθουσιασμένος για Ruby on Rails. Όντας χρήστης των Windows, θα κατεβάσει InstantRails, πήρε αυτό που πηγαίνει, και ακολούθησε μαζί με το screencast για το πώς να κάνει ένα blog με RoR 2.0 σε δεκαπέντε λεπτά. Θα χρησιμοποιηθεί το Notepad ++ ως πρόγραμμα επεξεργασίας κειμένου μου, γιατί αυτό είναι που έχω χρησιμοποιούνται παραδοσιακά για τη σύνταξη των ιστοσελίδων PHP με βάση το έχω κάνει και στο παρελθόν. Ήμουν λίγο ζηλιάρης των χρηστών Mac και πώς να πάρει την πραγματικά ελκυστική εμφάνιση TextMate, αλλά κατάφερα να ακολουθήσει σε όλο το screencast και να πάρει ό, τι λειτουργεί ομαλά.


Ωστόσο, είχα χάσει το μεγαλύτερο μέρος του χρόνου.


Ξέρω πολλά για τον προγραμματισμό και scripting γλώσσες όλα αυτά τα χρόνια - C ++, JavaScript, PHP, HTML, και Lua για να αναφέρουμε μόνο μερικά. Δεν ξέρω Ruby, αλλά καταλαβαίνω πολλά για το πώς λειτουργεί, σε ό, τι αφορά τη σύνταξη, αλλά δεν καταλαβαίνω πολλά από τη λογική πίσω από τους οποίους ορισμένα αρχεία να κάνει ορισμένα πράγματα, και αυτό το είδος του πράγματος.


Επίσης, προσπάθησα Aptana με RadRails, αλλά ήταν δύσκολο να δημιουργηθεί. Υπάρχει κάποια συγκεκριμένη φροντιστήριο για να πάρει αυτό που έχει συσταθεί και λειτουργεί πλήρως με το Ruby on Rails 2.0 εκεί;


Θα πρέπει να περιμένουμε ίσως για περισσότερες RoR 2,0 tutorials για να βγει πριν επιχειρήσετε να μάθουν RoR; Ή θα έπρεπε εγώ απλά άροτρο σε μέσα και πειραματιστείτε μέχρι να το καταλάβω;
Εάν είστε πραγματικά σοβαροί για την εκμάθηση Rails, η συμβουλή μου είναι να **πάρετε ένα καλό βιβλίο και να το διαβάσετε** (ξέρω .. προγραμματιστές δεν διαβάζουν βιβλία, αλλά θα πρέπει!). Ένα « *καλό βιβλίο on Rails* » συνήθως περιέχουν ένα κεφάλαιο για Ruby, αλλά υπάρχουν πολλές πηγές στο διαδίκτυο για να πας.


Σύμφωνα με [Ruby on Rails οδηγούς](http://guides.rubyonrails.org/getting_started.html) :



> 
> Συνιστάται ιδιαίτερα ότι μπορείτε
>  **να εξοικειωθείτε με Ruby πριν από την κατάδυση σε ράγες** . Θα βρείτε πολύ πιο εύκολο να ακολουθήσει ό, τι συμβαίνει με την εφαρμογή Rails, αν καταλαβαίνετε βασική σύνταξη Ruby. Ράγες δεν πρόκειται να φέρει επανάσταση μαγικά τον τρόπο που γράφετε web εφαρμογές αν δεν έχετε καμία εμπειρία με τη γλώσσα που χρησιμοποιεί.
> 
> 
> 


Είμαι προσωπικά χρησιμοποιώντας [απλά Ράγες 2](http://www.sitepoint.com/books/rails2/) , η οποία χρησιμοποιεί (έκπληξη, έκπληξη) Ράγες 2. βόλτες σας μέσα από την ανάπτυξη ενός κλώνου Digg.


Εάν και πάλι δεν θέλουν να χρησιμοποιήσουν ένα βιβλίο, θα πρέπει να ελέγξετε έξω [Ruby on Rails οδηγούς](http://guides.rubyonrails.org/) και το [Ruby on Rails Wiki](http://wiki.rubyonrails.org/rails) . AFAIK, είναι να ενημερώνονται τακτικά για να συμβαδίσει με τις νέες κυκλοφορίες των Rails.
μάλιστα… μετά από μια ώρα ψάξιμο για ό,τι μπορείτε να φανταστείτε (character encoding μήπως δεν έπαιρνε τα "\ " για το κενό, δοκιμές με άλλους editors και χίλια δυο άλλο σχετικά και άσχετα και αφού ποστάρω το ερώτημα εδώ βρήκα τη λύση της μαμακίας μου σε δυο λεπτά.

λέω δεν κάνω copy paste από το te… Κάνατε πολύ καλή δουλειά στο να συνοψίσετε τι είναι φοβερό στο Node.js. Η αίσθησή μου είναι ότι το Node.js είναι ιδιαίτερα κατάλληλο για εφαρμογές όπου θα θέλατε να διατηρήσετε μια μόνιμη σύνδεση από το πρόγραμμα περιήγησης πίσω στον διακομιστή. Χρησιμοποιώντας μια τεχνική γνωστή ως ["long-polling"](https://en.wikipedia.org/wiki/Push_technology#Long_polling), μπορείτε να γράψετε μια εφαρμογή που στέλνει ενημερώσεις στον χρήστη σε πραγματικό χρόνο. Η πραγματοποίηση long polling σε πολλούς από τους γίγαντες του διαδικτύου, όπως το [Ruby on Rails](https://en.wikipedia.org/wiki/Ruby_on_Rails) ή το [Django](https://en.wikipedia.org/wiki/Django_%28web_framework%29), θα δημιουργούσε τεράστιο φόρτο στον διακομιστή, επειδή κάθε ενεργός πελάτης τρώει μια διεργασία του διακομιστή. Αυτή η κατάσταση ισοδυναμεί με επίθεση [tarpit](https://en.wikipedia.org/wiki/Tarpit_(networking)). Όταν χρησιμοποιείτε κάτι όπως το Node.js, ο διακομιστής δεν έχει ανάγκη να διατηρεί ξεχωριστά νήματα για κάθε ανοιχτή σύνδεση. 


Αυτό σημαίνει ότι μπορείτε να δημιουργήσετε μια [εφαρμογή συνομιλίας με βάση το πρόγραμμα περιήγησης](https://github.com/rivalslayer/node_chat) σε Node.js που δεν χρειάζεται σχεδόν καθόλου πόρους συστήματος για να εξυπηρετεί πολλούς πελάτες. Κάθε φορά που θέλετε να κάνετε αυτού του είδους τη μακροχρόνια αναζήτηση, το Node.js είναι μια εξαιρετική επιλογή. 


Αξίζει να αναφέρουμε ότι και η Ruby και η Python έχουν εργαλεία για να κάνουν κάτι τέτοιο ([eventmachine](http://rubyeventmachine.com/) και [twisted](https://twistedmatrix.com/trac/), αντίστοιχα), αλλά ότι το Node.js το κάνει εξαιρετικά καλά, και από την αρχή. Η JavaScript είναι εξαιρετικά καλά τοποθετημένη σε ένα μοντέλο ταυτόχρονης λειτουργίας βασισμένο σε callback, και υπερέχει εδώ. Επίσης, η δυνατότητα σειριοποίησης και αποσειριοποίησης με JSON εγγενές τόσο στον πελάτη όσο και στον διακομιστή είναι αρκετά έξυπνη.


Ανυπομονώ να διαβάσω άλλες απαντήσεις εδώ, αυτή είναι μια φανταστική ερώτηση.


Αξίζει να επισημάνουμε ότι το Node.js είναι επίσης εξαιρετικό για καταστάσεις στις οποίες θα επαναχρησιμοποιήσετε πολύ κώδικα σε όλο το χάσμα πελάτη/εξυπηρετητή. Το [Meteor framework](https://meteor.com) το κάνει αυτό πολύ εύκολο, και πολλοί άνθρωποι προτείνουν ότι αυτό μπορεί να είναι το μέλλον της ανάπτυξης ιστοσελίδων. Μπορώ να πω από την εμπειρία μου ότι είναι πολύ διασκεδαστικό να γράφεις κώδικα στο Meteor, και ένα μεγάλο μέρος αυτού είναι να ξοδεύεις λιγότερο χρόνο σκεπτόμενος πώς θα αναδομήσεις τα δεδομένα σου, ώστε ο κώδικας που εκτελείται στο πρόγραμμα περιήγησης να μπορεί εύκολα να τα χειριστεί και να τα μεταβιβάσει πίσω.


Εδώ είναι ένα άρθρο για το Pyramid και το long-polling, το οποίο αποδεικνύεται ότι είναι πολύ εύκολο να ρυθμιστεί με λίγη βοήθεια από το gevent: [*TicTacToe και Long Polling με την Pyramid*](http://michael.merickel.org/2011/6/21/tictactoe-and-long-polling-with-pyramid/). **Για την «ορθογραφία λάθος» μέρος (Μήπως εννοείτε)**


* Θα μπορούσατε να κάνετε κάποια `LIKE`ερωτήματα στο db π.χ. `LIKE %j%e%a%n%s%`, αλλά αν θέλετε να το κάνετε καλά, θα πρέπει να χρησιμοποιήσετε μια βιβλιοθήκη αναζήτησης όπως αυτό:


	+ <https://github.com/TomLingham/Laravel-Searchy>
	+ <http://tnt.studio/blog/did-you-mean-functionality-with-laravel-scout>



> 
> Μπορείτε να δημοσιεύσετε το αρχείο ρυθμίσεων στον κατάλογο της εφαρμογής σας και να παρακάμψετε τις ρυθμίσεις, εκτελώντας php τεχνίτη πωλητή: δημοσιεύει για να αντιγράψετε τις ρυθμίσεις στο φάκελο config σας όπως searchy.php
> 
> 
> Μπορείτε να ορίσετε το προεπιλεγμένο πρόγραμμα οδήγησης που θα χρησιμοποιηθεί για τις αναζητήσεις στο αρχείο ρυθμίσεων. Οι επιλογές σας (στην παρούσα φάση) είναι: ασαφή, απλό και Levenshtein.
> 
> 
> Μπορείτε επίσης να παρακάμψετε αυτές τις μεθόδους, χρησιμοποιώντας την ακόλουθη σύνταξη κατά την εκτέλεση μιας αναζήτησης:
> 
> 
> 


Με τον καθορισμό [Levenshtein απόσταση](https://en.wikipedia.org/wiki/Levenshtein_distance) μπορείτε να finetune πόσο μακριά μια λέξη μπορεί να είναι.


* Αν χρειάζεστε καλύτερη απόδοση θα πρέπει να εξετάσει κάτι σαν `solr`ή `elasticsearch`για το έργο αυτό.


<https://wiki.apache.org/solr/SpellCheckComponent>
<https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-fuzzy-query.html>


**Για το τμήμα μετάφρασης**


Απλά θα πρέπει να έχει ένα λεξικό έτοιμο σε βάση δεδομένων ή εντοπισμό των αρχείων σας και εκτελέστε το χαμηλότερο σημείο εισόδου και αυτό. Αναμείνετε υψηλή φορές υπολογιστών τόσο για τη διόρθωση ορθογραφίας και της μετάφρασης στον κώδικά σας. τελικά το έφτιαξα σβήνοντας οτιδήποτε στο σύστημα έχει σχέση με flatpak και επανεγκατάσταση. πιο συγκεκριμένα 
sudo find ~/ -name "flatpak" | xargs rm -r
sudo find / -name "flatpak" | xargs rm -r
sudo apt install flatpak

ολίγον τι επικίνδυνο αλλά δούλεψε. <p>όπως μπορούμε <a href="https://github.com/rails/rails/blob/master/actionpack/lib/abstract\_controller/callbacks.rb">βλέπε</a> στο <code>actioncontroller::base</code>, <code>before\_action</code> είναι μόνο <a href="https://github.com/rails/rails/commit/9d62e04838f01f5589fa50b0baa480d60c815e2c">νέα σύνταξη</a> για <code>before\_filter</code>.</p><p>ωστόσο, όλες οι συνταγές <code>before\_filters</code> <a href="https://github.com/rails/rails/blob/v5.0.0.beta2/actionpack/lib/abstract\_controller/callbacks.rb#l190-l193">έχουν καταργηθεί</a> σε <strong> rails 5.0 </strong> και θα αφαιρεθούν σε <strong> rails 5.1 </strong></p> <p>απλά χρησιμοποιήστε <a href="http://ruby-doc.org/core-1.9.3/array.html#method-i-sample"><code>array#sample</code></a> :</p><pre><code>[:foo, :bar].sample # =&gt; :foo, or :bar :-) </code></pre><p>διατίθεται σε ruby 1.9.1+. για να μπορέσετε να το χρησιμοποιήσετε με μια προηγούμενη έκδοση του ruby, θα μπορούσατε <a href="https://github.com/marcandre/backports"><code>require "backports/1.9.1/array/sample"</code></a> .</p><p>σημειώστε ότι στο ruby 1.8.7 υπάρχει κάτω από το ατυχές όνομα <code>choice</code>; μετονομάστηκε σε μεταγενέστερη έκδοση, επομένως δεν πρέπει να το χρησιμοποιήσετε.</p><p>παρόλο που δεν είναι χρήσιμη σε αυτή την περίπτωση, το <code>sample</code> δέχεται ένα όρισμα αριθμού σε περίπτωση που θέλετε μια σειρά διακριτών δειγμάτων.</p> <p><strong> συνολικά: </strong></p><p>τόσο το put όσο και το post μπορούν να χρησιμοποιηθούν για τη δημιουργία.</p><p>πρέπει να ρωτήσετε "σε τι εκτελείτε τη δράση;" να διακρίνετε τι πρέπει να χρησιμοποιείτε. ας υποθέσουμε ότι σχεδιάζετε ένα api για να κάνετε ερωτήσεις. εάν θέλετε να χρησιμοποιήσετε το post τότε θα το κάνετε σε μια λίστα ερωτήσεων. εάν θέλετε να χρησιμοποιήσετε το put τότε θα το κάνετε αυτό σε μια συγκεκριμένη ερώτηση.</p><p><strong> μεγάλη και οι δύο μπορούν να χρησιμοποιηθούν, έτσι ποιο πρέπει να χρησιμοποιήσω στο restful σχεδιασμό μου: </strong></p><p>δεν χρειάζεται να υποστηρίζετε τόσο το put όσο και το post.</p><p>το οποίο χρησιμοποιείται παραμένει στο χέρι σας. αλλά θυμηθείτε να χρησιμοποιήσετε το σωστό, ανάλογα με το αντικείμενο που αναφέρετε στο αίτημα.</p><p>μερικές σκέψεις:</p><ul> <li>ονομάζετε ρητά τα αντικείμενα url που δημιουργείτε ή αφήστε το διακομιστή να αποφασίσει; εάν τους ονομάσετε τότε χρησιμοποιήστε put. εάν αφήσετε τον διακομιστή να αποφασίσει στη συνέχεια, χρησιμοποιήστε το post.</li> <li>put είναι idempotent, οπότε αν put ένα αντικείμενο δύο φορές, δεν έχει καμία επίδραση. αυτή είναι μια ιδιοκτησία της νίκαιας, οπότε θα μπορούσα να χρησιμοποιήσω το put όταν ήταν δυνατόν.</li> <li>μπορείτε να ενημερώσετε ή να δημιουργήσετε έναν πόρο με put με την ίδια διεύθυνση url αντικειμένου</li> <li>με το post μπορείτε να έχετε 2 αιτήματα που εισέρχονται ταυτόχρονα για τροποποιήσεις σε μια διεύθυνση url και μπορεί να ενημερώσουν διαφορετικά μέρη του αντικειμένου.</li> </ul><p><strong> ένα παράδειγμα: </strong></p><p> <a href="https://stackoverflow.com/questions/256349/what-are-the-best-common-restful-url-verbs-and-actions/256359#256359">έγραψα τα εξής ως μέρος μιας άλλης απάντησης σχετικά με το so</a> :</p><blockquote> <p><strong> post: </strong></p> <p>χρησιμοποιείται για την τροποποίηση και την ενημέρωση ενός πόρου</p> <pre><code>post /questions/&lt;existing\_question&gt; http/1.1 host: www.example.com/ </code></pre> <p>σημειώστε ότι το ακόλουθο είναι ένα σφάλμα:</p> <pre><code>post /questions/&lt;new\_question&gt; http/1.1 host: www.example.com/ </code></pre> <p>εάν η διεύθυνση url δεν έχει δημιουργηθεί ακόμη, δεν θα πρέπει να χρησιμοποιείτε το post για να το δημιουργήσετε ενώ καθορίζετε το όνομα. αυτό θα πρέπει να έχει ως αποτέλεσμα ένα σφάλμα 'πόρος δεν βρέθηκε' επειδή το <code>&lt;new\_question&gt;</code> δεν υπάρχει ακόμα. πρέπει πρώτα να τοποθετήσετε τον πόρο <code>&lt;new\_question&gt;</code> στον διακομιστή.</p> <p>θα μπορούσατε όμως να κάνετε κάτι τέτοιο για να δημιουργήσετε πόρους χρησιμοποιώντας post:</p> <pre><code>post /questions http/1.1 host: www.example.com/ </code></pre> <p>σημειώστε ότι σε αυτήν την περίπτωση το όνομα του πόρου δεν έχει καθοριστεί, η διαδρομή url των νέων αντικειμένων θα σας επιστραφεί.</p> <p><strong> σημειωση: </strong></p> <p>χρησιμοποιείται για τη δημιουργία ενός πόρου ή για την αντικατάστασή του. ενώ ορίσετε τους πόρους νέα διεύθυνση url.</p> <p>για έναν νέο πόρο:</p> <pre><code>put /questions/&lt;new\_question&gt; http/1.1 host: www.example.com/ </code></pre> <p>για να αντικαταστήσετε μια υπάρχουσα πηγή:</p> <pre><code>put /questions/&lt;existing\_question&gt; http/1.1 host: www.example.com/ </code></pre></blockquote> εγώ θα πρότεινα sparky

<https://sparkylinux.org/download/stable/>
<https://sparkylinux.org/download/rolling/>

έχει εκδόσεις lxqt, xfce, και minimalgui (νομίζω openbox). διάλεξε ανάλογα με τα γούστα, πιο ενδιαφέρουσα επιλογή είναι το lxqt, το xfce είναι κάπως πιο συνηθισμένο/γνώριμο, το openbox είναι … το έχουμε συζητήσει εδώ

[εικόνα]

[ραδιοφωνικός σταθμός e-radio και site](https://linux-user.gr/t/radiofwnikos-stathmos-e-radio-kai-site/1315) [linux software](/c/linuxsoftware)

λοιπόν για να μην υπεραναλύω. το νέο pc που φτιάχνω σιγά σιγά με οικονομίες θα τρέχει mint.

μπορώ να έχω κάποια προγράμματα να στήσω ένα σταθμό διαδικτυακά?

δηλαδή πρακτικά να έχω ένα … δες αυτό

[εικόνα]

[linux mint 19.2: συνηθισμένα προβλήματα και λύσεις](https://linux-user.gr/t/linux-mint-19-2-synhthismena-provlhmata-kai-lyseis/829) [linux διανομές](/c/linuxdistros)

οδηγοί για το touchpad

το προεπιλεγμένο πρόγραμμα οδήγησης touchpad σε αυτή την έκδοση είναι το “libinput” (που παρέχεται από το πακέτο xserver-xorg-input-libinput).

εάν αντιμετωπίζετε πρ…