Lanike71 Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Εντάξει, έμαθα τα βασικά μίας γλώσσας και δε σκοπεύω να την αφήσω. Ακόμα και τέλειος γνώστης να ήμουν και πάλι δε θα την άφηνα. Η γλώσσα είναι μέσο δημιουργίας και αν σου αρέσει να δημιουργείς θα συνεχίσεις να τη χρησιμοποιείς. Νομίζω ότι απλά δε χρειάζεται να ασχοληθείς με την python άλλο αν κατέχεις τα βασικά. Βρες μία που να σε ενδιαφέρει.
ParhsG Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Οι πιο παραγωγικοι ανθρωποι που ξερω ασχολουνται με 1 γλωσσα ανα διαστημα. Εγω δουλευω 3 ταυτοχρονα και μπερδευομαι .Δεν ειναι μονο η γλώσσα αλλα και τι κανεις. Πχ αλλο ORM στη Α γλωσσα ,αλλο στη Β αλλο στη Γ. Αλλες δυνατοτητες/λογικη.
PiDefiner Δημοσ. 23 Ιανουαρίου 2014 Μέλος Δημοσ. 23 Ιανουαρίου 2014 Σταματάς να μαθαίνεις κάτι όταν οι γνώσεις που αποκτήσεις είναι αρκετές για να κάνεις αυτο που θες. Εσύ δε θες να κάνεις τίποτα. Η απάντηση στην αρχική ερώτηση απλή... Δεν θέλω να κάνω κάτι τώρα. Επειδή όμως στο μέλλον ίσως να χρειαστώ, προτιμώ τότε να ξέρω πως πρέπει να κάνω αυτό που θέλω ή πρέπει να κάνω, παρά να αρχίσω τότε από το μηδέν. Εντάξει, έμαθα τα βασικά μίας γλώσσας και δε σκοπεύω να την αφήσω. Ακόμα και τέλειος γνώστης να ήμουν και πάλι δε θα την άφηνα. Η γλώσσα είναι μέσο δημιουργίας και αν σου αρέσει να δημιουργείς θα συνεχίσεις να τη χρησιμοποιείς. Νομίζω ότι απλά δε χρειάζεται να ασχοληθείς με την python άλλο αν κατέχεις τα βασικά. Βρες μία που να σε ενδιαφέρει. Η Verilog που μου πρότεινε ο gon, μου φαίνεται ωραία σαν λογική, αλλά θέλω να την ψάξω περισσότερο όσο θα έχω χρόνο, μήπως και μου αρέσει πιο πολύ. Python ξεκίνησα γιατί αυτή διάβασα πως είναι καλή για αρχή. Απ' ότι βλέπω όμως δεν την έχετε και σε τόσο εκτίμηση, οπότε μάλλον θα την παρατήσω. Αν βρω ενδιαφέρουσα την verilog, καλώς, αλλιώς θα ψάξω για μια άλλη. Οι πιο παραγωγικοι ανθρωποι που ξερω ασχολουνται με 1 γλωσσα ανα διαστημα. Εγω δουλευω 3 ταυτοχρονα και μπερδευομαι .Δεν ειναι μονο η γλώσσα αλλα και τι κανεις. Πχ αλλο ORM στη Α γλωσσα ,αλλο στη Β αλλο στη Γ. Αλλες δυνατοτητες/λογικη. Φυσικά, δεν σκόπευα ούτε σκοπεύω να ασχοληθώ με πολλές γλώσσες ταυτόχρονα (εκτός αν το NXT programms μετράει για γλώσσα ). Απλώς για να έχω σφαιρική άποψη του προγραμματισμού πρέπει να μάθω περισσότερες. Δεν θα πιάσω το νόημα μόνο μέσα από μία. Απ' ότι κατάλαβα η απάντηση στην ερώτηση μου δεν είναι και τόσο απλή, και με αυτά που σας λέω την κάνω ακόμα πιο σύνθετη
Timonkaipumpa Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Δεν υπάρχει απάντηση σε αυτό το ερώτημα γιατί είναι λάθος (κατά την γνώμη μου) η προσέγγιση και το ερώτημα. Δεν ξεκινάς μία γλώσσα για να την μάθεις. Δεν είναι άσκηση σε πολεμική τέχνη ούτε τεχνική. Είναι σαν να ρωτάς πότε σταματάς να χρησιμοποιείς οδοντωτά μαχαίρια ή ίσια κατσαβίδια. Οι πιο πολλοί που θέλουν να ασχοληθούν με τον προγραμματισμό και, συνήθως, είναι μικροί σε ηλικία (i.e. <20) βλέπουν την ενασχόληση αυτή σαν να πηγαίνουν στο γυμναστήριο... όπου κάθε γλώσσα είναι και ένα όργανο ή/και μία άσκηση. Δεν θέλουν να προγραμματίσουν αλλά να τους γράψει κάποιο blog ή να τους θαυμάζουν οι φίλοι τους που είτε χάκαραν την τάδε υπηρεσία είτε έβγαλαν το δείνα φοβερό παιχνίδι. Δεν μαθαίνεις μία γλώσσα και πας στην επόμενη... βασικά δεν μαθαίνεις καμία γλώσσα. Μαθαίνεις να προγραμματίζεις και χρησιμοποιείς όποια γλώσσα σε καλύπτει, έχεις χρόνο να πειραματιστείς, επιβάλλει ο head, ζητάει ο πελάτης, μπορείς να πουλήσεις σε έκαστη περίπτωση. Εάν όμως η κ@υλα σου είναι να μάθεις γλώσσες προγραμματισμού, τότε η σύνταξη, οι βιβλιοθήκες και τα frameworks είναι μόνο η αρχή του παγόβουνου και αμφιβάλλω εάν ποτέ πας σε επόμενη (π.χ. διαγωνισμοί για κρυπτικό προγραμματισμό σε C). Αν και τελικά θα καταλήξεις είτε σε simula είτε σε "κουβεντούλα"...
gon1332 Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Η Verilog που μου πρότεινε ο gon, μου φαίνεται ωραία σαν λογική, αλλά θέλω να την ψάξω περισσότερο όσο θα έχω χρόνο, μήπως και μου αρέσει πιο πολύ. Python ξεκίνησα γιατί αυτή διάβασα πως είναι καλή για αρχή. Απ' ότι βλέπω όμως δεν την έχετε και σε τόσο εκτίμηση, οπότε μάλλον θα την παρατήσω. Αν βρω ενδιαφέρουσα την verilog, καλώς, αλλιώς θα ψάξω για μια άλλη. Πρόσχε όμως, η Verilog αποτελεί μία γλώσσα περιγραφής υλικού καθαρά. Σχεδιάζεις κυκλώματα. Δε δημιουργείς εφαρμογές, λογισμικό, αλλά σχεδιάζεις hardware είτε με behavioral, είτε με structural ή σε συνδυασμό. Τέλος, αυτό που έκανες μπορείς να το χρησιμοποιήσεις είτε σα simulator στο pc σου, είτε περνωντας από κάποια ειδικά προγράμματα (Synopsys design Compiler, Cadence Encounter) να σχεδιάσεις το δικό σου ASIC και αν θες το στέλνεις σε κάποια εταιρία να στο τυπώσει! (προχωράς σε VLSI μονοπάτια) Εδώ βέβαια αναλαμβάνεις άλλου τύπου project: Παίρνεις ένα πρωτόκολλο, πχ eSATA, USB3.0 και το βελτιώνεις. Βέβαια, για να τα κάνεις όλα αυτά, για να αρχίσεις να καταλαβαίνεις τον τρόπο που λειτουργεί η Verilog, πρέπει να γνωρίζεις στο ελάχιστο άλγεβρα Boole, FSMs και να έχεις κάποιες γνώσεις Ψηφιακής Σχεδίασης. Αν τελικά αποφασίσεις να ξεκινήσεις με Verilog....αν πιστεύεις ότι σου χρειάζεται....ρώτα στο forum ότι θέλεις. EDIT: Οι γλώσσες είναι καθαρά θέμα δημιουργίας. Χάνεις όλο το ζουμί αν απλά κάθεσαι και τις κοιτάς. Ξεκίνα να δημιουργείς και που ξέρεις, μπορεί και να σου αρέσει!
PiDefiner Δημοσ. 23 Ιανουαρίου 2014 Μέλος Δημοσ. 23 Ιανουαρίου 2014 Δεν υπάρχει απάντηση σε αυτό το ερώτημα γιατί είναι λάθος (κατά την γνώμη μου) η προσέγγιση και το ερώτημα. Δεν ξεκινάς μία γλώσσα για να την μάθεις. Δεν είναι άσκηση σε πολεμική τέχνη ούτε τεχνική. Είναι σαν να ρωτάς πότε σταματάς να χρησιμοποιείς οδοντωτά μαχαίρια ή ίσια κατσαβίδια. Οι πιο πολλοί που θέλουν να ασχοληθούν με τον προγραμματισμό και, συνήθως, είναι μικροί σε ηλικία (i.e. <20) βλέπουν την ενασχόληση αυτή σαν να πηγαίνουν στο γυμναστήριο... όπου κάθε γλώσσα είναι και ένα όργανο ή/και μία άσκηση. Δεν θέλουν να προγραμματίσουν αλλά να τους γράψει κάποιο blog ή να τους θαυμάζουν οι φίλοι τους που είτε χάκαραν την τάδε υπηρεσία είτε έβγαλαν το δείνα φοβερό παιχνίδι. Δεν μαθαίνεις μία γλώσσα και πας στην επόμενη... βασικά δεν μαθαίνεις καμία γλώσσα. Μαθαίνεις να προγραμματίζεις και χρησιμοποιείς όποια γλώσσα σε καλύπτει, έχεις χρόνο να πειραματιστείς, επιβάλλει ο head, ζητάει ο πελάτης, μπορείς να πουλήσεις σε έκαστη περίπτωση. Εάν όμως η κ@υλα σου είναι να μάθεις γλώσσες προγραμματισμού, τότε η σύνταξη, οι βιβλιοθήκες και τα frameworks είναι μόνο η αρχή του παγόβουνου και αμφιβάλλω εάν ποτέ πας σε επόμενη (π.χ. διαγωνισμοί για κρυπτικό προγραμματισμό σε C). Αν και τελικά θα καταλήξεις είτε σε simula είτε σε "κουβεντούλα"... Άντε πάλι τα ίδια. Είπαμε, δεν έχω θέμα με τον προγραμματισμό, ούτε τη θέλω να το παίζω ξύπνιος σε άλλους, γιατί απλούστατα δεν θα φτάσω ποτέ σε αυτό το επίπεδο. Θέλω απλώς να ξέρω και αυτό το κομμάτι των υπολογιστών. Ούτε έχω σκοπό ποτέ να πάω σε διαγωνισμό. Πρόσχε όμως, η Verilog αποτελεί μία γλώσσα περιγραφής υλικού καθαρά. Σχεδιάζεις κυκλώματα. Δε δημιουργείς εφαρμογές, λογισμικό, αλλά σχεδιάζεις hardware είτε με behavioral, είτε με structural ή σε συνδυασμό. Τέλος, αυτό που έκανες μπορείς να το χρησιμοποιήσεις είτε σα simulator στο pc σου, είτε περνωντας από κάποια ειδικά προγράμματα (Synopsys design Compiler, Cadence Encounter) να σχεδιάσεις το δικό σου ASIC και αν θες το στέλνεις σε κάποια εταιρία να στο τυπώσει! (προχωράς σε VLSI μονοπάτια) Εδώ βέβαια αναλαμβάνεις άλλου τύπου project: Παίρνεις ένα πρωτόκολλο, πχ eSATA, USB3.0 και το βελτιώνεις. Βέβαια, για να τα κάνεις όλα αυτά, για να αρχίσεις να καταλαβαίνεις τον τρόπο που λειτουργεί η Verilog, πρέπει να γνωρίζεις στο ελάχιστο άλγεβρα Boole, FSMs και να έχεις κάποιες γνώσεις Ψηφιακής Σχεδίασης. Αν τελικά αποφασίσεις να ξεκινήσεις με Verilog....αν πιστεύεις ότι σου χρειάζεται....ρώτα στο forum ότι θέλεις. EDIT: Οι γλώσσες είναι καθαρά θέμα δημιουργίας. Χάνεις όλο το ζουμί αν απλά κάθεσαι και τις κοιτάς. Ξεκίνα να δημιουργείς και που ξέρεις, μπορεί και να σου αρέσει! Αυτό διάβαζα τώρα και ήρθα για να σε ρωτήσω λεπτομέρειες. Καλό (αν και διαφορετικό, όπως λες) το όλο concept, αλλά με χαλάει το κομμάτι με τη "σχεδίαση", αν και δεν έχω καταλάβει ακριβώς πως την εννοείς. Δεν έχω πρόβλημα να κάτσω να φτιάξω ένα πρόγραμμα (και με αυτό εννοώ ότι δεν βαριέμαι, ή δεν δυσανασχετώ), απλά δεν με τρελαίνει. Τώρα εγκατέστησα την verilog και άρχισα ένα tutorial που βρήκα. Αν έχεις κάποιο και εσύ στείλε μου, αλλά να είναι κάτι που να μου δείχνει πιο πολύ τις δυνατότητες του προγράμματος, για να καταλάβω περί τίνος πρόκειται.
jozef Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Πάντως γενικά η ερώτηση που κάνεις δεν έχει απάντηση. Η python είναι εξαιρετική γλώσσα για να ξεκινήσει κάποιος, κυρίως λόγω του οτι μπορεί πολύ άμεσα να εκτελεί κομμάτια κώδικα και να βλέπει το αποτέλεσμα τους. Από εκεί και πέρα, λες οτι μαθαίνεις προγραμματισμό μήπως σου χρειαστεί μελλοντικά. Αυτό που θέλω να σου πω είναι ότι η τεχνολογία προχωράει τόσο γρήγορα που αν μάθεις κάτι σήμερα και αποφασίσεις να το χρησιμοποιήσεις μετά από 5 χρόνια τα πράγματα θα έχουν αλλάξει αρκετά και σίγουρα θα χρειαστεί να ξαναδιαβάσεις. Όπως πολλοί είπαν παραπάνω το σημαντικό είναι να μάθεις τις αρχές του προγραμματισμού ώστε να μπορείς να τις εφαρμόσεις με οποιαδήποτε γλώσσα. Αν θες να γίνεις και λίγο πιο συγκεκριμένος τότε σίγουρα θα μπορέσεις να πάρεις έναν καλυτερο προσανατολισμό. Π.χ. αν μας πεις ότι διαβάζεις προγραμματισμό γιατί ίσως στο μέλλον χρειαστεί να συντηρείς μια ιστοσελίδα τοτε η verilog δε σου χρειάζεται.
PiDefiner Δημοσ. 23 Ιανουαρίου 2014 Μέλος Δημοσ. 23 Ιανουαρίου 2014 Πάντως γενικά η ερώτηση που κάνεις δεν έχει απάντηση. Η python είναι εξαιρετική γλώσσα για να ξεκινήσει κάποιος, κυρίως λόγω του οτι μπορεί πολύ άμεσα να εκτελεί κομμάτια κώδικα και να βλέπει το αποτέλεσμα τους. Από εκεί και πέρα, λες οτι μαθαίνεις προγραμματισμό μήπως σου χρειαστεί μελλοντικά. Αυτό που θέλω να σου πω είναι ότι η τεχνολογία προχωράει τόσο γρήγορα που αν μάθεις κάτι σήμερα και αποφασίσεις να το χρησιμοποιήσεις μετά από 5 χρόνια τα πράγματα θα έχουν αλλάξει αρκετά και σίγουρα θα χρειαστεί να ξαναδιαβάσεις. Όπως πολλοί είπαν παραπάνω το σημαντικό είναι να μάθεις τις αρχές του προγραμματισμού ώστε να μπορείς να τις εφαρμόσεις με οποιαδήποτε γλώσσα. Αν θες να γίνεις και λίγο πιο συγκεκριμένος τότε σίγουρα θα μπορέσεις να πάρεις έναν καλυτερο προσανατολισμό. Π.χ. αν μας πεις ότι διαβάζεις προγραμματισμό γιατί ίσως στο μέλλον χρειαστεί να συντηρείς μια ιστοσελίδα τοτε η verilog δε σου χρειάζεται. Μα αυτός είναι ο λόγος που δεν θέλω να μείνω προσκολλημένος σε μια γλώσσα. Αν αλλάξω ανάμεσα σε πολλές δε θα μάθω τις αρχές του προγραμματισμού; Και όταν λέω αρχές δεν εννοώ μόνο το when, while, if κλπ που μου έλεγαν να μάθω πριν ξεκινήσω. Εννοώ τον τρόπο που λειτουργεί ο προγραμματισμός στο σύνολό του και όχι μεμονωμένα μια γλώσσα. Η αλήθεια είναι ότι δεν ήξερα μέχρι χθες για τις γλώσσες σαν τη verilog, οπότε όταν λέω θα μου χρειαστεί μελλοντικά, ναι, εννοώ και το τη συντήρηση μια ιστοσελίδας. Τώρα βέβαια που διάβασα μερικά πράγματα για τη verilog, μένει να τη δοκιμάσω (όχι σήμερα, απ' ότι βλέπω) για να δω αν είναι κάτι που με ενδιαφέρει.
gon1332 Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Άντε πάλι τα ίδια. Είπαμε, δεν έχω θέμα με τον προγραμματισμό, ούτε τη θέλω να το παίζω ξύπνιος σε άλλους, γιατί απλούστατα δεν θα φτάσω ποτέ σε αυτό το επίπεδο. Θέλω απλώς να ξέρω και αυτό το κομμάτι των υπολογιστών. Ούτε έχω σκοπό ποτέ να πάω σε διαγωνισμό. Αυτό διάβαζα τώρα και ήρθα για να σε ρωτήσω λεπτομέρειες. Καλό (αν και διαφορετικό, όπως λες) το όλο concept, αλλά με χαλάει το κομμάτι με τη "σχεδίαση", αν και δεν έχω καταλάβει ακριβώς πως την εννοείς. Δεν έχω πρόβλημα να κάτσω να φτιάξω ένα πρόγραμμα (και με αυτό εννοώ ότι δεν βαριέμαι, ή δεν δυσανασχετώ), απλά δεν με τρελαίνει. Τώρα εγκατέστησα την verilog και άρχισα ένα tutorial που βρήκα. Αν έχεις κάποιο και εσύ στείλε μου, αλλά να είναι κάτι που να μου δείχνει πιο πολύ τις δυνατότητες του προγράμματος, για να καταλάβω περί τίνος πρόκειται. Ώραια, βρήκες το κατάλληλο tutorial! Ποια verilog εγκατέστησες; Σε ποιο λειτουργικό δουλεύεις; Αν είσαι σε Windows τότε μπορείς να εγκαταστήσεις το ModelSim IDE, το Students Edition. Είναι ένα ολοκληρωμένο εργαλείο, αν κι εγώ το αποφεύγω επειδή νιώθω ότι με περιορίζει σε κάποια θέματα. Θέλει απλά ένα verification. Αν είσαι σε Linux, που σου το συνηστώ, τότε προτείνω, και προσωπικά με αυτά δουλεύω, τον compiler Icarus Verilog (iverilog) σε συνδυασμό για λίγο αργότερα με το Waveform viewer GTKWave. Αυτά τα 2 εργαλεία είναι εντελώς δωρεάν και open source. Ο iverilog θυμίζει τη χρήση του gcc. Το εκτελέσιμο το ανοίγεις στο GTKWave και από εκεί μπορείς να δεις τις κυματτομορφές και όποιες αλλαγές συμβαίνουν στο κύκλωμά σου. Για το τελευταίο που σου είπα περίμενε μέχρι να φτάσεις στον οδηγό που διαβάζεις στα testbenches. Όταν λέμε σχεδίαση ενοούμε τη δημιουργία hardware μέσα από αυτή την υψηλού επιπέδου γλώσσα προγραμματισμού. Όπως δε θα κάτσεις να γράψεις σελίδες με κώδικα σε 0 και 1, έτσι, δε θέλεις να κάτσεις να φτιάξεις ένα ολόκληρο κύκλωμα με λογικές πύλες! Έτσι κι αλλιώς, ο compiler θα διαβάσει αυτά που θέλεις να κάνεις σε μία γλώσσα που μοιάζει με τη C (Verilog) και θα το μετατρέψει σε πύλες εφαρμόζοντας βελτιστοποιήσεις, τις οποίες εσύ δε θα έκανες αν ήθελες να τα κάνεις όλα στο χέρι. Έστω για παράδειγμα θέλεις να φτιάξεις έναν Adder: /* Ένα module είναι ένα κουτί που παίρνει κάποιες εισόδους και * βγάζει κάποιες εξόδους. Μπορείς να το καλέσεις από ανώτερο * επίπεδο, δίνοντάς του 2 32bit εισόδους και θα σου βγάλει μία * 32bit έξοδο. */ module Adder (inA, inB, out); // module onoma (eisodoi, e3odoi) input [31:0] inA, inB; output[31:0] out; assign out = inA + inB; // ana8esh e3odou endmodule Αν ήθελες να φτιάξεις έναν Adder σε επίπεδο λογικών πυλών θα πάσχιζεις πολύ περισσότερο. Θα έπρεπε να φτιάξεις αρχικά 1bit full adders, που να βγάζουν και κρατούμενο και στη συνέχεια να τους συνδέσεις για να πάρεις αυτό που θέλεις. Εδώ γράφεις μία γραμμή όπως σε οποιαδήποτε άλλη γλώσσα προγραμματισμού και ο compiler θα αναλάβει να φτιάξει το hardware. Αυτός θα καταλάβει ποιες πύλες χρειάζονται και ποια θα είναι η βέλτιστη σύνδεσή τους (υπάρχουν βελτιστοποιήσεις μεταφοράς και πρόβλεψης κρατουμένων). Βέβαια κανένας δε σε εμποδίζει να προγραμματίσεις σε χαμηλότερο επιπεδό, απλά αυτό σε περιορίζει. Κοίταξε πόσο εύκολα και κατανοητά μπορείς να φτιάξεις μια Αριθμητική και Λογική Μονάδα που παρόμοια βρίσκεται σε οποιοδήποτε επεξεργαστη: // Small ALU. Inputs: inA, inB. Output: out. // Operations: bitwise and (op = 0) // bitwise or (op = 1) // addition (op = 2) // subtraction (op = 6) // slt (op = 7) // nor (op = 12) module ALU (aluctrl, inA, inB, out, zero); parameter N = 32; output reg [N-1:0] out; output wire zero; input [N-1:0] inA, inB; input [3:0] aluctrl; // Place your Verilog code here assign zero = out ? 0 : 1; always @(*) begin case (aluctrl) 4'b0000:out <= inA & inB; /* bitwise AND */ 4'b0001:out <= inA | inB; /* bitwise OR */ 4'b0010:out <= inA + inB; /* arithmetic ADD */ 4'b0110:out <= inA - inB; /* arithmetic SUB */ 4'b0111:out <= ((inA < inB) ? 1 : 0); /* SET ON LESS THAN */ 4'b1100:out <= ~(inA | inB); /* bitwise NOR */ default:out <= 'bx; /* INVALID OPERATION */ endcase end endmodule Γενικά, τα πάντα στο hardware εκτελούνται παράλληλα από τη στιγμή που ανοίξει ο διακόπτης. Έτσι και στη Verilog. Αυτό πρέπει να χωνέψεις. Τα πάντα γίνονται παράλληλα. Το always, όπως θα διαβάσεις και στο tutorial είναι ένα block, το οποίο εκτελείται μόνο αν οι παράμετροι μέσα στην παρένθεση ακριβώς από δίπλα αλλάξουν τιμή: always @(inA, inB) begin out <= inA + inB; end Ο,τιδήποτε μέσα σε always blocks εκτελείται σειριακά. Το <= είναι ένας ειδικός τελεστής ανάθεσης, ενώ το x είναι το don't care bit...μπορεί να έχει οποιαδήποτε τιμή...δε σε νοιάζει. Διάβασέ τα αυτά στο tutorial και ό,τι χρειαστείς εδώ είμαστε. Επίσης όταν βρήκα ελεύθερο χρόνο έγραψα και έναν οδηγό iverilog + GTKWave. Αν σε ενδιαφέρει, για τώρα διάβασε το 1ο μέρος.
PiDefiner Δημοσ. 23 Ιανουαρίου 2014 Μέλος Δημοσ. 23 Ιανουαρίου 2014 Επειδή άρχισες κατευθείαν από τα βαθιά, και εγώ δεν ξέρω καν που γράφω τον κώδικα, άσε μου λίγο χρόνο να διαβάσω τα βασικά για το πρόγραμμα, και μετά κοιτάω καλύτερα και όσα έγραψες
Aztec Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Σε ένα μακρυνο χωριό ζούσε κάποτε ένας ζωγράφος . Ο ζωγράφος αυτος είχε ξεκίνησει απο πολύ μικρός την ζωγραφική . Στην αρχη έκανε κάποιες μουτζούρες , στη συνέχεια σχέδια που πλησίαζαν στο κάτι αφηρημένο μέχρι που εγινε τόσο καλός που μπορούσε να σχεδιάσει ότι του ζητούσε κάποιος πολυ γρήγορα και με μεγαλη δεξιοτεχνια. Κάποια στιγμή έφτασαν στο χωριό τρεις μυστηριώδεις τυποι και ο καθένας κουβαλούσε μια κασετίνα απο μπογιές και πινέλα. Τον πλησιάζει ο πρώτος και του λέει . Εγώ μπορώ να σχεδιασω πορτραίτα σε πέντε λεπτά με τα ειδικά πινέλα μου. Ο δεύτερος τον πλησιάζει και του λέει . Εγώ μπορώ να σχεδιασω ότι θέλεις χρησιμοποιώντας την λιγότερη δυνατη μπογιά. Ο τρίτος τον πλησιάζει και του λέει. Εγώ μπορώ να σχεδιασω με τα πινέλα μου με τρεις διαφορετικούς τρόπους ταυτόχρονα σε οποιοδήποτε είδος καμβα και να έχεις. Ο ζωγράφος κοντοστέκεται λίγο, σκέφτεται και τους προκαλεί σε μονομαχία . Η μάχη δεν κράτησε πολυ και ηττήθηκε και απο τους τρεις . Σταματάς μια γλωσσα όταν αποκτησεις τις δεξιότητες του ζωγράφου και δεν υποπέσεις στο λαθος του 1
PiDefiner Δημοσ. 23 Ιανουαρίου 2014 Μέλος Δημοσ. 23 Ιανουαρίου 2014 (επεξεργασμένο) Δεν μου αρέσουν τα διδακτικά παραμύθια και οι παραλληλισμοί, γιατί συχνά είναι άστοχα και δυσνόητα. Επίσης με κάνουν να νιώθω βλάκας. Μισώ τέτοιου είδους "σοφίες", οπότε είναι ένα κακό μέσο για να μου περάσει κάποιος το μήνυμά του. Μετά από αυτά που διάβασα αποφάσισα να σταματήσω να μαθαίνω μια γλώσσα όταν πιστεύω εγώ πως πρέπει να σταματήσω. Άλλωστε δεν φαίνεται κανείς να γνωρίζει μια δεδομένη απάντηση στο ερώτημά μου. Το θέμα μπορεί να κλειδώσει, ή να μετονομαστεί, γιατί από εδώ και πέρα ό,τι γράφεται θα αφορά τη Verilog ή οποιαδήποτε άλλη γλώσσα αποφασίσω να ακολουθήσω. Επεξ/σία 23 Ιανουαρίου 2014 από PiDefiner
Aztec Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Δεν μου αρέσουν τα διδακτικά παραμύθια και οι παραλληλισμοί, γιατί συχνά είναι άστοχα και δυσνόητα. Επίσης με κάνουν να νιώθω βλάκας. Μισώ τέτοιου είδους "σοφίες", οπότε είναι ένα κακό μέσο για να μου περάσει κάποιος το μήνυμά του. Μετά από αυτά που διάβασα αποφάσισα να σταματήσω να μαθαίνω μια γλώσσα όταν πιστεύω εγώ πως πρέπει να σταματήσω. Άλλωστε δεν φαίνεται κανείς να γνωρίζει μια δεδομένη απάντηση στο ερώτημά μου. Το θέμα μπορεί να κλειδώσει, ή να μετονομαστεί, γιατί από εδώ και πέρα ό,τι γράφετε θα αφορά τη Verilog ή οποιαδήποτε άλλη γλώσσα αποφασίσω να ακολουθήσω. Τι προσπάθησα να πω λοιπον στην παραμυθενια και δυσνοητη γλώσσα με την οποία εξεφραζα σοφίες Ο ζωγραφος ήξερε μια γλώσσα σαν την Java ας πούμε και ήταν πολύ καλός ο πρώτος τυπος χρησιμοποιούσε μια domain specific language ο δευτερος τυπος χρησιμοποιούσε μια γλώσσα χαμηλή σε resources ο τρίτος τυπος χρησιμοποιούσε εναν code generator όπως το CA GEN Το ηθικό διδαγμα που προσπάθησα να περάσω και μάλλον όπως φάνηκε δεν μπορεσα να το κάνω είναι ότι σταματας όταν νιώθεις efficient σε μια γλώσσα και γνωρίζεις καλά τα όρια και τις αδυναμίες της 1
gon1332 Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Το θέμα μπορεί να κλειδώσει, ή να μετονομαστεί, γιατί από εδώ και πέρα ό,τι γράφεται θα αφορά τη Verilog ή οποιαδήποτε άλλη γλώσσα αποφασίσω να ακολουθήσω. Ξεκίνα νέο θέμα γι'αυτό το λόγο ώστε να διευκολύνει και τους υπόλοιπους.
geomagas Δημοσ. 23 Ιανουαρίου 2014 Δημοσ. 23 Ιανουαρίου 2014 Πότε σταματάω μια γλώσσα; Ποτέ. Άλλωστε δεν μαθαίνεις ποτέ μία συγκεκριμένη γλώσσα, αλλά προγραμματισμό. Είναι σαν να έμαθες να οδηγάς σε cinquecento και θεωρείς ότι έμαθες cinquecento. Όχι, οδήγηση έμαθες. Και βέβαια θα δυσκολευτείς να συνηθίσεις το νέο αυτοκίνητο, αν αλλάξεις. Αλλά δεν ρώτησες ποτέ "πότε παρατάω το cinquecento". Και φυσικά, όσα περισσότερα αυτοκίνητα οδηγήσεις, και για όσο περισσότερο καιρό, και σε όσους περισσότερο δρόμους, τόσο πιο σφαιρική θα είναι η γνώση σου στην οδήγηση. Τηρουμένων των αναλογιών, πάντα... 1
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα