Mon père est impatient de suivre le rythme de mon apprentissage. Que fais-je? [fermé]

200

Mon père m'a donc acheté 5 livres de programmation (C ++, Java, PHP, Javascript, Android) il y a environ un mois. C'est un architecte et il ne sait rien en programmation. Il les a achetés parce que je lui ai dit que la programmation était amusante et que je voulais l'apprendre.

Comme vous le savez peut-être, être un enfant (j'ai 14 ans) et se voir demander d'apprendre à programmer à partir de livres sombres n'est pas la chose la plus simple. Je suis toujours distraite… Je lui ai déjà dit que je n'avais pas besoin d'acheter de livres et que je pouvais regarder des tutoriels en ligne… mais non, il est tellement désuet. Il me laisse seulement utiliser les livres.

Récemment, il a commencé à me demander ce que je faisais avec, et je lui ai montré un programme C ++ que j'ai créé qui prend ce que vous tapez, puis assigne des valeurs à chaque lettre (A est la première lettre de l'alphabet pour qu'il obtienne la valeur de 1) .. et ainsi de suite. Il additionne ensuite toutes les valeurs et vous le dit. Donc, le mot "ajouter" aurait une valeur de 9.

^^ Ce n'était pas très impressionnant pour lui. Il m'a crié dessus et m'a dit que tout ce que je faisais, c'est foutre en l'air. Ce n'est pas vrai. Il est extrêmement traditionnel et têtu et n'écoute rien de ce que j'ai à dire. Que devrais-je lui dire?

PS: Si vous avez des conseils sur le zonage d’un livre, faites-le moi savoir.

EDIT: Merci beaucoup à tous, vous ne savez pas à quel point il est important de savoir que certaines personnes comprennent ma situation. J'ai lu tout le monde et je considérerai l'opinion de tout le monde. ¡Gracias!

David
la source
15
Commentaires: les commentaires servent à demander des éclaircissements et non à prolonger la discussion. Si vous avez une solution, laissez une réponse. Si votre solution est déjà publiée, veuillez la revérifier. Si vous souhaitez discuter de cette question avec d'autres personnes, utilisez le chat . Voir la FAQ pour plus d'informations.
7
Au fait, vous devriez lui montrer ce fil. Cela ira peut-être plus loin s'il voit l'avis du programmeur professionnel sur vos progrès.
Collectionneur
15
@ David Ce n'est pas traditionnel, c'est un parent affreux et une personne égoïste. À ce stade, il ne veut pas que vous réussissiez, ou il serait dans la fosse avec vous. Il veut vraiment juste être le père d'un enfant qui a réussi. Malheureusement, vous ne pouvez rien faire à ce sujet, puisque c'est votre père et que vous ne pouvez pas manquer de respect. Ce que je dirais, c’est une grimace et le supporter, puis, quand il sera temps pour les étudiants de premier cycle, choisissez une ligue de lierre très loin.
Lee Louviere
15
Je ne suis pas surpris que cela ait été fermé (c'est hors sujet), mais c'est l'une de ces questions pour lesquelles j'aimerais que nous ayons une balise / un drapeau pour "hors sujet, mais continuez quand même". :)
Cyclope
12
Demandez à votre père ce qu'il faisait quand il avait 14 ans
CodeART

Réponses:

197

Je lui ai montré un programme C ++ que j'ai créé qui prend ce que vous tapez, puis assigne des valeurs à chaque lettre (A est la première lettre de l'alphabet et prend donc la valeur 1) .. et ainsi de suite. Il additionne ensuite toutes les valeurs et vous le dit. Donc, le mot "ajouter" aurait une valeur de 9.

Je ne sais pas ce que tu devrais faire avec ton père. Mais:

Si vous faites cela tout seul, en partant de zéro, en apprenant avec des livres, en un mois , c'est sacrément impressionnant. Et vous l'avez fait en C ++, l'un des langages de programmation les plus effrayants qui soient.

Il y a pas mal de gens qui passent des entretiens, essayent sérieusement de trouver des emplois en programmation, qui auraient du mal à le faire. Voir cette histoire.

Je ne peux que suggérer: continuez de faire ce que vous aimez. Ignore ton père dans ce contexte; il ne sait pas de quoi il parle. Vous avez du talent en programmation et une volonté d'apprendre - les ingrédients essentiels pour devenir un grand programmeur.

Joonas Pulakka
la source
8
Oui, j'ai appris de manière ambitieuse (ce programme m'a donné environ 60 maux de tête).
David
8
@ David: étant donné qu'il est architecte, il est compréhensible qu'il se soucie de son apparence . Mais s'il ne sait rien de la programmation, alors il ne devrait pas la critiquer. Les graphismes, l'apparence des logiciels ne sont que le sommet de l'iceberg .
Joonas Pulakka
12
Sérieusement? "Fatbooth" a quelques algorithmes de manipulation graphique poilus qu'il faut des années pour apprendre et maîtriser. Si votre père veut que vous maîtrisiez la reconnaissance faciale, il aurait dû acheter un livre à ce sujet. Cela peut sembler facile (car il est facile à utiliser), mais il est plus difficile à réaliser que vous ne le pensez, vous donnant plusieurs années de maux de tête combinés. Supposer que des applications telles que "Fatbooth" est facile à réaliser est une insulte grave (mais secrète) aux programmeurs.
Spoike
121
+1 pour sacrément impressionnant . C’est le cas, en particulier compte tenu de votre origine. Je suppose que vous pourriez demander à votre père combien de bâtiments il a même été impliqué, et encore moins travaillé seul, un mois après avoir commencé à zéro en apprenant son métier. Mettez les choses dans des termes qu'il peut comprendre.
un CVn
13
@Joonas: Sans oublier que la conception graphique, la convivialité et la conception d'interface sont toutes des disciplines qui ont généralement peu à voir avec la programmation .
Toby
88

Montrez-lui ce message par Peter Norvig. Norvig est responsable de la R & D chez Google et enseigne à Stanford, plus précisément de l'intelligence artificielle. Il a écrit le livre d'introduction standard sur l'IA. Depuis combien de temps y travaillez-vous? Je ne m'attendais à rien de plus après un mois de travail d'un novice sans instruction supplémentaire, particulièrement avec quelque chose d'aussi épineux que C ++. Tout ce qui vaut la peine d'être appris vaut la peine d'être appris.

2 tours
la source
83
  1. N'oubliez pas que votre père pense probablement que vous êtes le gamin le plus intelligent du monde et il essaie de vous aider à en apprendre davantage sur quelque chose que vous avez dit aimer.

  2. Sachez que même si votre père a indéniablement tort (cinq sujets complètement différents, c'est beaucoup à jeter à un enfant tout à la fois), il a aussi un peu raison. Beaucoup de gens essaient de se lancer dans la programmation en imitant des "tutoriels" trouvés sur le Web. Ce n’est pas toujours une mauvaise chose, mais à notre connaissance, cela ne mène généralement pas à une compréhension solide. Le bon livre vous apprendra d'abord les principes fondamentaux. Ce n'est peut-être pas aussi amusant que de suivre des didacticiels qui font bouger les choses, mais vos chances de succès à long terme augmenteront considérablement, et le nombre de questions que vous devrez poser sur stackoverflow.com diminuera considérablement.

  3. Oubliez tous les livres sauf un, du moins pour le moment. On dirait que vous avez déjà commencé avec le C ++, alors allez-y si vous l'aimez.

  4. Vous allez vous sentir découragé de temps en temps. Parfois, on a l'impression que la moitié de la programmation est bloquée et que l'autre moitié se décolle. Se décoller est une compétence précieuse, et plus vous la pratiquez, meilleur vous serez. (Éviter de se coincer en premier lieu est également une compétence précieuse, pratiquez-le aussi.)

  5. L’apprentissage de votre premier langage informatique permet au développement de logiciels d’appréhender l’apprentissage du dessin d’un bâtiment. Ce n'est peut-être pas la partie la plus intéressante, mais c'est une compétence requise.

  6. Si vous pouvez le faire écouter, essayez de décomposer tout ce que vous avez dû apprendre pour écrire votre petit programme. Il faut un certain temps pour apprendre à utiliser les outils et il ne comprend certainement pas comment tout cela fonctionne.

  7. Maintenant que vous êtes sur le point d'avoir un programme simple et que vous avez apparemment appris un peu le C ++, quels petits programmes intéressants pouvez-vous écrire? Que diriez-vous d’une calculatrice de prêt qui accepte un taux d’intérêt, un montant et une durée de prêt et qui imprime un calendrier de paiement? Ou une calculatrice qui lit une formule moléculaire telle que "H2SO4" ou "C6H12O6" et affiche le poids de la molécule? Ce n'est pas beaucoup plus compliqué que le programme que vous avez déjà écrit.

Caleb
la source
47
+1 "Oubliez tous les livres sauf un"
PA.
9
+1 pour d'excellentes idées pratiques. Lors de l’apprentissage, le plus difficile est souvent de trouver une idée de projet tout en étant submergé par de nouvelles informations.
Morgan Herlocker
5
+1 "Souviens-toi que ton père ..." C'est bien d'avoir le point de vue de son père là-dedans, même s'il étouffe l'enthousiasme de David avec son propre enthousiasme à aider.
John MacIntyre
7
Créez un petit outil de résolution de problèmes d’architecture en faisant participer votre père!
Vaibhav Garg
3
+1 pour le premier point. Je pense qu'il est très important que les parents considèrent leurs enfants comme les plus intelligents du monde. En fin de compte, sans une telle attitude, OP n'aurait pas fait grand chose en un mois, j'en suis sûr. Cependant, cela pourrait être une surcharge si cela donne à l'OP autant de maux de tête.
Anton Strogonoff
53

Il les a achetés parce que je lui ai dit que la programmation était amusante et que je voulais l'apprendre. ... Que devrais-je lui dire?

"Papa, ton approche à ce sujet rend l'apprentissage de la programmation absolument pas amusant . Arrête ça."

Blrfl
la source
4
pas le meilleur conseil. Papa n'aime pas être répondu de cette façon
CyprUS
1
oui mais si OP reste là et le prend, alors papa se sent comme il a raison; son enfant ne travaillait pas très dur après tout. Le gamin doit parler à un moment donné pour que son père réalise à quel point il travaille dur.
Kevin
1
@CyprUS C'est vrai, mais je craque maintenant pour le mot robotique. C'était l'amour de ma vie il y a un an. RobotC était installé dans le kit Lego Mindstorms. J'ai adoré, jusqu'à ce que mon père reçoive des "vrais" engrenages et moteurs et me dise de faire quelque chose de "réel" comme un bras robotique. Déteste la robotique avec passion maintenant.
Chandsie
48

En tant qu'architecte, il doit sûrement vous tirer la jambe ou être grossier.

Demandez-lui s'il a commencé. Demandez-lui s'il dessine des gratte-ciel avec des plans de plomberie détaillés, calcule les forces et les contraintes exercées sur les matériaux et effectue des évaluations des risques de catastrophe (comme un avion avec des serpents) des livres quand il était aussi jeune que toi. Peut-être que ça le calmera.

D'accord, ce n'est peut-être pas le meilleur conseil que je puisse vous donner, de répondre à votre parent. Je peux comprendre qu’avoir un père, qui pénalise le progrès au lieu d’encourager, est un peu pénible en tant qu’enfant, mais prends-le plutôt pour l’encourager à faire mieux. Il a peut-être un problème d’attitude, mais cela ne signifie pas une mauvaise intention.

Spoike
la source
44
Également, un conseil à donner à votre père (même si cela n’entre pas dans le cadre de la question): Abandonnez l’attitude de Gordon Ramsay . Cela ne marche que sur Hell's Kitchen car les prétendants sont des adultes expérimentés, qui doivent savoir cuisiner et faire la perfection dans son restaurant. Gordon donne tout crédit à son compte. Si vous faites cela à un débutant ou à des enfants, cela ne fera que les effrayer d'apprendre la pratique. Il est à noter que Ramsay est plus gentil dans ses autres séries télévisées car ce n’est pas sa propre affaire en jeu.
Spoike
30

Je serais curieux de savoir quels livres vous utilisez. Tous ne sont pas vraiment bons. De plus, tous les livres ne conviennent pas à tout le monde.

Vous n'avez pas précisé votre âge, alors je présume que vous avez bien moins de 18 ans. J'ai commencé à apprendre vers l'âge de 8 ans.

Lorsque j'étais enfant, j'ai utilisé de nombreuses ressources pour apprendre à programmer. J'ai eu les manuels fournis avec ma TI 99 / 4A, qui contenait beaucoup de programmes amusants pour dessiner des images et des figures animées. Je n'avais pas accès à Internet, mais il y avait même des magazines informatiques qui ciblaient les enfants, avec des programmes que je pouvais taper et obtenir un retour immédiat, et des articles sur la façon de résoudre d'autres types de problèmes. J'aimais beaucoup les romans d'espionnage qui me permettaient de saisir et de déboguer des programmes inclus dans l'histoire. Malheureusement, je ne pense pas que ce type de ressource existe encore, mais il existe quelques livres de programmation destinés aux plus jeunes, comme le livre Hello World sur Python et Land of Lisp (bien que ce soit amusant pour les adultes aussi).

Je ne sais pas pour vous, mais il fut un temps où j'ai eu beaucoup de mal à écrire des programmes qui font des choses très similaires à ce que vous venez de décrire. Finalement, je suis passé à des choses plus avancées. J'ai écrit quelques jeux médiocres, des démos jouant divers sons et animations en réaction aux frappes au clavier, ainsi que des aides à l'étude. Vers 10 ou 11 ans, j’ai écrit un programme qui m’a aidé à mémoriser le tableau périodique des éléments en me questionnant à plusieurs reprises. (À ce moment-là, mes capacités de mémorisation étaient meilleures que maintenant, alors j'ai eu presque autant de mal à saisir les données la première fois que de jouer au quiz, mais l'objectif était de progresser).

Votre père ne le réalisera peut-être pas, mais les livres ne sont qu'une partie du processus lorsque vous apprenez à programmer. Trouver un petit problème et essayer de comprendre comment le résoudre est l’autre moitié de l’équation. Trouver un livre qui vous apprend un peu à la fois et vous permet d’obtenir quelque chose d’amusant sur la machine est l’autre moitié. Dans mon cas, ce sont les livres qui ont mis l’accent sur les graphiques et l’animation qui m'ont séduit.

Quand j'étais enfant, je lisais des livres sur les algorithmes de tri et les structures de données complexes, jusqu'à ce que j'en sache suffisamment pour voir comment ils s'appliquaient aux problèmes qui me tenaient vraiment à cœur. Tous les mots des livres que vous allez lire ne seront pas captivants. C'est bon. Vous y arriverez quand vous en aurez besoin; Un problème que vous voudrez résoudre résultera de la technique qui, à votre avis, n’était pas intéressante il ya trois semaines, trois mois ou trois ans. Vous reviendrez en arrière et vous le relèverez.

Un mois n'est pas très long pour apprendre la programmation. J'écris du code sous une forme ou une autre depuis environ 30 ans, y compris pendant mon enfance, et j'apprends toujours quelque chose de nouveau chaque jour. Je suis presque certain qu'au cours du premier mois où j'ai eu mon premier ordinateur, j'ai passé beaucoup de temps à jouer à Munch Man et beaucoup moins d'heures à essayer de donner un sens aux exemples de programmes de mon livre de référence. Apprenez au rythme qui vous convient. Il n'y a pas de pression en ce moment, et c'est génial.

"Foutre en rond" est ce que vous êtes censé faire lorsque vous apprenez à programmer. Les hackers (du genre Paul Graham) fouinent, essayant de comprendre comment leur système fonctionne, comment fonctionne leur langage de programmation, comment fonctionnent leurs outils. Vous essayez quelque chose, vous échouez, vous réfléchissez au problème auquel vous êtes confronté et vous essayez autre chose, jusqu'à ce que quelque chose fonctionne. Ne t'inquiète pas trop pour ça.

À moins que votre père travaille dans les mêmes livres, il ne comprend probablement pas tout ce que vous avez appris jusqu'à présent. Je ne m'attendrais pas à pouvoir concevoir une maison ou un gratte-ciel après avoir lu un livre d'architecture pendant un mois, en particulier à l'adolescence.

Pour mettre les choses en perspective, au cours des quatre dernières semaines, j'ai travaillé dans certains coins ésotériques de la fonctionnalité Engines du cadre Ruby on Rails. À ce jour, j'ai enfin quelque chose à montrer du point de vue de l'utilisateur. J'ai appris énormément à cette époque et développé de nombreux codes de base critiques qui fonctionnent assez bien, mais c'est mon équivalent professionnel qui permet aux utilisateurs de saisir du texte et d'obtenir autre chose: ce n'est pas si impressionnant à première vue qu'un utilisateur occasionnel , mais beaucoup de travail s’y est consacré. Si quelqu'un me disait que je me suis fourvoyé pendant quatre semaines, je serais assez déçu, mais je saurais aussi qu'ils ne comprennent que très peu ce qui est nécessaire pour rendre les choses si simples.

JasonTrue
la source
2
+1 pour couper les dents sur la TI 99 / 4A. À peu près la même histoire pour moi, la programmation était amusante et le fait de commencer à le faire était beaucoup plus accessible (ou peut-être que cela semblait juste comme ça). Ma fille (10 ans) montre un intérêt pour l’apprentissage de la programmation et j’ai le plus de mal à penser à une façon amusante et itérative de la démarrer. Pour le PO, savoir de zéro à un mois et faire ce que vous avez dit semble bien aller dans les RAP.
Ominus
Ominus (et David), jetez un coup d'œil à Processing et à ce livre de Manning: manning.com/pearson
JasonTrue
4
+1 car tous les livres ne sont pas bons. D'après mon expérience, la plupart des livres sont destinés aux personnes qui comprennent déjà la programmation. Il n'y en a pas beaucoup qui s'adressent aux nouveaux arrivants, mais je recommanderais celui-ci et / ou celui-ci .
David
@ David merci pour le lien. Ordonné le livre pour fille ce matin.
Ominus
@Jason: Il a mentionné qu'il était un enfant de 14 ans.
CyprUS
19

On dirait que dans cette situation, votre père n'est pas quelqu'un qui vous donne un renforcement positif et un soutien dans ce que vous faites. Solution simple: ne l'utilisez pas pour cela.

Fais tes propres projets et fais-les parce qu'ils sont amusants, pas parce que lui (ou quelqu'un d'autre) veut que tu les fasses. Choisissez quelque chose d'amusant pour vous. Vous n'avez pas besoin d'apprendre toute la langue / technologie d'un livre. Au lieu de cela, commencez simplement à bricoler des choses. Au fur et à mesure que les choses deviennent faciles, vous allez rechercher de nouveaux concepts / défis. Et vous aurez envie de lire les livres qui vous ennuient aujourd’hui (ou du moins certaines sections).

Si jamais vous êtes bloqué et avez besoin d'aide pour coder quelque chose, stackexchange est une excellente ressource, comme vous l'avez déjà découvert.

DXM
la source
16

Il me semble que votre père a un penchant pour les attentes irréalistes, ou peut-être que vous avez une histoire de commencer des choses et ne pas suivre, ou les deux. La chose importante à prendre en compte est que rien de tout cela n’importe vraiment ici, tout ce qui compte, c’est que vous aimiez ce que vous faites et que vous vous amélioriez.

J'ai des moments très difficiles avec des livres qui ne me divertissent pas, je l'ai toujours fait. J'apprends mieux en regardant d'autres personnes faire des choses, en posant des questions lorsque je ne comprends pas le but de quelque chose, puis en luttant jusqu'à ce que je le découvre. La lutte nous rend plus forts et nous rend propriétaires de nos réalisations, c'est peut-être pourquoi il est si difficile de sortir de l'utérus.

Cela étant dit, l'un des outils les plus pertinents de votre boîte à outils sera la capacité de rester ouvert, de travailler de manière productive malgré les critiques et de ne pas exclure les conseils basés sur la source. Les bons livres de programmation ont tendance à vous saisir, à vous inspirer et à ce que vous y retourniez lorsque vous frappez un mur. Sans eux, vous ferez beaucoup de choses incroyables sans d'abord comprendre précisément ce que vous faites. La programmation est un art très délibéré, je vous encourage donc à rechercher des livres écrits de manière facile à digérer.

Je fais de la programmation professionnelle depuis un bon moment maintenant et je peux vous dire que ma satisfaction est vraiment la mienne. Mon patron ne comprend pas très bien pourquoi les choses que j'ai écrites sont si géniales. Ma femme s'endort quand je lui raconte ma journée et mes amis se mettent en quatre pour ne pas me poser des questions sur mon travail. Je savoure mes victoires et l’occasion occasionnelle de les partager avec mes pairs. Votre père, dans ce cas, n'est pas l'un de vos pairs.

Continuez et continuez à vous améliorer. Habituez-vous au fait que les non-programmeurs ont besoin de voir quelque chose de visuellement impressionnant avant d'être impressionnés. Pourquoi ne pas tenter votre chance en écrivant quelque chose comme un générateur de jeux Mandelbrot / Julia ? Cela pourrait lui montrer le genre de progrès qu’il recherche, le débarrasser de votre cas pendant un moment. En dix ans, vous ferez quelque chose de très similaire pour obtenir un responsable non technique de votre dos afin que vous puissiez effectuer un travail réel.

N'oubliez pas que vous le faites parce que vous l'appréciez.

Tim Post
la source
1
Écoutez cet homme, il sait de quoi il parle;)
drxzcl
2
héhé, j’aime le fait que les non-programmeurs aient besoin de voir quelque chose de visuellement impressionnant avant d’être impressionnés ». L'écriture d'un générateur de fractales a été l'un de mes premiers projets en informatique. Et j'ai été impressionné moi-même :)
Guillaume
Probablement la meilleure réponse dans tout ce fil ...
Venki
15

Il est difficile de dire si cette question convient le mieux au forum sur le rôle parental ou au forum de programmation. Je crains que mes conseils ne soient pas ciblés, car je sens que l'enchevêtrement dans cette question représente potentiellement beaucoup de "problèmes" de relation père-fils.

Cela étant dit, ce que je voudrais souligner, c’est la formidable opportunité qui existe pour vous et votre père de vous connecter sur un sujet qui pourrait vous passionner d’une manière ou d’une autre. Étant moi-même père et connaissant mon propre père, je sais à quel point nous voulons que nos enfants nous écoutent, suivent nos instructions et apprennent de nous. Nos enfants sont souvent amenés à faire le contraire. Donc, le fait que vous partagiez cet intérêt commun est merveilleux.

Les pères peuvent certes être têtus, mais je pense toujours que vous avez la possibilité de modifier votre personnalité et votre choix grâce à cet exercice. Pas par défi, mais par votre volonté et votre ambition de bien connaître le sujet de la programmation. Personnellement, il semblerait que votre père vous ait jeté au fond des choses en matière de programmation. Certes, il ne s’agit peut-être pas du langage d’assemblage MIPS ou de LISP, mais quand même du C ++? Java? Beurk. J'adore programmer, mais lire ceux-ci au début aurait pu m'éteindre complètement. Blague. :)

Donc ce que je voudrais demander est ceci: qu'est- ce qui vous inspire ? Quel genre de choses voulez-vous construire? Répondez à cela, puis recherchez vos propres livres et tutoriels sur ce sujet. Viens ici et pose des questions. Construire quelque chose. Puis montrez à votre père ce que vous avez construit. Dis-lui ce que tu as appris. Remercie-le de ton engagement avec toi et dis-lui que tu l'apprécies. Je dis cela parce qu’en fin de compte, c’est tout ce dont il s’agit. Il veut partager quelque chose avec vous parce qu'il vous aime. Parfois, les pères ont du mal à exprimer cela de manière traditionnelle, alors nous cherchons ces manières indirectes de dire la même chose. Parfois, on craint même de faire ça. Mais n'oubliez pas que dans tout cela, vous souhaitez être plus proche de vous.

Byrne Reese
la source
15

Il ne semble pas que quiconque ait suggéré cela pour l'instant:

Récemment, il a commencé à me demander ce que je faisais avec, et je lui ai montré un programme C ++ que j'ai créé qui prend ce que vous tapez, puis assigne des valeurs à chaque lettre (A est la première lettre de l'alphabet pour qu'il obtienne la valeur de 1) .. et ainsi de suite. Il additionne ensuite toutes les valeurs et vous le dit. Donc, le mot "ajouter" aurait une valeur de 9.

^^ Ce n'était pas très impressionnant pour lui. Il m'a crié dessus et m'a dit que tout ce que je faisais, c'est foutre en l'air. Ce n'est pas vrai. Il est extrêmement traditionnel et têtu et n'écoute rien de ce que j'ai à dire. Que devrais-je lui dire?

Si vous y réfléchissez, ce programme n’est pas très impressionnant pour ceux qui utilisent des ordinateurs et qui ne connaissent rien à la programmation.

Montrez à votre père comment vous l'avez fait. Promenez-le dans le code source. Il ne comprendra probablement pas (certainement), mais cela indiquera tout le travail que vous avez consacré, et ce que vous comprenez, et peut-être reviendra-t-il avec une impression plus positive de tout ce que vous avez réellement accompli.

benzado
la source
3
Cela méritait bien plus de reconnaissance qu’il ne l’était. Une bonne solution non conflictuelle qui pourrait amener son père à comprendre un peu plus le passe-temps de son fils.
Fergus à Londres
@FergusMorrow D'accord. Cette réponse a reçu beaucoup trop peu de votes positifs.
Stommestack
12

Fais ce que tu veux

C'est ta vie. Tu peux faire ce que tu veux. Ne laissez personne (même votre père) contrôler votre vie.

Je suppose que vous aimez plus ou moins programmer et que vous voulez devenir un spécialiste reconnu (et votre père veut, tout le monde veut). Mais le fait est que vous ne réussirez jamais si vous ne savez pas ce que vous faites et si vous l'aimez .

Maîtriser n'importe quel domaine est difficile. Vous ne pouvez pas faire cela uniquement sous l'influence de quelqu'un. Et personne ne sait ce que vous devriez faire mieux que vous . Tu veux te reposer aujourd'hui et avoir envie de jouer à des jeux toute la journée? C'est votre décision et vous en êtes responsable. Vous devriez apprendre à être responsable de vos décisions et de votre vie. Etre responsable de vos décisions est obligatoire pour tout spécialiste performant.

Alors, que faites-vous dans cette situation? Restez sur vos positions, n'écoutez personne et faites ce qui vous semble utile.

Anton Barkovsky
la source
3
Le PO est un mineur légal (14 ans, apparemment). On s'attend à ce que ses parents contrôlent sa vie, et se battre aveuglément pendant les quatre prochaines années rendra probablement tout le monde misérable.
jwodder
1
@ jwodder: Si ces parents ont le sentiment qu'ils doivent contrôler ce que leur garçon apprend pendant son temps libre , il se peut qu'il soit préférable qu'il commence à se défendre dès que possible. Moi aussi, j'ai des enfants, aussi vieux que David. Si mon enfant ne pouvait pas me dire que j'avais tort quand elle le pensait, je craindrais pour son avenir. Un jeune de 14 ans n’a pas 7 ans, il connaît le monde et quelques choses que ses parents ignorent. Et s’il s’est avéré que ce n’était pas ce qu’ils voulaient, ils ont échoué toutes les années précédentes et n’ont plus aucune chance de rattraper leur retard, encore moins en continuant à faire ce qu’ils ont fait pendant 14 ans.
sbi
10

Vous avez demandé des livres. Honnêtement, vous ferez mieux de résoudre les problèmes que de lire des livres. Trouvez un casse-tête ou un problème qui vous passionne. Le projet Euler est une excellente source et CodeGolf peut offrir des questions intéressantes à l'occasion. Mon premier projet de programmation était une application C ++ qui a trouvé des nombres premiers. Le manuel que j'utilisais à l'époque offrait une implémentation simple comme celle-ci:

bool isPrime(int x){
    int c = 1;
    while(c < x){
        if(x%c == 0){
            return False;
        }
        c=c+1
        /*c+=1 if compiler is set to '98 or more recent*/
    }
    return True;
}

qui est massivement inefficace. J'ai trouvé les 500 premiers nombres premiers avec cette fonction avant d'abandonner de dégoût devant sa lenteur. Papa et moi avons passé un bon moment à essayer d'optimiser la configuration ci-dessus. Même s'il s'agissait d'une application simple qui ne consignait même pas sa sortie dans un fichier, je me suis amusé et le produit résultant était cool.

Voulez-vous apprendre en lisant des livres? Oui, mais je ne saurais trop insister sur la valeur d'un simple langage de programmation et d'un apprentissage par essais et erreurs.

Si vous apprenez à programmer pour votre père, arrêtez-vous et trouvez votre propre raison. Le mien me poursuit toujours pour lui construire un système de négociation automatisé à haut volume. Je suis très sérieux quand je dis que vous avez besoin de trouver quelque chose que vous voulez travailler parce que sinon vous abandonniez probablement la programmation tout à fait parce que vous venez de le voir comme une corvée pas un passe - temps ou un sport.

Essayez de lire le livre "Just For Fun" de Linus Torvalds dans lequel il raconte les origines du système d'exploitation Linux. Le titre dit tout.

Sérieusement. Il suffit d'aller pirater un problème. Lorsque coincé, impliquez le vieil homme.

Si votre père n'apprécie pas votre travail, ce n'est pas parce qu'il est déçu. C'est un architecte, il ne sait pas à quel point certaines choses sont complexes. Essayez de le guider dans votre code, ne serait-ce que la logique, et faites-lui comprendre ce que vous avez appris de cette logique en l'écrivant.


TL; DR


  1. Il suffit de jouer avec quelque chose. Résoudre un problème. Si vous ne pouvez pas le résoudre, trouvez la solution de quelqu'un d'autre et essayez de la comprendre.
  2. Amusez-vous avec # 1
  3. Chaque fois que vous apprenez quelque chose ou que vous avancez, rappelez-vous de le dire à votre vieil homme.
  4. Votre rythme. Tout le monde apprend à sa manière et à son rythme. Continuez et vous finirez par avoir les compétences pour faire ce que vous voulez.
rmckenzie
la source
1
En fait, il déclare expressément qu'il n'a pas demandé de livres ... Je suis d'accord avec la suite de ceci
Paul
6

Essayez de trouver un livre qui soit spécifiquement une introduction à la programmation pour les novices. Peut-être que quelque chose comme Hello World! Programmation informatique pour enfants et autres débutants par Warren Sande.

Vous devriez également voir ce que votre bibliothèque a. La plupart des bibliothèques devraient avoir quelques livres pour débutants.

Alger
la source
5

Dans mon esprit, vous avez deux problèmes:

  1. Vous voulez apprendre la programmation et la garder amusante (la distraction est essentielle, cela rend tout plus facile)
  2. Vous avez un client qui ne comprend vraiment rien à la programmation mais qui a une idée de ce qu'il veut. (Votre père dans votre cas)

A MON HUMBLE AVIS:

  1. Pour votre premier problème, il vous suffit d’aller sur des sites comme celui-ci et de poser des questions comme vous l’avez fait. Trouvez des ressources comme celles-ci: https://softwareengineering.stackexchange.com/questions/62224/how-to-become-a-professional-programmer/62263#62263 . Pensez à quelque chose que vous voulez créer (jeu, liste de tâches, système de gestion de la collection de films, prochaine meilleure plate-forme sociale) et commencez tout juste à coder. Ou bien commencez par résoudre des énigmes Où puis-je trouver des énigmes et des défis de programmation?

  2. Votre deuxième problème est plus difficile, vous devez éduquer votre père (bien qu'il ne semble pas très disposé), tout en apprenant que vous saurez mieux expliquer ce qui est difficile en matière de programmation. Vous pouvez essayer d'utiliser des métaphores, comme l'explique sa Qu'est-ce qu'une bonne métaphore de programmation? . Une autre astuce est que les non-programmeurs en général n’ont pas la complexité d’un bon algorithme mais qu’ils sont facilement impressionnés par de jolies interfaces. Selon la plate-forme que vous choisissez, vous pouvez générer assez facilement de jolies interfaces pour impressionner votre père. Utilisez par exemple:

J'espère que cela t'aides.

KeesDijk
la source
+1 J'aime votre message, mais je ne pense pas que quiconque ici ait même suggéré que ce gamin découvre les attentes de son père. Il semble un peu prématuré d'éliminer les attentes du père sans savoir ce qu'elles sont.
user179700
5

J'aimerais juste ajouter que j'étais dans une position très similaire à un moment de ma vie, mon père ne comprenait pas vraiment ce que signifiait renforcement positif. Mais étant persistant et résistant à sa désapprobation parfois sévère, j'ai réussi à m'en tenir à cela. Quelque vingt ans plus tard, la relation avec mon père avait beaucoup changé, elle s’était améliorée, mais les nuances subtiles de l’époque étaient toujours présentes.

Ceci est juste une période difficile dans votre vie et la chose importante ici est que vous vous amusiez à le faire plus que toute autre chose.

John Leidegren
la source
5

En ce qui concerne le langage de programmation, je conviens que vous devriez vous concentrer sur un seul.

En fait, je vous en recommande un que vous n’avez pas encore: Python. Le python est un langage assez facile à apprendre, mais également assez puissant. C ++, Java, PHP et Javascript sont tous beaucoup plus complexes.

Plusieurs livres de Manning enseignent la programmation en Python. Je considérerais fortement "Hello, World!", Même s'il s'adresse à une population légèrement plus jeune.

Si vous voulez continuer avec C ++, alors je vous recommande ce livre:

Bien que ce soit plus une "référence" et moins un "tutoriel". Je ne suis pas au courant d'un bon tutoriel sur le C ++ - il existe une tonne de livres du type "enseignez vous-même rapidement le C ++", mais je ne pense pas qu'ils soient très utiles. (C ++ est un langage assez difficile à apprendre en premier; la plupart des programmeurs C ++ ont commencé par utiliser un langage plus simple).

Stephen Cleary
la source
D'accord, le python est un meilleur choix en tant que langue maternelle. C ++ est excellent mais très puissant et difficile à utiliser - c'est comme apprendre à piloter un avion avant d'apprendre à marcher. Avec Python, vous pouvez utiliser des bibliothèques dès le départ et faire des choses amusantes. Votre fonction string_add comprend 5 lignes de code lisible. Par exemple, def string_add(a_string): \n\t sum = 0 \n\t for letter in a_string:\n\t\t sum += ord(letter) - ord('a')+1 \n\t return sum(la \ n - nouvelle ligne \ t -tab) ou en utilisant une programmation fonctionnelle plus avancée, utilisez une ligne unique. string_add = lambda a_string: sum(map(lambda ch: ord(ch)-ord('a')+1, a_string))
dr jimbob
+1 Il m'a fallu environ un an pour apprendre le C ++, alors que cela ne m'a pris que dix minutes pour apprendre le python.
Droitier
+1 Je recommanderais également Head First Programming, qui utilise Python.
David
4

À propos de C ++, Java, PHP, JavaScript et Android (pour que vous puissiez choisir entre eux, car essayer de tout maîtriser à la fois risque d’échouer):

  • C ++: C'est un langage extrêmement puissant. Mais trop puissant, trop impitoyable, trop crypté pour commencer. Vous devez comprendre beaucoup de choses pour aller de l'avant. Je pense, ceci dans un choix de langue pauvre pour commencer aussi le programme.
  • Java: un choix populaire pour les débutants. En un sens, c’est l’opposé de C ++: le C ++ vous offre toutes les méthodes imaginables pour vous tirer une balle dans le pied, tandis que Java tente de ne permettre rien de ce qui pourrait être en dehors de votre contrôle, ce qui est en fait assez paralysant. C'est un peu trop simpliste, trop trivial, trop restrictif pour vous montrer beaucoup de programmation. Et vous ne pouvez pas faire grand chose en Java sans connaître beaucoup l’API standard et plusieurs frameworks. Java en tant que technologie a beaucoup à offrir, mais présente des inconvénients en tant que langage.
  • PHP: Un langage très populaire, principalement en raison de sa faible barrière d’entrée. PHP en tant que langage a mûri et est maintenant riche en fonctionnalités attendues d'un langage moderne. Cependant, PHP transporte beaucoup de bagages pour des raisons historiques. Ainsi, même si cela permet réellement d’écrire de bons programmes, peu de gens le font et vous ne trouverez pas autant d’informations sur la façon de le faire. Et la bibliothèque standard est un gâchis. Si vous décidez d'écrire en PHP, je vous conseillerais de commencer dès le début à utiliser un framework, car ils préconisent généralement des solutions robustes aux problèmes courants. Personnellement, je recommande symfony , flow3 et CakePHP . Cependant, mon conseil est: ne commencez pas avec ça.
  • JavaScript: Un langage étonnamment puissant, une fois que vous avez appris à le connaître. Il a quelques "bizarreries" , mais en fait, vous devriez pouvoir vivre avec cela. Bien qu'initialement utilisé pour ajouter de l'interactivité aux pages HTML, JavaScript peut désormais être utilisé dans un certain nombre de champs. Outre l' utilisation classique, il peut être utilisé pour le développement d'applications mobiles et de bureau avec des plateformes comme Appcelerator , PhoneGap et AIR et de créer des serveurs utilisant Node.js .
    Il existe de nombreuses bibliothèques et structures JavaScript. Je vous suggère de vérifier knock - out et jQuery ainsi que qooxdoo et ext.jssi vous cherchez quelque chose à part entière. De plus, pour le développement côté serveur, vous devriez jeter un coup d' œil à express.js .
    De plus, j'aimerais souligner CoffeeScript , un langage qui compile en JavaScript, mais qui comporte de nombreux extras, qui est très utile.
  • Android: Contrairement aux quatre autres, il s'agit d'une plate-forme. Les plates-formes doivent être choisies en fonction de ce que vous voulez faire. Si c'est le développement d'applications mobiles pour les appareils Android, alors allez-y. Pas sûr que ce soit la meilleure chose à faire, mais au final, vous devez créer des choses que vous jugez cool.

En tout cas, ce qui est vraiment important, c’est que vous trouviez cela agréable. Que vous créez des choses, vous pensez que c'est cool. Cela répond à certains de vos besoins ou est amusant à jouer. La programmation est pour ceux qui l'apprécient. Vous avez besoin d'un ensemble d'outils permettant de créer des applications avec quelques lignes de code. JavaScript / CoffeeScript peut être un bon point de départ.
Personnellement, je voudrais vous indiquer Ruby. Cela m'a beaucoup appris sur la programmation et je me sens malheureux de ne pas l'avoir su quand j'ai commencé à programmer. En gros, il existe deux formidables livres (tous deux disponibles gratuitement):

  • Why's Poignant Guide - Personnellement, ce livre était pour moi un peu trop distrait (blagues, dessins animés, etc.), mais vous apprécierez peut-être cela.
  • Rubis pragmatique - a parfaitement fonctionné pour moi. C'est un peu sec, mais il s'agit simplement de l'essentiel.

Parallèlement à cela, je vous suggère de vérifier les chaussures . C'est un excellent outil avec une aide intégrée impressionnante, comprenant des références, des tutoriels et des démonstrations. Vos premiers travaux seront opérationnels en quelques jours.

Et, probablement pour plus tard, je voudrais vous faire remarquer . Je pense que c'est une excellente langue (ma langue de choix), et il y a un tout nouveau guide du débutant , qui a été publié récemment. Cependant, haXe ne dispose pas d’outils permettant de créer des applications aussi facilement que JavaScript et Ruby. Par conséquent, vous pourriez trouver fastidieux, voire frustrant, de commencer, ce qui va à l’encontre du but recherché.

back2dos
la source
Je lui conseillerais certainement de se couper les dents en C / C ++. J'ai fait de même et j'ai trouvé l'apprentissage d'une langue étonnamment facile, car presque tous les langages modernes dérivent de C / C ++.
CyprUS
@CyprUS: Bien que je sois d'accord, les deux valent la peine d'être appris, mais je ne pense pas que ce soit un choix judicieux de commencer à apprendre à programmer. En outre, je ne vois pas comment le LISP ou la famille Smalltalk tirerait quoi que ce soit d’essentiel des deux.
back2dos
Je pense que nous devons laisser le garçon décider ce qu'il veut faire. Cela dit, LISP / SmallTalk sont trop ésotériques pour être d'une utilité générale (à mon avis)
CyprUS
@CyprUS: je n'ai offert que des conseils. En fin de compte, il doit choisir. Je ne parlais pas de LISP ou de SmallTalk, mais de la classe de langages modernes qu'ils chevauchaient (partiellement), notamment Ruby, Squeak, Objective-C, Lua, Scala, Erlang, Clojure, JavaScript, F #, Nemerle, Scheme. Tous sont en fait utilisés, certains étant même parmi les langages les plus populaires .
back2dos
3

C'est un peu à quoi s'attendre dans un mois. Vous devriez plutôt essayer de vous concentrer sur l’apprentissage d’une langue ou d’un paradigme à la fois, sans quoi cela pourrait vous accabler. Être trop bousculé à la fois est aussi un bon moyen de s’exciter. Vous pouvez mieux apprendre en travaillant sur un programme spécifique qui vous intéresse. Si vous êtes intéressé par les téléphones Android, vous ferez probablement mieux d'utiliser Java que le C ++. Il s'attendait peut-être à quelque chose de génial comme un client typique, alors ne soyez pas découragé par sa déception :)

Certains des livres Head First peuvent aider à rendre l'apprentissage un peu moins sec si vous êtes contraint de rester avec des livres.

Clé en main
la source
3

Je pense que vous devriez ranger pour le moment les éléments plus formels et jeter un coup d'œil à Scratch - http://scratch.mit.edu/ - il vous permet de gérer plus facilement la plupart des constructions de programmation tout en vous apprenant les éléments. vous avez besoin de boucles, etc.

Cela permet également un multithreading sans faille, ce qui est peut-être la partie la plus difficile à faire à la main, et qui est nécessaire pour donner des résultats intéressants dans le monde actuel.

Ne le sous-estimez pas car il utilise des couleurs et une approche de la programmation comme une brique. Vous pouvez en faire beaucoup sans vous perdre dans les détails techniques.

utilisateur1249
la source
+1 - Scratch est un moyen formidable et amusant d'apprendre. Il est en fait conçu avec une tranche d’âge en tête, mais reste Turing Complete. Consultez également BYOB (Construisez vos propres blocs) pour une extension orientée objet vers Scratch.
Morgan Herlocker
3

Demandez à votre père s'il pourrait concevoir un immeuble de grande hauteur à votre âge. C'est ce que la programmation est. Il faut du temps pour apprendre, car il y a tellement de choses à apprendre. C'est comme si vous faisiez du vélo, seulement vous avez mille pédales, engrenages, poignées, boutons, et vous ne pouvez pas choisir lequel d'entre eux utiliser à un moment donné. Cela prend de la pratique.

Je ne doute pas de toi. Vous avez commencé à utiliser le C ++ très tôt dans votre objectif de devenir programmeur. C'est impressionnant pour moi .

Accrochez-vous et bonne chance dans votre carrière de programmeur!

Jörgen Sigvardsson
la source
3

Je sais qu'il y a déjà beaucoup de réponses. Mais je n'ai pas vu ce conseil: essayez de demander à votre père de vous aider. Essayez de choisir quelque chose de poilu dans le livre C ++, que vous puissiez comprendre et demandez-lui de vous aider.
Donnez-lui le livre et laissez-le ramper en C ++. Je suis sûr que cela lui fera comprendre à quel point il est difficile de coder.

Guillaume
la source
3

Essayez de transformer cette situation pour votre propre bien. Acceptez simplement que ce que vous avez accompli jusqu'à présent ne suffit pas et essayez de faire mieux ... Vous aurez suffisamment de difficultés comme celles-ci lorsque vous travaillerez pour un patron si vous ne commencez pas à vous en remettre et à vous améliorer à partir de maintenant. .

Si seulement j'avais deux fois plus travaillé quand j'avais ton âge ...

Johnny
la source
3

La contribution de votre père ne favorise pas votre processus d'apprentissage. Oui, il y a un certain nombre de façons de passer par la programmation d'apprentissage, comme d'autres l'ont mentionné. Cependant, vous avez montré des progrès phénoménaux en C ++ à mon avis. Votre programme d’ajout aurait été quelque chose que je pouvais à peine gérer après mon premier semestre en programmation java.

Si vous voulez continuer, vous devez vous attaquer à deux choses:

1) Manipulez votre père.

Regardez, chaque père a des rêves extravagants pour leurs enfants. Cependant, leurs attentes peuvent être très élevées et aboutiront éventuellement à quelque chose d'impossible dans certains contes de fées. Je recommanderais de faire appel à une personne extérieure à la situation pour mieux évaluer vos progrès et amener votre père sur terre. Vous pouvez essayer de parler à votre famille / amis avec votre expérience en programmation ou même aux membres de cette communauté de lui envoyer un courrier électronique au nom de nos propres expériences et connaissances. C'est l'étape la plus importante de toutes, car si votre père ne se calme pas, vous perdrez tout intérêt.

2) Trouver un focus.

Il n'est pas propice de tout apprendre en même temps. Choisissez une langue et respectez-la. En lisant un livre sur une langue spécifique. Suivre les exemples du livre mot pour mot n'est pas la bonne solution. La régurgitation est un processus d'apprentissage pour certains, mais pas tous (surtout moi-même). Il est important de l’attaquer sous autant d’angles que vous pouvez et qui vous intéressent. Programmer des livres de différents auteurs sur le même langage, mais avec des usages différents, peut éveiller votre curiosité pour la votre propre désir de programmation (créer des jeux? des applications de conception? tester? ect, ect). Vous pouvez également vous lancer dans une aventure personnelle en créant un programme. Déterminez ce que vous voulez faire, peu importe ce que vous savez pour le moment, puis faites une recherche au fur et à mesure de la programmation. Comme le temps passe, vous Vous voudrez éventuellement essayer d’autres langages de programmation liés ou non. Vous réaliserez peut-être aussi que vous ne voulez pas programmer tous ensemble.

Avant tout, rappelez-vous que ce n'est pas le résultat final qui compte, mais le voyage. N'oubliez pas de vous amuser!

Jonathan
la source
3

Vous avez reçu de bons commentaires et conseils sur les aspects de programmation liés à votre situation. Mais je veux ajouter quelque chose d'un point de vue différent ...

J'ai l'impression que vous avez des pensées négatives à propos de votre père - il vous a mis sous pression et a fait des commentaires qui vous ont causé du chagrin et de l'inquiétude - et qui ont rendu le programme moins amusant. C'est une honte et je pense que la plupart des gens ici conviendront que la programmation est amusante - je programme depuis plus de 30 ans et je trouve toujours que c'est amusant.

Mais, je pense que ton père est vraiment de ton côté. Il a fait ce qu'il pensait être juste, il essayait d'aider, il vous a acheté les livres pour vous donner un bon départ. Mais il s'est trompé (et je parle en tant que père, nous nous trompons parfois!). Pour lui, les livres sont probablement son point de départ dans sa carrière d'architecte (je suppose que cela a commencé avant qu'Internet et le www soient généralement disponibles, le cas échéant). Donc, pour lui, les livres sont votre point de départ.

Donc, en supposant que votre père soit de votre côté (et je suis certain qu'il l'est), le problème est qu'il ne comprend tout simplement pas à quel point il peut être difficile de commencer à programmer. Montrez-lui donc toutes les réponses qu'il a eues. posté ici - je suis sûr que votre père est un bon gars, il comprendra et il vous soutiendra.

Et bonne chance dans votre programmation - on dirait que vous prenez un bon départ.

Simon Knights
la source
peut-être que l'ajout de 'prodige' ne sera pas trop hein? Faire un programme comme celui-là sera difficile pour beaucoup de mes amis, je peux vous assurer
CyprUS
@CyprUS - Je ne faisais aucun commentaire sur ses capacités spécifiques (bien que je sois sûr qu'elles vont bien). C'était vraiment à cause de son père.
Simon Knights
3

Une chose non mentionnée dans les autres réponses:

Comme vous le savez peut-être, être un enfant (j'ai 14 ans) et se voir demander d'apprendre à programmer à partir de livres sombres n'est pas la chose la plus simple. Je suis toujours distraite… Je lui ai déjà dit que je n'avais pas besoin d'acheter de livres et que je pouvais regarder des tutoriels en ligne… mais non, il est tellement désuet. Il me laisse seulement utiliser les livres.

Vous devez certainement travailler sur cette partie. Internet est l'outil essentiel de tout programmeur et vous devez travailler avec.

Premièrement, la programmation concerne la résolution de problèmes. Lorsque vous ne savez pas comment utiliser X en langage XYZ, vous le recherchez sur Google et cherchez des solutions. * Trouver rapidement des solutions est aussi important pour un programmeur que d'utiliser un clavier.

Deuxièmement, une autre compétence cruciale consiste à utiliser la documentation . Les livres sont généralement comme des tutoriels - ils offrent des conseils, mais ils ne vous offrent pas une connaissance complète - et c’est là que la documentation est utile. Par exemple: vous programmez en C ++, vous avez un mois d'expérience. Tôt ou tard (je dirais très bientôt), vous devrez utiliser la bibliothèque standard ... ou peut-être l'avez-vous déjà utilisée? Si c'est le cas, c'est bon signe, votre livre n'est probablement pas mauvais en l'occurrence. Quoi qu'il en soit, il sera utile de savoir ce qui est déjà présent dans les bibliothèques standard C ++ et ce qui ne l'est pas. Pour cela, il est utile de garder une référence comme http://cplusplus.com/ ouverte tout le temps pendant la programmation.


Internet est crucial pour le codage et encore plus pour apprendre à coder. Si votre père ne comprend pas et s'attend à ce que vous appreniez à programmer en utilisant uniquement les livres , son approche est contre-productive et vous ralentit (et peut-être même de mauvaises habitudes).

Kos
la source
2

Il n'a aucune idée du processus d'apprentissage en programmation. Vous pouvez lire tous ces livres sans toujours être capable d'écrire quelque chose de bon, parce que ce qui prend le plus de temps, c'est de bien comprendre ce que vous pouvez faire et comment l'aborder.

Vous avez dit à votre père que vous aimiez programmer - ne le laissez pas vous gâcher. Et n'essayez certainement pas d'apprendre 5 langages de programmation, du moins pas maintenant. Conservez-vous avec un Java relativement simple, qui peut être transféré aux autres une fois que vous l'avez maîtrisé.

En ce qui concerne les livres, en passant, c’est la bonne façon de le faire, car vous apprenez la langue de la bonne façon. Suivre des tutoriels conduit souvent à prendre de mauvaises habitudes, etc.

Bonne chance; et faites-lui savoir que vous le faites correctement, que les progrès sont lents mais que vous apprenez tellement pendant que vous le faites.

Alex coady
la source
2

Je pense que beaucoup de programmeurs âgés de 25 à 35 ans et plus ont grandi en jouant à Nintendo et Sega. Une bonne partie d'entre eux / nous avons fait la transition mentale de pourquoi jouer à un jeu quand vous pouvez créer le vôtre. C'est une motivation très intéressée qui peut vous amener à devenir un meilleur programmeur. C'est un début. Plus tard dans la vie, vous pourrez passer de l’écriture de jeux vidéo (problèmes virtuels) à des jeux aux enjeux plus importants (problèmes du monde réel). Comme cette ordonnance pour ce patient ne va pas interagir négativement avec un autre médicament prescrit, ces camions peuvent effectuer le plus grand nombre de livraisons avec le moins de gaz afin de réduire la pollution, ou comment puis-je m'assurer que l'achat de ce stock sera bon au prix que je veux quand il y a des milliers d’autres l’achetant en même temps.

Mark Lapasa
la source
1

L'architecture est enracinée dans le monde physique, sur lequel vous apprenez depuis votre naissance. Pour un étudiant en architecture, jouer avec des legos serait une perte de temps. Votre père suppose que puisque vous connaissez les mathématiques, vous connaissez les principes fondamentaux et vous devriez pouvoir commencer à produire des choses. Eh bien ce n'est pas vrai. Il ne connaît pas la programmation, car il ne réalise même pas que ce n’est pas une branche des mathématiques .

La programmation est un nouveau monde. La meilleure façon de s'y habituer est de l'apprendre comme vous avez appris le monde physique: Immergez-vous et expérimentez. En un mot, jouez. C'est l'heure du lego.

À titre de comparaison, considérons les astronautes. Eux aussi ont un monde nouveau pour lequel ils ne sont absolument pas préparés. Ils doivent commencer par des notions de base comme la façon de se déplacer dans la pièce.

Dans une prochaine étape, je suggérerais de créer un jeu dans lequel l’ordinateur choisit un nombre aléatoire, et vous essayez de le deviner, et il vous indique si vous devinez trop haut ou trop bas.

Essayez aussi beaucoup de langues différentes! Pas tout à la fois, mais peut-être pendant une semaine à la fois.

Une fois que vous avez acquis de l'expérience, créer un jeu vidéo à part entière est l'un des plus grands défis que vous puissiez relever en tant que programmeur compagnon. Les jeux vidéo touchent presque tous les aspects de notre discipline, et en créer un est un excellent moyen de développer vos compétences. C'est également un endroit idéal pour expérimenter et apprendre à des niveaux de compétence de plus en plus élevés.

Kevin Conner
la source
0

Prenez votre temps à apprendre les langages de programmation, plus vous vous exercerez et plus vous vous lançerez dans la programmation, cette fois-ci vous avez créé un programme très simple qui est assez mignon pour un débutant, mais au fur et à mesure que vous avancez, assurez-vous de créer un bon programme qui pourrait effectivement être utilisé par votre père, bien si vous me demandez c'est comment j'ai aidé mon père dans son travail.

Juste un mot avec ton père et explique lui les choses et je suis sûr qu'il comprendra vraiment et je suis sûr qu'un jour tu seras un excellent développeur.

Base
la source
0

J'étudie en tant qu'ingénieur en logiciel et les progrès de l'apprentissage de la programmation au cours de mes études ont été plus que la lecture d'un livre.

Tout d’abord, je vous recommanderais d’apprendre le C, parce que c’est un langage facile et que de nombreux autres langages (tels que C ++, objective-c) sont construits sur le langage C. C’est ainsi qu’il a fallu acheter une puce ( dans notre cas, un Atmel Mega16 avec un kit STK 500, qui est juste un tableau avec des voyants et des boutons dessus), puis nous avons juste joué avec, programmé des programmes pour le rendre bip et bop. C’est plus amusant que de simplement lire et écrire les programmes de salut du monde, IMO.

Lorsque C devient une promenade dans le parc pour vous, passez au C ++ et à la programmation orientée objet (OOP). La POO est le concept clé dans de nombreuses langues et façons de penser à la programmation et est donc indispensable si vous êtes sérieux avec votre programmation. Assurez-vous de comprendre la théorie derrière la POO avant de plonger dedans - sinon cela pourrait être un processus difficile :-)

Enfin, je vous recommanderai d’étudier différents types de données, telles que les piles, les files d’attente, les tas, etc., qui sont très utiles à comprendre lorsque vous programmez et lisez sur de nouvelles langues.

Bonne chance mon ami!

Kasper Munck
la source
Je recommanderais autre chose que le C ++ pour apprendre la POO. Python est un bon. C ++ est un langage si complexe qu'il est très pénible d'essayer d'apprendre les concepts OO. Cependant, une fois que vous les aurez apprises, vous saurez quoi faire avec nombre de ses fonctionnalités par ailleurs opaques.
nmichaels