Apprendre la programmation à un enfant/ado

a marqué ce sujet comme résolu.

De toutes manières c'est ce qu'il va faire parce que j'habite pas à côté et c'est quelqu'un d'autodictate(en même temps si tu l'es pas c'est déjà mal barré) mais je trouvais important de l'aiguiller au départ et ne pas le lâcher dans la jungle des centaines de langages et des millier de ressources disponibles. En fait le truc le plus important(pour moi) c'est la ressource/Doc sur laquelle tu vas bosser qui joue sur ton envie d'apprendre.

+0 -0

Le fait d'apprendre à cet âge là, c'est simuler la résolution à un problème (mathématiques par exemple) fait par ses mains, informatiquement.

Python est bien pour cela, mais d'autres sont possibles… Par contre le langage web, je ne vois pas l'intérêt pédagogique, en tout cas pour le jeune homme concerné dans ce topic.

L'avantage d'un langage de script est qu'avec un interpréteur, on peut tester une ou plusieurs lignes de code et avoir le résultat immédiatement. C'est très pédagogique et donc rapidement à portée de l'enfant.

Je suis pas du tout fan de le faire débuter par des technos web. S'il y a un domaine où on peut apprendre mal et à moitié une tonne de trucs qui seront obsolètes 2 mois plus tard, c'est bien celui-là.

Après évidemment ça dépendra de lui et de ses choix…

Perso c'est ce que j'ai fait avec mon neveu, en le pointant vers Python et Linux et en lui donnant un de mes raspberry pi pour qu'il bidouille dessus.

S'il y a un conseil que je peux te donner auquel on ne pense pas forcément au début, c'est de le suivre et l'aiguiller dans la durée pour éviter qu'il ne se disperse trop vite vers des trucs annexes qui n'ont aucune importance.

+9 -0

Je lui ai installé python avec les raccourcis tout prêt dans un coin vers le shell, un IDE(brackets, pas orienté python du tout mais je ne connais que pycharm et j'ai pas envie de lui donner une usine à gaz), vers ZdS, openclassroom et codecademy.

Je lui ai dit d'attaquer python sur codecademy pour commencer. Excellent conseil ton dernier paragraphe, je vais essayer de le suivre pour pas qu'il se paume dans les méandres d'Internet. De toutes manières je lui ai dit de me contacter en cas de bloquage et de ne pas hésiter à poser la question ici.

Personnellement, lire des ressources en ligne m'ennuie assez rapidement, et j'ai beau lire le tutoriel plusieurs fois, je ne retiens pas grand chose.

Tout d'abord, demande lui de définir précisément ce que tu voudrais faire. Un logiciel qui résout un certain type de problèmes en maths à sa place ? Qui lui fait réviser son vocabulaire ? Pour moi, coder vient en pratiquant et non en lisant tous les bouquins qu'on peut lire.

Je lui conseillerais de commencer à apprendre les bases du langage (variables, conditions, boucles, fonctions lui sembleront peut-être ici abstraites mais ce n'est pas bien compliqué). Ces bases équivalent en général à la première partie des cours qu'on peut trouver sur Internet. Une fois qu'il connaitra bien ces bases, dis lui de commencer son projet pour coder "sur le tas" : lorsqu'il rencontrera une problématique, il recherchera (si possible en anglais) la solution sur Google. Il mémorisera le langage beaucoup plus facilement qu'en lisant un livre. Et des sites comme StackOverflow lui deviendront rapidement très familiers.

Une fois que le langage l'intéresse, il voudra certainement devenir meilleur dans le domaine. C'est là et seulement là que je lui conseille de lire les tutoriels en entier où de rechercher les « bonnes pratiques » du langage.


Pour langage pour commencer, je te conseille le Python qui est assez simple. Pour apprendre ses bases, un site comme Codecademy (en français) apprend le langage par l'exemple, ce qui est beaucoup plus amusant.
J'aime aussi beaucoup le Ruby. On peut apprendre sur RubyMonk, par l'exemple, toujours. (par contre, c'est en anglais)

Et puis si il veut changer de langage plus tard, ses précédentes connaissances lui serviront forcément.

Edit : J'avais mal lu le message de l'OP. Je croyais que c'était l'intéressé de 12 ans qui parlait.
Mais donc, est-ce que ça l'intéresse vraiment de coder ? Est-ce qu'il en a réellement envie ? Forcer quelqu'un à le faire alors qu'il n'en a pas envie n'a aucun intérêt. C'est beaucoup mieux lorsque ça part d'une initiative personnelle.

+1 -0

Ouaip ça l'intéresse, pour le moment je lui ai filé deux trois liens(ZdS, OCR, Codingame, Codecademy).

Je lui ai juste installé python avec un raccourci du shell sur le bureau, je lui ai conseillé d'attaquer python sur Codecademy et de ne pas hésiter à lancer le shell python pour faire des test dessus, essayer des trucs.

Je ne le force pas, je lui file juste des bases pour attaquer et s'éclater. On verra bien ce que ça donne. Après si ça avance pas c'est qu'il s'en fout et c'est pas bien grave.

Mais autant lui épargner la démarche "trouver des cours sur tel langage" pour finalement passer des heures à trouver des tuto à la pédagogie discutable et tomber sur des débats trollesque en mode "concours de celui qui pisse le plus loin" à coup de comparatif de langage de script, tout ça pour finir par tomber sur un type qui va lui dire de commencer par du C/C++.

On est influençable à cet-âge là, alors autant le faire de la meilleure manière. ^^

+1 -0

Les trucs un peu trop formels comme france ioi ne me paraissent pas hyper adaptés pour un jeune qui va plus vouloir des trucs funs.

Python ça peut être pas mal (dixit quelqu'un qui n'aime pas ce langage). Mais aussi des choses comme http://leekwars.com/ peuvent être intéressantes. Cela va donner un avant gout de la programmation, et surtout un gout à vouloir automatiser des trucs funs. Je sais qu'il existe des projets similaires qui font apprendre le javascript (je n'ai pas testé).

EDIT: L'objectif n'est pas forcément les bonnes pratiques, juste le gout du développement. A son age, j'ai commencé par un des trucs les plus critiqué : (GW)BASIC(A). J'ai copié des pages de codes de tilt ou tracé des courbes. Ca m'amusait. Depuis, j'ai eu le temps d'acquérir de la rigueur dans des choses bien différentes.

J'ai 13 ans, c'est assez personnel mais coder pour coder est assez ennuyeux. C'est pour ça que je privilégierais la méthode "sur le tas", en faisant des projets petits mais concrets, ayant une réelle utilité (comme la révision de vocabulaire ou la résolution de problèmes mathématiques encore une fois). Après, à voir si ça lui convient.

Les sites à la « Leek Wars » sont pas mal aussi, mais je ne sais pas si ça donne envie de passer à un « vrai » langage.

Edit : ah oui, et dis lui d'éviter de travailler sur trop de langages à la fois. Il faudrait plutôt qu'il trouve un bon langage, qui lui plaît et qu'il maîtrise.

+2 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte