Recherche de site Web

Mon parcours open source avec C d'un point de vue neurodiverse


J'ai appris que si vous parvenez à trouver la méthode qui vous convient, peu importe ce que disent les enseignants et les autres étudiants, vous pouvez acquérir n'importe quelle compétence open source qui vous intéresse.

Je suis né en 1982, ce qui, en années humaines, ne remonte qu'à 40 ans (au moment de la rédaction de cet article). En termes de développement informatique, cela remonte à une éternité. J'ai eu mon premier ordinateur, un Commodore 64, quand j'avais dix ans. Plus tard, j'ai eu un Amiga, et à 13 ans, j'ai eu un PC "compatible IBM" (c'est ainsi qu'on les appelait à l'époque).

Au lycée, je faisais beaucoup de programmation de base sur ma calculatrice graphique. Au cours de ma deuxième année de lycée, j'ai appris la programmation de base en C et au cours de ma troisième année, j'ai commencé à faire de la programmation C plus avancée, en utilisant des bibliothèques, des pointeurs et des graphiques.

Mon parcours d'étudiant en programmation à enseignant

Pendant mes années d'université, j'ai appris Java et Java est donc devenu mon langage principal. J'ai également créé des programmes C# pour un appareil connu sous le nom d'assistant de données personnelles (PDA), précurseurs du téléphone intelligent moderne. Parce que Java est orienté objet, multiplateforme et facilite la programmation GUI, j'ai pensé que je ferais désormais la plupart de ma programmation en Java.

À l'université, j'ai également découvert que j'avais un talent pour l'enseignement, alors j'ai aidé les autres en programmation, et ils m'ont aidé en mathématiques lorsque j'ai choisi l'informatique. J'ai suivi quelques cours sur la programmation C, destinés à la programmation embarquée de base et au contrôle des instruments de mesure au cours de mes dernières années d'université.

Après avoir eu 30 ans, j'ai utilisé C comme outil pédagogique pour les lycéens qui apprennent à programmer en C. J'ai également utilisé Fritzing pour enseigner aux lycéens comment programmer un Arduino. Mon intérêt pour la programmation C s'est à nouveau réveillé l'année dernière, lorsque j'ai trouvé un emploi pour aider des étudiants à apprendre les différences dans les matières informatiques.

Comment j'aborde la programmation en C et dans d'autres langages

Tout le monde apprend différemment. Étant une personne neurodiversifiée atteinte du syndrome d'Asperger et du TDAH, mon processus d'apprentissage est parfois assez différent de celui des autres. Bien sûr, chacun a des styles d’apprentissage différents, même si les personnes neurodiversifiées peuvent avoir une plus grande préférence pour un certain style d’apprentissage que quelqu’un d’autre.

J'ai tendance à penser à la fois en images et en mots. Personnellement, j’ai besoin de décoder les choses étape par étape et de les comprendre étape par étape. Cela fait du C un langage adapté à mon style d’apprentissage. Lorsque j'apprends le code, j'intègre progressivement le code dans mon esprit en apprenant à voir des lignes de code, comme #include devant moi. D'après ce que j'ai lu dans les descriptions d'autres personnes neurodiverses sur Internet, certaines d'entre elles semblent également avoir ce type de style d'apprentissage. Nous « internalisons le code ».

Certaines personnes autistes sont bien meilleures que moi pour mémoriser de gros morceaux de code, mais le processus semble être le même. Lorsque je comprends des concepts tels que les structures, les pointeurs, les pointeurs vers des pointeurs, les matrices et les vecteurs, il m'est utile de penser en images, telles que celles que vous trouvez dans les didacticiels et les livres de programmation.

J'aime utiliser C pour comprendre comment les choses se font à un niveau inférieur, comme les entrées et sorties de fichiers (E/S), la programmation réseau, etc. Cela ne veut pas dire que je n'aime pas les bibliothèques qui gèrent des tâches telles que la manipulation de chaînes ou la création de tableaux. J'aime aussi la facilité de créer des tableaux et des vecteurs en Java. Cependant, pour créer une interface utilisateur, même si j'ai examiné ce code en C, je préfère utiliser des éditeurs graphiques, tels que Netbeans et similaires.

Mon outil open source GUI C idéal pour créer des applications

Si j'imagine un outil open source idéal pour créer une interface graphique en C, ce serait quelque chose de similaire à Netbeans qui, par exemple, crée des interfaces GTK par glisser-déposer. Il devrait également être possible de mettre C sur les boutons, etc., pour leur faire effectuer des actions. Il existe peut-être un tel outil. Certes, je n'ai pas beaucoup regardé autour de moi.

Pourquoi j'encourage les jeunes neurodiversifiés à apprendre le C

Le jeu est une grande industrie. Certaines études suggèrent que les enfants neurodivers pourraient être encore plus concentrés sur les jeux que les autres enfants. Je dirais à un lycéen ou à un étudiant neurodiversifié que si vous apprenez le C, vous pourrez peut-être apprendre les bases, par exemple, de l'écriture de pilotes efficaces pour une carte graphique, ou de la création de routines d'E/S de fichiers efficaces pour optimiser leurs favoris. jeu. Je serais également honnête qu'il faut du temps et des efforts pour apprendre, mais que cela en vaut la peine. Une fois que vous l’avez appris, vous avez un meilleur contrôle sur des éléments comme le matériel.

Pour apprendre le C, je recommande à un enfant neurodivers d'installer une distribution Linux adaptée aux débutants, puis de trouver des tutoriels sur le net. Je recommande également de décomposer les choses étape par étape et de dessiner des diagrammes, par exemple des pointeurs. Je l'ai fait pour mieux comprendre le concept, et cela a fonctionné pour moi.

En fin de compte, c'est de cela qu'il s'agit : trouver une méthode d'apprentissage qui fonctionne pour vous, peu importe ce que disent les enseignants et les autres étudiants, et utilisez-la pour acquérir la compétence open source qui vous intéresse. Cela peut être fait, et tout le monde peut le faire.

Articles connexes: