python - Les meilleures façons d'apprendre à un débutant à programmer?

Translate

Question originale

Je suis actuellement engagé dans l'enseignement de programme à mon frère. C'est un débutant total, mais très intelligent. (Et il veut vraiment apprendre). J'ai remarqué que certaines de nos sessions se sont enlisées dans des détails mineurs, et je ne me sens pas très organisée. (Mais les réponses à ce post ont beaucoup aidé.)

Que puis-je faire de mieux pour lui apprendre efficacement? Y a-t-il un ordre logique que je peux utiliser pour parcourir concept par concept? Y a-t-il des complexités que je devrais éviter plus tard?

La langue avec laquelle nous travaillons estPython, mais des conseils dans n'importe quelle langue sont les bienvenus.


Comment aider

Si vous en avez de bons, veuillez ajouter ce qui suit dans votre réponse:

  • Exercices pour débutants et idées de projets
  • Ressources pour enseigner aux débutants
  • Screencasts / articles de blog / livres électroniques gratuits
  • Imprimez des livres qui conviennent aux débutants

Veuillez décrire la ressourceavec un lien vers celui-cipour que je puisse jeter un oeil. Je veux que tout le monde sache que j'ai définitivement utilisé certaines de ces idées. Vos soumissions seront regroupées dans cet article.


Ressources en lignepour l'enseignement aux débutants:


Livres imprimés recommandéspour enseigner aux débutants

This question and all comments follow the "Attribution Required."

Toutes les réponses

Translate

J'ai dû travailler avec plusieurs programmeurs débutants (qui n'ont jamais écrit une ligne de code), et je vais faire un atelier après l'école avec des élèves du secondaire cet automne. C'est ce qui se rapproche le plus de la documentation. C'est toujours un travail en cours, mais j'espère que cela aide.

1)FizzBuzz.Commencez avec des programmes de ligne de commande. Vous pouvez écrire des jeux ou des outils amusants très rapidement, et vous apprendrez toutes les fonctionnalités du langage très rapidement sans avoir à apprendre d'abord les outils de l'interface graphique. Ces premières applications doivent être suffisamment simples pour que vous n'ayez pas besoin d'utiliser de véritables outils de débogage pour les faire fonctionner.

Si rien d'autre, des choses comme FizzBuzz sont de bons projets. Vos premières applications ne devraient pas avoir à gérer les bases de données, le système de fichiers, la configuration, etc. Ce sont des concepts qui déroutent la plupart des gens, et lorsque vous venez d'apprendre la syntaxe et les fonctionnalités de base du framework, vous n'avez vraiment pas besoin de plus de complexité.

Quelques projets:

  • Bonjour le monde!
  • Prenez l'année de ma naissance et calculez mon âge (juste (maintenant - alors) pas de corrections de mois).(mathématiques simples, entrée, sortie)
  • Demandez une direction (haut, bas, gauche, droite), puis dites à l'utilisateur son destin (tomber dans un trou, trouver un gâteau, ect).(Logique booléenne)
  • FizzBuzz, mais comptez une fois par seconde.(Boucles, minuteries et plus de logique)
  • Selon leur âge, certains aiment vraiment une application qui appelle les utilisateurs une insulte aléatoire à un certain intervalle.(Boucles, tableaux, minuteries et aléatoires si vous rendez l'intervalle aléatoire)

2)Projet simpleUne fois qu'ils ont une bonne compréhension des fonctionnalités du langage, vous pouvez démarrer un projet (des jeux simples et amusants fonctionnent bien). Vous devriez essayer de faire en sorte que le premier projet puisse être achevé dans les 6 à 12 heures. Ne passez pas le temps à le concevoir tôt. Laissez-les le concevoir même si ça craint. S'il s'effondre, parlez de ce qui s'est passé et pourquoi il a échoué, puis choisissez un autre sujet et recommencez.

C'est là que vous commencez à présenter les capacités de débogage de vos outils. Même si vous pouvez voir le problème en lisant le code, vous devez leur apprendre à utiliser les outils, puis leur montrer comment vous pouvez le voir. Cela sert le double objectif d'enseigner les outils de débogage et d'apprendre à identifier les erreurs sans outils.

Une fois ou si le projet devient fonctionnel, vous pouvez l'utiliser pour introduire des outils de refactoring. C'est bien si vous pouvez ensuite étendre le projet avec des fonctionnalités simples que vous n'avez jamais prévues. Cela signifie généralement une refactorisation et un débogage important, car très peu de gens écrivent même du code à moitié décent la première fois.

Quelques projets:

  • Jeu du pendu
  • Expérimenter la robotique (VexeretMindstormssont des options)

3)Projet réelDémarrez un vrai projet qui peut prendre un certain temps. Utilisez un contrôle de source approprié et assurez-vous d'avoir un calendrier. Exécutez ce projet comme un vrai projet, si rien d'autre sa bonne expérience d'avoir à gérer les outils.

De toute évidence, vous devez ajuster cela pour chaque personne. La chose la plus importante que j'ai trouvée est de faire en sorte que même les premières applications simples s'appliquent à ce qui intéresse la personne.

Quelques projets:

  • Tetris
  • Moteur de blog basé sur un fichier texte
  • Travail de robotique plus avancé
La source
Translate

Vous pouvez essayer d'utiliserAlice. C'est un programme 3D conçu pour être utilisé dans les cours d'introduction à la programmation.

Les deux plus grands obstacles pour les nouveaux programmeurs sont souvent:

  • erreurs de syntaxe
  • motivation (écrire quelque chose de significatif et amusant plutôt que artificiel)

Alice utilise une interface glisser-déposer pour construire des programmes, évitant ainsi la possibilité d'erreurs de syntaxe. Alice vous permet de construire des mondes 3D et d'avoir votre code de contrôle (simples) des personnages et de l'animation 3D, ce qui est généralement beaucoup plus intéressant que l'implémentation de listes liées.

Les programmeurs expérimentés peuvent considérer Alice comme un jouet et se moquer du glisser-déposer de lignes de code, maisrecherchemontre que cette approche fonctionne.

Disclaimer: j'ai travaillé sur Alice.

La source
Translate

Je recommande Logo (alias la tortue) pour comprendre les concepts de base. Il fournit un bon bac à sable avec des commentaires graphiques immédiats, et vous pouvez démontrer des boucles, des variables, des fonctions, des conditions, etc.Cette pagefournit un excellent tutoriel.

Après Logo, passez à Python ou Ruby. Je recommande Python, car il est basé sur ABC, qui a été inventé dans le but d'enseigner la programmation.

Lorsque j'enseigne la programmation, je dois appuyer la suggestion d'EHaskins de projets simples puis de projets complexes. La meilleure façon d'apprendre est de commencer par un résultat précis et un jalon mesurable. Il maintient les leçons ciblées, permet à l'élève de développer ses compétences, puis de s'appuyer sur ces compétences, et donne à l'élève quelque chose à montrer à ses amis. Ne sous-estimez pas le pouvoir d'avoir quelque chose à montrer pour son travail.

Théoriquement, vous pouvez vous en tenir à Python, car Python peut faire presque tout. C'est un bon véhicule pour enseigner la programmation orientée objet et (la plupart) des algorithmes. Vous pouvez exécuter Python en mode interactif comme une ligne de commande pour avoir une idée de son fonctionnement, ou exécuter des scripts entiers à la fois. Vous pouvez exécuter vos scripts interprétés à la volée ou les compiler en binaires. Il existe des milliers de modules pour étendre les fonctionnalités. Vous pouvez créer une calculatrice graphique comme celle fournie avec Windows, ou vous pouvez créer un client IRC, ou autre chose.

XKCDdécrit un peu mieux la puissance de Python:"You're flying! How?" "Python!"

Vous pouvez passer à C # ou Java après cela, bien qu'ils n'offrent pas grand-chose que Python n'a pas déjà. L'avantage de ceux-ci est qu'ils utilisent une syntaxe de style C, que de nombreux langages (oserais-je dire la plupart?) Utilisent. Vous n'avez pas encore à vous soucier de la gestion de la mémoire, mais vous pouvez vous habituer à avoir un peu plus de liberté et moins de prise en main de l'interprète de langue. Python applique les espaces et l'indentation, ce qui est bien la plupart du temps mais pas toujours. C # et Java vous permettent de gérer votre propre espace tout en restant fortement typé.

À partir de là, le standard est C ou C ++. La liberté dans ces langues est presque existentielle. Vous êtes désormais en charge de votre propre gestion de la mémoire. Il n'y a pas de garbage collection pour vous aider. C'est là que vous enseignez les algorithmes vraiment avancés (comme le tri par fusion et le tri rapide). C'est là que vous apprenez pourquoi «faute de segmentation» est un mot maudit. C'est ici que vous téléchargez le code source du noyau Linux et regardez dans les Abysses. Commencez par écrire un tampon circulaire et une pile pour la manipulation des chaînes. Ensuite, progressez.

La source
Translate

Un bon cours de python est celui du MITUne introduction douce à la programmation avec Python. Tout est gratuit en ligne et vous n'avez pas besoin d'être un étudiant du MIT pour le comprendre.

Éditer [Justin Standard]

Ce cours utilise ce livre en ligne gratuit:Comment penser comme un informaticien
Je trouve cela vraiment très utile.

La source
Tobey Lee
Translate

Paquet PythonVPython- Programmation 3D pour les mortels ordinaires (didacticiel vidéo).

Exemple de code:

from visual import *

floor = box (pos=(0,0,0), length=4, height=0.5, width=4, color=color.blue)
ball = sphere (pos=(0,4,0), radius=1, color=color.red)
ball.velocity = vector(0,-1,0)
dt = 0.01

while 1:
    rate (100)
    ball.pos = ball.pos + ball.velocity*dt
    if ball.y < ball.radius:
        ball.velocity.y = -ball.velocity.y
    else:
        ball.velocity.y = ball.velocity.y - 9.8*dt

Balle rebondissante VPython http://vpython.org/bounce.gif

La source
Channing Lee
Translate

Commencez par les graphiques Turtle en Python.

J'utiliserais les graphiques de tortues fournis en standard avec Python. C'est visuel, simple et vous pouvez utiliser cet environnement pour introduire de nombreux concepts de programmation tels que les itérations et les appels de procédure avant d'aller trop loin dans la syntaxe. Considérez la session interactive suivante en python:

>>> from turtle import *
>>> setup()
>>> title("turtle test")
>>> clear()
>>>
>>> #DRAW A SQUARE
>>> down()        #pen down
>>> forward(50)   #move forward 50 units
>>> right(90)     #turn right 90 degrees
>>> forward(50)
>>> right(90)
>>> forward(50)
>>> right(90)
>>> forward(50)
>>>
>>> #INTRODUCE ITERATION TO SIMPLIFY SQUARE CODE
>>> clear()
>>> for i in range(4):
        forward(50)
        right(90)
>>>
>>> #INTRODUCE PROCEDURES   
>>> def square(length):
        down()
        for i in range(4):
            forward(length)
            right(90)
>>>
>>> #HAVE STUDENTS PREDICT WHAT THIS WILL DRAW
>>> for i in range(50):
        up()
        left(90)
        forward(25)
        square(i)
>>>
>>> #NOW HAVE THE STUDENTS WRITE CODE TO DRAW
>>> #A SQUARE 'TUNNEL' (I.E. CONCENTRIC SQUARES
>>> #GETTING SMALLER AND SMALLER).
>>>
>>> #AFTER THAT, MAKE THE TUNNEL ROTATE BY HAVING
>>> #EACH SUCCESSIVE SQUARE TILTED

En essayant d'accomplir les deux dernières missions, ils auront de nombreuses tentatives infructueuses, mais les échecs seront visuellement intéressants et ils apprendront rapidement en essayant de comprendre pourquoi cela n'a pas dessiné ce qu'ils attendaient.

La source
Lucy Lee
Translate

L'essentiel est que la personne en question doit avoir un problème qu'elle souhaite résoudre. Si vous n'avez pas de programme que vous voulez écrire (et quelque chose de sensé et bien défini, pas "Je veux écrire le prochain Quake!") Alors vous ne pouvez pas apprendre à programmer, parce que vous n'avez rien pour vous motiver . Je veux dire, vous pouvez lire un livre et avoir une compréhension approximative de la syntaxe et de la sémantique d'un langage, mais jusqu'à ce que vous ayezun programme que vous voulez écrirevous ne saisirez jamais l'ortie.

Si cet élan existe, tout le reste n'est que des détails mineurs.

La source
Translate

Je ne sais pas si quelqu'un en a encore parlé ici, mais vous voudrez peut-être vérifierZed ShawdeApprenez Python à la dure

J'espère que cela t'aides

La source
Agatha Lee
Translate

http://tryruby.hobix.com/"> Essayez Ruby (dans votre navigateur)

La source
Cathy Lee
Translate

C'est un livre fantastique que mes petits frères ont appris:

http://pine.fm/LearnToProgram/

Bien sûr, le plus important est de commencer sur un programme réel et utile de quelque sorte IMMÉDIATEMENT après avoir terminé le livre.

La source
Glenn Lee
Translate

S'il est intéressé, les petits détails ne sont-ils pas les bonnes parties? En utilisant python, vous avez déjà coupé l'interface graphique pour que la confusion disparaisse. Pourquoi ne pas choisir un projet, un jeu ou quelque chose et le mettre en œuvre. Le jeu classique de devinettes de nombres hi-lo peut être simplement implémenté à partir de la ligne de commande en 20-30 lignes de code (selon la langue bien sûr) et vous donne des variables, des conditions, des boucles et des entrées utilisateur.

La source
Translate

Je le laisserais juste écrire des tonnes de code. Laissez-le conduire dans tout ce que vous faites, et soyez simplement disponible pour répondre aux questions.

Croyez-le ou non, après quelques mois d'écriture de tonnes de code merdique, il commencera à se faire une idée et à écrire de meilleurs programmes. À ce stade, vous pouvez vous enliser dans les détails (mémoire, etc.) et également parler des principes généraux de conception.

J'ai entendu dire que ce qui distingue les grands artistes des médiocres, c'est qu'à chaque fois qu'ils pratiquent, ils améliorent quelque chose, aussi petit soit-il. Laissez votre frère s'entraîner et il s'améliorera à chaque fois qu'il s'assiéra au clavier.

Edit: [Justin Standard]

Esteban, cela me rappelle un récentcode d'horreur, et moidopense que tu as raison. Mais je pense qu'il vaut toujours la peine de trouver des méthodes pourguidersa pratique. Pas de question, je veux qu'il écrive autant de code qu'il sait faire. C'est une des raisons pour lesquelles je demande des exemples de projets.

La source
Elsa Lee
Translate

Tout d'abord, commencez comme tout le monde: avec unBonjour le mondeprogramme. C'est simple et cela leur donne une idée de base de la mise en page d'un programme. Essayez de vous souvenir du moment où vous avez programmé pour la première fois et de la difficulté de certains concepts - commencez simplement.

Après Hello World, passez à la création de certaines variables de base, de l'arithmétique, puis de la logique booléenne et des instructions if / else. Si vous avez l'un de vos anciens manuels de programmation, consultez quelques-uns des premiers exemples et demandez-lui de les parcourir. N'essayez pas d'en introduire trop d'un seul coup, sinon ce sera accablant et déroutant.

La source
Samantha Lee
Translate

Une chose à laquelle vous devriez être très attentif lorsque vous apprenez à votre frère à programmer est qu'il ne compte pas trop sur vous. Souvent, lorsque je me surprends à aider les autres, ils commencent à me considérer comme un livre de réponses à toutes leurs questions et au lieu d'expérimenter pour trouver une réponse, ils me demandent simplement. Souvent, le meilleur professeur est l'expérimentation et chaque fois que votre frère a une question comme "Que se passera-t-il si j'ajoute 2 à une chaîne?" vous devriez lui dire de l'essayer et de voir par lui-même. J'ai également remarqué que lorsque je ne peux pas faire passer un concept à quelqu'un, il est utile de voir un exemple de code où nous pouvons regarder chaque segment individuellement et l'expliquer morceau par morceau. En passant, les novices en programmation ont souvent du mal avec l'idée de la programmation orientée objet, ils diront qu'ils la comprennent lorsque vous leur apprenez mais n'en obtiendront pas un concept clair avant de la mettre en œuvre.

La source
Translate

J'enseignais la programmation et votre frère a un avantage majeur sur la plupart de mes étudiants qu'il veut apprendre :)

Si vous décidez d'aller avec Cun ami a un sitequi a le genre de programmes que ceux utilisés par les générations plus anciennes se souviennent comme des saisies de base. Les plus complexes d'entre eux utilisent des ncurses, ce qui annule quelque peu leur utilisation comme aide pédagogique, mais certains d'entre eux sont de minuscules petites choses et vous pouvez en apprendre beaucoup sans être enseigné.

Personnellement, je pense que Python et Ruby feraient d'excellents premiers langages.

ÉDITER:liste des affectations de programmation pour débutantsapparu du jour au lendemain pourrait être exactement ce que vous recherchez.

La source
Franklin Lee
Translate

Cela dépend vraiment du style d'apprentissage de votre frère. Beaucoup de gens apprennent plus rapidement en se salissant les mains et en y entrant, cristallisant les concepts et la vue d'ensemble au fur et à mesure qu'ils progressent et développent leurs connaissances.

Moi, je préfère commencer par une vue d'ensemble et approfondir les choses. La première chose que je voulais savoir était de savoir comment tout cela s'emboîtait, puis tout ce gobbledygook orienté objet, puis sur les classes et les instances, etc. J'aime connaître les concepts sous-jacents et un peu de théorie avant d'apprendre la syntaxe. J'avais un petit avantage car j'ai écrit des jeux en BASIC il y a 20 ans, mais plus rien depuis.

Peut-être est-il utile d'observer un processus de production en commençant par un énoncé de mission global, puis un plan et / ou un organigramme, puis élaborer un pseudo-code (en s'appuyant sur la syntaxe que vous utiliserez finalement) avant d'écrire le code.

La règle d'or ici est de déterminer le style d'inclinaison de votre élève.

La source
Kenneth Lee
Translate

Si votre frère a accès à iTunes, il peut télécharger des conférences vidéo d'un cours d'introduction à l'informatique donné par Richard Buckland à l'Université de New South Wales. C'est un instructeur engageant et couvre les fondamentaux de l'informatique et du langage C. Si rien d'autre, dites à votre frère de jouer les vidéos en arrière-plan et certains concepts pourraient pénétrer par osmose. :)

COMP1917 Informatique supérieure - 2008 Session 1 http://deimos3.apple.com/WebObjects/Core.woa/Browse/unsw.edu.au.1504975442.01504975444

Si le lien ne fonctionne pas, voici un chemin:

Accueil -> iTunes U -> Ingénierie -> COMP1917 Higher Computing - 2008 Session 1

La source
Victoria Lee
Translate

il y a unwikibook qui est assez bon pour apprendre python.

Je ne sais pas comment sont les wikibooks pour d'autres langues, mais j'ai personnellement appris le python à partir du wikibook tel qu'il était en février 2007

ps - si vous ne connaissez paswikibooks, c'est essentiellement la version wikipedia de la création de livres. c'est un peu difficile à décrire, mais si vous consultez quelques-uns des livres là-dessus, vous verrez comment cela fonctionne

La source
Translate

Je pense que Python est une excellente idée. Je lui donnerais quelques missions de base à faire par lui-même et lui dirais que toute impasse qu'il rencontre peut probablement être résolue par un voyage sur Google. Pour moi, au moins, résoudre un problème par moi-même l'a toujours fait mieux que quelqu'un me disant la solution.

Quelques projets possibles (sans ordre particulier):

  • Simulateur de flip de pièces. Laissez l'utilisateur saisir le nombre d'essais souhaité pour le retournement de pièces. Exécutez-le et affichez les résultats avec le pourcentage de têtes ou de queues.

  • Créez un convertisseur de température avec un menu qui prend en compte l'entrée de l'utilisateur pour choisir le type de conversion que l'utilisateur souhaite effectuer. Après avoir choisi la conversion et l'avoir fait, il devrait revenir au menu principal.

    Voici un exemple de convertisseur étendu avec la même idée:http://pastebin.org/6541

  • Créez un programme qui prend une entrée numérique et affiche la note de lettre à laquelle il se traduirait. Il finira par évaluer l'entrée par rapport aux instructions if et elif pour trouver sa place.

  • Faites un quiz simple qui passe par plusieurs choix multiples ou remplissez les questions vides. À la fin, il affichera comment l'utilisateur a fait. Il peut choisir toutes les questions qu'il veut.

  • Prenez une entrée d'un certain nombre (vraisemblablement grand) de centimes et convertissez-le en dénominations plus grandes. Par exemple, 149 centimes = 1 dollar, 1 quart, 2 centimes et 4 centimes.

  • Créez un simple gestionnaire de liste. Être capable d'ajouter / supprimer des listes et d'ajouter / supprimer des entrées dans ces listes. Voici un exemple de gestionnaire de liste de Noël:http://pastebin.org/6543

  • Créez un programme qui construira puis testera si les nombres saisis forment un carré magique (avec un tableau 2D). Voici un exemple de code, mais il devrait vraiment imprimer le carré à chaque étape afin de montrer où se trouve l'utilisateur en termes de construction du carré:http://pastebin.org/6544

Je suggérerais également de faire des trucs avec xTurtle ou un autre module graphique pour mélanger les choses et l'empêcher de devenir ennuyeux. Bien sûr, il s'agit d'une programmation très pratique et non du script pour lequel beaucoup de gens utiliseraient vraiment python, mais les exemples que j'ai donnés sont assez directement tirés du moment où j'apprenais via python et cela a très bien fonctionné pour moi. Bonne chance!

La source
Colby Lee
Translate

Rendez-le simplement amusant!

Étonnamment, Scala pourrait être le plus simple si vous essayezKojo

La source
Eunice Lee
Translate

Si votre frère aime les puzzles, je recommanderaisDéfi Python. Je ne l'utiliserais pas comme un outil d'enseignement formel dans un tutoriel 1 sur 1, mais c'est quelque chose qu'il peut faire lorsque vous n'êtes pas ensemble pour se mettre au défi et s'amuser.

La source
Burton Lee
Bblythe Lee
Translate

Après avoir parcouru quelques livres électroniques gratuits, j'ai trouvé que le meilleur livre pour apprendre à programmer était Head First Programming publié par O'Reily Press. Il utilise Python comme langage et vous donne des programmes sur lesquels travailler dès le début. Ils sont tous plus intéressants que «Hello World». Cela vaut bien l'argent que j'ai dépensé, et comme il est sorti depuis un moment, vous pourrez peut-être trouver une copie d'occasion moins chère sur Ebay ou Amazon.

La source
Enid Lee
Translate

Si vous souhaitez enseigner les bases de la programmation, sans être spécifique au langage, il existe une application appeléeRayurequi a été créé au MIT. Il est conçu pour aider les gens à développer des compétences en programmation. Au fur et à mesure que les utilisateurs créent des projets Scratch, ils apprennent à créer des conditions, des boucles, etc. Il existe également une communauté de projets scratch, à partir de quels projets peuvent être téléchargés - de cette façon, vous pouvez explorer les programmes d'autres personnes et voir comment ils ont été construits.

La source
Yale Lee
Translate

Je pense qu'une fois qu'il a les bases (variables, boucles, etc.), vous devriez essayer de l'aider à trouver quelque chose de spécifique qui l'intéresse et l'aider à apprendre les nécessités pour y arriver. Je sais que je suis beaucoup plus enclin et motivé à faire quelque chose si cela m'intéresse. Aussi, assurez-vous de le laisser lutter contre certains des problèmes les plus difficiles, rien n'est plus satisfaisant que le moment où vous le résolvez par vous-même.

La source
Everley Lee
Translate

J'ai appris en apprenant à résoudre des problèmes d'une manière indépendante de la langue en utilisant des organigrammes etPDL(Langage de conception de programme). Après quelques semaines, j'ai appris à convertir le PDL que j'avais écrit dans une langue. Je suis heureux d'avoir appris de cette façon parce que j'ai passé la majorité de mes années à programmer, à résoudre des problèmes sans être lié à une langue. Le langage que j'utilise a toujours été un détail de mise en œuvre et ne fait pas partie de la conception.

Devoir résoudre le problème en le décomposant en ses étapes de base est une compétence clé. Je pense que c'est l'une des choses qui sépare ceux qui peuvent programmer de ceux qui ne le peuvent pas.

En ce qui concerne la façon dont vous abordez l'ordre des concepts d'une langue, je pense que le moyen le plus simple est de décider que c'est d'avoir un projet en tête et d'aborder les concepts au fur et à mesure qu'ils sont nécessaires. Cela vous permet de les appliquer au fur et à mesure de vos besoins sur quelque chose qui vous intéresse. Lors de l'apprentissage d'une langue, il est bon d'avoir plusieurs projets simples en tête et quelques-uns avec une complexité progressive. Le choix de ceux-ci vous aidera à définir les concepts nécessaires et leur ordre.

La source
Cecilia Lee
Translate

Je recommanderais également de regarder certains screencasts - ils sont généralement créés dans le contexte d'une technologie spécifique et non d'un langage, bien que s'il y a du code Python affiché, cela fera l'affaire :). Le fait est qu'ils sont créés par de bons programmeurs et regarder à quel point un bon programme de programmeurs est une bonne chose. Vous et votre frère pourriez également faire de la programmation par les pairs, ce serait peut-être une meilleure idée. N'oubliez pas d'expliquer POURQUOI vous faites quelque chose de cette façon et non de cette façon. Je pense que la meilleure façon d'apprendre la programmation est à partir de bons exemples et d'essayer de ne même pas voir les mauvais.

La source
Duncan Lee
Translate

Robert Read a écrit un guide utile,Comment être programmeur, qui couvre un large domaine de problèmes de programmation qu'un débutant trouverait utile.

La source