Article original : (Not quite) 100 Days of Code — A Postmortem
Par JS
À la fin de l'année dernière, j'ai écrit sur mon expérience de codage et de commits quotidiens sur GitHub pendant 30 jours consécutifs. J'ai également promis de continuer cette série aussi longtemps que possible. Je suis heureux d'annoncer que j'ai tenu pendant 90 jours d'affilée ! Ce fut une expérience incroyable, et j'ai énormément appris.
Ce qui suit est un aperçu des projets que j'ai complétés et de quelques leçons que j'ai apprises en cours de route. J'espère que cela motivera certains d'entre vous à faire votre propre engagement quotidien à coder.
Certification Front-End de freeCodeCamp complétée
J'avais travaillé sur le matériel plus basique de freeCodeCamp il y a longtemps. Je devais encore compléter huit projets intermédiaires et avancés de front-end ainsi qu'une série de petits défis de codage avant de pouvoir obtenir ma certification.
Les projets couvraient une grande variété de sujets et se sont avérés assez difficiles à certains moments. J'ai utilisé une API pour afficher la météo locale, et pour un autre, j'ai construit un clone fonctionnel du jeu pour enfants Simon. La combinaison de bonnes ressources et la patience de quelques amis plus expérimentés m'ont aidé à les terminer pour obtenir ma certification.
Ces projets m'ont appris à organiser et à écrire du code propre. J'ai perfectionné mes compétences en JavaScript et j'ai appris comment ce langage diffère des autres langages plus classiquement orientés objet comme Ruby et Python.
Quelques semaines après avoir obtenu ma certification, je suis retourné et j'ai refactorisé certains des projets initiaux. J'ai appliqué le principe DRY et inclus quelques concepts de programmation fonctionnelle que j'avais appris par la suite. Ce fut très amusant d'essayer d'éliminer toutes les boucles for dans mon code.
Écrit un article largement partagé (pour moi, en tout cas) sur l'apprentissage de JavaScript
Après avoir terminé mon premier blog, que freeCodeCamp a gentiment publié sur sa page Medium, j'avais envie d'écrire autre chose.
Parce qu'il peut être si difficile de déterminer quelles ressources d'apprentissage sont réellement utiles, j'ai décidé de mettre ensemble un plan d'étude pour les débutants souhaitant apprendre JavaScript basé sur ce que j'avais trouvé utile. L'article a été à nouveau publié par freeCodeCamp et compte actuellement plus de 15 mille vues et 700 recommandations.
Pas exactement 'viral', bien sûr, mais pour quelqu'un qui n'avait jamais fait aucun écrit public il y a seulement six mois, ce fut exaltant de voir mon article résonner avec un groupe de personnes.
Appris React
En plus de compléter la certification Front-End de freeCodeCamp, j'ai également commencé à apprendre React. Grâce à quelques excellents tutoriels (mention spéciale au excellent cours de Wes Bos, React for Beginners), j'ai pu terminer quelques projets React. Ceux-ci incluaient un dépôt de recettes recherchables en direct. J'ai également appris à utiliser l'outil create-react-app CLI pour échafauder des applications React.
J'ai rompu ma série au jour 91
Avec des progrès si importants, pourquoi ai-je arrêté ? Le chemin que je m'étais tracé avait ralenti. Je me sentais intimidé par certains des projets à venir sur freeCodeCamp, alors j'ai orienté mes efforts vers l'apprentissage de D3.js, une bibliothèque de visualisation de données. À l'époque, cela s'est avéré un peu trop impénétrable pour moi malgré plusieurs tentatives pour le comprendre.
De plus, je n'avais pas de projet personnel convaincant sur lequel travailler, et j'avais besoin d'une pause dans le rythme effréné de travailler à temps plein et de coder tard dans la nuit pendant plusieurs heures.
La chose la plus importante que j'ai apprise pour maintenir une série comme celle-ci est de toujours savoir quoi travailler demain. Lorsque vous vous asseyez devant votre ordinateur, vous devriez déjà avoir une idée claire de ce que vous allez faire. Si vous prenez cette décision à l'avance, cela élimine un obstacle pour commencer.
Prenez un moment avant de décider d'arrêter de coder pour la journée et assurez-vous d'avoir quelque chose de concret à faire demain. Je me suis tenu à ce plan pour la grande majorité de ma série et ce fut un facteur majeur de mon succès. Ce n'est que lorsque j'ai arrêté de planifier à l'avance que j'ai finalement manqué un jour.
Une expérience complètement valable
Au début de mon (pas tout à fait) #100DaysOfCode, j'avais une certaine familiarité avec l'écosystème Ruby on Rails et HTML/CSS avec seulement quelques heures de JavaScript à mon actif.
Trois mois plus tard, j'ai acquis une bonne connaissance fondamentale de JavaScript, appris React, obtenu une série de projets intéressants dans mon portfolio GitHub, et j'ai eu deux articles publiés sur la page Medium de freeCodeCamp. Je suis un bien meilleur développeur aujourd'hui que je ne l'étais lorsque j'ai commencé cette expérience de codage quotidien il y a quelques mois.
Prochaines étapes
Ayant pris une pause assez substantielle, je souhaite continuer à travailler sur des projets React, m'initier à un peu de JavaScript backend, et en apprendre davantage sur les algorithmes et les structures de données. J'espère également continuer à écrire.
Si vous avez aimé cet article et souhaitez continuer la discussion, venez me trouver sur Twitter.