Download - Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Transcript
Page 1: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Συμβολή στον Εξελληνισμό και τη Διδακτική Αξιοποίηση του Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος

Χρυσάνθη ΤζιωρτζιώτηΕκπαιδευτικός ΠΕ-04

Page 2: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

ΠΕΡΙΕΧΟΜΕΝΑ

Εισαγωγή........................................................................................................................41. Θεωρητικό πλαίσιο.................................................................................................7

Η διαδικασία της δημιουργικής μάθησης..................................................................7Φαντασία................................................................................................................8Δημιουργικότητα.....................................................................................................9Παιχνίδι................................................................................................................10Διαμοίραση...........................................................................................................11Αναστοχασμός.......................................................................................................12Φαντασία..............................................................................................................12

Η τεχνολογική ευχέρεια...........................................................................................13

2. Το εκπαιδευτικό περιβάλλον προγραμματισμού .....................16Προγραμματιστικά περιβάλλοντα στα οποία στηρίχθηκε η ανάπτυξη του

.......................................................................................................21

Ενίσχυση των δεξιοτήτων μάθησης του 21ου αιώνα με το ..........23

3. Η συμβολή στην προσπάθεια εξελληνισμού του ....................26Pootle........................................................................................................................27ScratchR...................................................................................................................32

Αναλυτική περιγραφή της ελληνικής διεπαφής του – Οδηγός χρήσης......................................................................................................................34

1. Εισαγωγή......................................................................................................342. Η επιφάνεια διεπαφής του χρήστη...............................................................353. Πλακίδια Scratch..........................................................................................44

4. Μαθαίνοντας το με απλά παραδείγματα εφαρμογής..............57Κίνηση και Ήχος......................................................................................................57Επανέλαβε!...............................................................................................................60Μίλα!........................................................................................................................61Παίζοντας με το χρώμα!...........................................................................................62Δημιούργησε τις δικές σου Φιγούρες!.....................................................................63Παίξε τύμπανο!........................................................................................................65Άλλαξε κατεύθυνση!................................................................................................66Ας Χορέψουμε!........................................................................................................68Ας χορέψουμε μαζί!.................................................................................................70Δημιούργησε εφέ!....................................................................................................72Πήγαινε και λάμψε!..................................................................................................73Αναπήδησε!..............................................................................................................74Κρύψου!...................................................................................................................75Εμφανίσου!...............................................................................................................75Άλλαξε μουσικό όργανο!.........................................................................................76Ώρα για παιχνίδι!......................................................................................................78Παίξε Μουσική!.......................................................................................................79Ζωγράφισε!..............................................................................................................80

Αξιοποιώντας διδακτικά το .............................................................81

Σελίδα 2 από 114

Page 3: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Το λουλούδι του Πτολεμαίου...................................................................................83Η πεταλούδα του Πτολεμαίου..................................................................................84Μια μέλισσα στον κήπο...........................................................................................85Squiral......................................................................................................................86Squiral_knitted_star.................................................................................................87Squiral_spiral...........................................................................................................88Squiral_star...............................................................................................................89Γάτες και Σκύλοι......................................................................................................90

1η έκδοση.............................................................................................................902η έκδοση.............................................................................................................913η έκδοση.............................................................................................................92

Πιάνο........................................................................................................................93Οικογενειακό παιχνίδι..............................................................................................94Λαβύρινθος..............................................................................................................95Μια παραλλαγή του WHEEMO...............................................................................96Μια παραλλαγή του Move Monkey Dress Up.........................................................97

Βιβλιογραφία................................................................................................................98Παράρτημα I...............................................................................................................100

Σελίδα 3 από 114

Page 4: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

ΕισαγωγήΟ προγραμματισμός Η/Υ θεωρείται γενικά μια σημαντική ικανότητα. Ο

προγραμματισμός μπορεί να αξιοποιηθεί στην ανάπτυξη προηγμένων

δεξιοτήτων του 21ου αιώνα, όπως: επίλυση προβλημάτων, δημιουργική

σκέψη, λογικό συλλογισμό, συστηματικό πειραματισμό κ.α (Maloney et al,

2004). Πιο πρόσφατα ο προγραμματισμός Η/Υ αναφέρεται και ως

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

να είναι ενεργοί παραγωγοί διαδραστικού ψηφιακού περιεχομένου (Monroy-

Hernandez, 2007; Peppler & Kafai, 2007).

Παρά την σημασία του ο προγραμματισμός Η/Υ παρουσιάζει δυσκολίες στην

εκμάθηση του (Pea, 1986; Wiedenbeck, 2005). Πολλοί μαθητές

αντιμετωπίζουν δυσκολίες στην κατανόηση κεντρικών εννοιών και στη

σύνθεση προγραμμάτων με συγκεκριμένες προδιαγραφές. Για να αυξηθεί η

συμμετοχή και να αμβλυνθούν τα εμπόδια εκμάθησης του προγραμματισμού

Η/Υ έχουν προταθεί διάφορες προσεγγίσεις όπως: η ανάπτυξη εδικών

εκπαιδευτικών γλωσσών προγραμματισμού (Φεσάκης & Δημητρακοπούλου

2006) που καθιστούν τον προγραμματισμό ελκυστικότερο, η έρευνα της

Διδακτικής του προγραμματισμού (Wiedenbeck, 2005) και η μελέτη

περιβαλλόντων άτυπης μάθησης του προγραμματισμού (Maloney et al,

2008).

Το Scratch (MIT Media Lab, 2008) είναι ένα εκπαιδευτικό περιβάλλον

προγραμματισμού που αναπτύχθηκε από το ομώνυμο έργο στο MIT Media

Lab. Το Scratch διαθέτει γραφική γλώσσα προγραμματισμού με την οποία

καθιστά πιο προσιτό τον προγραμματισμό στα παιδιά (από 8 ετών και άνω),

τους εφήβους και άλλους αρχάριους προγραμματιστές. Οι βασικές δομές

ελέγχου (ακολουθία, επιλογή και επανάληψη) συντίθενται με το σύρσιμο και

το στοίβαγμα γραφικών πλακιδίων που αντιστοιχούν σε εντολές.

Ο προγραμματισμός με δομικά στοιχεία εξαλείφει τα συνήθη προβλήματα των

συντακτικών λαθών επειδή τα πλακίδια μπορούν να τοποθετηθούν μαζί μόνο

με συντακτικά ορθό τρόπο. Επιπλέον των βασικών δομών ελέγχου, η γλώσσα

παρέχει πυροδότες γεγονότων (event trigger: when-clicked, when-key-

pressed) για καθοδηγούμενο από τα γεγονότα προγραμματισμό και εκπομπή

Σελίδα 4 από 114

Page 5: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

ανοικτής ακρόασης ονοματισμένων μηνυμάτων (named broadcasts) για

πολυνηματικό προγραμματισμό. Με το Scratch οι αρχάριοι προγραμματιστές

εξοικειώνονται επίσης και με άλλες προγραμματιστικές έννοιες όπως

μεταβλητές, λίστες, πίνακες, δίτιμη λογική, σχεδιασμός διεπαφής χρήστη κ.α.

Τα σενάρια που αναπτύσσει κανείς με το Scratch μπορούν να είναι πλούσια

σε μέσα και να χρησιμοποιούν γραφικά, κινούμενες εικόνες (animation),

μουσική και ήχους. Το Scratch δίνει τη δυνατότητα δημιουργίας ηλεκτρονικών

παιχνιδιών, κινουμένων εικόνων (animation), αλληλεπιδραστικών ιστοριών

κ.α. Επίσης, επιτρέπει στον χρήστη να μοιραστεί τις δημιουργίες του στο

διαδίκτυο (http://scratch.mit.edu). Η κοινότητα του Scratch δίνει την ευκαιρία

να ανταλλάξει κανείς ιδέες και απόψεις με άλλους δημιουργούς και να

εμπλακεί ενεργά σε μια κοινότητα πρακτικής και μάθησης.

Η παρούσα διπλωματική εργασία αποτελείται από πέντε κεφάλαια. Στο

πρώτο κεφάλαιο αναλύεται το θεωρητικό πλαίσιο στο οποίο στηρίχθηκε ο

σχεδιασμός και η ανάπτυξη του προγραμματιστικού περιβάλλοντος Scratch.

Η εκπαιδευτική προσέγγιση στην οποία βασίστηκε η ερευνητική ομάδα του

Scratch είναι εμπνευσμένη από δύο σημαντικές θεωρίες της μάθησης: τον

κονστρουκτιβισμό και τον κονστρουκτιονισμό. Η κονστρουκτιβιστική θεωρία

της μάθησης, η οποία ως γνωστόν αναπτύχθηκε από τον Ελβετό ψυχολόγο

Jean Piaget, θεωρεί τη μάθηση ως μια ενεργή διαδικασία στην οποία οι

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

με τη θεωρία αυτή, οι άνθρωποι δεν παίρνουν ιδέες αλλά τις δημιουργούν. Ο

κονστρουκτιβισμός ευθύνεται για πολλές μεταρρυθμιστικές πρωτοβουλίες στο

χώρο της εκπαίδευσης. Ως εξέλιξη της κονστρουκτιβιστικής θεωρίας της

μάθησης μπορούμε να θεωρήσουμε την κονστρουκτιονιστική θεωρία. Η

προσέγγιση αυτή που αναπτύχθηκε στο ΜΙΤ από τον καθηγητή Seymour

Papert, είναι βασισμένη σε δύο τύπους οικοδόμησης της γνώσης: υποστηρίζει

ότι οι άνθρωποι οικοδομούν τη νέα γνώση πολύ καλά όταν εμπλέκονται οι

ίδιοι στην κατασκευή πραγμάτων που έχουν νόημα για εκείνους ή τους γύρω

τους. Μπορεί να οικοδομούν πύργους στην άμμο, μηχανές LEGO, ή

προγράμματα για τους υπολογιστές. Αυτό που είναι σημαντικό είναι η ενεργή

εμπλοκή τους στην κατασκευή κάποιου πράγματος που θα είναι ουσιώδες για

τους ίδιους ή για τους γύρω.

Σελίδα 5 από 114

Page 6: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Στο δεύτερο κεφάλαιο περιγράφεται το περιβάλλον της γλώσσας

προγραμματισμού Scratch, τα βασικά χαρακτηριστικά του, τα

προγραμματιστικά περιβάλλοντα στα οποία στηρίχθηκε η ανάπτυξη του και η

υποστήριξη που παρέχει ο προγραμματισμός με το Scratch στην ανάπτυξη

των δεξιοτήτων μάθησης του 21ου αιώνα.

Το προγραμματιστικό περιβάλλον Scratch για την ενίσχυση της συνεργασίας

και της διαμοίρασης δημιουργικών εργασιών ανάμεσα στα μέλη της διεθνούς

κοινότητας του, υποστηρίζει πολλές γλώσσες. Στο τρίτο κεφάλαιο

περιγράφεται η συμβολή στην προσπάθεια εξελληνισμού του Scratch ως

μέλος της διαδικτυακής κοινότητας.

Το τέταρτο κεφάλαιο περιλαμβάνει δέκα επτά απλά παραδείγματα που

βοηθούν τον αρχάριο προγραμματιστή να δημιουργήσει τα πρώτα σενάρια

στο Scratch.

Στο πέμπτο κεφάλαιο παρουσιάζονται δώδεκα σενάρια που αναπτύχθηκαν

στο εκπαιδευτικό προγραμματιστικό περιβάλλον του Scratch, κάποια από

αυτά βασισμένα σε παλαιότερες εφαρμογές της Logo, τα οποία έχουν

αναρτηθεί στην ιστοσελίδα http :// scratch . mit . edu / users / tziortzioti στο δικτυακό

τόπο του Scratch.

Τέλος, στο Παράρτημα παρατίθενται μέρος των σχολίων που αντηλλάγησαν

με την ομάδα σχεδιασμού και ανάπτυξης του MIT LLK και αφορούν στην

επισήμανση σφαλμάτων και δυσλειτουργιών καθώς και σε προτάσεις

βελτίωσης.

Σελίδα 6 από 114

Page 7: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

1. Θεωρητικό πλαίσιο

Η διαδικασία της δημιουργικής μάθησης

Σε μια κοινωνία που χαρακτηρίζεται από την αβεβαιότητα και τις γρήγορες

αλλαγές, η ικανότητα να σκέφτεται κανείς δημιουργικά αποτελεί το κλειδί για

την προσωπική και επαγγελματική ικανοποίηση και επιτυχία. Για τα παιδιά του

σήμερα, είναι πολύ σημαντικό να μάθουν να λειτουργούν δημιουργικά - να

προγραμματίζουν συστηματικά, να αναλύουν κριτικά, να δουλεύουν

συνεργατικά, να επικοινωνούν ξεκάθαρα, να σχεδιάζουν επαναλαμβανόμενα,

να μαθαίνουν διαρκώς - και να βρίσκουν καινοτόμες λύσεις στις αναπάντεχες

καταστάσεις που διαρκώς θα προκύπτουν στη ζωή τους

Η διαδικασία της δημιουργικής μάθησης μπορούμε να θεωρήσουμε ότι είναι

μια σπειροειδής διαδικασία, κατά την οποία τα παιδιά σκέφτονται το τι θέλουν

να κάνουν, δημιουργούν μια εργασία βασισμένη στις ιδέες τους, παίζουν με

τις δημιουργίες τους, μοιράζονται τις δημιουργίες τους με άλλους,

αναστοχάζονται πάνω σ’ αυτές – πράγμα που τους οδηγεί να σκέφτονται νέες

ιδέες για νέες εργασίες.

Μέσα από αυτή τη διαδικασία, τα παιδιά αναπτύσσουν και αποσαφηνίζουν τις

ικανότητές τους ως δημιουργικά σκεπτόμενα άτομα. Μαθαίνουν να

αναπτύσσουν τις ιδέες τους, να τις δοκιμάζουν, να ελέγχουν τα όρια, να

πειραματίζονται με εναλλακτικές λύσεις, να λαμβάνουν ανατροφοδότηση από

άλλους – και, ίσως το πιο σημαντικό, να παράγουν νέες ιδέες βασισμένες στις

εμπειρίες τους. Στην πραγματικότητα, τα βήματα της διαδικασίας δεν είναι

τόσο ευδιάκριτα ή σειριακά όπως προσδιορίστηκαν. Η φαντασία, η

δημιουργικότητα, το παιχνίδι, η διαμοίραση και ο αναστοχασμός είναι

μπλεγμένα μεταξύ τους με διαφορετικούς τρόπους. Αλλά τα στοιχεία κλειδιά

βρίσκονται πάντα εκεί, με τη μια μορφή ή την άλλη.

Οι ψηφιακές τεχνολογίες, αν σχεδιαστούν και υποστηριχθούν κατάλληλα,

μπορούν να παίξουν ένα μετασχηματιστικό ρόλο στην εκπαίδευση,

υποστηρίζοντας τη δημιουργική διαδικασία μάθησης, έτσι ώστε τα παιδιά να

Σελίδα 7 από 114

Page 8: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

μαθαίνουν και να αναπτύσσονται ως δημιουργικά σκεπτόμενα άτομα για να

αντιμετωπίζουν τα προβλήματα της καθημερινότητάς τους.

Σχήμα 1: Η διαδικασία της δημιουργικής μάθησης

Φαντασία

Ας αναλογιστούμε τα πιο δημοφιλή υλικά που χρησιμοποιούν τα παιδιά στα

παιχνίδια τους: ξύλινα τουβλάκια για να κατασκευάσουν, χρωματιστά μολύβια

για να ζωγραφίσουν, κούκλες για τα παιχνίδια ρόλων, σχήματα για να

σχεδιάσουν γεωμετρικά μοτίβα. Όλα αυτά τα υλικά είναι σχεδιασμένα ώστε να

ενισχύεται η φαντασία τους. Τα υλικά δεν περιορίζουν ούτε καθορίζουν τις

ιδέες των παιδιών. Παιδιά με διαφορετικά ενδιαφέροντα και διαφορετικούς

τρόπους μάθησης μπορούν να χρησιμοποιήσουν τα ίδια υλικά, αλλά το κάθε

ένα με τον δικό του προσωπικό τρόπο.

Κατά τον ίδιο τρόπο, οι διαρκώς εξελισσόμενες τεχνολογίες πρέπει να

παρέχουν στους μαθητές διαφορετικούς τύπους εργαλείων, μέσων και

υλικών, προκειμένου να δουλέψουν πιο σύνθετα έργα και να μάθουν πιο

σύνθετες έννοιες. Βασική αρχή είναι «πολλά διαφορετικά μονοπάτια, πολλοί

διαφορετικοί τρόποι» - που σημαίνει, να αναπτύσσονται τεχνολογίες που

μπορούν να χρησιμοποιηθούν σε διαφορετικά μονοπάτια, από παιδιά με

Σελίδα 8 από 114

Φαντασία

Φαντασία

Διαμοίραση

Διαμοίραση

Εκσφαλμάτωση

Εκσφαλμάτωση

Φαντασία

Φαντασία

Δημιουργικότητα

Δημιουργικότητα

Αναστοχασμός

Αναστοχασμός

Page 9: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

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

υπερβολικά περιορισμένες, όπως σχεδιασμένο εκπαιδευτικό λογισμικό ειδικά

για τη διδασκαλία της Άλγεβρας, ή λογισμικό προσομοίωσης για τη

μοντελοποίηση της κίνησης των πλανητών στο ηλιακό σύστημα. Στόχος είναι

η παροχή εργαλείων που μπορούν να χρησιμοποιηθούν με διαφορετικούς

τρόπους, αφήνοντας χώρο στη φαντασία των παιδιών. Η πρόκληση στο

σχεδιασμό τέτοιων εργαλείων είναι η ανάπτυξη από τη μια πλευρά ειδικών

χαρακτηριστικών γνωρισμάτων, ώστε τα παιδιά να μαθαίνουν γρήγορα να

χρησιμοποιούν τα εργαλεία αυτά και από την άλλη τόσο γενικών

χαρακτηριστικών, ώστε τα παιδιά να μπορούν διαρκώς να σκέφτονται νέους

τρόπους να τα χρησιμοποιούν.

Δημιουργικότητα

Η δημιουργικότητα βρίσκεται στη ρίζα της δημιουργικής σκέψης. Αν

επιθυμούμε τα παιδιά να αναπτυχθούν ως δημιουργικά σκεφτόμενα άτομα,

οφείλουμε να τους παρέχουμε ευκαιρίες για δημιουργία.

Ο Friedrich Froebel κατείχε αυτή την ιδέα όταν άνοιξε το πρώτο νηπιαγωγείο

το 1837. Ο Froebel γέμισε το νηπιαγωγείο του με αντικείμενα (όπως

τουβλάκια, χάντρες και σχήματα) που τα παιδιά μπορούσαν να

χρησιμοποιήσουν για να κατασκευάσουν, σχεδιάσουν και δημιουργήσουν. Ο

Froebel είχε κατασκευάσει τέτοιου τύπου αντικείμενα, ώστε καθώς τα παιδιά

παίζανε και κατασκευάζανε με αυτά, να μαθαίνουν για σχέδια και μορφές που

συναντάμε στη φύση.

Ο Froebel, για την κατασκευή των αντικειμένων του, περιορίστηκε στα υλικά

που ήταν διαθέσιμα στην αρχή του 19ου αιώνα. Στην σύγχρονη όμως εποχή,

με τα ηλεκτρονικά και ψηφιακά υλικά, μπορούμε να δημιουργήσουμε νέους

τύπους από κατασκευαστικά πακέτα, επεκτείνοντας την προσέγγιση του

Froebel για τα νηπιαγωγεία σε μεγαλύτερης ηλικίας μαθητές, που θα

εργάζονται σε πιο σύνθετα σενάρια και θα μαθαίνουν πιο σύνθετες ιδέες. Σε

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

Mindstorms Lego και το Cricket.

Σελίδα 9 από 114

Page 10: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Δυστυχώς, τέτοια εκπαιδευτικά πακέτα αποτελούν την εξαίρεση παρά τον

κανόνα στα σημερινά καταστήματα παιχνιδιών. Τα περισσότερα ηλεκτρονικά

παιχνίδια δεν κατασκευάστηκαν με το πνεύμα του Froebel, καθώς δεν

παρέχουν στα παιδιά ευκαιρίες για να σχεδιάσουν ή να δημιουργήσουν. Τα

περισσότερα ηλεκτρονικά παιχνίδια είναι προ-προγραμματισμένα από την

εταιρεία παραγωγής. Τα παιδιά δεν μπορούν να σχεδιάσουν ή να

δημιουργήσουν με αυτά τα παιχνίδια, μπορούν μόνο να αλληλεπιδράσουν

μαζί τους. Για παράδειγμα: πιάνοντας το χέρι της κούκλας αυτή χαμογελάει ή

τραγουδώντας στην κούκλα αυτή αρχίζει να χορεύει. Σίγουρα οι σχεδιαστές

και οι κατασκευαστές των παιχνιδιών αυτών μαθαίνουν πολλά καθώς

δημιουργούν τα παιχνίδια αυτά, αλλά είναι αμφίβολο το τι μαθαίνουν τα παιδιά

αλληλεπιδρώντας μαζί τους.

Παιχνίδι

Ο Piaget υποστήριζε ότι «το παιχνίδι είναι η εργασία των παιδιών». Βεβαίως

οι περισσότεροι ενήλικες αναγνωρίζουν την σημασία του παιχνιδιού και της

παροχής ευκαιριών για παιχνίδι στα παιδιά. Αλλά καθώς τα παιδιά

μεγαλώνουν, οι εκπαιδευτικοί και οι γονείς, συχνά μιλούν με απαξίωση για το

παιχνίδι, θεωρώντας ότι το παιχνίδι είναι διαχωρισμένο ίσως ακόμη και σε

αντίθεση με τη μάθηση.

Το παιχνίδι και η μάθηση μπορούν και πρέπει να είναι στενά συνδεδεμένα. Το

κάθε ένα περιλαμβάνει μια διαδικασία πειραματισμού, εξερεύνησης, και

ελέγχου των ορίων.

Δυστυχώς, πολλές απόπειρες σύνδεσης του παιχνιδιού και της μάθησης δεν

κατάφεραν τα επιθυμητά αποτελέσματα. Και αυτό γιατί δημιουργοί προϊόντων

αντιμετώπισαν την εκπαίδευση σαν «χάπι» που πρέπει να «χρυσωθεί» με τη

διασκέδαση. Η διασκέδαση παρέχεται σαν ανταμοιβή για την ταλαιπωρία που

θα υποστεί ο μαθητής κατά την εκπαίδευση. Ή διαφορετικά, ότι οι μαθητές

διασκεδάζουν σε τέτοιο βαθμό χρησιμοποιώντας τα προϊόντα αυτά, που δεν

αντιλαμβάνονται ότι μαθαίνουν – σαν να είναι η εκπαίδευση η πιο δυσάρεστη

εμπειρία.

Σελίδα 10 από 114

Page 11: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Επίσης, όταν σκεφτόμαστε τη διασκέδαση και την εκπαίδευση θεωρούμαι ότι

πρόκειται για υπηρεσίες που κάποιος άλλος θα μας τις παρέχει. Τη

διασκέδαση μας την παρέχουν τα στούντιο, οι σκηνοθέτες και οι ηθοποιοί ενώ

την εκπαίδευση την παρέχουν τα σχολεία και οι δάσκαλοι. Σε αυτή τη

προσέγγιση το άτομο είναι παθητικός δέκτης.

Όμως, αν θέλουμε να βοηθήσουμε τα παιδιά να εξελιχθούν ως δημιουργικά

σκεπτόμενα άτομα, είναι πιο αποτελεσματικό να εστιάσουμε στο παιχνίδι και

στη μάθηση (με πράγματα που τα ίδια κάνουν).

Διαμοίραση

Ενώ η έννοια του μοιράσματος ήταν και είναι σημαντικό κομμάτι στον κόσμο

των παιδιών, η ικανότητα του να μοιράζεσαι και να συνεργάζεσαι ατονεί στα

σχολικά χρόνια. Αυτό αρχίζει να αλλάζει τελευταία, ως αποτέλεσμα μιας

σειράς ανεξάρτητων και συγκλινουσών τάσεων, που ζητούν από το σχολείο

να δείξει μεγαλύτερη προσοχή στο μοίρασμα και τη συνεργασία:

Εταιρίες και πολιτικοί, επισημαίνουν ότι η ομαδική εργασία είναι πιο

σημαντική στη σύγχρονη εποχή από ποτέ, και ενθαρρύνουν τα σχολεία

να δώσουν μεγαλύτερη προσοχή στη συνεργασία ώστε να

προετοιμάσουν τους μαθητές τους για τον εργασιακό τους βίο

Ερευνητές της εκπαίδευσης, βασιζόμενοι στην θεωρία του Vygotsky,

εστιάζουν περισσότερο στην κοινωνική φύση της μάθησης

Η αύξηση του αριθμού των διαδραστικών τεχνολογιών και η εξάπλωση

του διαδικτύου δίνει στους ανθρώπους τη δυνατότητα να

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

ηλεκτρονικές κοινότητες όπως το Flickr (για φωτογραφίες) και το

YouTube (για βίντεο).

Ακόμη και στη σημερινή «συμμετοχική κουλτούρα», λίγοι είναι εκείνοι που

δημιουργούν και μοιράζονται προγραμματιστικά μέσα (όπως διαδραστικούς

χαρακτήρες και διαδραστικά παιχνίδια). Ένα πλήθος διαδικτυακών τόπων

όπως το Second Life κάνει εύκολο το να δημιουργήσει και να μοιράσει

κάποιος χρήστης γραφικά αντικείμενα, όμως το να κάνει τα αντικείμενα αυτά

Σελίδα 11 από 114

Page 12: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

δυναμικά και αλληλεπιδραστικά απαιτεί γνώσεις σε γλώσσα

προγραμματισμού που παρουσιάζει δυσκολίες στην εκμάθηση της.

Η δυσκολία στη διαμοίραση προγραμματιστικών μέσων ήταν ένας από τους

περιοριστικούς παράγοντες των προηγούμενων προσπαθειών της

εξοικείωσης των παιδιών με τον προγραμματισμό. Σε μια κριτική για τη Logo,

π.χ. ο Marvin Minsky επεσήμανε ότι η Logo έχει μια καταπληκτική γραμματική

αλλά δεν παρέχει αλφαβητισμό. Ενώ οι νέοι συγγραφείς εμπνέονται

διαβάζοντας μεγάλα έργα της λογοτεχνίας, δεν υπάρχει αναλόγως μια

βιβλιοθήκη με μεγάλα έργα στην Logo που να εμπνέουν τους νέους

προγραμματιστές. Επίσης, δεν παρέχεται η δυνατότητα στους νέους

προγραμματιστές να μοιράζονται τα έργα τους με άλλους.

Αναστοχασμός

Ο αναστοχασμός, δηλαδή η δυνατότητα να μπορούν τα παιδιά να συζητούν,

να προβληματίζονται και να λαμβάνουν ανατροφοδότηση για τα έργα τους,

αποτελεί κρίσιμο κομμάτι της δημιουργικής διαδικασίας. Η προσοχή εστιάζεται

στον κριτικό αναστοχασμό της ιδέας που βρίσκεται πίσω από το σχέδιο, ή

στις στρατηγικές βελτίωσης του σχεδιασμού ή στις συνδέσεις επιστημονικών

εννοιών και σχετιζόμενων φαινομένων του πραγματικού κόσμου που διέπουν

το έργο.

Φαντασία

Η επανάληψη βρίσκεται στην καρδιά της δημιουργικής διαδικασίας. Η

σπειροειδής δημιουργική κίνηση: διαδικασία – παιχνίδι – διαμοίραση –

αναστοχασμός, αναπόφευκτα οδηγεί σε νέες ιδέες – οδηγώντας πίσω στην

φαντασία και το ξεκίνημα ενός νέου κύκλου … Δεν περιμένουμε τα πράγματα

να πάνε καλά με την πρώτη προσπάθεια. Διαρκώς κριτικάρουμε,

προσαρμόζουμε, τροποποιούμε, αναθεωρούμε. Δεν έχει σημασία αν τα

παιδιά δημιουργούν μια κινούμενη ιστορία ή κατασκευάζουν ένα διαδραστικό

χαρακτήρα. Σε κάθε περίπτωση το μήνυμα είναι το ίδιο: επαναλάβατε,

επαναλάβατε και ξανά επαναλάβατε. Ο χρόνος φυσικά είναι σημαντικός στη

διαδικασία. Αν τα παιδιά διαθέσουν χρόνο μόνο για έναν σπειροειδή κύκλο,

θα χάσουν το πιο σημαντικό τμήμα της δημιουργικής διαδικασίας.

Σελίδα 12 από 114

Page 13: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Η τεχνολογική ευχέρεια

Η έκθεση του NRC ορίζει την «τεχνολογική ευχέρεια» ως την

«ικανότητα να ανασχηματίζει κανείς τη γνώση, να εκφράζεται δημιουργικά και

να παράγει διαθέσιμη πληροφορία (όχι απλά να την επικοινωνεί)». Η

τεχνολογική ευχέρεια, σύμφωνα με την αναφορά, «ξεπερνά τις παραδοσιακές

έννοιες του ψηφιακού εγγραμματισμού … απαιτεί μια βαθύτερη, πιο

ουσιαστική αντίληψη και γνώση των Νέων Τεχνολογιών για την επεξεργασία

της πληροφορίας και την επίλυση προβλημάτων, από ότι ο ψηφιακός

εγγραμματισμός, σύμφωνα με τον παραδοσιακό ορισμό». Σύμφωνα πάντα με

την έκθεση του NRC, οι ικανότητες που είναι συνδεδεμένες με τον

προγραμματισμό παίζουν «κεντρικό ρόλο» στην τεχνολογική ευχέρεια. Ο

αλγοριθμικός τρόπος σκέψης που είναι σύμφυτο στοιχείο του

προγραμματισμού, είναι ουσιώδης στην κατανόηση του πως και γιατί τα

πληροφοριακά συστήματα λειτουργούν με τον τρόπο που λειτουργούν.

Τι σημαίνει λοιπόν να διαθέτει κάποιος τεχνολογική ευχέρεια; Ας το

σκεφτούμε αναλογικά με την εκμάθηση μιας ξένης γλώσσας. Φανταστείτε

κάποιον που έμαθε μερικές φράσεις έτσι ώστε να διαβάζει το μενού στα

εστιατόρια και να ζητά οδηγίες στο δρόμο. Θα θεωρούσατε ότι έχει άνεση στη

χρήση της ξένης γλώσσας; Σίγουρα όχι. Αυτός ο τύπος γνώσης, των

«φράσεων», είναι ισοδύναμος με τον τρόπο που οι περισσότεροι

χρησιμοποιούμε τον υπολογιστή σήμερα. Είναι αυτή η γνώση χρήσιμη; Ναι.

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

έχουμε ευχέρεια στη χρήση μιας ξένης γλώσσας, σημαίνει να μπορούμε να

εκφράζουμε μια σύνθετη ιδέα ή να διηγούμαστε μια ιστορία, που σημαίνει ότι

πρέπει να μπορούμε να «κάνουμε πράγματα» με τη ξένη γλώσσα. Ομοίως, το

να έχουμε τεχνολογική ευχέρεια σημαίνει όχι μόνο να γνωρίζουμε πως μα

χρησιμοποιούμε τεχνολογικά εργαλεία, αλλά επίσης, να γνωρίζουμε πώς να

κατασκευάζουμε πράγματα που έχουν νόημα με τα εργαλεία αυτά.

Στον πίνακα που ακολουθεί αναλύονται έξι στοιχεία που προσδιορίζουν την

τεχνολογική ευχέρεια.

Ικανότητα χρήσης του υπολογιστή

Χρήση βασικών χαρακτηριστικών γνωρισμάτων του υπολογιστικού συστήματος

Σελίδα 13 από 114

Page 14: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Χρήση βασικών εφαρμογών (επεξεργαστής κειμένου, εργαλεία σχεδίασης, …)

Αναζήτηση/ εύρεση/ αξιολόγηση πληροφοριών στο διαδίκτυο

Ικανότητα εκμάθησης νέων τρόπων χρήσης του

υπολογιστή

Εκμάθηση νέων χαρακτηριστικών γνωρισμάτων ενός προγράμματος όταν χρειαστεί

Εκμάθηση νέων εργαλείων και προγραμμάτων

Αίσθηση άνεσης και σιγουριάς στην εκμάθηση νέων χαρακτηριστικών γνωρισμάτων/ προγραμμάτων

Χρήση πολλαπλών εργαλείων/ προγραμμάτων για μια εργασία

Προσαρμογή προγραμμάτων ώστε να ταιριάζουν με τις ανάγκες της εργασίας

Χρήση χαρακτηριστικών γνωρισμάτων ή προγραμμάτων με μη προφανή τρόπο (εναλλακτικό τρόπο)

Ικανότητα δημιουργίας πραγμάτων με τον

υπολογιστή

Δημιουργία εικόνων, animations, τραγουδιών, βίντεο, ρομποτικών κατασκευών

Αναθεώρηση των δημιουργιών

Εκσφαλμάτωση των δημιουργιών όταν κάτι πάει λάθος

Αντίληψη του τι μπορούμε να δημιουργήσουμε με ένα εργαλείο

Επαναληπτική τροποποίηση και επέκταση των δημιουργιών (και των ιδεών)

Προγραμματισμός για τη δημιουργία πιο εκφραστικών εργασιών

Δημιουργία αντικειμένων με περισσότερα χαρακτηριστικά γνωρίσματα και αλληλεπιδραστικά πλουσιότερα, με την πάροδο του χρόνου

Ικανότητα δημιουργίας πραγμάτων βασισμένα σε

δικές μας ιδέες

Παραγωγή ιδεών για τις δημιουργίες μας

Δημιουργία μιας ολοκληρωμένης εργασίας από μια αρχική έμπνευση

Επιλογή κατάλληλων εργαλείων/ προγραμμάτων για την υλοποίηση ιδέας μας

Σελίδα 14 από 114

Page 15: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Η όλο και αυξανόμενη ενσωμάτωση της δημιουργικής έκφρασης στις δημιουργίες μας

Ικανότητα χρήσης της τεχνολογίας για να

συνεισφέρουμε στην κοινότητα που μας

περιβάλλει

Διαμοίραση ιδεών και σεναρίων με μέλη της κοινότητας

Συνεργασία για τη δημιουργία σεναρίων με μέλη της κοινότητας

Τροποποίηση και επέκταση εργασιών με μέλη της κοινότητας

Παροχή βοήθειας στα μέλη της κοινότητας προκειμένου να μάθουν νέα χαρακτηριστικά γνωρίσματα, προγράμματα

Δημιουργία πραγμάτων που έχουν νόημα στην κοινότητα που μας περιβάλλει

Ικανότητα αντίληψης εννοιών σχετιζόμενες με

τεχνολογικές δραστηριότητες

Μερικά παραδείγματα: Η αντίληψη της προοπτικής όταν

δημιουργούμε εικόνες Η αντίληψη της αίσθησης και της

ανατροφοδότησης στα σενάρια ρομποτικής

Η αντίληψη των μαθηματικών εξισώσεων για τον συγχρονισμό αντικειμένων στα animations

Η αντίληψη εννοιών προγραμματισμού: μεταβλητές, συνθήκες

Χρήση αυτών των εννοιών σε άλλες περιπτώσεις και καταστάσεις

Χρήση μιας συστηματικής/ επιστημονικής προσέγγισης για το σχεδιασμό και την επίλυση προβλημάτων

Σελίδα 15 από 114

Page 16: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

2. Το εκπαιδευτικό περιβάλλον προγραμματισμού

Με βάση το συνοπτικό θεωρητικό – παιδαγωγικό πλαίσιο που παρουσιάστηκε

το MIT Media Laboratory και το Πανεπιστήμιο UCLA σχεδίασαν και ανέπτυξαν

ένα δικτυακό, εκπαιδευτικό περιβάλλον προγραμματισμού, πλούσιο σε μέσα,

προκειμένου να ενισχύσει την τεχνολογική ευχέρεια σε παιδιά και εφήβους.

Η προσπάθεια της ερευνητικής ομάδας στηρίχθηκε σε προηγούμενη εμπειρία

στην ανάπτυξη καινοτόμων προγραμματιστικών περιβαλλόντων για νέους

(LEGO MindStorms) προκειμένου να αναπτύξουν ένα νέο προγραμματιστικό

περιβάλλον, το οποίο ονόμασαν Scratch. Όπως στο λογισμικό LEGO

MindStorms, προστέθηκε η δυνατότητα προγραμματισμού σε δραστηριότητες

που ενδιαφέρουν τη νεολαία έτσι και στο Scratch παρέχεται η δυνατότητα

προγραμματισμού σε δημοφιλείς δραστηριότητες της νεολαίας που είναι

πλούσιες σε μέσα και βασισμένες στο διαδίκτυο. Επωφελούμενο από τις

απεριόριστες δυνατότητες επεξεργασίας δεδομένων των σύγχρονων

υπολογιστών, το Scratch υποστηρίζει νέου τύπου παραδείγματα και

δραστηριότητες, εξασφαλίζοντας μεγαλύτερες πιθανότητες επιτυχίας, σε

σχέση με άλλες πρωτοβουλίες, στο να εισαγάγει τις μικρότερες σχετικά ηλικίες

στις έννοιες του προγραμματισμού.

Εξάλλου μια σειρά εκθέσεων (Being Fluent with Information Technology from

National Research Council, 1999; Standards for Technological Literacy from

International Technology Education Association, 2000; Technically Speaking:

Why All Americans Need to Know More About Technology from National

Academy of Engineering, 2002) έχουν επιστήσει την προσοχή σε ένα

αναδυόμενο, σημαντικό κοινωνικό πρόβλημα: ενώ οι Νέες Τεχνολογίες

επεκτείνονται και παίζουν διαρκώς αυξανόμενο ρόλο σε όλες τις πτυχές της

κοινωνίας, οι περισσότεροι άνθρωποι δεν είναι επαρκώς προετοιμασμένοι να

αναγνωρίσουν, να συλλογιστούν και πολύ περισσότερο να προσεγγίσουν τις

προκλήσεις που η τεχνολογία θέτει ή τα προβλήματα που μπορεί να επιλύσει

(NAE, 2002).

Για την αντιμετώπιση του ζητήματος αυτού, οι ερευνητές του MIT ανέπτυξαν

νέες πρωτοβουλίες για να βοηθήσουν τους νέους να αποκτήσουν τεχνολογική

Σελίδα 16 από 114

Page 17: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

ευχέρεια. Η έκθεση του NRC ορίζει την «τεχνολογική ευχέρεια» ως την

«ικανότητα να ανασχηματίζει κανείς τη γνώση, να εκφράζεται δημιουργικά και

να παράγει διαθέσιμη πληροφορία (όχι απλά να την επικοινωνεί)». Σύμφωνα

πάντα με την έκθεση του NRC, οι ικανότητες που είναι συνδεδεμένες με τον

προγραμματισμό παίζουν «κεντρικό ρόλο» στην τεχνολογική ευχέρεια.

Επιπροσθέτως, η έκθεση υποστηρίζει ότι η συνεχής χρήση της αφαιρετικής

σκέψης που εφαρμόζεται στον προγραμματισμό μπορεί να έχει αξία στην

αντιμετώπιση προβλημάτων πέρα από την στενή έννοια της επίλυσης

προβλημάτων κατά την προγραμματιστική διαδικασία. Ουσιαστικά, ο

προγραμματισμός γίνεται το εργαστήριο για συζήτηση και ανάπτυξη

πολύτιμων ικανοτήτων, καθώς και της θεμελίωσης της μάθησης για άλλα

αντικείμενα. Πολύ νωρίτερα οι θέσεις αυτές για την ευρύτερη αξία του

προγραμματισμού έχουν θεμελιωθεί επιστημονικά (Papert, 1980; Kay, 1991;

diSessa, 2000).

Πολλές προγενέστερες πρωτοβουλίες για την εκμάθηση του

προγραμματισμού στις μικρότερες ηλικίες δεν είχαν τα αναμενόμενα

αποτελέσματα. Συχνά, ο προγραμματισμός διδάσκεται μέσω γλωσσών

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

συνδέονται με τα ενδιαφέροντα των νέων, και σε πλαίσια όπου κανείς δεν έχει

αρκετή εμπειρία ή τεχνογνωσία για να παρέχει υποστήριξη. Αυτό έχει ως

αποτέλεσμα πολλοί άνθρωποι να αντιμετωπίζουν τον προγραμματισμό ως

μια στενή, τεχνική δραστηριότητα, κατάλληλη μόνο για ένα μικρό τμήμα του

πληθυσμού.

Η εξαιρετική αύξηση της ισχύος των υπολογιστών τις δύο τελευταίες δεκαετίες

έχει καταστήσει εφικτή την ανάπτυξη και αξιοποίηση μιας νέας γενιάς

εργαλείων προγραμματισμού μέσω των οποίων μπορούν να ξεπεραστούν

αδυναμίες των μέχρι πρότινος προγραμματιστικών περιβαλλόντων και να

κάνουν τον προγραμματισμό ευκολότερα προσβάσιμο.

Έτσι οι ερευνητές του MIT Media Laboratory έχοντας τα παραπάνω κατά νου,

σχεδίασαν τη γλώσσα προγραμματισμού Scratch αποδίδοντάς της τα εξής

βασικά χαρακτηριστικά:

Σελίδα 17 από 114

Page 18: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Προγραμματισμός με δομικά στοιχεία. Ο προγραμματισμός στο Scratch

βασίζεται στη μεταφορά δομικών στοιχείων, με τα οποία οι μαθητές

δημιουργούν διαδικασίες με το σύρσιμο και το στοίβαγμα γραφικών πλακιδίων

που αντιστοιχούν σε εντολές. Διαφορετικοί τύποι δεδομένων αντιστοιχούν σε

πλακίδια διαφορετικού σχήματος, που μπορούν να τοποθετηθούν μαζί μόνο

με συντακτικά ορθό τρόπο. Ο προγραμματισμός με δομικά στοιχεία εξαλείφει

τα συνήθη προβλήματα των συντακτικών λαθών (που έχει αποδειχθεί μεγάλο

εμπόδιο στην εκμάθηση γλωσσών προγραμματισμού), επιτρέποντας την

εστίαση στην επίλυση του προβλήματος και όχι στο μηχανισμό του

προγραμματισμού. Το κάθε αντικείμενο στο Scratch έχει μια βιβλιοθήκη από

γραφικά πλακίδια (με βάση την τάξη του αντικειμένου). Οι μαθητές σύρουν και

τοποθετούν πλακίδια από τη βιβλιοθήκη ώστε να δημιουργήσουν στήλες

(διαδικασίες) που υπαγορεύουν τη συμπεριφορά του αντικειμένου. Με τη

δυνατότητα της πολυεπεξεργασίας, διαφορετικές στήλες πλακιδίων

εκτελούνται αυτόματα και παράλληλα.

Προγραμματιστικός χειρισμός πλούσιων μέσων. Τα πιο δημοφιλή

προγράμματα στους νέους περιλαμβάνουν χειρισμό εικόνων, βίντεο, και

μουσική, με τη χρήση προγραμμάτων όπως το PhotoShop, το Premiere, και

το Acid Pro. Εν αντιθέσει, οι πρώτες ενέργειες εκμάθησης προγραμματισμού

με τον παραδοσιακό τρόπο, περιλαμβάνουν τη χρήση αριθμών και απλών

γραφικών. Το Scratch παρέχοντας προγραμματιστικό έλεγχο σε πλούσια

μέσα, δίνει τη δυνατότητα για δραστηριότητες που συνδέονται στενά με τα

ενδιαφέροντα των μαθητών. Για παράδειγμα, το Scratch περιλαμβάνει φίλτρα

εικόνας παρόμοια με αυτά του PhotoShop, επιπλέον όμως παρέχει

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

να δημιουργήσουν βίντεο στα οποία οι παράμετροι των φίλτρων ποικίλουν

και, καθώς εξελίσσεται η διαδικασία, είναι σε θέση να αποκτήσουν βαθύτερη

αντίληψη σχετικά με τη χρήση των φίλτρων και τις μαθηματικές συναρτήσεις.

Διαμοίραση ευρείας κλίμακας. Το Scratch είναι έτσι σχεδιασμένο ώστε να

υποστηρίζει το «μοίρασμα», που σημαίνει ότι οι μαθητές μπορούν να

μοιράζονται μεταξύ τους αντικείμενα σε κάθε επίπεδο (στήλες διαδικασιών,

κινούμενους χαρακτήρες, πλήρη σενάρια) και να τα ανταλλάσσουν

Σελίδα 18 από 114

Page 19: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

χρησιμοποιώντας εναλλακτικούς τύπους συσκευών (desktops, laptops,

tablets, handhelds, κινητά τηλέφωνα, ενσωματωμένες συσκευές). Για

παράδειγμα, ένας μαθητής που σχεδιάζει ένα βίντεο στο Scratch μπορεί να

εισάγει (από το διαδίκτυο) ένα χαρακτήρα από κάποιον άλλο σχεδιαστή σε

άλλη χώρα, να ενσωματώσει τον χαρακτήρα στο δικό του παιχνίδι, να

κατεβάσει και να παίξει με το παιχνίδι σε μια συσκευή handheld, να ελέγξει μια

κατασκευή LEGO (μέσω RF) ως μέρος του παιχνιδιού, και στη συνέχεια να

ανταλλάξει το παιχνίδι (μέσω IR) με κάποιο άλλο μέλος της κοινότητας του

Scratch. Μέσω αυτών των δραστηριοτήτων, δημιουργείται η κοινότητα του

Scratch, τα μέλη της οποίας διαρκώς ανταλλάσουν και τροποποιούν τις

δημιουργίες τους.

Προγραμματιστική αλληλεπίδραση με τον πραγματικό κόσμο. Οι

ερευνητές στηριζόμενοι σε προηγούμενες έρευνες στη LEGO/Logo και τα

τουβλάκια προγραμματισμού (Resnick, 1994; Resnick, Berg, Eisenberg,

2000), σχεδίασαν το Scratch έτσι ώστε ο μαθητής να προγραμματίζει φυσικά

αντικείμενα (όπως μηχανές, φώτα, MIDI synthesizers) με τον ίδιο τρόπο που

προγραμματίζει εικονικά αντικείμενα στη σκηνή – και να χρησιμοποιεί

δεδομένα από φυσικούς αισθητήρες (αισθητήρες απόστασης, ανιχνευτές

κίνησης, αισθητήρες ήχου) για να ελέγχει τη συμπεριφορά της φυσικής και της

εικονικής δημιουργίας του. Για παράδειγμα, κάποιος μαθητής μπορεί να

συνδέσει το μετρητή της επιτάχυνσης (με RF communicator) στο χέρι του και

να προγραμματίσει μια κινούμενη γραφική φιγούρα να μεταβάλει τη

συμπεριφορά της σύμφωνα με το πώς κουνάει ο μαθητής το χέρι του (και

κατά τη διαδικασία, να κερδίζει γνώσεις για τις έννοιες της επιτάχυνσης, της

αντίληψης και της ανατροφοδότησης).

Υποστήριξη πολλαπλών γλωσσών. Η κοινότητα του Scratch είναι μια

διεθνής κοινότητα και τα μέλη της μιλούν διαφορετικές γλώσσες. Για την

ενίσχυση της συνεργασίας και της διαμοίρασης σε αυτό το πλαίσιο είναι

ουσιώδες να είναι το Scratch ένα πολύ-γλωσσικό και πολύ-πολιτισμικό

περιβάλλον. Στην ανάπτυξη του EToys και των LogoBlocks οι ερευνητές

ανακάλυψαν ότι η προσέγγιση του προγραμματισμού με πλακίδια εύκολα

υποστηρίζει πολλαπλές γλώσσες και διαφορετικές γραμματοσειρές. Η

Σελίδα 19 από 114

Page 20: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

δυνατότητα αλλαγής της γλώσσας επιτρέπει στα μέλη του Scratch να

εργαστούν και να σκεφτούν στη γλώσσα που εκφράζονται ευκολότερα, ενώ

επιτρέπει σε μέλη της κοινότητας του Scratch που βρίσκονται στο άλλο

ημισφαίριο να διαβάσουν και να τροποποιήσουν τα σενάρια.

Σελίδα 20 από 114

Page 21: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Προγραμματιστικά περιβάλλοντα στα οποία στηρίχθηκε η

ανάπτυξη του

Το Scratch έχει γραφεί με τη Squeak, μια ανοικτού κώδικα εφαρμογή της

γλώσσας Smalltalk-80. Η Squeak είναι ιδιαιτέρως συμβατή, με εφαρμογές για

σταθμούς εργασίας (Windows, Macintosh, Linux/Unix, Acorn, BeOS),

handhelds (Windows CE, Zaurus OS, Compaq “Itsy”), και κονσόλες

παιχνιδιών (Sony Playstation). H Squeak είναι συμβατή στο υλικό (hardware)

χωρίς να χρειάζεται να τρέχει συγχρόνως κάποιο άλλο λειτουργικό σύστημα,

περιλαμβάνοντας έναν πειραματικό επεξεργαστή της Mitsubishi (M32R/D) και

έναν StrongARM πίνακα. Αυτή η συμβατότητα επιτρέπει στις εφαρμογές του

Scratch να λειτουργούν σε ένα ευρύ φάσμα συσκευών (σταθμούς εργασίας,

pen-based tablet υπολογιστές, σε handhelds, κ.α).

Η διαμοίραση και η ανταλλαγή των σεναρίων του Scratch και των στοιχείων

που τα αποτελούν, υποστηρίζεται από συνδυασμό ενός web server και ενός

custom “ Scratch Object Library” server.

Το Scratch χρησιμοποιεί ιδέες από έναν αριθμό προγραμματιστικών

περιβαλλόντων, σχεδιασμένα για νέους ή για αρχάριους προγραμματιστές. Η

προσέγγιση των δομικών στοιχείων οδηγεί σε προηγούμενη έρευνα στο

LogoBlocks (Begel, 1996) και στο Etoys (Steinmetz, 2001) το οποίο

αποδείχθηκε αποτελεσματικό για τους αρχάριους προγραμματιστές. Η

διεπαφή του χρήστη και το σύστημα πλοήγησης στις σελίδες του προέρχεται

από την Logo Microworlds. Όπως το AgentSheets (Repenning & Ambach,

1996), το Scratch ενθαρρύνει τον χρήστη να μοιραστεί τα έργα και τα στοιχεία

τους στο διαδίκτυο, και όπως το boxer (diSessa, 2000), μετατρέπει τα στοιχεία

του προγραμματισμού (όπως τις μεταβλητές) σε οπτικά αντικείμενα στην

οθόνη που μπορούμε να τα χειριστούμε. Το Alice2 (Pausch, 1995) επίσης,

χρησιμοποιεί την προγραμματιστική δομή του «σύρω και αφήνω» για να

καταστήσει τον προγραμματισμό ευκολότερο στους αρχάριους, αλλά η

περιοχή του είναι αποκλειστικά 3D. To Scratch συμπληρώνουν εμπορικά

εργαλεία animation και video όπως το Micromedia Flash και το Adobe

Premier, που παρέχουν μεγάλο βαθμό προγραμματιστικού ελέγχου και ένα

Σελίδα 21 από 114

Page 22: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

πλαίσιο σχεδιασμένο να υποστηρίζει την εκμάθηση σημαντικών

προγραμματιστικών εννοιών.

Σελίδα 22 από 114

Page 23: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Ενίσχυση των δεξιοτήτων μάθησης του 21ου αιώνα με το

Η έκθεση Learning for the 21st Century προσδιορίζει εννέα τύπους δεξιοτήτων

μάθησης, που ανήκουν σε τρεις κατηγορίες. Το κείμενο που ακολουθεί δίνει

έμφαση στους τρόπους με τους οποίους το Scratch υποστηρίζει την ανάπτυξη

των δεξιοτήτων μάθησης του 21ου αιώνα.

Ικανότητες εγγραμματισμού στην Πληροφορική και τα Μέσα

Δουλεύοντας σε σενάρια του Scratch, οι μαθητές μαθαίνουν να συλλέγουν, να

δημιουργούν και να χειρίζονται πολλαπλούς τύπους μέσων,

συμπεριλαμβανομένων των κειμένων, εικόνων, animation και

ηχογραφημένων ήχων. Η εμπειρία των μαθητών αυξάνεται όσο δημιουργούν

με τα μέσα και γίνονται πιο διορατικοί και κριτικοί στην ανάλυση των μέσων

που βλέπουν γύρω τους.

Ικανότητες επικοινωνίας

Στο σύγχρονο κόσμο, η αποτελεσματική επικοινωνία, απαιτεί κάτι

περισσότερο από την ικανότητα της ανάγνωσης και γραφής ενός κειμένου. Το

Scratch εμπλέκει τους μαθητές στο να επιλέγουν, να χειρίζονται και να

ενσωματώνουν μια ποικιλία Μέσων για τη δημιουργική έκφρασή τους.

Σελίδα 23 από 114

1Ικανότητες

πληροφορικής & επικοινωνίας

Page 24: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Κριτική και συστημική σκέψη

Καθώς οι μαθητές προγραμματίζουν στο Scratch, ενεργοποιούν την κριτική

και συστημική σκέψη. Για να κατασκευάσουν σενάρια, χρειάζεται να επιτύχουν

το συγχρονισμό και το συντονισμό μεταξύ ενός αριθμού Φιγούρων

(προγραμματισμένα κινούμενα αντικείμενα). Η ικανότητα να προγραμματίζουν

με διαδραστικά δεδομένα παρέχει στους μαθητές άμεση εξοικείωση με την

αίσθηση, την ανατροφοδότηση και άλλες βασικές έννοιες του συστήματος.

Προσδιορισμός προβλημάτων, τυποποίηση και επίλυση

Το Scratch υποστηρίζει την εύρεση και επίλυση προβλημάτων σε ένα

ουσιώδους περιεχομένου σχεδιασμένο πλαίσιο. Η δημιουργία ενός σεναρίου

στο Scratch απαιτεί να σκεφτούμε μια ιδέα, να προσδιορίσουμε τα βήματα για

την επίλυση του προβλήματος και να την υλοποιήσουμε χρησιμοποιώντας τις

εντολές – πλακίδια του Scratch. Το Scratch σχεδιάστηκε για να είναι

«tinkerable»: οι μαθητές μπορούν δυναμικά να αλλάξουν κομμάτια του κώδικα

και αμέσως να δουν τα αποτελέσματα (π.χ. διπλασιάζοντας έναν αριθμό να

δουν πως επηρεάζεται ένα γραφικό αποτέλεσμα). Διαμέσου της διαδικασίας

σχεδιασμού, οι μαθητές εμπλέκονται σε πειραματικές και επαναληπτικές

ενέργειες για την επίλυση προβλημάτων.

Δημιουργική και νοητική περιέργεια

Το Scratch ενθαρρύνει τη δημιουργική σκέψη, μια όλο και σημαντικότερη

ικανότητα στο σύγχρονο, ταχύτατα μεταβαλλόμενο κόσμο. Το Scratch

εμπλέκει τους μαθητές στην επιδίωξη καινοτόμων λύσεων σε απρόσμενα

προβλήματα που αντιμετωπίζουν – όχι απλώς μαθαίνοντας να επιλύουν

προκαθορισμένα προβλήματα, αλλά με το να είναι προετοιμασμένοι να

εφεύρουν νέες λύσεις για την αντιμετώπιση νέων προκλήσεων.

Σελίδα 24 από 114

2Κριτική σκέψη και

επίλυση προβλημάτων

Page 25: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Διαπροσωπικές και συνεργατικές ικανότητες

Λόγω του ότι ο προγραμματισμός στο Scratch γίνεται με εντολές – πλακίδια

σε γραφική μορφή, ο κώδικας προγραμματισμού είναι πιο εύκολα

αναγνώσιμος και διαμοιράσιμος απ’ ότι σε άλλες γλώσσες προγραμματισμού.

Τα οπτικά αντικείμενα και ο κώδικας που αποτελείται από επιμέρους

κομμάτια, υποστηρίζει τη συνεργασία εμπλέκοντας τους μαθητές σε από

κοινού εργασία για την ανάπτυξη σεναρίων και στην ανταλλαγή αντικειμένων

και κώδικα.

Αυτοκατεύθυνση

Το να έχουμε μια ιδέα και να επεξεργαστούμε το πώς θα την υλοποιήσουμε

προγραμματίζοντας στο Scratch απαιτεί επιμονή και εξάσκηση. Όταν οι

μαθητές δουλεύουν ιδέες για σενάρια, βρίσκουν προσωπικό νόημα, οι ιδέες

τους παρέχουν το εσωτερικό κίνητρο για να αντεπεξέλθουν στις προκλήσεις

και τις απογοητεύσεις που θα αντιμετωπίσουν κατά τη διαδικασία της

σχεδίασης και της επίλυσης του προβλήματος.

Υπευθυνότητα και προσαρμοστικότητα

Όταν οι μαθητές δημιουργούν στο Scratch σενάρια, έχουν στο μυαλό τους ένα

κοινό, και πρέπει να σκεφτούν πώς άλλα άτομα θα αντιδράσουν και θα

ανταποκριθούν στα σενάρια αυτά. Από τότε που τα προγράμματα του Scratch

μπορούν εύκολα να αλλάξουν και να αναθεωρηθούν, οι μαθητές μπορούν να

τροποποιήσουν τα σενάριά τους βασιζόμενοι στην ανατροφοδότηση από

άλλα άτομα.

Κοινωνική υπευθυνότητα

Λόγω του ότι τα σενάρια του Scratch είναι διαμοιράσιμα, οι μαθητές μπορούν

να χρησιμοποιήσουν το Scratch για να προκαλέσουν μια συζήτηση για

σημαντικά θέματα με άλλα μέλη του άμεσου μαθητικού εκπαιδευτικού

περιβάλλοντος, καθώς και με την ευρύτερη διεθνή κοινότητα του Scratch.

Σελίδα 25 από 114

3Διαπροσωπικές & Ιδιοκατευθυνόμενες ικανότητες

Page 26: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

3. Η συμβολή στην προσπάθεια εξελληνισμού του

Στο τρίτο κεφάλαιο περιγράφεται: η συμμετοχή στην προσπάθεια

εξελληνισμού του περιβάλλοντος Scratch στην οποία συμπεριλαμβάνεται η

μετάφραση του αμερικάνικου οδηγού χρήσης, από την οποία προέκυψε το

κείμενο της αναλυτικής περιγραφής της ελληνικής διεπαφής,

η συνεισφορά στο http://el.wikipedia.org/wiki του κειμένου που αφορά στο

δικτυακό εργαλείο διαχείρισης μετάφρασης pootle, το οποίο χρησιμοποιήθηκε

για τον εξελληνισμό του Scratch στο έργο LPC (One Laptop per Child), και

η σύνταξη και συνεισφορά στο http://el.wikipedia.org/wiki του πρωτότυπου

κειμένου για την πλατφόρμα ScratchR η οποία υποστηρίζει τη διαμοίραση των

προγραμματιζόμενων δικτυακών πολυμέσων.

Η πρώτη προσπάθεια μεταγλωττισμού του λογισμικού Scratch επιχειρήθηκε

από την ελληνική ομάδα μετάφρασης του project LPC (One Laptop Per Child).

Στο πλαίσιο του έργου αυτού, μεταφράστηκε ένα μεγάλο ποσοστό των

αλφαριθμητικών κειμένων του λογισμικού με κύριο συμμετέχοντα τον κ. Β.

Κίτσιο. Όμως η μετάφραση έγινε χωρίς να έχει προσαρμοστεί το λογισμικό

ώστε να εμφανίζονται σωστά οι ελληνικοί χαρακτήρες (το ίδιο παρατηρήθηκε

και στο λογισμικό Etoys του Allan Kay που επίσης περιλαμβανόταν στο LPC

project). Η προσπάθεια μετάφρασης έγινε στο πλαίσιο της έκδοσης 1.2, η

οποία δεν διέθετε ελληνική γραμματοσειρά, ούτε υποστήριζε κωδικοποίηση

Unicode. Η έκδοση εκείνη χρησιμοποιούσε ενσωματωμένες στο λογισμικό

γραμματοσειρές με αποτέλεσμα να υποστηρίζει πραγματικά ένα μικρό πλήθος

γλωσσών. Ένα άλλο ζήτημα στην εν λόγω μεταφραστική προσπάθεια ήταν ότι

έγινε χωρίς απευθείας επαφή με τα λογισμικά, αλλά μεταφράζοντας ένα –

προς ένα τα αλφαριθμητικά στοιχεία, με αποτέλεσμα να προκύπτουν

ασυνέπειες και λογικά λάθη στη μετάφραση της γραφικής διεπαφής του

λογισμικού ως σύνολο.

Στη συνέχεια συστήθηκε άτυπα μια ομάδα με μέλη τους Γ. Μπιρμπίλη

(Μηχανικό ΗΥ και Πληροφορικής), Κ. Γλέζου (Εκπαιδευτικό Πληροφορικής),

Χρ. Τζιωρτζιώτη (Εκπαιδευτικό Φυσικών Επιστημών) και Γ. Παρπαρούση

Σελίδα 26 από 114

Page 27: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

(Μουσικολόγο), η οποία ασχολήθηκε με τον εξελληνισμό του λογισμικού. Με

συντονιστή τoν Γ. Μπιρμπίλη, η ομάδα ήρθε σε απευθείας επικοινωνία με την

ομάδα ανάπτυξης του λογισμικού Scratch στο ΜΙΤ Media Lab και

ενημερώθηκε ότι σύντομα θα ακολουθούσε η έκδοση 1.3 η οποία θα

υποστήριζε Unicode και χρήση truetype γραμματοσειρών του λειτουργικού

συστήματος. Ο εξελληνισμός έγινε με δικτυακή χρήση του εξυπηρετητή

υποβοηθούμενης μετάφρασης Pootle ο οποίος φιλοξενούταν στο δικτυακό

τόπο του LPC project (dev.laptop.org).

Η μεταγλώττιση του δικτυακού τόπου του Scratch έγινε παράλληλα από

ερευνητική ομάδα του ΕΑΙΤΥ με σύνδεσμο την Ελ. Στεργάτου.

Σύνδεσμος από την πλευρά της ομάδας του MIT Media Lab ήταν η Evelyn

Eastmond.

Aκολουθούν δύο κείμενα σχετικά με το δικτυακό εργαλείο διαχείρισης

μετάφρασης pootle και την πλατφόρμα που υποστηρίζει τη διαμοίραση των

προγραμματιζόμενων δικτυακών πολυμέσων ScratchR, τα οποία έχουν

παραχωρηθεί στο http://el.wikipedia.org/wiki/Pootle και στο

http :// el . wikipedia . org / wiki / ScratchR

Στιγμιότυπο από τη συνεισφορά του χρήστη Tziortzioti στη ΒΙΚΙΠΑΙΔΕΙΑ

PootleΑπό τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια

Σελίδα 27 από 114

Page 28: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Pootle

Δημιουργός Translate.org.za

Τελευταία έκδοση 1.2.1

Τύπος Δικτυακό μεταφραστικό εργαλείο

Κατηγορία Υποβοηθούμενη μετάφραση

Διαθέσιμο σε Πολυγλωσσικό

Ανάπτυξη Ενεργό

Άδεια χρήσης GPL

Ιστοσελίδα translate.sourceforge.net

Το Pootle είναι ένα δικτυακό εργαλείο διαχείρισης μετάφρασης με ανάλογη

διεπαφή. Έχει συγγραφεί στην γλώσσα προγραμματισμού Python και είναι

ελεύθερο λογισμικό που έχει αρχικά αναπτυχθεί και δημοσιευτεί από το

Translate.org.za το 2004. Αναπτύχθηκε περαιτέρω ως μέρος του WordForge

project και συντηρείται πλέον από το Translate.org.za.

Το Pootle προορίζεται για χρήση από μεταφραστές ελεύθερου λογισμικού

αλλά είναι χρήσιμo και σε άλλες περιπτώσεις. Η κύρια εστίαση του είναι στη

μετάφραση των στοιχείων της γραφικής διεπαφής των εφαρμογών σε

αντίθεση με τη μετάφραση εγγράφων. Το Pootle χρησιμοποιεί το Translate

Toolkit για το χειρισμό αρχείων μετάφρασης. Το Translate Toolkit επίσης

προσφέρει offline δυνατότητες που μπορούν να χρησιμοποιηθούν για τη

διαχείριση της μετάφρασης των Mozilla Firefox και OpenOffice.org στο Pootle.

Κάποιες από τις δυνατότητες του Pootle περιλαμβάνουν μεταφραστική μνήμη,

διαχείριση γλωσσαρίου και αντιστοίχιση, δημιουργία στόχων και διαχείριση

χρηστών.

Μπορεί να παίξει πληθώρα ρόλων στην μεταφραστική διαδικασία. Ο

απλούστερος ρόλος παρουσιάζει στατιστικά για το σώμα των μεταφράσεων

που φιλοξενεί ένας εξυπηρετητής. Η κατάσταση προτάσεων επιτρέπει σε

χρήστες να κάνουν μεταφραστικές προτάσεις και διορθώσεις για μετέπειτα

έλεγχο, οπότε μπορεί να ενεργεί ως ένα σύστημα αναφοράς μεταφραστικών

λαθών. Επιτρέπει δικτυακή online μετάφραση με την ανάθεση εργασίας σε

διάφορους μεταφραστές και τέλος μπορεί να λειτουργεί σαν ένα σύστημα

Σελίδα 28 από 114

Page 29: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

διαχείρισης όπου οι μεταφραστές μεταφράζουν χρησιμοποιώντας ένα

εργαλείο εκτός σύνδεσης και χρησιμοποιούν το Pootle για να διαχειριστούν τη

ροή του έργου της μετάφρασης.

Ιστορικό

Το Pootle αναπτύχθηκε αρχικά από τον David Fraser κατά την εργασία του

στο Translate.org.za σε ένα έργο χρηματοδοτούμενο από το CATIA project. Η

πρώτη του επίσημη έκδοση έγινε το Δεκέμβριο 2004 παρότι είχε

χρησιμοποιηθεί σε διάφορους εσωτερικούς Translate@thons

(μεταφραστικούς μαραθώνιους) από το Translate.org.za.

Το όνομα Pootle είναι ένα [ακρωνύμιο] για το PO-based Online Translation /

Localization Engine (Μεταφραστική μηχανή βασισμένη σε αρχεία .PO) αλλά

σίγουρα είναι επίσης ένας χαρακτήρας στην παιδική σειρά του BBC The

Flumps.

Το Translate.org.za κυκλοφόρησε διάφορες εκδόσεις και το 2006 το Pootle

αναπτύχθηκε περαιτέρω ως μέρος του έργου WordForge, που

χρηματοδοτήθηκε από το Open Society Institute και το International

Development Research Centre. Αυτό πρόσθεσε διαχείριση αρχείων XLIFF και

υποδομή για ροή μεταφραστικής εργασίας. Πολλές από αυτές τις δυνατότητες

προστέθηκαν στην έκδοση 1.0.

Το Pootle χρησιμοποιείται από το OpenOffice.org [1] , One Laptop per Child [2]

και άλλα έργα[3]. Το Pootle είναι η βάση του Verbatim project που χτίζει

μεταφραστική υποδομή για τα έργα του Mozilla.

Σχεδιαστική φιλοσοφία

Το Pootle σχεδιάστηκε ως ένα δικτυακό μεταφραστικό εργαλείο

χρησιμοποιώντας το Translate Toolkit. Προσπελαύνει μεταφραστικά αρχεία

απευθείας χωρίς ενδιάμεσο επίπεδο βάσης δεδομένων. Αυτό συχνά

αναφέρεται ως καθυστέρηση στην απόδοση αλλά ο σχεδιαστικός στόχος ήταν

να υπερτεθεί η μετάφραση και η διαχείριση πάνω από υπάρχοντα αρχεία,

Σελίδα 29 από 114

Page 30: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

αντιμετωπίζοντας τα μεταφραστικά αρχεία ως έγγραφα και κάνοντας

διαχείριση τους ως τέτοια.

Ο στόχος του Pootle δεν είναι να αντικαταστήσει υπάρχουσες διαδικασίες

αλλά μάλλον να τις επεκτείνει. Έτσι η αλληλεπίδραση με συνδεδεμένα

συστήματα διαχείρισης έκδοσης (version control systems) του επιτρέπει να

εγγράφει αλλαγές απευθείας στο κεντρικό έργο παρά διατηρώντας ένα

παράλληλο σύστημα έξω από το έργο.

Είναι ελεύθερο λογισμικό και τα έργα ενθαρρύνονται να φιλοξενούν το δικό

τους εξυπηρετητή Pootle για να επιτρέπουν στην κοινότητα τους να τα

μεταφράσει.

Υποστηριζόμενες μορφές πηγαίων εγγράφων

Το Translate Toolkit παρέχει μετατροπή από τις υποστηριζόμενες μορφές

πηγαίων εγγράφων που περιλαμβάνουν: αρχεία .properties Java and Mozilla,

αρχεία SDF του OpenOffice.org, HTML, Text, XLIFF και PO του Gettext.

Το ίδιο το Pootle δουλεύει απευθείας σε PO αρχεία του Gettext ή σε XLIFF

files (από την έκδοση 1.0).

Ιδιότητες Μεταφραστική μνήμη - δημιουργείται από εργαλείο εκτός σύνδεσης

Εναλλακτική πηγαία γλώσσα - θέαση μεταφράσεων από μια τρίτη

γλώσσα κατά τη μετάφραση

Γλωσσάρι - επιλογή μεταξύ ζωντανού σφαιρικού γλωσσαρίου ή

γλωσσαρίου ανά έργο

Στόχοι - ορισμός στόχων και προσθήκη χρηστών στους στόχους

Στατιστικά - μέτρηση λέξεων και στατιστικά αλφαριθμητικών

Προτάσεις - επιτρέπει να γίνονται προτάσεις, επιτρέποντας εξωτερική

συμμετοχή και αναφορά λαθών

Διαχείριση έκδοσης - ανανέωση από ή εγγραφή αλλαγής απευθείας σε

συνδεδεμένα συστήματα ελέγχου έκδοσης

Διαχείριση χρηστών - ανάθεση διάφορων ρόλων στους χρήστες

Σελίδα 30 από 114

Page 31: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Διεπαφή μετάφρασης - πραγματοποίηση μετάφρασης και ελέγχου

δικτυακά

Έλεγχους - πραγματοποιεί άνω των 40 ελέγχων για την ποιότητα της

μετάφρασης

Δείτε επίσης Μεταφραστική μνήμη

Μετάφραση υποβοηθούμενη από υπολογιστή

External links Pootle - Επίσημος ιστότοπος Pootle

Demo Εξυπηρετητής Pootle φιλοξενεί τη μετάφραση του Pootle και

κάποιων άλλων έργων

Ενεργοί εξυπηρετητές Pootle - Λίστα έργων, εταιρειών και προσωρινών

εξυπηρετητών Pootle

Πρότυπο:Ohloh project

Python package index

#pootle στο freenode

Πρότυπο:SourceForge

WordForge project - Πληροφορίες έργου WordForge

Αναφορές1. ↑ OpenOffice.org και OpenSolaris εγκατάσταση του Pootle

2. ↑ Εξυπηρετητής OLPC Pootle

3. ↑ Live εξυπηρετητής Pootle: λίστα ενεργών Pootle εξυπηρετητών

Σελίδα 31 από 114

Page 32: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

ScratchRΑπό τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια

Εισαγωγή

Το ScratchR είναι μια πλατφόρμα για τη διαμοίραση προγραμματιζόμενων

δικτυακών πολυμέσων. Η πλατφόρμα επιτρέπει σε άτομα να δημοσιεύσουν

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

τέχνη που έχει δημιουργηθεί στη γλώσσα προγραμματισμού Scratch. Το

ScratchR είναι η μηχανή πίσω από τη δικτυακή κοινότητα του Scratch, ένα

κοινωνικό δίκτυο από νεαρούς κυρίως προγραμματιστές. Αντίθετα με άλλες

κοινότητες περιεχομένου δημιουργημένου από τους χρήστες, το ScratchR

κάνει εύκολη την επαναχρησιμοποίηση των δημιουργιών άλλων ανθρώπων

για την στήριξη της αλληλεπιδραστικής μάθησης. Το ScratchR επιτρέπει στα

μέλη του να βαθμολογήσουν, να σχολιάσουν, να χαρακτηρίσουν το

περιεχόμενο με ετικέτες και να δημιουργήσουν συλλογές. Το ScratchR είναι

για τον προγραμματισμό ότι το YouTube είναι για την παραγωγή βίντεο.

Λεπτομέρειες

Το ScratchR είναι μια κοινωνική δικτυακή εφαρμογή πολυμέσων που έχει

αναπτυχθεί για να λειτουργήσει ο δικτυακός τόπος του Scratch στο MIT. Το

ScratchR χρησιμοποιείται τώρα από άλλους ιστότοπους ανά τον κόσμο (π.χ.

στην Πορτογαλία και στα Ηνωμένα Αραβικά Εμιράτα) ως τμήμα της

ομοσπονδίας από ιστότοπους του Scratch. Το ScratchR εκτελείται πάνω σε

δωρεάν λογισμικό ανοικτού κώδικα (CakePHP, MySQL, Apache,

Memcached) και επίσης είναι δωρεάν διαθέσιμο κάτω από την άδεια GPL

έκδοση 2. Τα φόρα του Scratch εκτελούνται χρησιμοποιώντας το FluxBB και

οι σελίδες υποστήριξης χρησιμοποιούν το DekiWiki της MindTouch.

Ερευνητές

Η έρευνα και ανάπτυξη του ScratchR οδηγείται από τον Andrés Monroy-

Hernández, έναν διδακτορικό φοιτητή στο MIT Media Lab (υπό την επίβλεψη

του Mitchel Resnick).

Σελίδα 32 από 114

Page 33: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Ο ιστότοπος του Scratch στο MIT φιλοξενείται από το MIT Media Lab και

διαχειρίζεται από το Lifelong Kindergarten Group με τη βοήθεια των Amos

Blanton, Lance Vikaros, Chris Spence and Mark Goff.

Δημοσιεύσεις Designing a website for creative learning Proceedings of the

WebSci'09: Society On-Line, Andres Monroy-Hernandez (2009)

Empowering kids to create and share programmable media

interactions, Monroy-Hernández, A. and Resnick, M. (2008)

ScratchR: Sharing User-Generated Programmable Media. Interaction

Design for Children Conference, Aalborg, Denmark, Monroy-

Hernandez, A. (2007)

Αναφορές1. Έρευνα για το ScratchR στην ομάδα Lifelong Kindergarten group του

MIT Media Lab - http :// llk . media . mit . edu / projects . php ? id =2115 2. Πληροφορίες για το ScratchR στις σελίδες υποστήριξης του Scratch -

http://info.scratch.mit.edu/ScratchR%3a_The_Online_Community3. Πηγαίος κώδικας του ScratchR - http://svn.assembla.com/svn/scratchr/4. Ιστοσελίδα του Andrés Monroy-Hernández -

http://www.mit.edu/~amonroy/

Σελίδα 33 από 114

Page 34: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Αναλυτική περιγραφή της ελληνικής διεπαφής του

– Οδηγός χρήσης

1. Εισαγωγή

Το Scratch είναι μια νέα γλώσσα προγραμματισμού που μας δίνει τη δυνατότητα να δημιουργήσουμε διαδραστικές ιστορίες, παιχνίδια, και κινούμενες εικόνες (animations) και να τις μοιραστούμε με άλλους στο διαδίκτυο.

Ο οδηγός χρήσης προσφέρει μια επισκόπηση του λογισμικού Scratch. Αν αυτή είναι η πρώτη σας επαφή με το Scratch, σας προτείνουμε να ασχοληθείτε πρώτα με τον Οδηγό Έναρξης του Scratch (Getting Started Guide), ο οποίος είναι διαθέσιμος στην ιστοσελίδα του Scratch. Στη συνέχεια, για περισσότερες πληροφορίες μπορείτε να επιστρέψετε στον Οδηγό Χρήσης.

Στην ιστοσελίδα του Scratch μπορείτε να βρείτε πολλές άλλες πηγές που θα σας βοηθήσουν στην εκμάθηση, όπως: εκπαιδευτικά βίντεο, κάρτες Scratch και συχνά υποβαλλόμενες ερωτήσεις (FAQs). Επισκεφθείτε την ιστοσελίδα http :// scratch . mit . edu / howto

Αυτός ο οδηγός χρήσης συνοδεύει την έκδοση 1.3, Αύγουστος 2008. Για την τελευταία έκδοση αυτού του Οδηγού χρήσης, επισκεφθείτε την ιστοσελίδα http :// scratch . mit . edu / howto

Βασικά στοιχεία μιας εφαρμογής ScratchΟι εφαρμογές στο Scratch υλοποιούνται με αντικείμενα που ονομάζονται Sprites (Φιγούρες). Μπορείτε να αλλάξετε την εμφάνιση μιας Φιγούρας αλλάζοντας την ενδυμασία της. Η Φιγούρα μπορεί να πάρει τη μορφή ανθρώπου, τραίνου, πεταλούδας ή οτιδήποτε άλλο. Μπορείτε να χρησιμοποιήσετε οποιαδήποτε εικόνα ως ενδυμασία: μπορείτε να σχεδιάσετε μια εικόνα στο πρόγραμμα της Ζωγραφικής, να εισάγετε μια εικόνα από τον σκληρό δίσκο ή από το διαδίκτυο.

Μπορείτε να δώσετε οδηγίες στη Φιγούρα για να κινηθεί, να παίξει μουσική ή να αλληλεπιδράσει με άλλες Φιγούρες. Για να δώσετε εντολές στη Φιγούρα, ενώνετε μεταξύ τους πλακίδια (εντολές προγραμματισμού) σχηματίζοντας στήλες, ώστε να δημιουργηθούν σενάρια ενεργειών (scripts). Όταν κάνετε διπλό κλικ στη στήλη με τα πλακίδια που έχετε σχηματίσει, το Scratch εκτελεί τις ενέργειες από την αρχή μέχρι το τέλος.

Η γλώσσα προγραμματισμού Scratch αναπτύχθηκε από το Lifelong Kindergarten Group στο MIT Media Lab, με την οικονομική υποστήριξη της ένωσης των National Science Foundation, Microsoft, Intel Foundation, Nokia, και MIT Lab research.

Σελίδα 34 από 114

Page 35: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

2. Η επιφάνεια διεπαφής του χρήστη

Σκηνή

Η σκηνή είναι ο χώρος που βλέπετε τα σενάρια, τα παιχνίδια και τις κινούμενες εικόνες (animations) να παίρνουν ζωή. Οι Φιγούρες κινούνται και αλληλεπιδρούν μεταξύ τους. Η σκηνή έχει 480 μονάδες πλάτος και 350 μονάδες ύψος. Είναι διαιρεμένη σε ένα πλέγμα αξόνων x-y. Το σημείο στη μέση της οθόνης έχει συντεταγμένες 0,0.

Για να βρείτε τις συντεταγμένες x – y στην σκηνή, κινήστε το ποντίκι και κοιτάξτε στις συντεταγμένες x-y του ποντικιού, που εμφανίζονται ακριβώς κάτω και δεξιά της σκηνής.

Κάντε κλικ στην προβολή παρουσίασης για να δείτε τις εφαρμογές σε πλήρη οθόνη. Για να βγείτε από την προβολή παρουσίασης πατήστε το πλήκτρο Esc.

Σελίδα 35 από 114

Παλέτα εντολών

Πληροφορίες ενεργής φιγούρας Επιλογή ενεργής

καρτέλαςΓραμμή εργαλείων

Πράσινη σημαία

Σημειώσεις

Σκηνή

Παλέτα σεναρίων

Εισαγωγή νέων φιγούρωνΛίστα

φιγούρων

Προβολή παρουσίασης

x:0 , y:0

y

x

Page 36: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Εισαγωγή νέων ΦιγούρωνΌταν ξεκινάτε μια νέα εφαρμογή, εμφανίζετε ως προκαθορισμένη η Φιγούρα της γάτας. Για να δημιουργήσετε νέες Φιγούρες, κάντε κλικ στα παρακάτω κουμπιά :

Σχεδίασε τη δική σου ενδυμασία για μια νέα Φιγούρα, χρησιμοποιώντας το πρόγραμμα ζωγραφικής.

Επέλεξε μια Ενδυμασία για μια νέα Φιγούρα – ή εισήγαγε μια νέα Φιγούρα

Εισήγαγε μια Φιγούρα έκπληξη (τυχαία επιλογή)

Αν θέλετε να διαγράψετε μια Φιγούρα, επιλέξτε το ψαλίδι από τη γραμμή εργαλείων και κάντε κλικ στη Φιγούρα. Ή κάντε δεξί κλικ στη Φιγούρα και στη συνέχεια επιλέξτε Διαγραφή από την εμφανιζόμενη λίστα.

Για να δημιουργήσετε μια Φιγούρα που θα φαίνεται σαν να είναι μέρος του υπόβαθρου (της σκηνής), κάντε δεξί κλικ στη σκηνή και επιλέξτε «άρπαξε περιοχή οθόνης για νέα φιγούρα» από το αναδυόμενο μενού.

Η Λίστα με τις Φιγούρες

Η λίστα με τις Φιγούρες εμφανίζει όλες τις Φιγούρες μιας εφαρμογής ως μικρογραφίες. Εμφανίζει το όνομα και τις εντολές με τις οποίες συνδέεται η κάθε Φιγούρα.

Για να δείτε και να τροποποιήσετε τις εντολές μιας Φιγούρας, την εμφάνισή και τους ήχους της, κάντε κλικ πάνω στην αντίστοιχη μικρογραφία στην λίστα με τις Φιγούρες ή κάντε διπλό κλικ στην ίδια τη Φιγούρα πάνω στη σκηνή. (Η επιλεγμένη Φιγούρα εμφανίζεται φωτισμένη και περιστοιχίζεται από μια μπλε γραμμή στην λίστα με τις Φιγούρες). Για να δείτε, να εξάγετε, να αντιγράψετε ή να διαγράψετε μια Φιγούρα, κάντε δεξί κλικ στη μικρογραφία της στην λίστα των Φιγούρων. Για να εμφανίσετε μια Φιγούρα που βρίσκετε εκτός σκηνής ή είναι κρυμμένη, πατήστε shift και ταυτόχρονα κάντε κλικ στην μικρογραφία της Φιγούρας – με αυτή την ενέργεια θα εμφανιστεί στη μέση της σκηνής.

Μπορείτε να αναδιατάξετε τις Φιγούρες στην λίστα σύροντας την μικρογραφία.

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

Σελίδα 36 από 114

Page 37: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Παλέτα εντολών και περιοχή σεναρίων

Για να προγραμματίσετε μια Φιγούρα, σύρετε πλακίδια από την παλέτα των Εντολών στην περιοχή των σεναρίων. Για να εκτελέσετε μια σειρά με πλακίδια, κάντε διπλό κλικ πάνω της.

Δημιουργήστε σενάρια (προγράμματα) στοιβάζοντας πλακίδια σε στήλες. Κάντε διπλό κλικ οπουδήποτε στη στήλη για να εκτελεστεί το σενάριο, από την αρχή έως το τέλος. Για να ανακαλύψετε τι κάνει το κάθε πλακίδιο, κάντε δεξί κλικ πάνω του, έπειτα επιλέξτε τη Βοήθεια από την αναδιπλούμενη λίστα.

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

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

Κάποια πλακίδια εμφανίζουν ένα λευκό πεδίο πάνω τους, όπου μπορείτε να

πληκτρολογήσετε παραμέτρους – ορίσματα, όπως . Για να μεταβάλετε την τιμή, κάντε κλικ στην λευκή περιοχή και πληκτρολογήστε έναν αριθμό.

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

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

Για να καθαρίσετε την περιοχή σεναρίων, πατήστε δεξί κλικ και επιλέξτε «καθάρισε τα όλα» από τις επιλογές.

Για να εξάγετε ένα στιγμιότυπο από την περιοχή σεναρίου, κάντε δεξί κλικ και επιλέξτε «αποθήκευσε την εικόνα των σεναρίων».

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

Για να μεταβάλλεται το μέγεθος της περιοχής των σχολίων, χρησιμοποιήστε τη λαβή στη δεξιά άκρη. Κάντε κλικ στο τρίγωνο πάνω αριστερά για να περιορίσετε ή να επεκτείνετε την περιοχή των σχολίων.

Τα σχόλια μπορούν να προστεθούν οπουδήποτε στην περιοχή εντολών, και μπορείτε να τα μετακινήσετε οπουδήποτε σύροντάς τα.

Ενδυμασίες

Σελίδα 37 από 114

Page 38: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Κάντε κλικ στην καρτέλα Ενδυμασίες για να δείτε και να διαμορφώσετε τις ενδυμασίες των Φιγούρων.

Αυτή η Φιγούρα έχει δύο ενδυμασίες. Η τρέχουσα ενδυμασία της Φιγούρας είναι επιλεγμένη. Για να αλλάξει η εμφάνιση της Φιγούρας, απλώς κάντε κλικ στη μικρογραφία της Εμφάνισης που επιθυμείτε να έχει.

Μπορείτε να δημιουργήσετε νέες Εμφανίσεις με τρεις τρόπους.

Κάντε κλικ για να σχεδιάσετε μια νέα εμφάνιση στο πρόγραμμα της Ζωγραφικής.

Κάντε κλικ για να εισάγετε ένα αρχείο εικόνας από το σκληρό δίσκο.

Σύρετε μια ή παραπάνω εικόνες από το διαδίκτυο ή την επιφάνεια εργασίας.

Το Scratch αναγνωρίζει διαφορετικούς τύπους εικόνων : JPG, BMP, PNG, GIF, (συμπεριλαμβανομένου του animated GIF).

Κάθε ενδυμασία έχει έναν χαρακτηριστικό αριθμό (εμφανίζεται στα αριστερά της). Μπορείτε να ρυθμίσετε εκ νέου τη σειρά των ενδυμασιών σύροντας τις μικρογραφίες. Ο αριθμός της ενδυμασίας αλλάζει αν αλλάξετε τη σειρά τους.

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

ΉχοιΚάντε κλικ στην καρτέλα Ήχοι για να δείτε τους ήχους της Φιγούρας.

Μπορείτε να ηχογραφήσετε νέους ήχους ή να εισάγετε αρχεία ήχων. Το Scratch μπορεί να διαβάζει MP3 αρχεία και ασυμπίεστα WAV, AIF, και AU αρχεία (κωδικοποιημένα με 8 –bits ή 16 – bits ανά δείγμα, αλλά όχι με 24 bits ανά δείγμα).

Πληροφορίες για την ενεργή φιγούρα

Σελίδα 38 από 114

Page 39: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Οι τρέχουσες πληροφορίες για τη Φιγούρα δείχνουν το όνομα της Φιγούρας, τις συντεταγμένες x – y, την κατεύθυνση και την κατάσταση κλειδώματος.

Μπορείτε να πληκτρολογήσετε ένα νέο όνομα για τη Φιγούρα.

Η κατεύθυνση καθορίζει προς ποια κατεύθυνση θα κινηθεί η Φιγούρα όταν εκτελέσει μια εντολή κίνησης (0=πάνω, 90=δεξιά, 180=κάτω, -90=αριστερά). Η μπλε γραμμή στη μικρογραφία δείχνει την κατεύθυνση κίνησης της Φιγούρας. Μπορείτε να σύρετε αυτή τη γραμμή για να μεταβάλετε την κατεύθυνση της Φιγούρας. Με διπλό κλικ στη Φιγούρα επανέρχεται στην αρχική κατεύθυνση (κατεύθυνση=90).

Κάντε κλικ στην κλειδαριά για να αλλάξετε την κλειδωμένη ή μη κατάσταση της Φιγούρας. Μια ξεκλείδωτη Φιγούρα μπορεί να συρθεί στην κατάσταση παρουσίασης και να αναπαραχθεί μέσω web.

Για να εξάγετε μια Φιγούρα, κάντε δεξί κλικ στη Φιγούρα στη σκηνή ή στην λίστα με τις Φιγούρες. Η Εξαγωγή σώζει τη Φιγούρα σαν ένα αρχείο με κατάληξη .sprite, που μπορεί να εισαχθεί στη συνέχεια σε μια άλλη εφαρμογή.

ΠεριστροφήΚάντε κλικ στα κουμπιά που καθορίζουν το Στυλ Περιστροφής για να ελέγξετε πως θα εμφανίζονται οι ενδυμασίες καθώς η Φιγούρα αλλάζει κατεύθυνση.

Περιστροφή: Η ενδυμασία περιστρέφεται καθώς η Φιγούρα αλλάζει κατεύθυνση.Μόνο το πρόσωπο αριστερά – δεξιά: Η ενδυμασία κοιτάει πότε αριστερά πότε δεξιάΜην το περιστρέψεις: Η ενδυμασία δεν περιστρέφεται (ακόμη και όταν η Φιγούρα αλλάζει κατεύθυνση).

Γραμμή εργαλείων

Κάντε κλικ στη Γραμμή Εργαλείων για να επιλέξετε ένα εργαλείο, έπειτα κάντε κλικ σε άλλα αντικείμενα για να εκτελεστεί η ενέργεια.

Βέλος. Κανονική κατάσταση. Επιλέγει και μετακινεί Φιγούρες και πλακίδια

Διπλασιασμός: Διπλασιάζει Φιγούρες, ενδυμασίες, ήχους, πλακίδια, και στήλες εντολών (SHIFT + click για αναπαραγωγή).

Διαγραφή: Διαγράφει Φιγούρες, ενδυμασίες, ήχους, πλακίδια, και στήλες εντολών.

Μεγέθυνση: Αυξάνει το μέγεθος της Φιγούρας

Σμίκρυνση: Μειώνει το μέγεθος της Φιγούρας.

Σελίδα 39 από 114

Page 40: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μενού

Τα κουμπιά Νέο, Άνοιγμα, Αποθήκευσε και Αποθήκευσε ως κάνουν ότι περιμένουμε.

Η επιλογή Μοίρασε το! Σας δίνει τη δυνατότητα να ανεβάσετε το σενάριο σας στο διαδίκτυο. (http://scratch.mit.edu).

Η επιλογή Αναίρεσε επιτρέπει να ανακτήσετε το τελευταίο πλακίδιο, στήλη εντολών, ή Φιγούρα που σβήσατε (αλλά δεν σας επιτρέπει να αναιρέσετε προηγούμενες κινήσεις).

Η επιλογή Γλώσσα σας επιτρέπει να επιλέξετε τη γλώσσα της διεπαφής με τον χρήστη. Οποιοσδήποτε μπορεί να προσθέσει ή να τροποποιήσει τη μετάφραση μιας γλώσσας στο Scratch. Σχετικά με την πρόσθεση ή τροποποίηση στη μετάφραση μιας γλώσσας μπορείτε να βρείτε αναφορά στο τμήμα Υποστήριξης, στην ιστοσελίδα του Scratch. Σε περιοδικά διαστήματα, ένα ενημερωμένο πακέτο με την τελευταία έκδοση της μετάφραση του Scratch σε διάφορες γλώσσες, θα είναι διαθέσιμο να κατέβει από την ιστοσελίδα του Scratch.

Η επιλογή Πρόσθετα προσφέρει μια αναδιπλούμενη λίστα με ειδικά χαρακτηριστικά:

Εισαγωγή σεναρίου: φέρνει όλες τις Φιγούρες και το φόντο από άλλα σενάρια στο δικό σας. Αυτή η επιλογή είναι χρήσιμη για να συνδυάζετε Φιγούρες από διαφορετικά σενάρια.Έναρξη του βήμα – βήμα: Το πρόγραμμα Scratch εκτελεί ένα βήμα τη φορά, φωτίζοντας κάθε πλακίδιο καθώς εκτελείτε. Αυτή η δυνατότητα είναι χρήσιμη για να εντοπίζονται σφάλματα στα προγράμματα, και στο να βοηθάει νέους προγραμματιστές να καταλάβουν την ροή ενός προγράμματος. Συμπίεση ήχων: η συμπίεση ήχων χρησιμοποιείται, για να μειώσει το μέγεθος του αρχείου ενός σεναρίου.Συμπίεση εικόνας: η συμπίεση εικόνας χρησιμοποιείται για να μειώσει το μέγεθος του αρχείου ενός σεναρίου.

Η επιλογή Χρειάζεσαι βοήθεια; εμφανίζει μια σελίδα με συνδέσμους που οδηγούν σε οδηγίες χρήσης, εκπαιδευτικό υλικό και σε συχνά υποβαλλόμενες ερωτήσεις. Για να λάβετε βοήθεια για κάθε πλακίδιο, κάντε δεξί κλικ στο πλακίδιο και επιλέξτε Βοήθεια από την αναδιπλούμενη λίστα.

Σελίδα 40 από 114

Page 41: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Πράσινη σημαία

Η πράσινη σημαία παρέχει έναν βολικό τρόπο για να εκτελεστούν πολλές στήλες πλακιδίων ταυτόχρονα. Κάντε κλικ στην πράσινη σημαία για εκτελεστούν όλα τα

πλακίδια που βρίσκονται κάτω από το

Στην Κατάσταση Προβολής, η Πράσινη σημαία εμφανίζεται σαν ένα μικρό εικονίδιο

στην πάνω δεξιά γωνία της σκηνής. Πατώντας το πλήκτρο Enter έχετε το ίδιο αποτέλεσμα με το πάτημα της πράσινης σημαίας.

Ζωγραφική

Μπορείτε να χρησιμοποιήσετε τη Ζωγραφική για να σχεδιάσετε και διαμορφώσετε εμφανίσεις και φόντα.

Η γραμμή εργαλείων της Ζωγραφικής έχει τα ακόλουθα εργαλεία:

Πινέλο: Ζωγραφίζετε ελεύθερα χρησιμοποιώντας το τρέχον χρώμα. Όταν κάνετε κλικ σε αυτό το εργαλείο, ο χώρος των επιλογών δείχνει το μέγεθος του πινέλου.

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

γόμας. Κάντε κλικ στο για να επιλέξετε ένα διαφορετικό μέγεθος γόμας.

Σελίδα 41 από 114

Page 42: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Γέμισμα: Γεμίζετε κλειστές περιοχές με ένα χρώμα ή μια διαβάθμιση. Όταν επιλέγετε αυτό το εργαλείο, η περιοχή επιλογών δείχνει τις δυνατότητες (χρώμα, οριζόντια διαβάθμιση, κάθετη διαβάθμιση ή ακτινωτή διαβάθμιση). Οι διαβαθμίσεις είναι μίγμα επιλογών που ξεκινούν από το επιλεγμένο χρώμα του πρώτου επιπέδου ως το επιλεγμένο χρώμα του υποβάθρου.Ορθογώνιο παραλληλόγραμμο: Σχεδιάζετε ένα περίγραμμα ορθογωνίου παραλληλογράμμου ή ένα χρωματιστό ορθογώνιο παραλληλόγραμμο (shift+drag για τετράγωνο) χρησιμοποιώντας το τρέχον χρώμα του προσκηνίου. Κάνοντας κλικ σε αυτό το εργαλείο, η περιοχή των επιλογών δείχνει το στυλ του παραλληλόγραμμου (συμπαγές ή περίγραμμα).Έλλειψη: σχεδιάζετε μια συμπαγής έλλειψη ή το περίγραμμα της (Shift+drag για κύκλο) χρησιμοποιώντας το τρέχον χρώμα του προσκηνίου. Επιλέγοντας αυτό το εργαλείο, η περιοχή επιλογών δείχνει το στυλ της έλλειψης (συμπαγής ή περίγραμμα).Γραμμή: σχεδιάζετε μια ευθεία (Shift+drag για μια οριζόντια ή κάθετη γραμμή) χρησιμοποιώντας το τρέχον χρώμα του προσκηνίου. Όταν επιλέγετε αυτό το εργαλείο, η περιοχή επιλογών δείχνει το μέγεθος της βούρτσας. Κάντε κλικ στο

για να επιλέξετε ένα διαφορετικό μέγεθος.Κείμενο: Προσθέστε κείμενο στο σχέδιο. Όταν επιλέγετε αυτό το εργαλείο, η περιοχή επιλογών σας επιτρέπει να αλλάξετε τον τύπο και το μέγεθος της γραμματοσειράς. Κάθε εμφάνιση μπορεί να έχει μόνο ένα τουβλάκι με κείμενο.Επιλογή: Επιλέξτε μια ορθογώνια περιοχή, στη συνέχεια μεταφέρετέ την σε μια νέα θέση (πατήστε Διαγραφή για να διαγράψετε την επιλογή, Shift+delete ή shift+backspace για να περικόψετε).Αντίτυπο: Επιλέξτε μια ορθογώνια περιοχή, στη συνέχεια αντιγράψτε την σε μια νέα θέση (Shift+click+drag για επαναλαμβανόμενα αντίτυπα).Σταγονόμετρο: Χρησιμοποιήστε το σταγονόμετρο για να επιλέξετε το χρώμα του παρασκηνίου (κάντε κλικ στον καμβά και σύρετε το σταγονόμετρο για να επιλέξετε ένα χρώμα έξω από την περιοχή του καμβά).

Τα τρέχοντα χρώματα (προσκηνίου και υποβάθρου) φαίνονται κάτω από την περιοχή επιλογών. Μπορείτε να κάνετε κλικ στο βέλος που αλλάζει χρώμα, για να επιλέξετε το χρώμα του προσκηνίου και του υποβάθρου. Κάντε κλικ σε ένα από τα χρώματα της παλέτας για να επιλέξετε ένα νέο χρώμα προσκηνίου (Shift+click για να επιλέξετε το χρώμα του υποβάθρου).

Κάντε κλικ στο πλήκτρο όρισε το κέντρο περιστροφής για να επιλέξετε την περιοχή της σχεδίασης που θα χρησιμοποιηθεί σαν το κέντρο της περιστροφής όταν η Φιγούρα περιστραφεί στη σκηνή.

Κάντε κλικ στο πλήκτρο ζουμ (μέσα ή έξω) για να αυξηθεί ή να μειωθεί ο βαθμός μεγέθυνσης του καμβά. Όταν το ζουμ είναι μεγαλύτερο από το 100%, εμφανίζονται γραμμές ολίσθησης για την μετακίνηση στον καμβά. Το ζουμ δεν αλλάζει το μέγεθος της εικόνας.

Κάντε κλικ στο πλήκτρο Εισαγωγή για να ανοίξετε ένα αρχείο εικόνας και να την προσθέσετε στον καμβά.

Κάντε κλικ στο πλήκτρο Καθάρισε για να αφαιρέσεις όλα τα στοιχεία του καμβά.

Σελίδα 42 από 114

Page 43: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Για να αλλάξετε το μέγεθος του περιεχομένου του καμβά, ή μόνο την τρέχουσα επιλογή, κάντε κλικ στο κουμπί Κλίμακα (μεγέθυνση ή σμίκρυνση). Μπορείτε να πατήσετε Shift+click στα πλήκτρα για να εισάγετε μια συγκεκριμένη τιμή. Η σμίκρυνση μειώνει το μέγεθος και την ανάλυση της εικόνας.

Για να περιστρέψετε το περιεχόμενο του καμβά, ή απλά την τρέχουσα επιλογή, κάντε κλικ στα κουμπιά Περιστροφή (αριστερόστροφη και δεξιόστροφη περιστροφή). Μπορείτε να πατήσετε Shift+click στα κουμπιά για να εισάγετε μια συγκεκριμένη τιμή.

Για να προβάλετε το περιεχόμενο του καμβά, ή απλά την τρέχουσα επιλογή, κάντε

κλικ στο κουμπί ή στο (συμμετρικό οριζοντίως ή καθέτως).

Εάν κάνατε λάθος, μπορείτε με επαναλαμβανόμενα κλικ στο κουμπί Αναίρεση να αναιρέσετε τις τελευταίες σας ενέργειες. Αν αλλάξετε γνώμη, μπορείτε να κάνετε κλικ στο κουμπί Redo για να επαναφέρετε τις αναιρούμενες ενέργειες.

Σελίδα 43 από 114

Page 44: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

3. Πλακίδια Scratch

Τύποι εντολών - πλακίδιαΥπάρχουν τρεις βασικοί τύποι εντολών στην Παλέτα με τα πλακίδια.

Σωροί: Αυτά τα πλακίδια έχουν εξογκώματα στη βάση τους και/ή εγκοπές στο πάνω

μέρος, όπως το . Μπορείτε να ενώσετε αυτά τα πλακίδια σχηματίζοντας στήλες. Κάποια πλακίδια έχουν μια κενή περιοχή μέσα τους, όπου μπορείτε να

πληκτρολογήσετε έναν αριθμό (όπως το 10 στο πλακίδιο) ή να επιλέξετε ένα στοιχείο από μια αναδιπλούμενη λίστα (όπως η αναδιπλούμενη λίστα

στο ). Κάποιοι σωροί πλακιδίων, όπως το έχουν ένα σχήματος C στόμα, όπου μπορείτε να τοποθετήσετε άλλους σωρούς πλακιδίων.

Καπέλα: Αυτά τα πλακίδια έχουν στρογγυλεμένες κορυφές, όπως

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

Αναφορείς: Αυτά τα πλακίδια, όπως και , σχεδιάστηκαν για να εφαρμόζουν στην εσωτερική περιοχή άλλων πλακιδίων. Οι

αναφορείς με τις στρογγυλεμένες άκρες (όπως ή ) αναφέρουν αριθμούς ή πεδία, και εφαρμόζουν σε πλακίδια με στρογγυλεμένες ή ορθογώνιες

τρύπες (όπως ή ). Οι αναφορείς με τα

αιχμηρά άκρα (όπως ) αναφέρουν λογικές τιμές (αληθής ή ψευδής) και εφαρμόζουν μέσα σε πλακίδια με αιχμηρές ή ορθογώνιες τρύπες (όπως

ή ).

Κάποια πλακίδια της κατηγορίας των αναφορέων φέρουν δίπλα τους ένα κουτάκι

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

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

Σελίδα 44 από 114

Page 45: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Με διπλό κλικ ή δεξί κλικ σε μια οθόνη αναφορέα μπορείτε να αλλάξετε τον τύπο με τον οποίο εμφανίζεται.

Ο τύπος του επιλογέα ολίσθησης είναι διαθέσιμος μόνο για μεταβλητές που έχει δημιουργήσει ο χρήστης. Με δεξί κλικ στην οθόνη τύπου του επιλογέα ολίσθησης μπορείτε να προσαρμόσετε τις μέγιστες και ελάχιστες τιμές.

ΛίστεςΤώρα μπορείτε να δημιουργήσετε και να χειριστείτε λίστες στο Scratch. Οι Λίστες μπορούν να αποθηκεύσουν αριθμούς, πεδία γραμμάτων και άλλους χαρακτήρες.

Για να δημιουργήσετε μια Λίστα, πηγαίνετε στα πλακίδια της κατηγορίας των

Μεταβλητών και πατήστε . Όταν δημιουργήσετε μια Λίστα, θα εμφανιστούν μια σειρά από πλακίδια.

Όταν δημιουργείτε μια Λίστα, μια οθόνη ελέγχου της Λίστας θα εμφανιστεί στη σκηνή. Η οθόνη ελέγχου της Λίστας δείχνει όλα τα στοιχεία της Λίστας. Μπορείτε να πληκτρολογήσετε στοιχεία απευθείας στην οθόνη ελέγχου της Λίστας.

Στην αρχή η Λίστα θα είναι άδεια, με μήκος 0. Για να προσθέσετε στοιχεία, πατήστε το + κουμπί στο κάτω αριστερά μέρος της οθόνης ελέγχου της Λίστας. Το μήκος θα αυξηθεί κατά 1. Εναλλακτικά, μπορείτε να προσθέσετε στοιχεία χρησιμοποιώντας τα πλακίδια της Λίστας (π.χ.

).

Μπορείτε να μεταβάλλεται το μέγεθος της οθόνης ελέγχου από την κάτω δεξιά γωνία.

Σημείωση: Μπορείτε να κάνετε δεξί κλικ στην οθόνη ελέγχου μιας Λίστας για να εξάγετε μια λίστα σε ένα αρχείο με προέκταση .txt. Μπορείτε επίσης, να εισάγεται κάθε .txt αρχείο με τιμές σε διαφορετικές γραμμές.

Πεδία κειμένουΤα πεδία περιέχουν γράμματα, λέξεις ή άλλου είδους χαρακτήρες (π.χ. μήλο, Σεπτέμβριος 2008, Κέρδισες!).

Τα πεδία μπορούν να αποθηκευτούν σε μεταβλητές ή Λίστες (όπως

ή ).

Σελίδα 45 από 114

Page 46: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μπορείτε μα συγκρίνετε πεδία χρησιμοποιώντας τα ακόλουθα πλακίδια

.

Τα πεδία εκτιμώνται με την τιμή 0 στα μαθηματικώς επεξεργάσιμα πλακίδια

(όπως ) και σε πλακίδια που αναμένουν έναν αριθμό (όπως

και το ).

Σελίδα 46 από 114

Page 47: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

ΚΙΝΗΣΗ

Μετακινεί τη Φιγούρα μπροστά ή πίσω

Περιστρέφει δεξιόστροφα τη Φιγούρα

Περιστρέφει αριστερόστροφα τη Φιγούρα

Προσανατολίζει τη Φιγούρα σε συγκεκριμένη κατεύθυνση (0=πάνω, 90=δεξιά, 180=κάτω, -90=αριστερά)Προσανατολίζει τη Φιγούρα προς τη θέση του ποντικιού ή άλλης ΦιγούραςΜετακινεί τη Φιγούρα σε συγκεκριμένο σημείο της Σκηνής με συντεταγμένες x και yΜετακινεί τη Φιγούρα προς τη θέση του ποντικιού ή άλλης ΦιγούραςΜετακινεί τη Φιγούρα ομαλά σε συγκεκριμένη θέση κατά τη διάρκεια συγκεκριμένου χρονικού διαστήματοςΜεταβάλει τη θέση της Φιγούρας στον άξονα χ κατά συγκεκριμένο αριθμόΟρίζει συγκεκριμένη τιμή της θέσης στον άξονα χ για τη Φιγούρα.Μεταβάλει τη θέση της Φιγούρας στον άξονα y κατά συγκεκριμένο αριθμόΟρίζει συγκεκριμένη θέση στον άξονα y για τη Φιγούρα.Η Φιγούρα αναπηδά όταν αγγίζει το περιθώριο (πλαίσιο) της σκηνήςΑναφέρει τη χ συντεταγμένη της Φιγούρας (εύρος από -240 έως 240)Αναφέρει τη y συντεταγμένη της Φιγούρας (εύρος από -180 έως 180)Αναφέρει την κατεύθυνση της Φιγούρας (0=πάνω, 90=δεξιά, 180=κάτω, -90=αριστερά)

ΟΨΕΙΣ

Αλλάζει την εμφάνιση της Φιγούρας αλλάζοντας ΕνδυμασίαΑλλάζει την Ενδυμασία της Φιγούρας στην επόμενη από την λίστα των Ενδυμασιών (αν φτάσει στο τέλος των Ενδυμασιών της λίστας, ξεκινάει πάλι από την πρώτη)Αναφέρει τον αριθμό της τρέχουσας ΕνδυμασίαςΑλλάζει τη σκηνή εμφανίζοντας ένα άλλο υπόβαθρο (φόντο)

Σελίδα 47 από 114

Page 48: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

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

Εξαφανίζει τη Φιγούρα από τη σκηνή.

Τοποθετεί τη Φιγούρα μπροστά από όλες τις άλλες.Τοποθετεί τη Φιγούρα πίσω κατά συγκεκριμένο αριθμό επιπέδων, ώστε να καλύπτετε από άλλες Φιγούρες.

ΗΧΟΙ

Ξεκινάει να παίζει ένας ήχος, επιλεγμένος από μια αναδιπλούμενη λίστα, και αμέσως εκτελεί το επόμενο

Σελίδα 48 από 114

Page 49: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

πλακίδιο ενώ συνεχίζει να παίζει ο ήχοςΠαίζει έναν ήχο και περιμένει να σταματήσει πριν συνεχίσει στο επόμενο πλακίδιοΣταματούν όλοι οι ήχοι

Παίζει ένας ήχος τυμπάνου, επιλεγμένος από αναδιπλούμενη λίστα, για καθορισμένο αριθμό χτύπωνΠαίζει μια μουσική νότα (μεγαλύτεροι αριθμοί για υψηλότερη ένταση) για καθορισμένο αριθμό χτύπωνΠαύση (δεν παίζει τίποτε) για καθορισμένο αριθμό χτύπωνΟρίζει τον τύπο του οργάνου που χρησιμοποιεί η Φιγούρα στο τούβλο παίξε νότα (κάθε Φιγούρα έχει το δικό της όργανο)Μεταβάλλει την ένταση του ήχου κατά ορισμένη τιμήΡυθμίζει την ένταση του ήχου σε ορισμένη τιμήΑναφέρει την ένταση του ήχουΑλλάζει το ρυθμό κατά ορισμένη τιμή

Ορίζει το ρυθμό της Φιγούρας σε ορισμένη τιμή χτύπων ανά λεπτό.Αναφέρει το ρυθμό σε χτύπους ανά λεπτό.

ΠΕΝΑ

Καθαρίζει όλα τα ίχνη της πένας και τις στάμπες στη σκηνή.Κατεβάζει την πένα της Φιγούρας, ώστε να αφήνει ίχνος καθώς κινείταιΣηκώνει την πένα της Φιγούρας, ώστε να μην αφήνει ίχνος καθώς κινείται.Καθορίζει το χρώμα της πένας, από τη γκάμα των χρωμάτωνΑλλάζει το χρώμα της πένας κατά συγκεκριμένη ποσότηταΚαθορίζει το χρώμα της πένας σε συγκεκριμένη τιμή (σκίαση=0 πολύ σκούρο, σκίαση=100 πολύ φωτεινό)Αλλάζει τη σκιά της πένας κατά συγκεκριμένο ποσόΚαθορίζει τη σκιά της πένας σε συγκεκριμένο ποσό

Σελίδα 49 από 114

Page 50: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μεταβάλλει το πάχος του ίχνους της πένας κατά συγκεκριμένο αριθμόΚαθορίζει το πάχος του ίχνους της πένας

Εντυπώνει την εικόνα της Φιγούρας (δημιουργεί αντίτυπα) στην σκηνή

ΕΛΕΓΧΟΣ

Εκτελεί το σενάριο όταν γίνει κλικ στην πράσινη σημαία

Εκτελεί το σενάριο όταν πατηθεί συγκεκριμένο πλήκτρο

Εκτελεί το σενάριο όταν γίνει κλικ στη Φιγούρα1

Περιμένει καθορισμένο αριθμό δευτερολέπτων, έπειτα συνεχίζει στο επόμενο πλακίδιοΕκτελεί τα πλακίδια που βρίσκονται μέσα στον βρόγχο ξανά και ξανά

Επαναλαμβάνει τις εντολές που βρίσκονται μέσα στον βρόγχο συγκεκριμένες φορές

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

Αν η συνθήκη είναι αληθής, εκτελεί τα πλακίδια μέσα στο βρόγχο.

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

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

Σελίδα 50 από 114

Page 51: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

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

Σταματά όλα τα σενάρια που εκτελούν όλες οι Φιγούρες.

ΑΙΣΘΗΤΗΡΕΣ

Αναφέρει τη συντεταγμένη x του ποντικιού.Αναφέρει τη συντεταγμένη y του ποντικιού.Αναφέρει αληθής όταν πατιέται το ποντίκι.

Αναφέρει αληθής, όταν πατιέται καθορισμένο πλήκτρο.Αναφέρει αληθής εάν η Φιγούρα αγγίζει άλλη συγκεκριμένη Φιγούρα, το πλαίσιο, ή το ποντίκι. (Επιλέγεται από αναδιπλούμενη λίστα).Αναφέρει αληθής εάν η Φιγούρα αγγίξει συγκεκριμένο χρώμα. (Κάντε κλικ πάνω στην παλέτα των χρωμάτων και χρησιμοποιήστε το σταγονόμετρο για την επιλογή του χρώματος).Αναφέρει αληθής αν το πρώτο χρώμα αγγίζει το δεύτερο χρώμαΑναφέρει την απόσταση από συγκεκριμένη Φιγούρα ή το δείκτη του ποντικιού.Μηδενίζει το χρονόμετρο

Εμφανίζει την ένδειξη του χρονομέτρου σε δευτερόλεπτα Αναφέρει την ιδιότητα ή τη μεταβλητή άλλης Φιγούρας.Αναφέρει την ένταση του ήχου (από το 1 έως το 100) που ανιχνεύεται από το μικρόφωνο του υπολογιστή.Αναφέρει αληθής εάν το μικρόφωνο του υπολογιστή ανιχνεύσει έναν ήχο έντασης μεγαλύτερο του 30 (στην κλίμακα του 1 έως 100)Αναφέρει την τιμή ενός συγκεκριμένου αισθητήρα. Για να χρησιμοποιήσετε αυτή την εντολή χρειάζεστε μια πλακέτα picoBoard συνδεδεμένη με τον υπολογιστή σας. Δείτε στην http:// www . playfulinvention . com / picoboard . html

Σελίδα 51 από 114

Page 52: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Αναφέρει αληθής όταν πατάμε συγκεκριμένο αισθητήρα. Για να χρησιμοποιήσετε αυτή την εντολή χρειάζεστε μια πλακέτα picoBoard συνδεδεμένη με τον υπολογιστή σας.

ΑΡΙΘΜΟΙ

Προσθέτει δύο αριθμούς

Αφαιρεί το δεύτερο αριθμό από τον πρώτο.

Πολλαπλασιάζει δύο αριθμούς.

Διαιρεί τον πρώτο αριθμό με το δεύτερο.

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

Αναφέρει αληθής εάν η πρώτη τιμή είναι μεγαλύτερη από τη δεύτερη.Αναφέρει αληθής εάν και οι δύο συνθήκες είναι αληθής.Αναφέρει αληθής εάν μια από τις συνθήκες ικανοποιείται.Αναφέρει αληθής εάν η συνθήκη είναι ψευδής, αναφέρει ψευδής εάν η συνθήκη είναι αληθής.Αναφέρει το αποτέλεσμα επιλεγμένων συναρτήσεων (abs, sqrt, sin, cos, tan, asin, acos, atan, ln, log, e^, 10^) που εφαρμόζονται σε καθορισμένο αριθμό.Αναφέρει το υπόλοιπο της διαίρεσης δύο αριθμώνΣτρογγυλοποιεί στον πλησιέστερο ακέραιο

ΜΕΤΑΒΛΗΤΕΣ

Επιτρέπει τη δημιουργία και την ονομασία μιας νέας μεταβλητής. Όταν δημιουργείτε μια μεταβλητή, εμφανίζεται το πλακίδιο της μεταβλητής. Μπορείτε να επιλέξετε ποιες μεταβλητές θα συνδέονται με κάποιες ή με όλες τις Φιγούρες.Διαγράφει όλα τα πλακίδια που συνδέονται με μια μεταβλητή.

Αναφέρει τη τιμή της μεταβλητής

Σελίδα 52 από 114

Page 53: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μεταβάλλει τη μεταβλητή κατά συγκεκριμένη ποσότητα. Εάν έχετε περισσότερες από μια μεταβλητές, χρησιμοποιείστε την αναδιπλούμενη λίστα για να επιλέξετε το όνομα της μεταβλητής.Καθορίζει τη τιμή της μεταβλητήςΕμφανίζει το όργανο ελέγχου της μεταβλητής στην σκηνήΑποκρύπτει το όργανο ελέγχου της μεταβλητής από τη σκηνήΔημιουργεί και ονοματίζει μια νέα λίστα. Όταν δημιουργείται μια λίστα, εμφανίζονται τα αντίστοιχα πλακίδια. Μπορείτε να επιλέξετε ποιες λίστες θα συνδέονται με κάποιες ή με όλες τις ΦιγούρεςΔιαγράφει τα πλακίδια που συνδέονται με τη συγκεκριμένη ΛίσταΑναφέρει όλα τα στοιχεία μιας Λίστας.Προσθέτει συγκεκριμένο στοιχείο στο τέλος μιας Λίστας. Το στοιχείο μπορεί να είναι νούμερο ή πεδίο με γράμματα ή άλλος χαρακτήρας.Διαγράφει ένα ή όλα τα στοιχεία από μια Λίστα. Μπορείτε να επιλέξετε από την αναδιπλούμενη Λίστα, ή να χρησιμοποιήσετε ένα νούμερο για να ορίσετε ποιο στοιχείο επιθυμείτε να διαγράψετε. Επιλέγοντας «τελευταίο» διαγράφετε το τελευταίο στοιχείο της Λίστας. Επιλέγοντας «όλα» διαγράφονται όλα τα στοιχεία της Λίστας. Με τη διαγραφή μειώνεται το μήκος της Λίστας.Εισάγει ένα στοιχείο σε συγκεκριμένη θέση της Λίστας. Μπορείτε να επιλέξετε από την αναδιπλούμενη Λίστα, ή να χρησιμοποιήσετε ένα νούμερο για να ορίσετε τη θέση του

Σελίδα 53 από 114

Page 54: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

στοιχείου. Επιλέγοντας «τελευταίο» προσθέτετε το στοιχείο στο τέλος της Λίστας. Επιλέγοντας «οπουδήποτε» το στοιχείο εισάγεται σε μια τυχαία θέση στην Λίστα. Το μήκος της Λίστας αυξάνει κατά 1.Αντικατάσταση ενός στοιχείου στην Λίστα με συγκεκριμένη τιμή. Μπορείτε να επιλέξετε από την αναδιπλούμενη Λίστα, ή να χρησιμοποιήσετε ένα νούμερο για να ορίσετε ποιο στοιχείο θα αντικατασταθεί. Επιλέγοντας «τελευταίο» αντικαθίσταται το τελευταίο στοιχείο της Λίστας. Επιλέγοντας «οποιοδήποτε» αντικαθίσταται ένα τυχαίο στοιχείο της Λίστας. Το μήκος της λίστας δεν μεταβάλλεται.Αναφέρει το στοιχείο που βρίσκεται σε συγκεκριμένη θέση της Λίστας. Μπορείτε να τοποθετήσετε αυτό το πλακίδιο μέσα σε κάποιο άλλο.Αναφέρει πόσα στοιχεία έχει μια Λίστα.

Σελίδα 54 από 114

Page 55: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

ΠΑΡΑΡΤΗΜΑ

Τεχνικές λεπτομέρειεςΑπαιτήσεις συστήματος για την έκδοση 1.3Λειτουργικό σύστημα Υπολογιστή:Windows XP ή νεότερη έκδοση, περιλαμβάνεται η VistaMac OS Χ 10.4 ή νεότερη

Ανάλυση: 1024 x 768 ή μεγαλύτερη, χιλιάδων ή εκατομμυρίων χρωμάτων (16-bit χρώματος ή μεγαλύτερη).Ορίστε την ανάλυση στο 1024 x 768 ή μεγαλύτερη για να βλέπετε όλη την σκηνή του Scratch.

Δίσκος: χρειάζεται τουλάχιστον 120 megabytes ελεύθερου χώρου για την εγκατάσταση του Scratch.

Σημείωση: το Scratch εγκαθίσταται με μια μεγάλη βιβλιοθήκη και συλλογή σεναρίων. Εάν διαθέτετε μικρό χώρο στο σκληρό δίσκο, μπορείτε να διαγράψετε τους φακέλους Media και Projects από τους φακέλους.

Μνήμη : οι περισσότεροι υπολογιστές διαθέτουν αρκετή μνήμη για την εκτέλεση του Scratch. Οι παλαιότεροι υπολογιστές μπορεί να εκτελούν το Scratch με μικρή ταχύτητα.

Ήχοι: Για να εκμεταλλευτείτε τη δυνατότητα εισόδου και εξόδου ήχου, χρειάζεστε μεγάφωνα (ή ακουστικά) και μικρόφωνο. Πολλοί φορητοί έχουν ενσωματωμένα μεγάφωνα και μικρόφωνα.

ΠροεπιλογέςΠροεπιλεγμένη ΦιγούραΗ προεπιλεγμένη Φιγούρα για κάθε νέο σενάριο Scratch είναι η Γάτα. Για να χρησιμοποιείται ως προεπιλεγμένη μια άλλη Φιγούρα, εξάγετε τη Φιγούρα αυτή από το μέσο αποθήκευσης, αποθηκεύστε την ως default.sprite και τοποθετήστε την στο φάκελο με τις Εμφανίσεις. Για να αντικαταστήσετε μόνο την προεπιλεγμένη Εμφάνιση, τοποθέτησε ένα αρχείο εικόνας με το όνομα default.jpg (ή .png ή .bmp ή .gif) στο φάκελο των Εμφανίσεων.

Ορατοί οδηγοίΠροεπιλεγμένα, όλοι οι οδηγοί είναι ορατοί. Για να είναι ορατοί μόνο οι επιλεγμένοι οδηγοί, πληκτρολογήστε το αρχείο Scratch.ini στο φάκελο του Scratch και προσθέστε την παρακάτω γραμμή:VisiblesDrives = C:, D:, M:Τα ονόματα των οδηγών πρέπει να τελειώνουν με μια άνω και κάτω τελεία, και να διαχωρίζονται με κόμμα. Οι οδηγοί περιέχονται στο φάκελο Scratch και ο αρχικός φάκελος του χρήστη είναι προσβάσιμος με συντομότερες οδούς. Έτσι, είναι προτιμότερο να εγκαθιστάτε το φάκελο του Scratch σε έναν οδηγό που θέλετε να είναι ορατός.

Επιπλέον πληροφορίες

Σελίδα 55 από 114

Page 56: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Για περισσότερες πληροφορίες, παρακαλούμε επισκεφθείτε το forum του Scratch στο http://scratch.mit.edu/forums/

Σελίδα 56 από 114

Page 57: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

4. Μαθαίνοντας το με απλά παραδείγματα εφαρμογής

Το παρόν κεφάλαιο περιέχει δέκα – επτά απλά μαθήματα προγραμματισμού στο Scratch με στόχο να βοηθηθούν οι αρχάριοι προγραμματιστές να δημιουργήσουν τα πρώτα τους έργα στο εκπαιδευτικό περιβάλλον του Scratch.

Μά

θημ

α

1 Κίνηση και Ήχος

Στο 1ο Μάθημα χρησιμοποιούμε τα βασικά δομικά στοιχεία (πλακίδια) για να κινήσουμε τη Φιγούρα (Γάτα) μπροστά ή πίσω. Επιλέγουμε πλακίδια από διαφορετικά μενού (ξεκινώντας από το μπλε μενού της κίνησης) και εκτελούμε την κίνηση κάνοντας διπλό κλικ πάνω τους. Στη συνέχεια θα προσθέσουμε ήχο (τον ήχο ενός τυμπάνου) σε κάθε βήμα της Φιγούρας. Θα μάθουμε πως να επιλέγουμε πλακίδια από το μενού των ήχων, και πως να συνδέουμε τα πλακίδια μεταξύ τους ώστε να εκτελούνται ταυτόχρονα οι εντολές τους.

Το πλακίδιο μας επιτρέπει να επιλέγουμε τον τύπο του τυμπάνου (ανάμεσα σε πολλούς) και τη χρονική διάρκεια του ήχου.

Σύρουμε από την μπλε λίστα με τις εντολές της “Κίνησης”, το πλακίδιο

στην περιοχή σεναρίων.

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

Σελίδα 57 από 114

Page 58: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Από τη μωβ λίστα των Ήχων σύρουμε το πλακίδιο

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

Με διπλό κλικ στο σωρό των πλακιδίων εκτελούνται οι δύο εντολές ταυτόχρονα.

Αν προσθέτουμε ακόμα ένα πλακίδιο “κινήσου 10 βήματα”, και πληκτρολογούμε αρνητικό αριθμό, π.χ. -40, στην λευκή περιοχή του, η Γάτα θα κινηθεί 40 βήματα προς τα πίσω. Προσθέτουμε ακόμα ένα πλακίδιο “παίξε τύμπανο 48 για 0.2 χρόνους” αλλάζοντας τον ήχο από την αναδιπλούμενη λίστα και τη χρονική διάρκεια πληκτρολογώντας ένα νέο αριθμό.

Σελίδα 58 από 114

Page 59: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

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

Σελίδα 59 από 114

Page 60: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

2 Επανέλαβε!

Σ’ αυτό το μάθημα χρησιμοποιούμε το πλακίδιο από το πορτοκαλί μενού “Ελέγχου”. Μετακινούμε τα τέσσερα πλακίδια του προηγούμενου παραδείγματος στο “στόμα” του πλακιδίου “για πάντα”. Όταν κάνουμε κλικ πάνω του, οι εντολές εκτελούνται συνεχώς κάνοντας τη Φιγούρα να χορεύει μπρος - πίσω. Για να σταματήσουμε τη Φιγούρα χρησιμοποιούμε

το κόκκινο εικονίδιο του Stop. Επίσης, στο μάθημα αυτό εισάγουμε ένα

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

Σελίδα 60 από 114

Page 61: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α3 Μίλα!

Στο μάθημα αυτό χρησιμοποιούμε το πλακίδιο για να μιλήσει η Φιγούρα μας.

Επίσης, χρησιμοποιούμε το πλακίδιο από την λίστα “Ελέγχου”.

Όταν κάνουμε κλικ πάνω στη Φιγούρα, σχηματίζεται η φυσαλίδα λόγου. Μπορούμε να πληκτρολογήσουμε την λεζάντα που επιθυμούμε στην λευκή περιοχή της εντολής και να ορίσουμε τη χρονική διάρκεια που αυτή θα εμφανίζεται.

Σελίδα 61 από 114

Page 62: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

4 Παίζοντας με το χρώμα!

Στο τέταρτο μάθημα θα χρησιμοποιήσουμε το πλακίδιο

από το μωβ μενού “Όψεις”. Όταν κάνουμε κλικ στο πλακίδιο, η Φιγούρα αλλάζει χρώμα κατά το ποσό που ορίζουμε. Μπορούμε να επιλέξουμε και άλλες γραφικές αλλαγές της Φιγούρας όπως τη φωτεινότητα, την εικονοστοιχειοποίηση, κλπ.

Σ’ αυτό το μάθημα εισάγουμε ακόμη ένα πλακίδιο ελέγχου για την εκτέλεση

ενεργειών. Το θα εκτελέσει τις εντολές που είναι συνδεδεμένες μαζί του όταν κάνουμε κλικ στο πλήκτρο που εισάγει το κενό χαρακτήρα.

Σελίδα 62 από 114

Page 63: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

5 Δημιούργησε τις δικές σου Φιγούρες!

Στο μάθημα αυτό εισάγουμε και άλλες Φιγούρες στο σενάριο μας. Εναλλακτικά, μπορούμε να σχεδιάσουμε τις δικές μας Φιγούρες.

Μεταφέρουμε τις εντολές από το προηγούμενο παράδειγμα για τη Φιγούρα της Γάτας.

Διαλέγουμε μια νέα Φιγούρα από το αρχείο. Μπορούμε να σχεδιάσουμε τη δική μας Φιγούρα χρησιμοποιώντας τον επεξεργαστή ζωγραφικής επιλέγοντας την πρώτη εικόνα:

Επιλέγουμε την Φιγούρα dog1-a από τις ενδυμασίες των Ζώων.

Σελίδα 63 από 114

Page 64: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Συνδέουμε τη Φιγούρα του Σκύλου με τα τουβλάκια που μετακινούμε στην περιοχή Σεναρίων.

Σελίδα 64 από 114

Page 65: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

6 Παίξε τύμπανο!

Στην λευκή περιοχή της εντολής “παίξε τύμπανο” μπορούμε πέρα από το να επιλέξουμε τον τύπο του τυμπάνου από την αναδιπλούμενη λίστα, να

τοποθετήσουμε το πλακίδιο από την πράσινη λίστα των “Αριθμών” και έτσι να προκύπτει τυχαία η επιλογή του τυμπάνου.

Σελίδα 65 από 114

Page 66: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

7 Άλλαξε κατεύθυνση!

Στο 7ο Μάθημα ζητάμε από τη Φιγούρα να αλλάξει κατεύθυνση κίνησης.

Το πλακίδιο προσανατολίζει τη Φιγούρα στη κατεύθυνση που ορίζουμε (0=πάνω, 90=δεξιά, 180=κάτω, -90=αριστερά).Ακόμη ένα παράδειγμα.Κινείστε τη Γάτα πάνω – κάτω, δεξιά – αριστερά στην οθόνη, χρησιμοποιώντας τα πλήκτρα με τα βέλη.

Σελίδα 66 από 114

Page 67: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Και ένα ακόμη παράδειγμα.Ζήτα από την πεταλούδα να ακολουθεί συνεχώς το δείκτη του ποντικιού στοιβάζοντας τα πλακίδια που βλέπεις στο σχήμα.

Σελίδα 67 από 114

Page 68: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

8 Ας Χορέψουμε!

Χρησιμοποιώντας την ετικέτα “Ενδυμασίες” στο χώρο προγραμματισμού, μπορούμε να συνδέσουμε εικόνες ή ενδυμασίες με τη Φιγούρα μας. Μπορούμε να εισάγουμε έτοιμες ενδυμασίες, ή μπορούμε να χρησιμοποιήσουμε τον επεξεργαστή της ζωγραφικής για να δημιουργήσουμε νέες. Μπορούμε να συνδέσουμε διαφορετικές ενδυμασίες με κάθε Φιγούρα. Η εναλλαγή των ενδυμασιών χρησιμοποιείται για τη δημιουργία κινούμενων εικόνων.

Εισάγουμε με τη σειρά τις ενδυμασίες ballerina-a, ballerina-b, ballerina-c, ballerina-d για την Φιγούρα μας.

Σελίδα 68 από 114

Page 69: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Όταν πατηθεί το πλήκτρο του κενού, η μπαλαρίνα μας θα εκτελέσει τέσσερα σετ πιρουέτες υπό τον ήχο που επιλέξαμε.

Σελίδα 69 από 114

Page 70: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

9 Ας χορέψουμε μαζί!

Τώρα μπορούμε να συγχρονίσουμε δύο ή περισσότερες Φιγούρες να χορεύουν μαζί.

Μεταφέρουμε τις εντολές του προηγούμενου παραδείγματος για την μπαλαρίνα μας..

Εισάγουμε μια νέα Φιγούρα από το αρχείο ή δημιουργούμε μια δική μας και τη συνδέουμε με διαφορετικές ενδυμασίες.

Σελίδα 70 από 114

Page 71: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Κατάφερες οι δύο Φιγούρες να χορεύουν μαζί!

Σελίδα 71 από 114

Page 72: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

10 Δημιούργησε εφέ!

Χρησιμοποιώντας τα πλακίδια και

από το μωβ μενού “Όψεις” μπορούμε να δημιουργήσουμε εφέ εικόνας.

Παρατήρησε τον ήλιο να αλλάζει μέγεθος και χρώμα.

Σελίδα 72 από 114

Page 73: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

11Πήγαινε και λάμψε!

Στο μάθημα αυτό χρησιμοποιούμε τα πλακίδια που μας δίνουν τη δυνατότητα να μετακινήσουμε τη Φιγούρα ακαριαία ή ομαλά σε συγκεκριμένη θέση στη σκηνή. Η θέση μπορεί να ορισθεί με ζεύγος συντεταγμένων x-y ή με τη κατεύθυνση του ποντικιού ή κάποιας άλλης Φιγούρας.

Ο ήλιος τώρα θα αλλάζει χρώματα, θα γλιστράει από το ένα σημείο στο άλλο και θα λάμπει.

Σελίδα 73 από 114

Page 74: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

12 Αναπήδησε!

Το μάθημα χρησιμοποιεί τα πλακίδια που αναγκάζουν τη Φιγούρα να μετακινείται διαρκώς, παραμένοντας εντός των ορίων της σκηνής, αναπηδώντας όταν φτάνει στα όρια. Επίσης, παρουσιάζει τα πλακίδια που ορίζουν την κίνηση της Φιγούρας: τη θέση x, τη θέση y, και την κατεύθυνση.

Ένα πιο σύνθετο παράδειγμα, όπου χρησιμοποιήσαμε ακόμη ένα πλακίδιο από την λίστα “Ελέγχου”.

Σελίδα 74 από 114

Page 75: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

13Κρύψου!

Εμφανίσου!

Με τα πλακίδια και μπορούμε να εξαφανίζουμε και να επανεμφανίζουμε Φιγούρες στην Σκηνή.

Εισάγουμε τρεις Φιγούρες .

Συνδέουμε τη Φιγούρα 1 με τη στήλη εντολών

Συνδέουμε τη Φιγούρα 2 με τη στήλη εντολών

Συνδέουμε τη Φιγούρα 3 με τη στήλη εντολών

Σελίδα 75 από 114

Page 76: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α14 Άλλαξε μουσικό όργανο!

Σ’ αυτό το μάθημα μπορούμε να ακούσουμε το σύνολο των οργάνων που βρίσκονται στο αρχείο Instruments του Scratch χρησιμοποιώντας μια

μεταβλητή. Στην πορτοκαλί λίστα κάνοντας κλικ στο μπορούμε να ορίσουμε την μεταβλητή Instrument η οποία θα μας δίνει διαρκώς το νούμερο του μουσικού οργάνου που ακούμε.

Σελίδα 76 από 114

Page 77: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Ορίζοντας με τον ίδιο τρόπο την μεταβλητή Drum μπορούμε να ακούσουμε τους ήχους των ντραμς στη σειρά.

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

Σελίδα 77 από 114

Page 78: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

15 Ώρα για παιχνίδι!

Όρισε την μεταβλητή Score για να μετρήσεις πόσα ψαράκια θα φάει ο καρχαρίας!

Κάθε φορά που ο καρχαρίας θα αγγίζει το μικρό ψάρι θα ακούγεται ο ήχος pop και θα αυξάνει η τιμή της μεταβλητής Score.

Σελίδα 78 από 114

Page 79: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

16 Παίξε Μουσική!

Τώρα μπορούμε να συνδυάσουμε νότες από διαφορετικά όργανα για να συνθέσουμε τη δική μας μουσική.

Χρειαζόμαστε μερικά μωβ πλακίδια για να επιλέξουμε τα όργανα που θέλουμε να παίζουν, κάποια ακόμη για να ορίσουμε τις νότες που θα ακούγονται και μερικά πορτοκαλί πλακίδια από την λίστα Ελέγχου.

Σελίδα 79 από 114

Page 80: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Μά

θημ

α

17 Ζωγράφισε!

Στο μάθημα αυτό μπορούμε να ζωγραφίσουμε κρατώντας το ποντίκι

πατημένο. Τα πλακίδια , και

τα βρίσκουμε στην λίστα “Πένα”.

Όσο θα κρατάς το ποντίκι πατημένο θα μπορείς να ζωγραφίζεις με το μολύβι.

Σελίδα 80 από 114

Page 81: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Αξιοποιώντας διδακτικά το

Τα παρακάτω έργα δημιουργήθηκαν στο εκπαιδευτικό προγραμματιστικό περιβάλλον του Scratch και έχουν αναρτηθεί στην ιστοσελίδα http :// scratch . mit . edu / users / tziortzioti του δικτυακού τόπου του Scratch, όπως φαίνεται στα στιγμιότυπα που ακολουθούν.

Στο παρακάτω στιγμιότυπο διακρίνονται τα μηνύματα που έχω δεχτεί στην ιστοσελίδα http :// scratch . mit . edu / users / tziortzioti από άλλα μέλη της κοινότητας (τρία σχόλια για τα έργα που έχω αναρτήσει και δύο μηνύματα για τα μέλη που με «πρόσθεσαν ως φίλο»).

Σελίδα 81 από 114

Page 82: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Στο στιγμιότυπο που ακολουθεί διακρίνονται τα σχόλια που δέχτηκα από μέλη της κοινότητας Scratch για τα έργα που ανάρτησα.

Τα τρία πρώτα έργα με τους τίτλους «το λουλούδι του Πτολεμαίου», «η πεταλούδα του Πτολεμαίου» και «μια μέλισσα στον κήπο» είναι παραλλαγές της εφαρμογής «Μοντέλο του Πτολεμαίου» από το περιβάλλον της Logo.

Επίσης, τα έργα με τους τίτλους «squiral», «squiral_knitted_star», «squiral_spiral», «squiral_star» είναι παραλλαγές της γνωστής εφαρμογής «squiral» από το περιβάλλον της Logo με χελονογεωμετρία.

Τα επόμενα έργα διέπονται από τα ιδιαίτερα χαρακτηριστικά του Scratch: είναι πλούσια σε μέσα, χρησιμοποιούν γραφικά, κινούμενες εικόνες (animation), μουσική και ήχους.

Σελίδα 82 από 114

Page 83: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

1Το λουλούδι του Πτολεμαίου

Μεταφορά στο Scratch του κλασικού Μοντέλου του Πτολεμαίου από το

περιβάλλον της Logo.

Σελίδα 83 από 114

Page 84: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

2 Η πεταλούδα του Πτολεμαίου

Μια πεταλούδα σχεδιάζει μια … πεταλούδα. Αφαιρετική έκδοση ενός πιο

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

κοινότητας του Scratch τον Ν. Δαπόντε.

Το μαθηματικό μοντέλο προέρχεται από τα παραδείγματα του Modellus.

Σελίδα 84 από 114

Page 85: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο3 Μια μέλισσα στον κήπο

Μια μέλισσα σχεδιάζει ένα λουλούδι. Βασισμένο σε μαθηματικό μοντέλο από

τα παραδείγματα του Modellus.

Σελίδα 85 από 114

Page 86: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο4 Squiral

Σύρε τον κάβουρα στο κέντρο της οθόνης. Κάνε κλικ πάνω του για να

σχεδιάσει το κλασικό σχήμα “Squiral” (η λέξη προέρχεται από τη “Square”

του λεξιλογίου της χελώνας Logo).

Ενώ ο κάβουρας σχεδιάζει μπορείς να τροποποιήσεις την τιμή της γωνίας

και να σχεδιαστεί ένα άλλο σχήμα.

Σελίδα 86 από 114

Page 87: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

5 Squiral_knitted_star

Σύρε τον κάβουρα όπου επιθυμείς πάνω στη σκηνή. Κάνε κλικ πάνω του

για να σχεδιάσει έναν ιστό σε σήμα αστεριού. Επίσης, άλλαξε την τιμή της

γωνίας για να δεις νέα σχήματα.

Σελίδα 87 από 114

Page 88: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

6 Squiral_spiral

Σύρε τον κάβουρα σε όποιο σημείο επιθυμείς πάνω στη σκηνή. Κάνε κλικ

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

αλλάξεις την τιμή της γωνίας.

Σελίδα 88 από 114

Page 89: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

7 Squiral_star

Σύρε τον κάβουρα σε οποιοδήποτε σημείο πάνω στην Σκηνή επιθυμείς.

Κάνε κλικ πάνω του για να σχεδιάσεις ένα τρισδιάστατο σχήμα, όπως ένα

αστέρι.

Σελίδα 89 από 114

Page 90: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

8 Γάτες και Σκύλοι

1η έκδοση

Στο σενάριο αυτό όταν ο δείκτης του ποντικιού βρίσκεται πάνω στα σκυλάκια

ακούγονται οι ήχοι woof και short woof.

Αντίστοιχα όταν ο δείκτης του ποντικιού βρίσκεται πάνω από τα γατάκια

ακούγονται οι ήχοι meow και small meow.

Σελίδα 90 από 114

Page 91: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

2η έκδοση

Στην 2η έκδοση προστέθηκαν μερικά γατάκια ακόμη και εμφανίστηκε και ένας

ποντικός.

Όταν ο δείκτης του ποντικιού βρίσκεται πάνω από τα γατάκια ακούγεται ο

ήχος small meow και όταν βρίσκεται πάνω στο ποντίκι ακούγεται ο ήχος

Rattle.

Σελίδα 91 από 114

Page 92: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

3η έκδοση

Σ’ αυτή την έκδοση μία πεταλούδα παρατηρεί τη σκηνή του καυγά, πετώντας

διαρκώς από πάνω και αναπηδώντας όταν φτάνει στα όρια της σκηνής.

Σελίδα 92 από 114

Page 93: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

9 Πιάνο

Κάνε κλικ στα πλήκτρα του πιάνου για να παίξεις μουσική.

Βασισμένο στο πρωτότυπο παράδειγμα PianoMachine του Scratch

sample.

Σελίδα 93 από 114

Page 94: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

10 Οικογενειακό παιχνίδι

Στο σενάριο αυτό, η κάθε Φιγούρα εκτελεί διαφορετικές ενέργειες όταν γίνεται

κλικ πάνω της:

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

Σελίδα 94 από 114

Page 95: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

11 Λαβύρινθος

Με τα βελάκια του πληκτρολογίου οδήγησε την μπάλα στο μωρό μέσα από

τον λαβύρινθο!

Κάνοντας κλικ πάνω στη μπάλα, στο μωρό ή στα τετράγωνα αυτά περιστρέφονται.

Σύροντας και αφήνοντας τα τετράγωνα με το ποντίκι, ο λαβύρινθος αναδιατάσσεται (ακόμη και ενώ παίζει σε fullscreen ή στο web)

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

Για να τρέξει το πρόγραμμα και να αρχικοποιήσει τιμές σε κάποιες από τις μεταβλητές κάντε κλικ στην πράσινη σημαία.

Σελίδα 95 από 114

Page 96: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

12 Μια παραλλαγή του WHEEMO

Με τους sliders μπορείς να ελέγχεις την περιστροφή και την ταχύτητα και

να μετακινείς το ποντίκι για να ζωγραφίσεις.

Σελίδα 96 από 114

Page 97: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Σεν

άρ

ιο

13 Μια παραλλαγή του Move Monkey Dress Up

Κάνε κλικ πάνω στα ρούχα για να ντύσεις το μαϊμουδίτσα. Μπορείς και να

εκτελέσεις τις κινήσεις αντίστροφα. Για να ξεκινήσεις κάνε κλικ στην

πράσινη σημαία.

Σελίδα 97 από 114

Page 98: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Βιβλιογραφία

Begel, A. (1996). LogoBlocks: A Graphical Programming Language for Interacting with the World. Unpublished Advanced Undergraduate Project, MIT Media Lab.

diSessa, A. (2000). Changing Minds: Computers, Learning, and Literacy. MIT Press: Cambridge, MA.International Technology Education Association (2000). Standards for Technological Literacy.

Kay, A. (1991). Computers, Networks and Education, Scientific American, September, 1991.

Maloney, J. H., Peppler, K., Kafai, Y. B., Resnick, M., & Rusk, N. (2008). Programming by choice: urban youth learning programming with scratch. ACM SIGCSE Bulletin.

Maloney, J., Burd, L., Kafai, Y., Rusk, N., Silverman, B., & Resnick, M. (2004). Scratch: A Sneak Preview. Proceedings of the Second Int. Conference on Creating, Connecting, and Collaborating through Computing, Jan 29-30, 2004, Kyoto.

MIT Media Lab. (2009). Scratch. Retrieved JAN 27, 2009, from http://scratch.mit.edu

Monroy-Hernandez, A. (2007). ScratchR: a platform for sharing user-generated programmable media. In M. B. Skov (Ed.), 6th International Conference on Interaction Design and Children. Aalborg, Denmark.

Monroy-Hernández, A., & Resnick, M. (2008, March-April). Empowering kids to create and share programmableνmedia. Interactions.

Papert, S. (1980). Mindstorms: Children, computers, and powerful ideas. NY: Basic Books.National Academy of Engineering and National Research Council (2002). Technically Speaking: Why All Americans Need to Know More About Technology.

National Research Council (1999). Being Fluent with Information Technology. National Academy Press: Washington DC.

Partnership for 21st Century Skills (2003). Learning for the 21st Century.http://www.21stcenturyskills.org/downloads/P21_Report.pdf

Pausch, R., et al. (1995). Alice: Rapid Prototyping System for Virtual Reality. IEEE Computer graphics and Applications.

Pea R. (1986), Language-independent conceptual ‘bugs’ in novice programming, Journal of Educational Computing Research.

Peppler, K. A., & Kafai, Y. B. (2007). Collaboration, Computation, and Creativity: Media Arts Practices in Urban Youth Cultures. In the proceeding of the Computer Supported Collaborative Learning conference, July 16 - 21, Rutgers, USA.

Resnick, M. (2002). Rethinking Learning in the Digital Age. In The Global Information Technology Report: Readiness for the Networked World, edited by G. Kirkman. Oxford University Press

Resnick, M., Rusk, N., Kafai, Y., Maloney, J., et al (2003). A Networked, Media-Rich Programming Environment to Enhance Technological Fluency at After-School Centers in Economically-Disadvantaged Communities. Proposal to the National Science Foundation (project funded 2003-2007).http://www.media.mit.edu/~mres/papers/scratch-proposal.pdf

Repenning, A. and Ambach, J. (1996). Tactile programming: A unified manipulation paradigm supporting program comprehension, composition, and sharing. IEEE Symposium on Visual Languages, Boulder, CA.

Resnick, M., Berg, R., and Eisenberg, M. (2000). Beyond Black Boxes: Bringing Transparency and Aesthetics Back to Scientific Investigation. Journal of the Learning Sciences.

Resnick, M., Rusk, N., & Cooke, S. (1998). The Computer Clubhouse: Technological Fluency in the Inner City. In D. Schon, B. Sanyal & W. Mitchell (Eds.), High Technology and Low-Income Communities. Cambridge, MA: MIT Press.

Steinmetz, J. (2001). Computers and Squeak as Environments for Learnig. In Rose, K. and Guzdial, M. (eds.), Squeak: Open Personal Computing and Multimedia. Prentice Hall: New York.

Σελίδα 98 από 114

Page 99: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Wiedenbeck, S. (2005). Factors affecting the success of non-majors in learning to program. In the proceedings of the first international workshop on Computing education research, Seattle, WA, USA October 01 – 02

Φεσάκης Γ., Δημητρακοπούλου Δ., (2005), «Γνωστικές δυσκολίες μαθητών δευτεροβάθμιας εκπαίδευσης σχετικά με την έννοια της προγραμματιστικής μεταβλητής και προτεινόμενες παρεμβάσεις.», 3ο πανελλήνιο συνέδριο “Διδακτική της Πληροφορικής”, Κόρινθος, 7-9 Οκτωβρίου 2005 (http://www.etpe. gr)

Σελίδα 99 από 114

Page 100: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Παράρτημα I

Παραθέτονται τα σφάλματα που αναφέρθηκαν στην ομάδα ανάπτυξης του

Scratch στο MIT’s LLK και αφορούν στην 1.3 έκδοση (με τη συμβολή του Γ.

Μπιρμπίλη και του Ν. Δαπόντε)

Ημερο-μηνία

Θέμα Απάντηση από το MIT LLK

10/6/08 untranslated stuff issues with translated ones, for example

“imagine program share” moto being translated to have the word program as a Greek “noun” instead of a Greek “verb” (they’re not the same as in English) which is obviously totally unrelated to your moto’s intention.

at all servers (the original scratch one too), the language dropdown should be a bit wider (it writes “Languag” in IE7/Vista).

15/7/08

noticed at the alpha: image editor cannot draw/edit text in Greek. It shows some accented Latin chars instead. Maybe some wrong font is used there or not using Unicode there? Fixed at beta

variables at the alpha version: can’t use Greek names at them. It showed garbage chars (vertical bars) Fixed at beta too

beta: need work on the Pootle server with Greek localization to change ? to ; (English question mark to Greek) and also make all menus start with capital letter (previous translator seems to have some start with small letter)

17/7/08

Right click Motion/Looks/Sound/etc. buttons (all those that are grouped together there) and you get some trace popups or something

old app icon was better (the

(23/7/08 - Evelyn Eastmond) We did not intend

for people to resize these sliders

Σελίδα 100 από 114

Page 101: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

cat figure that is also being used as an actor in scratch)

the app icon (default Squeak VM icon) isn't transparent (has white around it making it show like a box in windows explorer depending on user's OS color theme/settings)

the set slider min/max dialog doesn't accept TAB key to move between min/max/OK/Cancel GUI controls

Save dialog, at the editbox where you enter the filename you want to use, when you press ENTER key there, it doesn’t do the OK action as one would expect, but you have to click the OK button yourself. You should define “default” (ENTER key – if the event propagates to the dialog [a child control like a textarea or a filelist should be allowed to grab the ENTER key pressed event and not propagate it to its parent]) and “cancel” (ESC key) buttons for each dialog

TAB key doesn’t work in that dialog too to navigate between controls using the keyboard (you need to set a TabOrder list [or a TabIndex value at each dialog control and set a Boolean option at those controls that will be navigable by TAB]).

When closing the application ([X] icon at top-right of window) I don’t get a localized message (if it’s not your dialog try to grab the engine’s onclosequery event or something and show your own dialog)

When closing the application using [X] action user isn’t asked to save their model

There doesn’t seem to be a “dirty” flag at the project to see if user does need to save the model, so the Open action always asks the user to save the previous project. I think an open project should be marked dirty (in running memory only) if any renaming actions occur, script editing (including adding comments), icon/actors editing. Saving the project using “Save” button should clear the internal dirty flag

I can’t drag a slider’s left and right sides to resize it

We also did not intend for people to edit the values of the variable reporters directly. However, it is definitely a problem that you cannot slide to values 1 and 99. I will add that to our bug list

On showing localized exit confirmation message: It is difficult to access the dialog query in the underlying Squeak VM, but it's in our list of things to try to do for a future version of Scratch

On asking to save when closing app window: For the same reason as above, this is difficult to do, but I agree that it is very necessary

We do have a dirty flag, but it actuates on any drag and drop action of any block, script, etc. Even when you press the green flag, things are considered 'dirty'. Given the dynamic nature of Scratch and open ended model, it is not easy for us to determine that a

Σελίδα 101 από 114

Page 102: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

I can’t edit a slider’s value by hand by clicking on its label/textfield (doesn’t enter edit mode) and typing a new value (in any of its display modes).

Editing by dragging the slider doesn’t always allow one to give a wanted value, esp. if the min/max range is big (the default one is 0-100 or something, making it impossible to slide the value to say 1 [can only go to 2] – if one could resize the slider to make it bigger it would allow you to drag to 1 btw)

moved actor or moved block was *intentional*. Scratch does not always ask you to save, but it does ask often.

6/9/08 http://scratch.mit.edu/projects/dapontes/258414Can you checkout the above project? the web player doesn’t show “lists” as he expected (open the project in Scratch too to checkout those lists)

(6/9/08 - John Maloney)We are still working to add list displays to the Player. The list operations work, but you cannot currently see the list, even if the list was showing when the project was saved. It's a fair amount of work, so it may take several weeks. We did not want to delay the release until the player was done because we wanted to get Scratch 1.3 out at the start of the school year.

10/1/09

When exporting a sprite for which a file already exists, an overwrite file popup shows up that doesn’t show Greek (and probably any other Unicode) characters ok

4/4/09 Was using "for ever while length-of-

Σελίδα 102 από 114

Page 103: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

list>0" (with action to send msg and wait and remove two elements from the list at each loop) in message handler and never returned, changed with repeat until (len=0) and worked

2/5/09 On my system I can’t set the background image “xy-grid.gif” at Scratch. If I save it as .JPG it works. Probably an issue with some GIF library you’re using? Does it work at other PCs?

Σελίδα 103 από 114

Page 104: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Τα παρακάτω εδάφια αποτελούν μέρος της αλληλογραφίας της ομάδας που αποτελείται από τους Γ. Μπιρμπίλη, Ν. Δαπόντε, Κ. Γλέζου και Χρ. Τζιωρτζιώτη με την Evelyn Eastmond. Αφορούν σε αιτήματα για περαιτέρω χαρακτηριστικά γνωρίσματα και προτάσεις βελτίωσης του περιβάλλοντος Scratch.

15/7/2008it's very important that when one gets into translating an activity, they're able to translate the variable names too (=add rename variable action). If the internal engine doesn't support localized variable names, create a mapping function internally to map the Unicode variable names to __var1, __var2, __var3 internally (using __ or similar prefix/suffix to make sure users don't use such a name for their own vars).

If you add functions (aren't there any such in Scratch now?) can do the same with their names if needed

If you could add "rename variable" action it would be very helpful (same goes for any other parts of the code where you give names the time you create them)

17/7/2008Btw, the "when I receive" command you have can help one split their logic in parts, but I find only a "broadcast" command, not a "tell" one to tell somebody (e.g. myself) to do something. I suppose an actor has a message queue that it processes sequentially and that it can execute actions on the message queue in parallel to its main program/script loop (the [re]action handler to the green flag pressed event that is). So it could do

<myname> when greenflag [ Loop forever [ Tell <myname> Jump Tell <myname> Duck ]]

And have Jump and Duck to be separate "when I receive" event handlers that make the actor jump and sit down respectively. Only problem with the above one may be that the loop might feed the message queue with Jump, Duck events and fill up memory if they're not pulled fast enough from the queue (since Jump and/or Duck may take some time to execute), or if "Jump" or "Duck" have some infinite loop in them

Anyway, my suggestion is to add a TELL <somebody> <something> command, apart from the TELLALL (broadcast) you now have. Could even extend that in the future with an extra command ASK <somebody> <something> to be able to wait for a response from <somebody>. Then you could do calculations based on some value returned and could even implement functions that way by ASKing yourself for a response to some given message an parameters (e.g. ASK <myname> <somefunctionname> <someparamvaluelist>) ***

Σελίδα 104 από 114

Page 105: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

Right clicking a variable at the Variables pane should show rename and delete actions. Now the contextual (context sensitive) menu only shows help action for a variable. Apart from that should have a rename variable button under the delete variable one for completeness (if user prefers to delete/rename vars from one place)When I make a new variable I get asked if I want to create the variable for all sprites or for this sprite only. 1) It should say

for all sprites (shared)for this sprite only

in order o make it obvious it’s a global variable you make in the 1st case (people may think it adds TO EACH sprite a variable with that name).

2) It would be handy if you did have an action saying “For each sprite”. I may want to extend all sprites of a given microworld say to have a “vx” and “vy” instead of going into each one and adding the same var repeatedly (if for a few sprites I don’t want the var I can go to those and delete it then)

for all sprites (shared)for each spritefor this sprite only

All blocks (including top level ones) should have some small yellow horizontal bar connector at their right handside to attach a comment to them. The comment block should have a similar female connector (two horizontal bars with a gap between them). Or maybe better vice-versa, have the female one at the blocks and the male at the comment block. Comment blocks could have connector at their right handsize too as all other blocks to allow one to chain comment blocks together. Of course one could still keep a comment disconnected (a general comment that is)I’m suggesting this cause now when you move around scripts inside a view comments don’t move along, plus when you copy a script to other actors I suppose comments don’t get copied along either)

Scratch doesn’t allow one to rename the scene. It shows a localized name instead. Maybe that’s on purpose, but not sure if it’s the correct choice. People may be using say a localized interface, but viewing an English project/microworld. Since all other actor names are shown in English, seeing the Scene name in Greek is at least strange. Plus, on might want to call their Scene “Universe”, “Starfield”, “Playground”, “Grass”, “World” or whatever (depending on their scenario or target group). I suggest you allow the scene actor’s name to be changed and just use the localized string for the initial name of the scene actor when a new projects is created

I suggest you add a “Notes” tabpage at the Scene actor and at all other actors. Quite important for adding pedagogical notes etc.Also, since startup notes may needed to be shown, all those Notes tabpages should contain a Boolean option (tick) to select whether they’re shown automatically in a popup dialog when you double click the scene or that actor.  The popup with the notes shown could then have a “Don’t show again” option allowing the user to set that specific notes dialog to not shown again during that

Σελίδα 105 από 114

Page 106: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

session (*** don’t store that setting though when the project is saved, if they want to change the automatic showing of the notes for that actor or for the scene they should go to the notes tab and uncheck it there)Especially for the scene notes, if the option is selected at the Notes tab of the scene actor to show them automatically, they should also show up when the project opens up in Scratch environment AND when it gets executed in the webplayer. Of course in the webplayer there wouldn’t be shown a “Don’t show again” tick at the notes popup.

Would be nice to have blocks to get x/y/direction of another sprite. Can change the current commands to add a dropdown to select a sprite name, but make sure you also add a “my” item there (my x, my y, my direction), so that the command can be copied from sprite to sprite and work as is when you want to get yourself’s x/y/direction, without having to change the name to yourname each timeSimilar could do for the “set x/y/direction” commands (allow to say “set earth x to …” or “set my x to …”). Then you’d be able to include those commands to the “motion” palette for the Scene object too (now it has no items there). Of course when in the Scene’s “motion” palette those commands (the get and the set ones) shouldn’t show the “my” option. Care should also be taken in case such commands using “my” are copied from an actor to the scene…Although, speaking about this, I think having X/Y properties for translating the whole scene would be useful. Having DIRECTION property to rotate the whole scene would be extra cool too!22/7/2008Evelyn Eastmond (for Scratch team):We specifically decided not to make it possible to translate the names of locally created media and data within Scratch:- costume names- sound names- sprite names- variable names- broadcast names- etc...

These strings are usually only valid within the context of a specific project, in someone's language.Translating proper nouns such as names is a very complex problem.We assume these 'names' can stay the same from language to language.I hope this doesn't feel like a bug in the program to you.Please let me know if I'm misunderstanding your issue, however.

I agree that the ability to 'rename' variables would facilitate the translation of variable names in sample projects that come with Scratch.It is on our list of 'wish features' for Scratch.

Reply:I'm not sure what you mean with "locally created media" names. Are these names the author of a project gives? If so they should be able to change the name later on anyway, even to another name in the same language cause they may want to edit a misspelling or

Σελίδα 106 από 114

Page 107: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

adapt the project to cover another scenario - say change name "sheep" to "wolf" to make the sheep chace the wolves).

BTW, even when not translating a name here in Greece we transcribe it in Greek phonetic writing. Most young Greek children shouldn't know how to spell the letter "c" etc. cause they don't exist in our alphabet. So I guess this makes it harder to discuss about a project (apart from talking descriptively about sprite images) with classmates and your teacher when you see an actor called "cat" and you can't spell it. You could argue that this way you make the children learn other languages too, but this isn't always the focus of the lesson you're trying to teach

23/7/2008Evelyn:Thank you for the feature request.Functions with parameters and directed broadcast messages are often requested features in Scratch.We continually consider these options for future releases of Scratch.

Thank you very much for sharing your design ideas with us!Thank you for this idea to have a 'default' button on dialogs so that 'enter' and 'esc' map to 'ok' and 'cancel'.I have seen this issue come up before, and it should be an easy one to fix.Also, I will make sure to include tabbing in all dialogs with input fields.

Should be able to rename an event/message when you are localizing a project

Evelyn: This is a great idea, thank you.

To change a variable in a formula you currently have to drag it out of the formula and drag in another one. Would be nice to be able to right click the variable inside the formula (at the script pane that is) and select from a popup another variable name. Then you’d be able to quickly edit formulas (esp. useful when combined with duplicate, e.g. when I want to write x=x1+x2 and then y=y1+y2 I’d write the first one, then duplicate, then change via right click x1 to y1 and x2 to y2 at the duplicated formula without having to drag in y1 and y2 and drag out [throw away] the duplicate x1 and x2) Please don’t add a drop-down arrow next to a var in the script view though, formulas would look very ugly. Better use the right-click action ON the variable icon for changing the variable

Evelyn: This has been requested many times as well.  The right-click option is the most elegant.We will add it to our feature request list and try our best to implement it for Scratch 1.3.

23/7/2008 Right clicking a variable at the Variables pane should show rename and delete actions.

Now the contextual (context sensitive) menu only shows help action for a variable. Apart

Σελίδα 107 από 114

Page 108: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

from that should have a rename variable button under the delete variable one for completeness (if user prefers to delete/rename vars from one place)

Evelyn: Thank you for the suggestion!We've heard this many times and will try to implement it for Scratch 1.3.

When I make a new variable I get asked if I want to create the variable for all sprites or for this sprite only.

Evelyn: Thank you for the design suggestions.

I will bring these issues up with the rest of the Scratch design team.I like the idea of adding the '(shared)' label to global variables.

Evelyn: Thank you for the ideas to chain comments to blocks, comments to comments, and to copy comments along with their scripts.The idea to chain comments to blocks has come up many times, and we are still trying to find an elegant way to design this.

Hopefully for Scratch 1.3 we will be able to implement this, but it will depend on fixing other bugs and finding a nice solution to this chaining problem.Evelyn: We do not have set x/y of sprite blocks, but it is an interesting.  I have noted it for our future design meetings.It's not clear to me that translating the stage would not be confusing for children...Evelyn: (regarding Notes suggestions) Thank you for the feature request!I have noted it and will bring it up with the Scratch design team.

Ideas: integration with robotics, maybe also add export to Flash, Silverlight, XNA (supports Xbox, Win, Zune clients for now), maybe add some two-way source code editor (live sync between a verbose program editor and the visual program editor), import/export from/to various Logo platforms (NetLogo - MultiAgent) Scratch doesn’t allow one to rename the scene. It shows a localized name instead.

Maybe that’s on purpose, but not sure if it’s the correct choice. People may be using say a localized interface, but viewing an English project/microworld. Since all other actor names are shown in English, seeing the Scene name in Greek is at least strange. Plus, on might want to call their Scene “Universe”, “Starfield”, “Playground”, “Grass”, “World” or whatever (depending on their scenario or target group). I suggest you allow the scene actor’s name to be changed and just use the localized string for the initial name of the scene actor when a new projects is created

Evelyn: This is an excellent point.  Thank you for pointing out that the sprites sometimes appear in English but the Greek is used for the 'stage' name. I will bring up this issue with the design team to see what they think. If there are other localization issues that you encounter, please feel free to email me as I'm trying to make Scratch easier to localize.Evelyn: Thank you for the concernsThis has all highlighted the issue of being able to *rename* media within Scratch to be able to localize projects more easily. Also, I'm beginning to understand how issues of renaming media within projects are important for using Scratch in other contexts.

Σελίδα 108 από 114

Page 109: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

24/7/2008Evelyn: The application icon that comes with Scratch 1.3 Beta will be replaced by the regular application icon from before.I'll add the 'TAB' controls to the various GUI panes.

Btw, there aren’t any “buttons” one can place on the stage, but one can make a sprite and listen for a click event on it, can’t they? (that way they can also make the sprite look as if it’s pressed down etc.). Haven’t looked for that functionality yet, hope the click “event” for sprites does exist (btw, conventional frameworks differentiate between mouse-pressed and mouse-clicked [=mouse-pressed and mouse-released without much time spent and without much drag/offset between pressed and released position], but not sure if such things are needed in Scratch at all – will let you know as I work more on Scratch projects if I find something needed in that area [that is in adding interaction elements for the project’s enduser to play with])

Would be nice to be able to right click an actor icon (including the scene icon) at the actors list (bottom-right) and select an action to rename the actor (without having to double click the actor / show it and then go to the top of the screen to rename it – as it is now it’s not very obvious to new users [was searching of that action a bit] and not very handy if they’re trying to translate an existing activity with many actors in it)

 Evelyn: Thanks for the feature request, this can definitely come in handy for people who are localizing projects, I can see.

Would be nice to have blocks to get x/y/direction of another sprite. Can change the current commands to add a dropdown to select a sprite name, but make sure you also add a “my” item there (my x, my y, my direction), so that the command can be copied from sprite to sprite and work as is when you want to get yourself’s x/y/direction, without having to change the name to yourname each time

Evelyn: This block already exists in Scratch.Under the 'Sensing' category, you will see a block that says 'x position' of 'Sprite1'.Is this what you meant?

However, when this block is copied from Sprite1 to Sprite2, Sprite1 does not automatically change to Sprite2, but I agree that it should. “for each sprite” suggestion : I think it would help in multi-agent microworlds (e.g. a

“pile of apples” or “sand pile” / “avalanche” project like the one in AgentSheets where you have lots of small agents that interaction with each other – adding a variable you had forgotten to add to each one after you’ve created them [via duplication] would be very time consuming)

Evelyn: Yes, indeed duplicating something after you've duplicated a sprite is very time consuming. This option of creating a variable 'for each sprite' could help.30/7/2008At the variables pane, first are listed the global variables (I suppose one could also call them the stage variables) and then are listed the local (sprite) variables. When one is viewing the stage it’s obvious which are the global variables since only those are

Σελίδα 109 από 114

Page 110: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

shown there. However when one views a sprite, it’s not obvious which are the global and which are the local ones. They only have a tiny color difference. 1) Apart from that tiny color difference (maybe globals could be in bold typeface too?) the

global and local variables should be also spatially separated, maybe in two lists grouped with a label above them

2) Also, one should be able to attach a comment/description to the right side of each variable at the variables list. That comment could pop up as a tooltip when mouse moves over that variable at the script pane (if the mouse is kept still for a bit over a variable [tooltip delay])

When one deletes a variable but forgets to remove it from the script, then when model is run it seems to run ok (var has undefined value or zero maybe?). Haven’t tried if at that moment export is done to html what happens at the exported page (if all runs ok that is)When one then tries to save, the variables appear againInstead I believe that when one deletes a global variable, one should see them disappear from all scripts at the same time (see holes/placeholders in their place – btw, should check if a script with “holes” in it runs ok if exported [using 0 value I guess for the hole/gap]) and if one deletes a local variable see them disappear from the local script.

would like to also see “xor” (also called EXOR – EXclusive OR) logical operationuseful when teaching logical programming and also in animation and other complex logic (same goes of course for nand and nor, but those can be constructed easily using not)

Would be nice if there was a console or output window where a program can write using a print(…) command. Another idea is that one could also mark variables to be logged (when they change) at the output windowSame way one could mark vars to be charted/plotted in a graph - to do charting one should be able to mark one variable to be the “x” axis (the master/independent variable) and the rest to be on the “y” axis (the dependent variables). Could also mark multiple vars as being independent and when showing chart could have a dropdown at the x axis to select which independent variable to show there.Speaking of charts (and where one would show them on the screen or why one wouldn’t implement those using plotting/pen), a useful feature could be “multiple stages” which could be shown as tabs or even as layers with their visibility selectable using a checkbox (that is at the actors view, the left side could have multiple stage icons with checkbox for each to select if visible or maybe better with some disable mark over them controllable via a right click action). Following this idea, any slide could also be shown/hidden the same way (not sure how you hide one now)6/8/2008the website should have a feature to send or reset a forgotten password via e-mail8/8/2008Evelyn: (for XOR) Thank you for the request! We've added it to our feature requests list.9/8/2008Evelyn: (on deleted variables shown in script) Thank you for the design suggestions.We have thought about different ways of doing this, including some of your great

Σελίδα 110 από 114

Page 111: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

suggestions. Since Scratch has been this way for a while, we didn't take any steps to change the design for Scratch 1.3, but we may for future versions.Evelyn: (on separating local and global variables):Thank you for the suggestions.For now, we will try spatially separating the global and local variables to see if that helps.I agree that it is quite vague right now.We'd like to test this minimalist approach and see what the feedback is, then reiterate the design for the next version of Scratch.10/1/20091) At image painting window, I’d expect some live updated status about current x,y and

width, height of current selection (and maybe show size of the image too at some other place)

2) At image painting window, having option to show X,Y coordinate system axes always following the cursor movement would be useful (cause when you draw stuff you can easily align them to other stuff already drawn since the cursor is always at the center of the moving axes [like a crosshair cursor made of two infinitely extending vertically crossed lines])

3) A garbage can icon at the top-right corner (maybe placed on the border) of the center area to drag-drop script parts would be nice

4) Drag a rectangular area to select multiple commands at the center area of the screen would be nice when you have lots of commands dropped-arround in your script that you want to select and drag-drop out of there (for example to the garbage can to delete them). Also useful to rearrange command blocks when they are too close to each other for you to read/understand the script or when multiple commands overlap etc. (a usual case with 3d party projects you load and want to examine)

5) Is there operator to do integer division? (x\y instead of x/y)6) Would like to also see “truncate” (trunc) [or sometimes called “integer” (int) which

maybe is better] apart from “round”7) Would like to have a “Custom” palette page allowing to drag commands (or even

command blocks or snippets or even disconnected command groups [see suggestion 5 above] – prompting user to give a name in that case) from center area to it. Such palette shouldn’t be saved together with the project (esp. if user gives localized names for command snippets/blocks placed there [unless you allow placing only single command blocks which don’t need naming of course]). Should be able to import/export such palettes to a command palette file and maybe even have multiple “Custom” palettes (using the filename to get their name so that one can easily localize their name by renaming the file)

8) Would like to see more use of XML with Scratch (be able to export the project to XML – also export sprites to XML etc.)

21/1/2009Evelyn: Thank you also for the rest of the feature requests.  We have thought of some of these issues for a long time, and they either have been lower priority than other features, or left out for the sake of simplicity of the Scratch paradigm.  There is no truncate block, or integer divide block in Scratch.  I am not sure if we would add that, but I will mention it to the main developers.  We've also thought about better block/scripts management and deletion (trash can), and have stayed away from these ideas for now, again for the sake of simplicity.

We are about to move into prototyping stages for a new version of Scratch which will

Σελίδα 111 από 114

Page 112: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

take lessons learned from our first version.  It will be helpful to think of your ideas as we brainstorm that new user interface, I think many of us agree with the issues that you have encountered, but it may make more sense for us to address them in a later Scratch version whose UI has been redesigned.

Regarding XML output, Scratch user Jens has prototyped something to this effect, you can see that here: http://scratch.mit.edu/projects/Jens/93504

4/4/20091) If two or more entities are named with the same name (say "Brick") and you

use the collision sensor to check collision with one of those, then collision is checked with only one of them. I assume you use unique numeric IDs internally (like GUIDs/UUIDs), else you must be getting the 1st entity from those with the same name I guess. Should maybe fix this and check collision with ANY entity that has the given name (return from your checking loop upon first collision found). Else you shouldn't allow multiple entities to have same name, since there's also the issue of asking the "x" position of an entity called "Brick" and having multiple of them. Which one's x value are you getting? Also after saving/reloading project or reordering the entities list you might be asking another entity (haven't tested this though) than before if you're not using IDs internally and use names (and thus get a seemingly non-deterministic behaviour) 2) Have mentioned this a bit in the past too: should allow to send events to specific entities (by name - if multiple entities with same name is allowed send to all of them, that is treat the entity name as a "class"). If send-and-wait event is issued, wait for all listeners to finish (can talk to listeners serially or in parallel, depending on Scratch's internal architecture). Should be able to listen for events sent to class "x" using the appropriate codeflow block.  3) Can avoid replicating the class logic at each entity by putting it at the scene object (using send-to-x and on-event-for-x), as long as we have a block to say to which entity we're talking to at a given time. E.g. On<Hello>For<X> [ Ask<X> [ Turn<90> , Move<10> ] ]. That is have an ASK<x> block.  4) Could have an extra field at each object apart from name, called "ancestors". Could be a list allowing to add many tags (say "mamal", "cat", etc. - like multiple inheritance that is). Then each entity that has ancestor "x" would also run the "x" entity's logic (this assumes entities use unique names). Avoids the concept a separate class object (old-style OOP, but more easy for non-programmers to understand). Else could have separate special "class" entities to group logic in them and name the aformentioned field "class" where each entity can optionally name the class(es) it belongs too to use logic from them. Having copy-pasted logic is problematic for maintenance in multi-agent simulations 5) add face flip action (for programming) 6) right click pos x block in a program to select (switch to) pos y or direction 7) right click index of list element in the list view (at web player too maybe?) to erase the item 8) can say "transmit [variable]" but can't say "on received [variable]". Hard to do message-based systems like that. 9) doesn't support reentrance? (at a message handler can't send same

Σελίδα 112 από 114

Page 113: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

message and wait?) 10) have counter variable (like Logo's repcount) and use inside repeat blocks to find current iteration (and also add foreach [for lists] and use with that one too) 11) was using "for ever while length-of-list>0" (with action to send msg and wait and remove two elements from the list at each loop) in message handler and never returned, changed with repeat until (len=0) and worked 12) add <=, >= operators (and at dropdown) and <> (the special char) 13) spawn/duplicate entity command (for programming [work at runtime - with some check that a loop doesn't make too many entities and crash scratch]) 14) right click any variable to edit its current value in popup, right click list to do similarly (could also show the editor inline via some down arrow or something) 15) right click a variable or a list at the vars window and select delete 16) right click "if" block to show option to change to if-else (and vice-versa, preserving "if" and releasing "else" contents respectively) 17) can only write ([0] - [X]), but there's no (-[X]) to change sign of X [without space char maybe] 18) #unique(list) - have a command to count unique items in a given list 19) remove-duplicates(list) - this should work on the given list (mutable list) and not produce another list (immutable argument), but should have a clone(list) and be able to assign a list to a variable to hold it, useful if people need to do immutable list operations (they can clone the list and then do remove-duplicates) 20) right click on any command in palette (since we can change their params there) and select "execute", maybe also allow in script area to exec subprog (the same subpart that is given when we click duplicate on an item)

5/4/20091) Allow dragging a literal (say value “20”) from a block to move to other block. Holding

down CTRL could do copy action. Better construct on the fly a literal block when user types in a value somewhere, allowing to drag-drop it to other places and also to right-click the literal and select “duplicate”, similar to how we do with other arithmetic elements

2) Provide various drag-droppable numerical constants like “pi” or the golden ratio etc. (as special separate blocks or as a special block that contains a dropdown to change the constant). Should have some kind of tooltip to show the real numeric value of the constant, but do keep it as a symbol in the script, not as a literal value

25/4/2009Evelyn: 1) We are currently working on a Scratch 1.4 beta, and we are solving many little bugs, etc.

We will probably open the Scratch 1.4 beta up to more translators soon, and we will let you know about this.

Σελίδα 113 από 114

Page 114: Εξελληνισμός και Διδακτική Αξιοποίηση Εκπαιδευτικού Προγραμματιστικού Περιβάλλοντος Scratch

2) However, we are also currently looking at Scratch 2.0, the next version, and starting to plan for that. I will make sure your 'numerical constants' suggestions make it to the design team.

2/5/2009Here are some more suggestions for Scratch (some are a bit overlapping with previous feedback, but sending them anyway since they may explain our rationale over the suggestions a bit better):

1) Tried to drag drop a variable onto “Set [x] to […]” box, but [x] doesn’t accept dropping a variable to it (it’s a dropdown but for consistency it should also accept dropping variables to it, as other dropdowns do and accept dropping parts onto them)

2) Tried to drag drop a typed number from “Set [x] to […], that is the […] onto another formula (to avoid typing the value again). Maybe it should allow this (now does nothing)

3) Should allow CTRL+drag to drag a copy of something (and leave the original item in place)

4) Want to right click a numeric field and select from a list of variables and ready made values (like 0, 1, pi, etc.). Maybe also have at numbers page some constants to drag-drop

5) Right click on any variable block and change it to other variable (select from “dropdown” list)

3/5/2009Would like to have default (provided by the software) asset icons in Scratch for:1) planets of our solar-system and maybe of their moons too2) icons of a pen (useful when drawing), a brush, a bucket and other drawing tool icons3) icon of a spider (useful when drawing web-style curves)

Σελίδα 114 από 114