Jobineries

Blogue de Gilles G. Jobin, Gatineau, Québec.

jeudi 28 septembre 2006

Extremadura

Extremadura est une région rurale de l'Espagne. 60000 PC sont équipés de Linux et de Squeak. Si vous avez 20 minutes, cette vidéo donne une bonne idée de la puissance des TIC en éducation. Merci à mon ami Pierre Couillard pour cette découverte.

mercredi 19 juillet 2006

Un départ

Une nouvelle catégorie voit le jour sur mon blogue : Squeakeries. Pour ce premier billet officiel (j'ai déplacé trois anciens billets où je mentionnais Squeak vers cette nouvelle catégorie) je vais relater mon expérience d'appropriation de cet univers.

Premier contact

C'est un collègue qui m'a suggéré fortement de regarder Squeak. Ce que je n'ai pas fait immédiatement. Mais après avoir lu quelques messages de l'AFUL, je me suis livré à une très courte recherche sur le web. Je suis alors tombé sur cette merveilleuse vidéo où l'auteur introduit Etoys en programmant une bibite sortant d'elle-même d'un labyrinthe . Je n'ai su que bien plus tard que cet exemple était classique et faisait partie d'une première approche très connue d'Etoys. Toujours est-il que cette vidéo a eu un effet monstre chez moi car j'ai immédiatement compris tout le potentiel pédagogique d'un tel outil. Mes lecteurs savent déjà que je crois qu'il faut absolument que les enfants apprennent à programmer, tout au moins minimalement, un ordinateur. Je crois que programmer permet, entre autres, d'actualiser et d'ancrer sa pensée dans la réalité.

Se faire une webidée

Lorsque je désire en apprendre un peu plus sur un sujet, je commence toujours par m'en faire une webidée. Cela consiste à taper un mot dans Google et, partant du résultat, naviguer assez rapidement (surfer) sur les sites. Ce faisant, j'ai commencé à me faire un certain portrait de ce qu'était Squeak. Mais ce portrait était très flou, comme une photo qu'on capture en tremblant. Je discernais plusieurs mots/concepts que j'avais peine à comprendre : Smalltalk, Seaside, les Images, la version française, le greffon (plugin), les morphs, etc. Bref, j'étais complètement perdu. Après m'être calmé, j'ai décidé d'installer le logiciel sur mon portable Linux.

L'installation

Décrite ici, l'installation n'est pas évidente. Qu'est-ce que VM? Image? Source? Que faut-il faire avec tout ça? La page en question n'est vraiment pas claire. Je me suis donc battu un peu avec ma première installation jusqu'à ce que je tombe sur ce petit bijou. (Si vous êtes sous Windows, l'équivalent se trouve ici. Sous Mac, c'est .)

Premier lancement

Squeak, c'est un langage de programmation. Mais au premier lancement, on est tout de suite dépaysé. Tellement, que je me suis inscrit à la liste de discussion francophone de Squeak et sur un commentaire d'un fil, j'ai laissé ceci :
Je suis très novice dans Squeak. Je programme énormément en PHP et en javascript. Je connais en amateur éclairé JAVA), mais l'environnement Squeak est tellement... déstabilisant. (Dans Java, on écrit le source, on compile, et on regarde ce que ça donne...)
Hilaire Fernandes, père de DrGeo a alors pris le temps d'écrire une jolie réponse dont voici un extrait :
[...] programmer dans un environnement Smalltalk vous change la vision que vous pouvez avoir sur la programmation. J'ai pratiqué quelque autres langages, surtout C++ mais aussi un peu Python, Java.
Avec Smalltalk, on change de plan conceptuel, non que les choses soient plus difficiles, mais simplement la vision de ce que doit être le langage et son environnement de développement est totalement différente. Ce qui explique que tu te sens déstabilisé.
Une fois que l'on maîtrise les deux approches, la traditionnelle (que tu décris très bien par: on écrit le source, on compile, et on regarde ce que ça donne...) et celle de Smalltalk (que j'ai envie d'appeler celle des petits pas), la 2e apparaît de loin comme très supérieure.
De la première approche j'en ai été gavé pendant des années. La deuxième, je la pratique depuis peu, mais j'ai découvert que cette dernière me permettait d'aller beaucoup plus vite, d'avoir une approche du développement plus en continuité, moins brutale dans les transitions entre les moments forts du développement: édition de code, compilation, test, débogage. Avec Smalltalk le passage d'un de ces moments à l'autre se fait par epsilon alors que dans l'autre approche c'est à coup de ruptures brutales, mentalement déstabilisantes et stressantes pour le programmeur.
Vous pouvez lire le fil complet de la discussion. Encouragé par les paroles de M. Fernandes, j'ai poursuivi ma webexploration ce qui m'a permis de situer quelques concepts clés.
  • Squeak, c'est du Smalltalk libre. Smalltalk? C'est un vieux langage (années 70) de programmation inventé par Alan Kay. Smalltalk se voulait assimilable même par des enfants. Si vous lisez un livre sur Smalltalk, vous pourrez quasi directement appliquer son contenu à Squeak. Donc, conceptuellement et pratiquement parlant, Squeak et Smalltalk, c'est la même chose. Et puisque Smalltalk n'est pas très jeune, les ressources sur le web sont immenses.
  • On ne sauvegarde pas vraiment des fichiers dans Squeak: on enregistre plutôt l'image qui contient toutes les classes et les objets. Ces images sont entièrement portables d'un ordinateur à l'autre.
  • Dans Squeak, tout est objet.
  • Morph est un ensemble de classes permettant de programmer dans un environnement graphique.
  • Une Image de base contient plus de 1500 classes !

Comment coder

J'avais beau explorer les onglets qui entourent la fenêtre Squeak, j'avais beaucoup de difficultés à voir comment on pouvait coder un simple Hello world ! Et là, mes weblectures (voir plus bas) m'ont amené à comprendre le Browser, la fenêtre Transcript et la fenêtre Workspace. Pour accélerer un peu votre apprentissage de Squeak, je vous suggère l'étude de textes suivants :
Toutes ces références ne représentent qu'une partie de mes pérégrinations Squeak-Web, mais, à mon avis, vous saurez fort bien vous débrouiller à partir de là !

Et la pédagogie ?

Je reviendrai sur l'aspect pédagogique de Squeak. J'aimerais cependant vous conseiller fortement le livre Squeak : Learn Programming with Robots du brillant Stéphane Ducasse. M Ducasse est français mais son livre n'est disponible qu'en anglais. Dans sa préface, il nous dit « My ultimate goal is to teach you object-oriented programming, because this particular paradigm provides an excellent metaphor for teaching programming. » Sur le site consacré à BotsInc, il écrit « I wrote this book for my wife, who is a physics and mathematics teacher in a French school where the students are between eleven and fifteen years old. She had to teach computer sciences and I decided to help her understanding key concepts in programming and teaching them. As a computer scientist, I was aware of work on the programming language Logo and that the programming language Smalltalk had been influenced by the ideas of Logo. I discovered that Smalltalk is a powerful language and has a simple syntax that mimics natural language and that it had originated from research on teaching programming to children. » Ce livre fait vraiment un bon boulot : l'enseignement du langage-objet à l'aide de petits robots dans l'univers de Squeak.

N'hésitez pas à vous lancer dans le merveilleux apprentissage du monde de Squeak. Je n'en suis qu'au début mais déjà je ressens une belle jouissance intellectuelle à son contact.

mercredi 28 juin 2006

Squeak Live CD

Julien Ithurbide a gentiment mis en ligne sa première version d'un Live CD Squeak (144M). Basé sur une Knoppix, au démarrage, on vous demandera la résolution désirée et hop ! vous vous retrouverez, en français, dans l'environnement Squeak.

dimanche 30 avril 2006

Alan Kay en entrevue

La musique n'est pas dans le piano.


Il faut absolument lire Alan Kay dans cette excellente entrevue : FACE to FACE: Alan Kay Still waiting for the Revolution.

Quelques extraits :
One of the things that pollutes a lot of computer use in schools is a heightened sense of vocationalism. Parents are concerned about whether their children are going to get jobs, and so they really want the schools to train the kids. But my belief is that the training part is kind of like driver's ed: It takes about as long to learn how to use a computer as it takes to learn how to drive a car, maybe less. So it's not something you really want to pin twelve years of school on.
That's one of the reasons why, in my research, I've retreated into early childhood. The earlier you go, the further away you are from the thing that parents are worried about—which is whether the kids are going to get jobs. However, vocationalism is now rampant in elementary schools, even in kindergarten.

[...] the computer can be a kind of thought amplifier.

Think about it: How many books do schools have—and how well are children doing at reading? How many pencils do schools have—and how well are kids doing at math? It's like missing the difference between music and instruments. You can put a piano in every classroom, but that won't give you a developed music culture, because the music culture is embodied in people.
On the other hand, if you have a musician who is a teacher, then you don't need musical instruments, because the kids can sing and dance. But if you don't have a teacher who is a carrier of music, then all efforts to do music in the classroom will fail—because existing teachers who are not musicians will decide to teach the C Major scale and see what the bell curve is on that.
The important thing here is that the music is not in the piano. And knowledge and edification is not in the computer. The computer is simply an instrument whose music is ideas.
Educators have to face up to what 21st-century education needs to be about, and start thinking about solving that problem long before they bring the computer on the scene.

Virtually all learning difficulties that children face are caused by adults' inability to set up reasonable environments for them. The biggest barrier to improving education for children, with or without computers, is the completely impoverished imaginations of most adults.


Liane : Alan Kay, Computers, Networks and Education, Scientific American, septembre 1991.

samedi 29 avril 2006

Les idées puissantes

Quelques messages sur la liste Educ de l'AFUL ont récemment attiré mon attention. Il y était question de Squeak, langage de programmation dont un collègue de la commission scolaire des Portages de l'Outaouais m'avait déjà vanté les mérites.
En suivant les liens donnés dans ces messages - voir les lianes -, j'ai découvert un univers de possibilités pédagogiques.
Commencez d'abord par lire l'article de Hilaire Fernandes, Stéphane Ducasse, paru dans Linux Pratique 28, Mars-Avril 2005. Installez ensuite ce logiciel qui, soit dit en passant, est open source et fonctionne aussi bien sous Windows, Mac que Linux ! Puis, munissez-vous de l'excellent document Des idées puissante dans la classe de B.J. Allen-Conn et Kim Rose et... laissez aller votre imagination.
J'envisage maintenant très sérieusement transformer mes esquisses Cybergéomètre dans ce système de programmation. Je vais aussi me mettre en quête d'un ou deux enseignants du primaire qui seraient prêts à expérimenter la chose dans leurs classes.

Lianes :
Squeakland.org
Squeak, un environnement multimédia (Michèle Drechsler)
Art et squeak

< 1 2 3 4