Γλώσσα Προγραμματισμού Μ2000 έκδοση 8

Ξεκίνησε από bugman, 24 Ιουλ 2015, 11:59:33 ΜΜ

« προηγούμενο - επόμενο »

evry

@bugman
Παλιά που πόσταρες σε λίγο άσχετα threads για την Μ2000 το παράκανες λίγο, ας πούμε ότι ήσουν οριακά ενοχλητικός (αν μου επιτρέπεις) αλλά τώρα πραγματικά έχεις ξεφύγει.
Τα  quaternions τετραδόνια !!!!!  Ε ΟΧΙ ΡΕ ΦΙΛΕ!!!  :o :o :o :o :o :o :o :o
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

bugman

#61
Έτσι τα λεει και η βικιπεδια. Ποτέ στα χρόνια του σχολείου και στο ΤΕΙ δεν διδάχθηκα το θέμα. Τα έμαθα κατά την ενασχόλησή μου με το προγραμματισμό. Μιλάμε για μαθηματικά του Hamilton ,πριν το 1900.
https://el.m.wikipedia.org/wiki/Τετραδόνιο

evry

ΟΚ, απλά μου χτυπάει πολύ άσχημα επειδή είχα ασχοληθεί κάποτε με αυτά, και όλοι έτσι τα λέγαμε.
Άκου (τετ)ραδόνιο, να το μπερδέψει κανείς με τα ραδόνιο  :D

Τα είχα γνωρίσει ως 4D αντικείμενα στα γραφικά
What I cannot create I do not understand -- Richard Feynman
http://evripides.mysch.gr

bugman

#63
Αρχικά είχα υλοποιήσει μια κλάση για να καταλάβω τι γίνεται με αυτά. Δες εδώ:
http://www.rosettacode.org/wiki/Quaternion_type
Και μετά βρήκα ένα πρόγραμμα σε VB6 που τα χρησιμοποιούσε για την περιστροφή μιας τρίεδρης γωνίας. Οπότε αποφάσισα να βάλω σε μια ενσωματωμένη βιβλιοθήκη Μαθηματικά ή Math τις συναρτήσεις με μια προσθήκη, όλες οι συναρτήσεις να παίζουν για πίνακες στοιχείων. Με μια εντολή να έχουμε άμεσα το αποτέλεσμα σε πολλά στοιχεία. Βοήθησε σε αυτό η δυνατότητα της M2000 να φτιάχνει δομές στοιχείων όπως στη C, ονομάζοντας και δίνοντας τύπο σε offsets στη μνήμη. Οπότε καλούμε αυτές τις συναρτήσεις δίνοντας διευθύνσεις.
Αν θες μπορείς να δεις το πρόγραμμα demo1. Δουλεύει σε ένα παράθυρο με ταυτόχρονη χρήση νημάτων, όπου ένα νήμα εκτελεί τις συναρτήσεις επί των τετραδονίων και άλλο τα εμφανίζει σε τακτά διαστήματα. Οι γραμμές είναι σε αντικείμενα σε έναν πίνακα γραμμών όπου πριν την εμφάνιση γίνεται ταξινόμηση βάσει του βάθους οπότε η σχεδίαση γινεται πρώτα από τη γραμμή που είναι σε μεγαλύτερο βάθος, ώστε πάντα να έρχεται πάνω από τις άλλες γραμμές η γραμμή με το χρώμα που είναι πιο κοντά σε μας!

bugman

Βάζω εδώ την ανάρτηση που διαγράφτηκε (μάλλον θεωρήθηκε διαφήμιση) από το θέμα:
Γ΄ Λυκείου / Απ: Υλη 2020 - 2021


ΠαράθεσηΣύγχρονη γλώσσα είναι η Μ2000 και έχει το προσόν να έχει ελληνικές εντολές. Επιπλέον δεν έχει ένα περιβάλλον με κουμπάκια και χρήση ποντικού (το χρησιμοποιούμε αν θέλουμε μέσα από το πρόγραμμα). Όλα γίνονται από το REPL, μια κονσόλα που γράφουμε διάφορα τμήματα και τα καλούμε με το όνομά τους. Έτσι ένας μαθητής μπορεί να γράψει δυο ή περισσότερες εκδόσεις του ίδιου προβλήματος, και να δει την διαφορά!
Σώνονται όλα με μια εντολή Σώσε όνομα1 και φορτώνονται με μια Φόρτωσε όνομα1  Ούτε εισαγωγικά δεν χρειάζεται. Επιπλέον υπάρχει σύστημα με χρήστες χωρίς κωδικούς. Το όνομα χρήστη αλλάζει τον κατάλογο χρήστη. Έτσι ο κάθε μαθητής έχει το δικό του κατάλογο. Η κονσόλα διαμορφώνεται σε μέγεθος χαρακτήρων που επιθυμούμε και μπορούμε να καταχωρούμε τις αλλαγές ανά χρήστη. Έτσι αν κάποιος δεν βλέπει καλά με το που βάζει Χρήστης ΌνομαΤάδε έρχεται ο φάκελός του ως φάκελος χρήστη και τα χρώματα και το μέγεθος γραμμάτων που χρησιμοποιεί. Ο μαθητής δεν χρειάζεται καν να ξέρει ότι υπάρχει φάκελος χρήστη. Δηλαδή όταν ένα όνομα αρχείου δεν έχει path χρησιμοποιείται αυτόματα ο τρέχον φάκελος που είναι ο φάκελος χρήστη!

Η Μ2000 έχει την ευκολία της BASIC, η οποία ήταν για πολλά χρόνια βασική στην εκπαίδευση. Η Basic σαν γλώσσα είχε απλές εκδόσεις λιτές που είχαν μόνο ακέραιους, και προχωρημένες όπως η BBC BASIC η οποία χρησιμοποιήθηκε από τα σχολεία της Αγγλίας και το κανάλι BBC σε εκπομπές για τη χρήση του υπολογιστή και του προγραμματισμού του.
Στο πνεύμα αυτό η Μ2000 ενσωματώνει ένα περιβάλλον που μπορούμε να σχεδιάζουμε, να βάζουμε εικόνες, να φτιάχνουμε μετακινούμενες διαφάνειες (sprites), να παίζουμε ήχους,  μουσική, νότες (έχει ενσωματωμένη γλώσσα μουσικής για να παίζει νότες σε 16 φωνές και κάθε φωνή με ένα από 128 όργανα μουσικής), βίντεο και πιο προχωρημένα θέματα όπως βάσεις δεδομένων.
Για όλα αυτά δεν χρειάζονται εξωτερικές βιβλιοθήκες. Τα έχει όλα το περιβάλλον ενσωματωμένα.

Οι άλλες γλώσσες, οι επαγγελματικές θα λέγαμε, έχουν πληθώρα βιβλιοθηκών και με το καιρό έχουν  πολλές αλλαγές. η Μ2000 δεν αλλάζει, και τρέχει πάντα γιατί ό,τι χρησιμοποιεί υπάρχει και θα υπάρχει πάντα στα Windows. Χρησιμοποιεί το Win32 μοντέλο προγραμματισμού το οποίο τρέχει και σε Windows 10 και σε όλες τις 64bit εκδόσεις.

Βλέπω στη ΓΛΩΣΣΑ για παράδειγμα όλο αυτό το πρόβλημα με το AK() αν πάρω ακέραια τιμή να την δώσω σε ακέραια μεταβλητή και στη Μ2000 είναι ξεπερασμένο, γιατί η ανάλογη ΑΚ() θα δώσει ακέραια τιμή στο τύπο που είναι η έκφραση στην ΑΚ(). Ομοίως και οι DIV και MOD, που εδώ υπάρχουν σε ΔΙΑ και ΥΠΟΛ και ΥΠΟΛΟΙΠΟ. Για τα παιδιά του δημοτικού οι αριθμοί γράφονται χωρίς να λέμε το τύπο τους. Δηλαδή με έναν τύπο (τον εξ ορισμού double) κάνουμε ότι προγράμματα θέλουμε ακόμα και όταν θέλουμε να είναι ακέραιοι.
(Η γλώσσα έχει πράγματι πολλούς τύπους αριθμών, αλλά δεν είναι υποχρεωτικό να τους χρησιμοποιήσει κανείς). Αυτή η ευκολία στο προγραμματισμό κάνει το μαθητή να σκέφτεται το πρόβλημα όχι τη σύνταξη.


Επίσης βάζω παρακάτω μια μεταγραφή κώδικα από PL/Ι σε M2000. Το θέμα εδώ είναι να δειχθεί πώς γίνονται επαναλήψεις με πολλαπλές  περιοχές τιμών, όπου η PL /I ως δυνατότητα την είχε ενσωματωμένη. Το παράδειγμα είναι από εδώ: http://rosettacode.org/wiki/Loops/with_multiple_ranges
Κώδικας σε PL/I

                                       /* all variables are DECLARED as integers. */
          prod=  1;                    /*start with a product of unity.           */
           sum=  0;                    /*  "     "  "   sum    " zero.            */
             x= +5;
             y= -5;
             z= -2;
           one=  1;
         three=  3;
         seven=  7;
                                       /*(below)  **  is exponentiation:  4**3=64 */
           do j=   -three  to     3**3        by three   ,
                   -seven  to   +seven        by   x     ,
                      555  to      550 - y               ,
                       22  to      -28        by -three  ,
                     1927  to     1939                   ,
                        x  to        y        by   z     ,
                    11**x  to    11**x + one;
                                                        /* ABS(n) = absolute value*/
           sum= sum + abs(j);                           /*add absolute value of J.*/
           if abs(prod)<2**27 & j¬=0  then prod=prod*j; /*PROD is small enough & J*/
           end;                                         /*not 0, then multiply it.*/
                     /*SUM and PROD are used for verification of J incrementation.*/
         display (' sum= ' ||  sum);                    /*display strings to term.*/
         display ('prod= ' || prod);                    /*   "       "     "   "  */


Στη Μ2000 που είναι σύγχρονη γλώσσα μπορούμε να χρησιμοποιούμε λάμδα συναρτήσεις. Δείτε ότι το ** όπως και το ^ χρησιμοποιείται για ύψωση σε δύναμη. Επίσης δηλώνουμε τύπο Long ενώ μπορούμε να το αλλάξουμε και να δουλέψει σωστά σε Decimal, Currency, Double, Single ενώ για Integer (16bit) θα βγάλει overflow λάθος.
Η πρώτη λάμδα συνάρτηση γυρνάει μια άλλη λάμδα με κλεισίματα τις τιμές που θέλουμε για να εκτελεστεί η επανάληψη. Η  μεταβλητή που θέλουμε να λαμβάνει την κάθε τιμή από την περιοχή τιμών, δίνεται με αναφορά. Στη Μ2000 η αναφορά δηλώνεται με το &, και στο πέρασμα στην κλήση και στην μεριά της συνάρτησης που καλούμε. Έτσι είναι ξεκάθαρο τι δίνουμε με αναφορά και τι με τιμή.
Η δεύτερη λάμδα παίρνει ότι της δίνουμε και τα βάζει σε ένα πίνακα και δίνει τον πίνακα σαν μεταβλητή (Δείκτης σε πίνακα). Αυτός ο δείκτης γίνεται κλείσιμο στην επιστρεφόμενη λάμδα. Έτσι στο τέλος έχουμε μια Exec η οποία είναι μεταβλητή και συνάρτηση μαζί.
Σε μια While εκτελούμε το πολλαπλών περιοχών DO  (η FOR σε άλλες γλώσσες).

Κώδικας με εντολές στα αγγλικά σε Μ2000

Module MultipleLoop {
   def long prod=1, sum=0, x=+5,y=-5, z=-2, one=1, three=3, seven=7, j
   Range=lambda (a, b, c=1) ->{
      =lambda a, b, c (&f)-> {
         if compare(a,b)=sgn(c) then =false else =true: f=a: a+=c
      }
   }
   MultipleRange=Lambda -> {
      a=array([])  '  convert stack items in current stack [] to an array of items
      =lambda  a, k=0 (&f) ->{
         do : if k<len(a) Else exit
         if a#eval(k, &f) then =true: exit
         k++ : always
      }
   }
   Exec=MultipleRange(Range(-three, 3**3, three), Range(-seven, +seven, x), Range(555, 550-y), Range(22, -28, -three), Range(1927, 1939), Range(x,y,z), Range(11**x, 11**x+one))
   j=0
   while Exec(&j)
      sum+=abs(j)
      if abs(prod) < 2^27 And j <> 0 then prod*=j
   End While

   Print "sum=";sum
   Print "prod=";prod
}
MultipleLoop

bugman

Πώς γίνεται να προωθήσω τη Μ2000 ως εκπαιδευτικό εργαλείο;

alkisg

Παράθεση από: bugman στις 23 Μαΐου 2020, 04:22:34 ΜΜ
Πώς γίνεται να προωθήσω τη Μ2000 ως εκπαιδευτικό εργαλείο;

Γιώργο δεν είναι ότι δεν την ξέρουμε. Με τόσα χρόνια που την διαφημίζεις εδώ μέσα, να είσαι σίγουρος ότι την έχουμε ακούσει όλοι. Όμως δεν έχουμε κάποιον λόγο να την χρησιμοποιήσουμε. Αν θες τη γνώμη μου, είναι κρίμα να αφιερώνεις τόσο χρόνο και κόπο σε κάτι που δεν θα χρησιμοποιηθεί, καλύτερα να βρεις κάποια υπάρχουσα ανάγκη και να τον αφιερώσεις εκεί. Υπάρχουσες ανάγκες υπάρχουν πολλές, αν σε ενδιαφέρει μπορούμε να ανοίξουμε ένα θέμα και να το συζητήσουμε.

Η ΓΛΩΣΣΑ έχει το πλεονέκτημα ότι είναι στο διδακτικό πακέτο, και ειδικά σχεδιασμένη για την εκπαίδευση, και στα Ελληνικά, και απλή κλπ, και ακόμα κι έτσι πολλοί συνάδελφοι θέλουν να φύγει.
Αν ποτέ αλλάξει η ΓΛΩΣΣΑ λόγω αλλαγής διδακτικού πακέτου, θα αντικατασταθεί από κάποια από τις γνωστές γλώσσες, είτε εκπαιδευτικές είτε επαγγελματικές, που αναπτύσσονται από δεκάδες ως χιλιάδες developers:
https://en.wikipedia.org/wiki/List_of_educational_programming_languages

Δεν θεωρώ ούτε πιθανό ούτε σωστό να προτιμηθεί μια γλώσσα one-man-show. Και δεν έχουμε τους πόρους στην Ελλάδα να στηρίξουμε την ανάπτυξη νέων γλωσσών· όπως είδες 20 χρόνια μετά το Υπουργείο δεν έχει ακόμα υλοποιήσει επίσημα τη ΓΛΩΣΣΑ της ΑΕΠΠ, δεν υπήρξαν ούτε θα υπάρξουν σχετικά κονδύλια.

bugman

Δεν είδα επιχειρήματα του γιατί δεν κάνει η Μ2000. Το one-man-show δεν είναι κάτι νέο. Και άλλοι έγραψαν γλώσσες προγραμματισμού ως one-man-show.
Το θέμα είναι να ασχοληθούν εκπαιδευτικοί με τη γλώσσα Μ2000. Να διαβάσουν μια φορά αυτό το μικρό εγχειρίδιο να δουν αν τους κάνει! Είναι εύκολη γλώσσα.
Μπορεί να είναι η δουλειά μου one-man-show αλλά έχει φθάσει σε μια τελειότητα μετά από είκοσι χρόνια ανάπτυξης, και διόρθωσης λαθών, που μπορώ με βεβαιότητα να πω ότι είναι ολοκληρωμένη και ελεγμένη.

Για να καταλάβει κανείς τι σημαίνει "άρπα κόλλα"...σήμερα που δούλευα ένα έργο σε Arduino IDE, με δυο τρια ctrl+Z ctrl+Y ανακατεύτηκε ο κώδικας! Βέβαια όταν σου λένε ότι είναι δωρεάν και ανοικτού κώδικα δεν ζητάς τα ρέστα. Λες ότι θα το φτιάξουν, σε κάποια άλλη έκδοση θα είναι καλύτερο. Απλά κάνεις συχνά save να γλιτώσεις το άγνωστο σφάλμα του editor...

Μυστηριωδώς η ερώτησή μου "Πώς γίνεται να προωθήσω τη Μ2000 ως εκπαιδευτικό εργαλείο;" έφυγε από το θέμα ΓΕΛ: Back to the Past και κόλλησε εδώ!


alkisg

#68
Παράθεση από: bugman στις 24 Μαΐου 2020, 12:54:27 ΠΜ
Δεν είδα επιχειρήματα του γιατί δεν κάνει η Μ2000.

Τα έχουν γράψει άλλοι συνάδελφοι σε προηγούμενα μηνύματα τόσα χρόνια (γλώσσα-έκτρωμα, εξελληνισμένη vb6, κλπ κλπ). Αλλά το πιο σημαντικό είναι ότι "δεν αναφέρεται στο πρόγραμμα σπουδών". Δεν αποφασίζει ο κάθε εκπαιδευτικός από το κεφάλι του τι θέλει να διδάξει, κοιτάει αυτά που προτείνει το Υπουργείο.

Παράθεση από: bugman στις 24 Μαΐου 2020, 12:54:27 ΠΜ
Μυστηριωδώς η ερώτησή μου "Πώς γίνεται να προωθήσω τη Μ2000 ως εκπαιδευτικό εργαλείο;" έφυγε από το θέμα ΓΕΛ: Back to the Past και κόλλησε εδώ!

Κανένα μυστήριο! Αντί να τη σβήσουμε ως συνήθως, είπα να αφιερώσω κανά τέταρτο και να είμαι πιο ευγενικός και να τη μεταφέρω εδώ που είναι "ο χώρος σου" και να σου απαντήσω. Πλέον οι συνάδελφοι αναφέρουν τα μηνύματά σου με ατάκες όπως "μαζέψτε τον" ή "ρίξτε του ένα ban επιτέλους" κλπ. Εγώ θεωρώ ότι τα ban δεν είναι καλή λύση, αφού μπορούν τα μέλη να κάνουν άλλο λογαριασμό. Θεωρώ καλύτερο να συνειδητοποιεί ο καθένας πότε και γιατί γίνεται ενοχλητικός. Όταν για παράδειγμα πας στην κατηγορία της ΑΕΠΠ που είναι πανελλαδικώς εξεταζόμενη, και δίνεις απαντήσεις που δεν έχουν καμία σχέση με την εκπαιδευτική πραγματικότητα, αφού δεν είσαι εκπαιδευτικός, δεν έχεις μελετήσει το διδακτικό πακέτο κλπ, μπορεί να κάψεις κόσμο. Στο Στέκι ρωτάνε μαθητές και καθηγητές, αλλά υπονοείται ότι αυτοί που απαντάνε είναι καθηγητές, δεν θέλουμε γενικά τη γνώμη φωτογράφων - ερασιτεχνών προγραμματιστών να μπλέκει τους μαθητές και να νομίζουν ότι υπάρχουν καθηγητές που σκέφτονται έτσι. Στα 20 χρόνια του φόρουμ, διαρκή παράπονα / αναφορές έχουν γίνει μόνο για 3 άτομα, δύο εκ των οποίων δεν ήταν εκπαιδευτικοί. Για τους χιλιάδες υπόλοιπους καθηγητές και μαθητές δεν υπήρξε πρόβλημα.

Όλα αυτά δεν είναι καινούργια, έχουμε τόσα χρόνια που τα συζητάμε. Γι' αυτό οποιαδήποτε αναφορά στην Μ2000 εκτός αυτού του θέματος διαγράφεται, ενώ επίσης πολλές φορές διαγράφονται και συμβουλές που δίνεις σε ευαίσθητα θέματα όπως ΑΕΠΠ, και συνήθως χωρίς καν να τις διαβάζουμε πια λόγω έλλειψης χρόνου. Συγνώμη και για το ύφος μου αλλά νομίζω καλύτερα πια να τα λέμε ξεκάθαρα. Αντίθετα, αν έβρισκες κάποια υπάρχουσα ανάγκη της εκπαίδευσης και αφιέρωνες το χρόνο σου εκεί, να είσαι σίγουρος ότι όλοι θα σε εκτιμούσαν γι' αυτό.

ilias_s

#69
Παράθεση από: bugman στις 24 Μαΐου 2020, 12:54:27 ΠΜ
...

Μυστηριωδώς η ερώτησή μου "Πώς γίνεται να προωθήσω τη Μ2000 ως εκπαιδευτικό εργαλείο;" έφυγε από το θέμα ΓΕΛ: Back to the Past και κόλλησε εδώ!

Μου κάνει εντύπωση που ρωτάς..!

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

1) Ό,τι και να ήθελα να υιοθετήσω θα έπρεπε να προβλέπεται στο Πρόγραμμα Σπουδών(ΠΣ) του σχολείου. Αν δεν περιέχεται το Χ εργαλείο στο Π.Σ θα έχω προβλήματα. Το πιο απλό είναι να γυρίσει ένας μαθητής και να μου πει "που βρίσκω στο βιβλίο τη Μ2000?". Πάει... ό,τι και να πεις έχεις χάσει από τη στιγμή που διατυπώθηκε το ερώτημα! Δεν επιλέγει ο καθένας μας τι θα διδάξει και τι όχι!

2) Ουσιαστικά δεν καλύπτει κάποια ανάγκη! Ο Διερμηνευτής της ΓΛΩΣΣΑΣ έρχεται και μας "λυτρώνει" από το μαρτύριο της διδασκαλίας (του, κατά τ'άλλα, εργαστηριακού μαθήματος) του προγραμματισμού στον πίνακα! Αν η ΓΛΩΣΣΑ δεν υπήρχε στην ΑΕΠΠ δε θα γύρναγα ούτε να την κοιτάξω!

3) Δεν μπορεί να χρησιμοποιηθεί και στις μικρότερες τάξεις γιατί, και άψογη να ήταν ως γλώσσα, οι προδιαγραφές μιλάνε για block-based εκπαιδευτικά προγραμματιστικά περιβάλλοντα. Και τέτοιο να ήταν το δικό σου εργαλείο πάλι θα έπρεπε να επιβιώσει στη σύγκριση με άλλα γνωστά αντίστοιχα εργαλεία.

Πως το βλέπω εγώ... Κάνεις το χόμπι σου με τη Μ2000? Καλά κάνεις αν είναι έτσι ΑΛΛΑ αντιμετώπισέ το ως χόμπι. Και εγώ κάνω διάφορα πράγματα για χόμπι. Δεν τα προωθώ και μπορεί κάποια να τα εντάξω σε μάθημα (π.χ κατασκευές physical computing) μόνο αν "κολλάει". Αυτά που κάνω τα κάνω, πρώτα και κύρια, για εμένα και αυτό είναι που με κάνει χαρούμενο.

Αν δεν το κάνεις απλά για χόμπι ή αν περιμένεις να σε ακολουθήσουν και άλλοι θα πρέπει να καλύψεις κάποιες ανάγκες. Δες για παράδειγμα την απήχηση που έχει το LTSP (μαζί με τα sch-scripts και τον epoptes). Εμένα αυτά με έχουν σώσει εξοικονομώντας 10άδες ανθρωποώρες δουλειάς τα τελευταία 6 χρόνια! Όταν μου "τα πρωτοσύστησαν" (ψιλοτυχαία ε!) σε κάποια επιτόπια επιμόρφωση το 2013, αν θυμάμαι καλά, δεν χρειάστηκε να με πείσουν κάν... μόνος μου σκέφτηκα "καλά εγώ σε πηγάδι ζούσα???".

Όταν η λύση σου εξυπηρετεί κάποια ανάγκη δε χρειάζεται καν να γράφεις παντού!

bugman

#70
@ilias_s
Σε ευχαριστώ για τις ξεκάθαρες απόψεις σου και το θάρρος να τις γράψεις εδώ.

Παρατηρήσεις:
- Τι σημαίνει να προβλέπεται από το ΠΣ. Τα ΠΣ δεν εξελίσσονται; Τα σημερινά ΠΣ θα αποδίδουν για πάντα; Είμαστε ικανοποιημένοι;
- Μη κοιτάς την ανάγκη του σήμερα, πχ για έναν διερμηνευτή της ΓΛΩΣΣΑΣ, που δεν είχε η ΑΕΠΠ, οπότε καλύφθηκε από δυο τρεις διερμηνευτές, αλλά την ανάγκη του μαθητή να αναπτύξει την ευφυΐα του, την φαντασία του, την απόδοσή του. Ο μαθητής είναι ο στόχος της εκπαίδευσης.
- Η ιδέα των toy-languages (block-based), δεν με εντυπωσιάζει. Με μια γλώσσα εργαλείο που θα την έχει μαζί του ο μαθητής από το δημοτικό μέχρι το λύκειο, θα εστιάζει στο πρόβλημα, χωρίς να ξοδεύει χρόνο για εισαγωγή στο κάθε νέο εργαλείο.
- Το τι συμβαίνει στην εκπαίδευση δεν είμαι αρμόδιος να το κρίνω. Προφανώς όποιος είναι ικανοποιημένος με το επίπεδο της εκπαίδευσης, με τις τρέχουσες επιλογές, δεν έχει θέμα να ψάχνει για κάτι άλλο. Εδώ βλέπω όμως ότι η απουσία ενός εγχειριδίου για τη ΓΛΩΣΣΑ φέρνει προβλήματα στους καθηγητές, πόσο μάλλον στους μαθητές. Κάτι λοιπόν δεν πάει καλά. Δεν είναι όλα όμορφα!


Για τη Μ2000:
Πράγματι η δουλειά μου πάνω στη Μ2000 είναι ένα χόμπι, κάτι που κάνω όποτε έχω όρεξη, δηλαδή δεν το κάνω κατά παραγγελία.

Για το παρόν και το μέλλον:
Το αν θα μπει κάποτε η Μ2000 ως εργαλείο εκπαίδευσης, δεν είναι δικό μου θέμα. Εγώ οφείλω να το προτείνω.  Η Μ2000 έχει πολλά χρόνια ανάπτυξης (με τους δικούς μου αργούς ρυθμούς). Πολλοί έχουν δει τη γλώσσα σε παλαιότερες εκδόσεις και εκφέρουν γνώμη πάνω στις παλιές εκδόσεις.

Οξύμωρο ζήτημα:
Θέλουμε να γίνει καλύτερη η εκπαίδευση αλλά αδυνατούμε να δώσουμε χρόνο, να δούμε τι άλλο μπορεί να είναι χρήσιμο.

Μόνιμο φαινόμενο που παρατηρώ εδώ είναι το "δεν έχω χρόνο να το κοιτάξω".

Πώς μπορεί να ενταχθεί το εργαλείο Μ2000 στην εκπαίδευση:
Ηλία έβαλες ένα ακόμα θέμα, το τι θα γίνει αν βάλεις τη γλώσσα στο μάθημα της ΑΕΠΠ. Προφανώς δεν περιμένω έναν τέτοιο τρόπο. Θέλω κάποιος να ασχοληθεί με την αξιολόγηση του εργαλείου για την εκπαίδευση. Δηλαδή να κάνει κάποια μελέτη. Μέχρι τώρα γίνονται μελέτες σε εργαλεία που ήδη χρησιμοποιούνται αλλού. Αυτή είναι εκ του ασφαλούς μελέτη, αφού όντως κάτι κάνουν για εκπαίδευση αλλού (σε άλλες χώρες), το να εκπονηθεί μια μελέτη σε τάξεις θα δώσει σίγουρα αποτελέσματα. Ακόμα και τον επίλογο της μελέτης τον έχει κανείς έτοιμο πριν καν ξεκινήσει!

Εδώ λοιπόν μιλάμε για μια μελέτη σε ένα εργαλείο που προτείνει ο Χ (κάποιος θίγει και το θέμα του τι δουλειά έκανα κάποτε, ως επιβαρυντικό), χωρίς να προτείνει μεθόδους εκπαίδευσης. Δυστυχώς έχει χαθεί η παιδική περιέργεια που θα έβαζε ερωτήματα:Τι το διαφορετικό έχει το εργαλείο; Το είδα; Έχει νέα έκδοση την είδα; Και ως έμπειρος και όχι παιδί πρέπει κανείς να αντιληφθεί τις διαφορές, τα συν και τα πλην. Ασφαλώς επιχειρήματα τετριμμένα του τύπου "δεν έχω χρόνο" είναι πάντα στο τραπέζι. Περιμένω εκείνον που θα έχει χρόνο!

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

Δεν έχω γράψει εκπαιδευτικό βιβλίο για σχολείο με χρήση της Μ2000. Αυτό το αφήνω για τους εκπαιδευτικούς.

Απαραίτητο για τη χρήση ενός εργαλείου είναι η τεκμηρίωση, και αυτό το έχω κάνει:
Στο αρχείο εγκατάστασης της γλώσσας έχω δυο βιβλία σε Pdf, ένα μικρό εγχειρίδιο στα ελληνικά, και ένα εισαγωγικό στα αγγλικά. Στο blog υπάρχει ένα μεγάλο εγχειρίδιο με 35 τεύχη. Υπάρχει ενσωματωμένη βοήθεια για όλα τα αναγνωριστικά της γλώσσας (500+ Ελληνικά και άλλα τόσα αγγλικά). Υπάρχουν παραδείγματα σε ένα μεγάλο αρχείο info, με τμήματα, που περιέχει 23k+ γραμμές κώδικα σε Μ2000.

Επίλογος
Η εκπαίδευση που έχουμε σήμερα είναι επιλογή μας. Δεν είναι οι αρμόδιοι, φυτεμένοι από το Θεό, είναι και αυτοί επιλογή μας, έμμεση αλλά είναι. Είναι λοιπόν θέμα επιλογής αν θα μπει η Μ2000 στη θέση πχ της Logo.
ΓΚ

ilias_s

Παράθεση από: bugman στις 26 Μαΐου 2020, 03:39:49 ΜΜ
@ilias_s
Σε ευχαριστώ για τις ξεκάθαρες απόψεις σου και το θάρρος να τις γράψεις εδώ.

Παρατηρήσεις:
(1) - Τι σημαίνει να προβλέπεται από το ΠΣ. Τα ΠΣ δεν εξελίσσονται; Τα σημερινά ΠΣ θα αποδίδουν για πάντα; Είμαστε ικανοποιημένοι;
(2) - Μη κοιτάς την ανάγκη του σήμερα, πχ για έναν διερμηνευτή της ΓΛΩΣΣΑΣ, που δεν είχε η ΑΕΠΠ, οπότε καλύφθηκε από δυο τρεις διερμηνευτές, αλλά την ανάγκη του μαθητή να αναπτύξει την ευφυΐα του, την φαντασία του, την απόδοσή του. Ο μαθητής είναι ο στόχος της εκπαίδευσης.
(3) - Η ιδέα των toy-languages (block-based), δεν με εντυπωσιάζει. Με μια γλώσσα εργαλείο που θα την έχει μαζί του ο μαθητής από το δημοτικό μέχρι το λύκειο, θα εστιάζει στο πρόβλημα, χωρίς να ξοδεύει χρόνο για εισαγωγή στο κάθε νέο εργαλείο.
(4) - Το τι συμβαίνει στην εκπαίδευση δεν είμαι αρμόδιος να το κρίνω. Προφανώς όποιος είναι ικανοποιημένος με το επίπεδο της εκπαίδευσης, με τις τρέχουσες επιλογές, δεν έχει θέμα να ψάχνει για κάτι άλλο. Εδώ βλέπω όμως ότι η απουσία ενός εγχειριδίου για τη ΓΛΩΣΣΑ φέρνει προβλήματα στους καθηγητές, πόσο μάλλον στους μαθητές. Κάτι λοιπόν δεν πάει καλά. Δεν είναι όλα όμορφα!

...

Θα σου σχολιάσω τις αριθμημένες παρατηρήσεις με τις οποίες κατά βάση είμαι σύμφωνος!

(1) Όχι, στην πράξη, τα προγράμματα δυστυχώς ΔΕΝ εξελίσσονται (τουλάχιστον στην πληροφορική, όχι όπως θα έπρεπε!). Παίζουμε μπάλα με ένα ΠΣ 20ετίας στο λύκειο.

(2) Καλά τα λες και συμφωνώ. Το υπουργείο όμως δεν έχει τους ίδιους στόχους με την εκπ/κή κοινότητα. Ακούγεται οξύμωρο αλλά αυτό συμβαίνει. Δεν τους ενδιαφέρει να μάθει ο μαθητής, να είναι δημιουργικός κτλ... τον θέλουν απλά να δίνει εξετάσεις! Τα συμφέροντα που εξυπηρετεί το υπουργείο δεν είναι αυτά του μαθητή!

(3) Στη βάση της τουλάχιστον η σκέψη σου είναι σωστή, αν και θα σου πω ότι το Scratch 1.4 (το οποίο δε συμπαθώ) μπορεί να σε εκπλήξει με μερικές δυνατότητές του..! Δεν είμαι fan των block-based εκπ/κών γλωσσών. Αλλά δεν αποφασίζω εγώ! Το υπουργείο θέτει το πλαίσιο. Εδώ για μία διευκρίνηση σε μία ΕΠΙΛΕΞΕ κοπανιόμασταν 20 χρόνια και μας έγραφαν!

(4) Πάρα πολλοί δεν είμαστε ικανοποιημένοι με το επίπεδο της παρεχόμενης εκπ/σης (σε πολλούς κλάδους και όχι αδίκως). Δεν ακολουθούμε τις οδηγίες του υπουργείου επειδή μας αρέσουν...

Δες το ποστ του Άλκη, λέει μερικά πολύ σωστά πράγματα. Αντικειμενικά, για όποιον δεν είναι συνδεδεμένος συναισθηματικά με τη Μ2000, η υιοθέτησή της μακροπρόθεσμα μπορεί να είναι πρόβλημα. Εδώ λέμε να αντικατασταθεί η ΓΛΩΣΣΑ με κάποια άλλη, παγκοσμίως αποδεκτή γλώσσα, και... σκαλώνουμε! Αν περιμένεις το project σου με τη Μ2000 να καθιερωθεί ως εκπ/κό εργαλείο, νομίζω πως αδίκως παιδεύεσαι... Αν το κάνεις από χόμπι ΟΚ! Χόμπι σου είναι και κάνεις ό,τι θες, αλλά μη σου κάνει εντύπωση που δεν προχωράει έτσι όπως ονειρεύεσαι!

Πάντως πραγματικά υπάρχουν πολλές άλλες ανάγκες αν θες να ασχοληθείς με κάτι..! Δεν είναι εύκολο να πείσεις κάποιον να χρησιμοποιήσει ένα εργαλείο αν ο ίδιος δεν έχει την περιέργεια και ειδικά αν δεν υπάρχει κάποια ανάγκη...

bugman

Η Μ2000 είναι ένα τεράστιο πρόγραμμα χωρίς σχόλια (ίσως μερικές γραμμές, σε σύνολο 200+ χιλιάδων γραμμών κώδικα). Στο Λύκειο δεν υπήρχε μάθημα προγραμματισμού. Στο ΤΕΙ υπήρχαν δυο εξάμηνα, ένα για BASIC και ένα για FORTRAN. Οι ασκήσεις ήταν πιο εύκολες από αυτά της ΑΕΠΠ. Σε πέντε λεπτά γραφόντουσαν, αν είχες το ταλέντο να σκέφτεσαι αλγοριθμικά, όπως εγώ. Οι περισσότεροι έγραφαν "μισά" προγράμματα. Δεν μπορούσα να γράψω μισό πρόγραμμα! Ή το γράφεις ή όχι. Δεν μιλάμε για κάποιο λάθος εκ παραδρομής, πχ ένα συντακτικό. Ακριβώς αυτό έχω κάνει με τη Μ2000, δεν μπορώ να φτιάξω "μισό" πρόγραμμα. Έκανα ότι μπορεί να γίνει για να ολοκληρωθεί η ιδέα, και το διασκέδασα! Το Bugman είναι τίτλος για αυτόν που διορθώνει τα λάθη του, ο άνθρωπος των λαθών.

Έχω δει πολλές προτάσεις εδώ για συμμετοχή σε "άλλες ανάγκες". Όχι κάτι τέτοιο δεν το κάνω. Όταν καλύπτω ανάγκες ιδιωτών πληρώνομαι. Εκεί με ενδιαφέρει να κάνω ότι πιο απλό γίνεται. Τα απλά πράγματα δίνουν τα πιο πολλά λεφτά. Μπορείς με ένα τηλέφωνο να βγάλεις 1000 ευρώ. Ο λόγος  κέρδους προς ενασχόληση πρέπει να είναι πολύ πιο πάνω από τη μονάδα. Αν είναι αλλιώς τότε λέγεσαι κορόιδο. Με μηδενικό κέρδος, ο λόγος είναι 0, είναι εκτός συναγωνισμού, βάζεις όσο χρόνο θέλεις και πάλι μηδέν βγαίνει. Άρα η ουσία δεν είναι τι βγάζεις από αυτό που κάνεις, αλλά τι σου προσφέρει αυτό που κάνεις.

Πληροφορικός για μένα σημαίνει να ασχολείσαι είτε προγραμματίζοντας είτε διευθύνοντας άλλους, να προγραμματίζουν. Αν πούμε ότι υπάρχουν 3000 Πληροφορικοί καθηγητές, άνετα θα είχαν φτιάξει όλα τα εργαλεία που θα χρειάζονταν αρκεί να υπήρχε καθοδήγηση, διαμοιρασμός και κάποιον επιτελικό για να οργανώσει τα πάντα. Αλλά όπως είναι γνωστό δεν υπάρχει χρόνος!

Συμφωνώ λοιπόν πώς αν δεν ψάχνετε για γλώσσες και εργαλεία δεν υπάρχει ανάγκη ούτε για τη Μ2000, ούτε για άλλη γλώσσα.



ilias_s

Σιγά σιγά παραθέτεις μερικά από τα προβλήματα με τα οποία θα έρθει αντιμέτωπος αυτός που θα σκεφτεί να υιοθετήσει την Μ2000. 200+ χιλιάδες κώδικα, γραμμένες από έναν άνθρωπο, με ελάχιστη τεκμηρίωση. Να προσθέσω εγώ... και χωρίς καμία υποχρέωση (συμβόλαιο κτλπ) απέναντί μας! Αύριο κέρδισες το τζόκερ, βαρέθηκες ή αποφάσισες να πας να ζήσεις στο Νεπάλ ως μοναχός... Τι γίνεται τότε?

Αυτό το πρόβλημα,θα πεις, έχει ήδη και η ΓΛΩΣΣΑ! Σωστά! Η ΓΛΩΣΣΑ είναι 20 χρόνια "στατική" (νεκρή θα έλεγα εγώ). Αυτό δεν είναι καλό και γι' αυτό πλέον δεν μπορεί να προσαρμοστεί σε ένα νέο ΠΣ. Είναι και ένας από  τους λόγους που αρκετοί θέλουμε την αλλαγή. Αν υιοθετηθεί η Μ2000, όσο έχεις όρεξη, όλα θα είναι καλά ας πούμε. Αν όμως "αλλάξεις χόμπι" εμείς θα βρεθούμε πάλι στην προηγούμενη (σημερινή) κατάσταση... την οποία πασχίζουμε κάποιοι να αλλάξουμε!

Σου το έγραψα και πριν. Δε σε κατακρίνω, αν και διακρίνω μία ενόχληση(?) σε ορισμένα σημεία στα ποστ σου. Θα στο γράψω ξανά. Είναι χόμπι? Κάνεις ό,τι θες! Το κάνεις για εσένα πρώτα και κύρια. Αναφέρεις ότι το διασκέδασες! Αυτό είναι πολύ καλό. Αν κάποιος θέλει να χρησιμοποιήσει τη δουλειά σου θα σου ζητήσει την άδεια και αν θες του τη δίνεις (αν θες χρέωσέ τον κιόλας... δεκτό!). Δεν σε υποχρεώνει κανένας να ασχοληθείς με τη Μ2000 ή με κάποια "άλλη ανάγκη" αν δε θες. Από την άλλη δεν μπορείς να αξιώνεις και εσύ να ασχοληθεί κάποιος άλλος (και μάλιστα άτυπα αλλά στο πλαίσιο της δουλειάς του) με αυτό που κάνεις εσύ από χόμπι!

Μία παρατήρηση τώρα που έχει να κάνει με κάποια πράγματα που γράφεις και ιδίως με τον τρόπο που τα γράφεις. Αν θες το λαμβάνεις υπόψη σου...

Το να έχεις αφιερώσει (πολύ) χρόνο σε κάτι είναι απόλυτα σεβαστό. Έστω και αν εγώ δεν θα το έκανα, είναι δική σου επιλογή και τη σέβομαι. Το να θες ή να μην θες να ασχοληθείς με κάτι άλλο είναι εξίσου σεβαστό, ειδικά όταν δεν θα λάβεις κάποια αμοιβή γι' αυτό! Αν θεωρείς ότι κακώς δεν έχουμε ασχοληθεί με κάτι, είναι προσωπική σου άποψη και ως τέτοια τη σέβομαι. Όταν όμως, επειδή δεν έχει αφιερώθει χρόνος σε κάτι που εσύ πιστεύεις ότι αξίζει, ξεκινάς να "πετάς σπόντες" για χιλιάδες ανθρώπους απλά ξεφεύγεις από τα όρια.

Ο αριθμός των υπηρετούντων καθηγητών πληροφορικής είναι ~5000-5500 χιλιάδες (ανεπίσημη πηγή πριν κάποια χρόνια). Καλούμαστε να κάνουμε μία δουλειά υπό ορισμένες συνθήκες. Μάλλον τις συνθήκες αυτές δεν τις γνωρίζεις (τουλάχιστον όχι από πρώτο χέρι έχω την εντύπωση) και δεν θα καθίσω να τις περιγράψω. Δεν είναι το θέμα μας αυτό. Επάνω έγραψες "Ο λόγος  κέρδους προς ενασχόληση πρέπει να είναι πολύ πιο πάνω από τη μονάδα.Αν είναι αλλιώς τότε λέγεσαι κορόιδο.".

Από επιλογή μας αρκετοί γινόμαστε "κορόιδα", όπως λες εσύ, καθώς το προσωπικό κέρδος (με τη στενή έννοια) για ορισμένα πράγματα που κάνουμε είναι "μηδέν" (0). Το να γράφεις πως θα μπορούσαμε να έχουμε φτιάξει και κάποια εργαλεία που χρειάζονται μπορώ να το λάβω και ως έλλειψη σεβασμού για κάποια άλλα πράγματα που (οι περισσότεροι τουλάχιστον) κάνουμε, και για τα οποία δεν λαμβάνουμε κάποια αμοιβή και πιθανώς εσύ δε τα γνωρίζεις. Έμμεσα λες πως πρέπει να γίνουμε  "κορόιδα" πολλαπλάσιες φορές αφού θα πρέπει να παρέχουμε ακόμα περισσότερες υπηρεσίες στον εργοδότη μας ενώ πληρωνόμαστε μόνο για μία από αυτές (παροχή εκπαιδευτικού έργου)! Παρόλαυτά παραδέχεσαι ότι εσύ δεν κάνεις κάτι τέτοιο...

Το να αναφέρεις "αλλά όπως είναι γνωστό δεν υπάρχει χρόνος!" δεν οφελεί σε κάτι. Η δουλειά του κάθε εκπ/κού πληροφορικής δεν είναι να αναπτύσει το λογισμικό που χρειάζεται ούτε να γράφει τα βιβλία που χρειάζεται (και δεν έχει) από το μηδέν. Ήδη κάνουμε πράγματα που σε άλλες χώρες θα ήταν αδιανόητα για εκπ/κό προσωπικό και μάλιστα χωρίς κάποια υλική ή ηθική αμοιβή..! Υπάρχουν συγκεκριμμένες ομάδες στις δομές του ΥΠΑΙΘ για την ανάπτυξη λογισμικού, την αξιολόγηση εκπ/κού υλικού κτλπ. (ίσως θα πρέπει να απευθυνθείς επίσημα σε αυτούς για την Μ2000). Στο κάτω-κάτω το πως αξιοποιεί ο καθένας τον ελεύθερο χρόνο του είναι δικό του θέμα.

Όλα αυτά πολύ φιλικά! Είνα κρίμα, άγνωστοι μεν αλλά ενήλικες άνθρωποι, να πικραινόμαστε σε ένα φόρουμ!

bugman

1. Η Μ2000 είναι ανοικτού κώδικα στο Github. Το ότι δεν έχει σχόλια ο κώδικας δεν είναι κακό. Υπάρχει τρόπος να διαβαστεί, σε επιμέρους σημεία, χωρίς να χρειάζεται να το δει κανείς όλο. Πχ μπορεί κανείς να δει το ξεχωριστό υποπρόγραμμα (το γράφω έτσι με την ορολογία της ΑΕΠΠ) του SytaxError, και να αναζητήσει κανείς που καλείται, και έτσι να βρει όλα τα μέρη που δίνουν το συγκεκριμένο μήνυμα. Για να γίνει πάλι compiling θέλει απλά μια Visual Basic 6 Enterprise Edition. Δεν υπάρχουν κάποια ειδικά dll ούτε ocx. Από σχεδιασμό την έφτιαξα να μην έχει δεσμεύσεις με ξένες βιβλιοθήκες, πέρα από αυτές του λειτουργικού Win32 model. Το τελευταίο που αποδέσμευσα ήταν η βοήθεια που απαιτούσε το runtime της access, τώρα δεν τo χρειάζεται. Μπορούμε να φτιάχνουμε βάσεις δεδομένων με το Microsoft.Jet.OLEDB.4.0 το οποίο το δοκίμασα σε Windows 10 που δεν υπήρχε Access ούτε καν Word και δουλεύει.

2. Σε καμία περίπτωση δεν ήθελα ούτε θέλω να θίξω τους καθηγητές. Θίγω τις επιλογές που έπρεπε να κάνουν "αρμόδιοι". Ο Καθηγητής οφείλει να εκτελέσει το ΠΣ που του δίνουν.

3. Έχει τύχει να διδάξω σε φροντιστήριο για τα πτυχία τύπου ECDL, και εκεί είχα παιδιά Τετάρτης δημοτικού και τους άρεσε η Μ2000. Βάζαμε εντολές που σχεδίαζαν στη κονσόλα, απλές στην αρχή και με επαναλήψεις και υποπρογράμματα στο τέλος. Φτιάξαμε σκακιέρα και βάζαμε τα πιόνια, το κάθε πιόνι φτιάχνονταν από υποπρόγραμμα (τμήματα λέγονται στη Μ2000).

4. Το ενδιαφέρον συμπέρασμα που καταλήγεις είναι ένα Loop στη συζήτηση αν το κατάλαβες:
Παράθεση από: ilias_sΥπάρχουν συγκεκριμένες ομάδες στις δομές του ΥΠΑΙΘ για την ανάπτυξη λογισμικού, την αξιολόγηση εκπ/κού υλικού κτλπ. (ίσως θα πρέπει να απευθυνθείς επίσημα σε αυτούς για την Μ2000)

Γιατί αυτό;
Επειδή αυτό ήταν το ερώτημά μου: Που να απευθυνθώ.

Δεν έχω καμία πικρία, έχω μάθει να δέχομαι το κλασικό "αυτοί είμαστε, μαθαίνουμε να ζούμε όλοι μαζί". Οπότε το μόνο που μπορώ να κάνω είναι να ρωτάω όταν δεν ξέρω. Δεν είναι ντροπή!
Αντί να παίρνω απαντήσεις του στυλ, στείλε μήνυμα στον τάδε, βλέπω ότι πέφτει μια αυτόματη αξιολόγηση από εκείνους που έτσι και αλλιώς δεν δέχονται ότι είναι οι "Αρμόδιοι", ότι αυτό το υλικό δεν κάνει. Το βασικότερο πρόβλημα που διακρίνω είναι ότι η Μ2000 δεν είναι συνεργασία ή έργο μιας ομάδας, άρα αβλεπεί  το καθιστά υποδεέστερο ή και ανάξιο ενασχόλησης. Έλα όμως που αυτό δεν είναι σοβαρός λόγος απόρριψης. Γράφω εγώ τώρα με το φτωχό μου μυαλό!

Θα περιμένω να έρθει η Άνοιξη! Τι άλλο να κάνω!