Débutant – Comment aborder une nouvelle technologie et trouver des ressources ?

Bonjour,

Ce post a pour objectif de vous présenter mes méthodes de travail lorsque j’aborde une nouvelle technologie ou une problématique. Tout d’abord il faut bien analyser le besoin, qu’est ce que je veux faire, quels sont mes contraintes.
En général vous devez savoir répondre à ces questions avant de démarrer :
  • Quel est mon langage de programmation?
  • Quel contrainte de framework? Quelle est sa version?
  • Où est la documentation officielle, celle-ci est-elle fiable? Si ce n’est pas le cas, choisissez une autre techno si possible
  • Si il y a reprise de projet, celui-ci est-il bien codé ou bien avec beaucoup de rustines?
  • Quels sont mes contraintes de temps ?
Maintenant vient le moment de vous former et/ou de comprendre une nouvelle technologie. Pour ça, essayez de trouver des exemples open source utilisant cette technologie. Pour cela, Google est votre ami, essayez de taper des mots clés comme sample, tutorials, exemples … Il faut commencer par lire du code (Github grouille d’exemple) et comprendre la philosophie de la programmation pour coder dans les règles qui ont été instaurées par les créateurs.
Ensuite, quand vous vous sentez à l’aise, commencer par réaliser un exemple simple mais qui vous lance un défi, par exemple :
  • Un petit chat
  • Un mini blog
  • Un petit jeu
Quelque chose de simple mais qui vous amuse, chercher à bien tester, à optimiser le peu de code que vous avez. Essayez des choses un peu étrange, voir si ça plante, à quel moment? pourquoi? Posez vous plein de question mais essayez d’apprendre. Quand vous avez un problème, utilisez votre tête mais aussi google, car une personne a forcement eu le même problème que vous !
Utilisez les ressources du web :

 

  1. Twitter : Plusieurs canaux s’offrent à vous pour demander de l’aide. Tout d’abord, pour les plus actifs, il peut y avoir Twitter, si vous parvenez à vous faire suivre par les bonnes personnes, elles vous aideront volontiers pour tous vos problèmes. N’hésitez pas à leur envoyer des messages, souvent les gens sont de bonne composition.
  2. Stackoverflow :L’ultime solution, est de passer du temps à aider et à rédiger vos questions sur stackoverflow, c’est clairement là où il faut chercher de l’aide. La communauté est très forte et les gens s’investiront pour résoudre vos problèmes. La seule contre partie pour les récompenser, c’est d’accepter la meilleure question, cela leur donne des points et c’est une bonne récompense pour un geek.
  3. Github : Il est souvent pertinent d’essayer de trouver un exemple concret d’une nouvelle technologie abordée… Github est aussi un endroit riche ou des milliers de projets vous attendent pour vous donner des exemple. Par contre, pour poser vos questions, ce n’est pas la meilleure place, les développeurs souhaitent n’avoir que des retours de bugs dans les questions posées sur leur projet. La plupart du temps, ils vous redirigeront vers un autre endroit qu’ils jugeront plus appropriés pour les questions techniques.
  4. Google Group : Le design et l’ergonomie sont pourries mais beaucoup de personnes répondent à vos questions. Chaque projet, technologie a son propre espace, donc ne vous trompez pas et assurez vous de poser vos questions au bon endroit. Et n’hésitez pas à faire un petit up si vous ne recevez pas de réponses.
  5. Les Associations : Si vous travailler beaucoup sur une techno particulière (PHP, Rails, JQuery…), il peut être pertinent pour vous de rentrer dans une association spécialisée dans ce domaine. Vous aurez ainsi un espace / mails où poser vos questions. C’est une aide précieuse pour tous vos projets, aussi bien techniques que pour un éventuel recrutement.
  6. Forum : Je ne suis pas spécialement fan de cette solution mais elle permet parfois de tomber sur des personnes qui vous donneront de bon conseils.
Quand vous vous sentez prêt a aborder le vrai sujet, lancez vous mais doucement, préférez la qualité à la rapidité, car sur le long terme, vous gagnerez du temps. Gardez à l’esprit que aussi bon que vous soyez, votre rendu sera d’autant meilleur que vous aurez partager/discuter vos choix avec d’autres dev.
Voici ma méthode, je suis preneur de commentaires :)
Ditchou