Contribution au libre pour les débutants

Je me retrouve souvent à parler avec des gens qui, après avoir appris les bases de Python, ne savent pas quoi faire pour s’améliorer. À défaut d’un projet personnel qui leur tiendrait à cœur, je leur propose de contribuer aux logiciels libres / open source. Seulement voilà, ma connaissance de ceux-ci est partiel, et je me retrouve à conseiller les mêmes projets qui ne leur conviennent pas forcément.

Un tel projet pour un débutant, c’est l’occasion d’apprendre du code de meilleure qualité, d’apprendre à faire parti d’une équipe, apprendre les outils de gestion (versionning, intégration continue, etc.) et surtout une fierté d’avoir du code qui est vraiment utile/utilisé.

C’est pourquoi je pense qu’il serait intéressant de créer et maintenir une liste de projet libre/open-source en Python et Francophone.

Je pense que l’AFPy, au travers de ses membres et de son rayonnement est capable de créer une tel liste et de la partager.

6 « J'aime »

Tout à fait d’accord ! Je pense que c’est un tout petit peu lié à l’idée du trombi, j’aimerais montrer aux débutants, ou tout potentiel membre de l’asso :

  • Telle personne peut t’aider par là sur tel type de projet.
  • Tel projet, là, a besoin d’aide, c’est que des francophones, on les connaît, sont sympas, ping machin sur tel chan.
  • Telle personne contribue déjà à tel projet et elle peut mentorer des nouveaux !
  • Telle personne est experte sur tel sujet mais ne fait pas de mentorat, mais tu peux lui poser des questions !
  • Le suivant donne des cours de ça et ça, hésite pas à le ping sur IRC
  • Et puis si tu stresses de casser de la prod, commence par la trad’ de la doc…
  • Et puis si git c’est vraiment pas ton truc viens aider à l’orga de la PyConFr

On pourrait peut être avoir deux listes :

  • Les projets (qui ont des membres)
  • Les membres (qui ont des projets)

Je pense que pour un débutant qui veut contribuer, la différence entre « j’ouvre une PR sur un projet sur lequel je ne connais personne, j’ignore comment ils vont me juger » et « j’ouvre une PR sur un projet géré par un francophone avec qui je discute déjà, je sais qui va relire ma PR » est énorme.

4 « J'aime »

Je ne pense pas que ce sont les projets qui manquent mais les compétences transversales, comme une excellente maitrise de github, des différents outils aussi. Par exemple, quand je pense à python, je pense django, flask, renpy, … Le vrai problème qui n’est pas spécifique à python c’est qu’un langage de programmation seul ne sert strictement à rien. Il faut y trouver des applications concrètes, ce qui se fait au travers des différents cadre de travail, python seul n’est pas super utile, mais couplé à react en front, une petite api rest et un soupçon de jquery c’est utile. Avoir une arme et savoir l’utiliser c’est chouette, mais il est fortement déconseiller de partir au combat sans un casque. C’est ça le problème du débutant, mais ils peuvent travailler sur des problèmes basique, au bout d’une vingtaines de mini projets ils seront opérationnels, mais ça leur demandera obligatoirement de sortir de python et de cumuler des compétences, je pense au scrapping, à la conception d’applications en mvc, à la qualité du code, aux problèmes de sécurité référencés sur l’oswap, à la conception de bases de données, la documentation tout ce petit monde fait parti d’un développement logiciel. Retranscrire un algorithme déjà existant en python c’est pas franchement ce que j’appel de la programmation, ni ce qui leur sera demandé au quotidien (ou rarement). Python n’est pas non plus la solution universelle, la plupart des programmeurs sautent d’un langage à l’autre sans aucune difficulté, là aussi ça demande plus que la connaissance basique d’un langage (même si c’est la base). Pour ça, il faut taper en dehors de l’apprentissage de python uniquement, c’est là qu’il faut travailler quand on débute, savoir modéliser des class, connaitre les méthodes de programmation classique comme utiliser une pile etc… C’est vraiment le cœur du métier. Python n’est qu’un des nombreux marteaux du forgeron. Ensuite on peut librement choisir le projet sur lequel on désire travailler, et apprendre les subtilités des outils qui sont nécessaires sans trop de difficultés.

2 « J'aime »

+1 pour le trombi, je pense que c’est une super idée ! Il peut être bien sûr annonyme pour ceux qui souhaite le rester, ou public, avec différents moyen de contacter X personne :slight_smile:

On le mets à l’ordre du jour de la prochaine réu ? cc @debnet ?

Je confirme, en tant que débutant et nouvel adhérent, que l’idée du trombi est séduisante.
(et ça rejoint ma question du jour sur discord :wink: )

1 « J'aime »

+1 pour le tombi aussi, clairement :slight_smile:

Je n’y vois pas d’inconvénient, ça peut être fun. Y aura p’tet du dev à prévoir par contre. :smiley:

1 « J'aime »

Bonjour,
Une liste des applications intégrant Python serait intéressante. Je pense à Blender, Scribus, Dia… Elle permettrait d’évoluer du simple code Python vers de puissantes applications concrètes.

Pour un débutant apprenant Python, ce qui l’intéresse le plus souvent c’est d’avoir assez rapidement un résultat probant. Les applications intégrant Python peuvent y contribuer.

Un peu tard avec la réponse !

1 « J'aime »