Το 1967, χρονιά κατά την οποία δημιουργήθηκε η γλώσσα προγραμματισμού Logo, τα γραφικά περιβάλλοντα ήταν σχεδόν ανύπαρκτα, η σύνθεση ήχων και μουσικής υπήρχε κυρίως στο μυαλό των οραματιστών ενώ η ιδέα της κίνησης (animation) περιοριζόταν σε απτά αντικείμενα του πραγματικού κόσμου και όχι σε ψηφιακές εικόνες. Ήρθε ο καιρός να πάμε ένα βήμα παραπέρα...
Η Logo αποτελούσε, και αποτελεί ακόμα, μια γλώσσα προγραμματισμού για εκπαιδευτικούς σκοπούς. Όταν πρωτοσχεδιάστηκε ήταν μια συναρτησιακή γλώσσα, βασισμένη στη Lisp. Αυτό δεν την εμπόδισε να χρησιμοποιηθεί στην εκπαίδευση, με κύριο στόχο του χρήστη-μαθητή να καθοδηγήσει μια χελώνα-ρομπότ στο χώρο. Το πρώτο χελωνορομπότ κατασκευάστηκε στο MIT το 1969. Αργότερο στα χελωνορομπότ προστέθηκε και ένα ενσωματωμένο πινέλο για τη δημιουργία σχεδίων σε ένα μεγάλο φύλλο χαρτιού. Γρήγορα, αυτές οι χελώνες εγκατέλειψαν την φυσική τους υπόσταση και μετατράπηκαν σε δρομείς (cursors) στις οθόνες υπολογιστών με τον χρήστη-μαθητή να δίνει οδηγίες-εντολές στη χελώνα για την κίνησή της και τη δημιουργία σχεδίων στην οθόνη.
Η θεωρία μάθησης που βρίσκεται πίσω από τη Logo (και το Scratch στο οποίο θα φτάσω σύντομα) είναι ο κονστρουκτιβισμός (constructivism). Σύμφωνα με τον κονστρουκτιβισμό (πρωτοπόρος του οποίου υπήρξε ο Jean Piaget), η μάθηση προκύπτει όταν με βάση τις εμπειρίες μας κατασκευάζουμε τη δική μας κατανόηση για τον κόσμο στον οποίο ζούμε. Καθένας δημιουργεί τους δικούς του κανόνες και νοητικά μοντέλα και η μάθηση προκύπτει ως προσαρμογή αυτών των μοντέλων για την αφομοίωση των νέων εμπειριών. Εφαρμόζοντας τη θεωρία του κονστρουκτιβισμού στην παιδαγωγική επιστήμη προέκυψε ο κονστρουκτιονισμός (constructionism) με πρωτεργάτη τον Seymour Papert, δημιουργού της Logo και κατά κάποιο τρόπο μαθητή του Piaget (συνεργάστηκαν μαζί). Σύμφωνα με τον κονστρουκτιονισμό η μάθηση μπορεί να συμβεί πιο αποδοτικά όταν οι άνθρωποι εμπλέκονται ενεργά στη διαδικασία κατασκευάζοντας απτά αντικείμενα του πραγματικού κόσμου. Έτσι, μέρος της εμπειρίας που βιώνει ο μαθητής πρέπει να είναι κάποιες δραστηριότητες κατασκευής ενός "αντικειμένου" που να έχει νόημα. Με αυτό τον τρόπο ο κονστρουκτιονισμός (που επεκτείνεται πολύ παραπάνω από αυτά που σας έγραψα) συνδέεται με την εμπειριακή μάθηση (experiential learning) και επομένως κατά κάποιο τρόπο γυρνάμε πίσω στον Αριστοτέλη.
Γιατί όσα πρέπει να κάνουμε αφού τα μάθουμε, τα μαθαίνουμε κάνοντάς τα («ἃ γὰρ δεῖ μαθόντας ποιεῖν, ταῦτα ποιοῦντες μανθάνομεν»)
Αριστοτέλης, Ηθικά Νικομάχεια, Ενότητα 2η
Το Scratch (επίσημο site του Scratch όπου μπορείτε να το κατεβάσετε) είναι ένα project του LifeLongKindergarten του Media Lab του MIT. Σύμφωνα με τον Mitchel Resnick, υπεύθυνο του εργαστηρίου, οι άνθρωποι μαθαίνουν καλύτερα όταν εμπλέκονται ενεργά στον σχεδιασμό, τη δημιουργία και την εφεύρεση πραγμάτων. Σκοπός είναι η μάθηση να προκύπτει μέσα από ένα διασκεδαστικό στυλ, όπως στο νηπιαγωγείο, και μέσα από μια διαδικασία σχεδίασης, δημιουργίας, πειραματισμού και εξερεύνησης. Με το Scratch προσπαθούν να δώσουν την ευκαιρία στα παιδιά να μεγαλώσουν μαθαίνοντας πως να σχεδιάζουν, να δημιουργούν και να εκφράζονται.
Το Scratch είναι ένα γραφικό προγραμματιστικό περιβάλλον, κατάλληλο για παιδιά από 8 ετών και άνω, με το οποίο μπορούν να κατασκευάσουν τις δικές τους αλληλεπιδραστικές ιστορίες, παιχνίδια, κινούμενα σχέδια, προσομοιώσεις ή ακόμα και παιδική-προγραμματιστική τέχνη. Για τη δημιουργία των προγραμμάτων, οι μαθητές συνδυάζουν έτοιμες εντολές με γραφικό τρόπο, σαν να ενώνουν κομμάτια LEGO στην οθόνη του υπολογιστή ή κομμάτια από παζλ. Σημαντικό είναι, ότι τους δίνεται η δυνατότητα να μοιραστούν τις δημιουργίες τους με παιδιά από όλο τον κόσμο στη ζωντανή, δικτυακή κοινότητα του Scratch ή να τροποποιήσουν ή επεκτείνουν τις δημιουργίες άλλων παιδιών.
Οι καθηγητές, θα δείτε ότι στο Scratch υπάρχουν οι συνήθεις προγραμματιστικές δομές (επαναλήψεις, επιλογές) που παρουσιάζονται όμως απλώς σαν κομμάτια (blocks) που ενώνονται μεταξύ τους. Αυτό, σε συνδυασμό με πλούσιες εντολές κίνησης, δημιουργίας γραφικών εφέ, αλλαγής όψεων των χαρακτήρων, παραγωγής ήχων, καταγραφής ηχογραφήσεων κ.ά. δημιουργούν ένα ανεξάντλητο και ελκυστικό προγραμματιστικό περιβάλλον που μπορεί να χρησιμοποιηθεί αφενός για τη διδασκαλία προγραμματιστικών-αλγοριθμικών αρχών, αφετέρου για τη δημιουργία έργων από τους μαθητές στα πλαίσια άλλων διδακτικών αντικείμενων, εφαρμόζοντας τις αρχές του κονστρουκτιονισμού.
Όλα αυτά, σε ένα πλήρες εξελληνισμένο περιβάλλον, με εκατοντάδες έτοιμα γραφικά (χαρακτήρες, όψεις ή σκηνικά) και έτοιμα παραδείγματα για να μυήσουν τον καθηγητή ή τον μαθητή. Το Scratch μπορεί να χρησιμοποιηθεί και για τη διδασκαλία του προγραμματισμού στην ΄Γ Γυμνασίου αντικαθιστώντας το MicroWorlds Pro, μιας και υπάρχει έτοιμο τροποποιημένο το βιβλίο του μαθητή για χρήση με το Scratch (δείτε παρακάτω). Ξεκινήστε, κατεβάζοντας το Scratch από την επίσημη ιστοσελίδα του (τρέχουσα έκδοση 1.4). Για το επόμενο βήμα υπάρχει ο οδηγός εκκίνησης που θα τον βρείτε στη σελίδα υποστήριξης του Scratch. Τα υπόλοιπα στους συνδέσμους που ακολουθούν.
- Υλικό για το Scratch για εκπαιδευτικούς από την επίσημη ιστοσελίδα του Scratch
- Υποστηρικτικό υλικό σε διάφορες γλώσσες
- Οδηγός Ξεκινήματος για το Scratch 2 στα ελληνικά
- ScratchEd - Διαδικτυακή κοινότητα καθηγητών/δασκάλων Scratch (από το MIT)
- Παραδείγματα έργων στο scratch (από εμένα) για να πάρετε ιδέες ή να τα χρησιμοποιήσετε αυτούσια μετά από μερικά μαθήματα (είναι λίγο περίπλοκα) σε μαθητές Γυμνασίου ή Λυκείου.
- Το βιβλίο του Γυμνασίου προσαρμοσμένο στο Scratch από το συνάδελφο Στέλιο Χαραλαμπίδη από τη Ζάκυνθο (δεν μπορώ να βρω το site του).
- Ένα αναλυτικότατο βιβλίο στα ελληνικά για τη δημιουργία παιχνιδιών στο Scratch σε μορφή pdf, doc, docx ή html από το τμήμα Μηχανικών Η/Υ, Δικτύων και Τηλεπικοινωνιών του πανεπιστημίου Θεσσαλίας. Συλλογική δουλειά από 69 φοιτητές και έναν επιβλέπων.
- Παρουσιάσεις, εγχειρίδιο και μαθησιακές δραστηριότητες από τον πρώην συνάδελφο (νυν ακαδημαϊκό) Γιώργο Φεσάκη.
- Εκπαιδευτικό υλικό για το Scratch από τη σχολική σύμβουλο πληροφορικής Νοτίου Αιγαίου.
- Φύλλα εργασίας για το Scratch από τον συνάδελφο Ιωάννη Σαρημπαλίδη.
- Υλικό από διάφορα Scratch Days (Ημερίδες Scratch) στην Ελλάδα.
- Για όσους ψάχνουν πως ορίζουμε διαδικασίες, συναρτήσεις και άλλα προχωρημένα προγραμματιστικά εργαλεία, υπάρχει το ΒΥΟΒ (Build Your Own Blocks) που αποτελεί μια επέκταση του Scratch για αυτόν ακριβώς το σκοπό. Εγχειρίδιο αναφοράς του ΒΥΟΒ (πέρα από τον επεξεργαστή εντολών είναι ίδιο με το Scratch) έχει φτιάξει ο συνάδελφος Κοσμάς Χαριτόπουλος του 2ου Γυμνασίου Σερρών (Στο http://2gym-serron.ser.sch.gr/main.swf ακολουθήστε τους συνδέσμους Πληροφορική --> ΄Γ Τάξη και θα βρείτε και άλλο υλικό).
Για το τέλος μια γρήγορη ματιά στο μέλλον. Μέσα στο έτος θα εκδοθεί η έκδοση 2.0 του Scratch με πολλά καινούρια χαρακτηριστικά επικοινωνίας αλλά και προγραμματιστικά στοιχεία. Θα μπορείτε να μοιράζεστε τα έργα σας πιο εύκολα με όλον τον υπόλοιπο κόσμο, να πειραματίζεστε με τα έργα των άλλων, να παίρνετε φιγούρες ή κομμάτια κώδικα και να τα μεταφέρετε σε άλλα έργα και όλα αυτά online. Καινούριες δυνατότητες κοινωνικής δικτύωσης (like, follow, comments κ.ά.) και τρεις μεγάλες προγραμματιστικές αλλαγές: Δυνατότητα να ορίσετε τα δικά σας block - διαδικασίες (αντίο BYOB), υποστήριξη κλωνοποίησης των φιγούρων (cloning) όπου ένα αντικείμενο αναπαράγει τον εαυτό του και χρησιμοποίηση της web camera του υπολογιστή μέχρι και για εντοπισμό κίνησης - κάτι σαν το Microsoft Kinect. Δείτε στο βίντεο που ακολουθεί μια σύνοψη όλων αυτών.
Scratch 2.0 from ScratchEd on Vimeo.
Ενημέρωση: Το Scratch 2 είναι πλέον διαθέσιμο.