Comment dynamiser la communauté Python francophone ?


Le site de l’AFPY (à part la section Job), est fantômatique.

Le reddit Python français, comme PythonLive.fr, sont alimentés principalement d’articles de sam et max :(

En fait, c’est même très triste, la partie de Python du job board de Human coder a depuis son ouverture une seule annonce Python (alors que des besoins Python, on en trouve des fracasses, hier encore on m’a fait une proposition alors que je buvais un Perrier en terrasse).

D’une manière générale, il y a très peu de blogs ou fora francophones spécialisés dans Python, la communauté préfère se tourner vers l’anglais. Ca craint, car on a pourtant des David Larlet, des Sebastien Sauvage, des Matthieux Agopian, qui en plus d’être des programmeurs compétant, ont des gens qui les suivent. Et le peu de structures qu’on a sont vides, j’en prends pour exemple le forum de django fr.

Donc, chers lecteurs, dont je suppose qu’un échantillon au moins est intéressé par le Python, sauriez-vous comment dynamisez tout ça ?

Est-ce que vous ne participez pas ? Ou n’êtes-vous pas assez nombreux ? Ou pas intéressés ? Les ressources manquent-elles de contenu de qualité ? Ou alors les plateformes sont trop pourries ?

Que peut-on faire ?

On va quand même pas se laisser mettre la misère par les codeurs ruby, non ? Déjà qu’ils sont mieux fringués…

La seule chose qui marche pas trop mal pour le moment, ce sont les Afpyros et les DjangoCongs (bientôt une session à Toulouse et à Rennes), auxquelles vous êtes d’ailleurs tous franchement conviés.

75 thoughts on “Comment dynamiser la communauté Python francophone ?

  • Soli

    Quand je vois les sponsors, ou la liste de sprints proposés pour PyconFr (http://www.pycon.fr/2012/) et bientôt le programme, je ne suis pas si inquiet.

    Ceci dit, je lis en effet principalement autour de Python en anglais, mais ça ne me pose pas de souci, alors…

  • foxmask

    Bonjour,

    J’ai l’impression que c’est l’effet des congés d’été qui y est pour quelque chose non ?

    J’avais plein de choses à dire mais le “trombonne” ralait :P donc j’ai gardé une phrase :D

  • Sam Post author

    Clippy veille ;-)

    Rien à voir avec les congés, c’est comme ça depuis des années.

    Avoir des sponsors et Pycon et des blogs en anglais ne changent rien à l’affaire: en PHP il y a une grosse communauté. Les débutants ont tout ce qu’il faut sous la main. Il est illusoir de croire que la majorité des devs parlent anglais (même si ils devraient) et que la plus grande partie s’intéressent au conf.

    Avoir une bonne communauté Python est dans l’intérêt de tous les devs Python: plus de ressources, plus de fun, plus de boulot…

  • 0kso

    IRL, il y a aussi pas mal d’activité qui se met en place autour de Python dans les hackerspaces, avec des ateliers sur des sujets variés (initiation, réseau, POO, Django, scripting Blender, …).

  • fero14041

    Personnellement, pour la partie diagnostic, je pencherais pour un problème de pyramide de “générations”. Mon analyse toute subjective:

    La génération des “anciens”, celle qui a créé l’Afpy, n’a plus beaucoup d’intérêts dans l’affaire, s’est “installée” (tous ont un job), et investit dans des projets plus “internationaux” au fur et à mesure que ses membres montaient (rhoo… ;-) en compétences. Et, si elle existe, la génération des nouveaux ne s’est pas réapproprié les structures existantes, par timidité peut-être face aux “monstres sacrés” que les anciens sont devenus (ex: Tarek Ziadé), et peut-être également par manque de passation de flambeau de ceux-ci aux nouveaux.
    Je me souviens d’une question posée par un nouveau membre de l’Afpy lors du dernier PyConFr à Paris, qui pointait la difficulté par ex. à contribuer à l’asso: manifestement, il était plein de bonne volonté, mais ne ne trouvait pas de chemin bien balisé pour participer; et sa question n’a pas semblé soulevé moult enthousiasme, critiques, remises en cause, etc. Comme si les “anciens” ne voyaient pas le problème (bah en partie normal, puisqu’ils sont déjà dans les places)?
    Même problème, à mon avis, de visibilité des entreprises travaillant en Python sur l’Hexagone; il n’y a pas si longtemps, une discussion sur la mailing-list de l’Afpy tournait sur un recensement de celles-ci, et une présentation de chacune — je ne sais où en est l’idée…

    Donc mon avis est qu’il y a au moins un problème de passation: pas de chemin balisé pour les nouveaux (dirais-je d’intégration?), et pas de regard (officiel en tout cas) des anciens vers ceux-ci. Peut-être la communauté est-elle forte, statistiquement, de nombreux étudiants débutants, mais ceux-ci n’ont pas (encore) la parole. Il y a peut-être là un coût dramatique pour le futur de la communauté, à se “priver” de cette base — ou tout le moins ne rien faire pour l’entretenir, la développer –, de cette force vive qui déterminera son futur?

    Comme début de solution, il faudrait AMHA une vision (i) objective et quantifiée, et (ii) partagée, de cette communauté, peut-être sous forme de site web, par ex. de publication de résultats de sondages. Mais c’est tout de suite lourd à mettre en place, entretenir, et consulter…

  • Sam Post author

    C’est une très bonne analyse. Il y a aussi un problème de tolérance de niveau. Je trouve que les communautés ruby et php sont vachement plus sympas avec les gens qui bidouillent et font des erreurs. En python, présenter un snippet pourri pour un débutant, c’est vraiment une épreuve du feu.

    On doit pas être assez accueillant :-)

    Mais effectivement, il y a un problème générationel.

    Par contre je n’adhère pas à l’idée que les anciens ont trouvé un job et ont eu ce qu’ils veulent. Max et moi on a un status pro tout à fait agréable, et au contraire on a envie de partager tout ça.

  • Max

    Et est-ce qu’un Stackoverflow francophone interresserait du monde ?
    On y interdirait bien sûr pas les autres languages que python. On pourrait imaginer créer comme ça une communauté fr en y ajoutant une page profil pour chaque utilisateur. On pourrait même y mettre une section news pour les évennements ( start-up weekend, conférences, etc)

    Est-ce que certains d’entre-vous seraient prêts à donner un peu de leur temps à répondre à des questions (SO like) ?

    Moi perso je ne suis pas très actif sur SO mais le Sam court après ses points et badges, mais sur un site Fr je serai plus motivé.

    And you ?

  • roro

    Des bons tutos de tous niveaux, y compris de bas niveau…ce qui n’est pas à la portée de tous…Question de “charité” ( de “charitable”). Il est tellement plus agréable de “se la péter”, avec des trucs de: “la mort qui tue”, qui font que ceux qui peinent déjà sur la doc, sont boutés hors du jeu.
    D’accord avec le fait qu’il manque le maillon entre les “grands” et les “petits”.
    La solution: OUI! LA-SO-LU-TION:
    Des petits programmes fonctionnels, hyper commentés ( et commentés de façon intelligente, c’est à dire humoristique)avec non seulement un com’ “ligne”, mais aussi un com’ “articulation”
    J’en connais un qui traine par ici, (et qui se reconnaitra)…
    Qui ferait merveille en la matière…Mais il faut attendre pour celà que les couleurs irisées des bulles avec lesquelles il joue en ce moment, perdent un peu de leur éclat…Ce qui ne saurait tarder…Patience dans l’azur..Donc.

  • fero14041

    @Sam: Je me suis sans doute mal exprimé (ou peut-être que j’ai tout faux, hein); mon propos n’est pas une critique, et n’est même pas pointé vers des “statuts sociaux” supposés: je me sers d’eux comme indicateurs/illustrateurs seulement.

    L’idée que je m’en fais est: tant que ces anciens passaient d’un statut de “nouveau” à “installé”/reconnu/etc., ou plus précisément de “débutant” à “expert”, leurs regards et actions étaient forcément en partie tournés vers la communauté, mais positionnés dans une optique de “progression” (technique essentiellement). En “grimpant” vers “le sommet” visé, i.e. en apprenant, faisant, etc., cette dynamique pouvait de moins en moins s’exprimer au sein de cette communauté; leurs regards et actions sont allés toujours “plus haut” (ou ailleurs, puisque la communauté Python est anglophone), et pas “vers le bas”: leurs types de regards, leurs positionnements n’ont pas changé.
    Sam&Max font figure de relative exception, dans cette communauté (en ligne du moins): vous avez envie de partager avec tout le monde, et les débutants en particulier. Je ne suis pas sûr que ce soit une volonté communément partagée, à travers ce médium en tout cas.

  • Sam Post author

    C’est pas faux @roro. On manque de tutos débutant. Y en a de bons sur le site du zero (mais bon le sdz, c’est comme le cochon, tout est bon dedans, depuis toujours).

    @fero: ouai je vois. C’est vrai que quand tu sors ta première metaclasse, t’as envie de te la pêter. Mais c’est marrant que l’on est pas le même phénomène dans les autres langages. Culture ? Masse ? Outils ?

    • Sam Post author

      On a OSDC déployé sur un site à nous. Avantage: c’est du Django et c’est open source. Inconvénient, ça a été codé par de bons devs, mais pa par des développeurs Django: aucune convention n’est suivie, les perfs sont horribles, etc. Mais c’est vrai que ça demande qu’à être améliorer, et si on l’utilise plus, il y a pas de raison de contribuer.

      Ca pourrait être chouette un outil comme ça pour la france.

  • LeMeteore

    Salut a tous,
    je suis tout a fait d’accord avec tout ce qui s’est dit jusque là, En fait, c’est tout le probleme qui est identique ici a Dakar (en Afrique?).

    Le projet qui aurait pu changer la tendance, semble lui aussi mourir a petit feu (s’il n’est pas deja mort).

    D’apres cette carte nous sommes 11, faisant du django. Je suis le plus jeune de tous, J’en connais quelques uns. Obtenir un peu d’attention de leur part est un veritable chemin de croix.

    Les anciens reussissent a devenir des cador, terminent freelance (solo) et ne viennent plus aux rencontres. Avec des amis, nous avons organisé ça dernierement. On a tenté d’avoir les meilleurs sur ce coup, plusieurs nous ont planté au dernier instant. Pas de soucis, on essayera d’en faire une autre.

    Ce que je propose, faire comme moi, quand c’est possible, sacrifier un peu de son temps (ceux qui travaillent avec python), profiter des ressources disponibles au taf (salles, projo, etc), et faire des choses, chacun a son petit niveau.

    Cordialement.

  • Sam Post author

    C’est vrai que la communauté francophone est large en plus donc y a du potentiel. On a des followers du canada, de belgique, de suisse, de l’algérie et au sénégal et mali.

    Par contre la carte django est pas vraiment représentative: je crois qu’il y a un gros bug. En effet, il y a plein de profiles qui y sont mais n’apparaissent pas sous forme de points.

    Au dela d’organiser des évenements (ce qui est déjà un autre niveau, chapeau @lemeteore), communiquer entre pythonistes seraient déjà pas mal.

  • cosmogonies

    Je travaille dans le cinéma d’animation, ou je fait decouvrir python a mes collegues scripteurs (ce langage est tres présent dans les gros softs du secteur).
    Lorsque (recemment) il m’est venu une grosse envie de blogger, j’avoue ne m’etre meme pas posé la question du language.
    Travaillant exclusivement en anglais, je ne me voyais pas rédiger en francais. Les mots me viennent en anglais car il s’agit plus de vocabulaire technique ou du jargon-métier que de pensées profondes.

    Ce qui est contradictoire c’est qu’une bonne moitié de mes abos RSS de dev sont francophones (par gain de temps sans doute, le gros de l’info est saisi d’un coup d’oeil ).
    J’aurais tendance a proner le bilinguisme (avec un comboBox de choix de langueˆˆ) mais le taf de redaction serait vite épuisant…

  • Sam Post author

    Pas mal d’ailleurs ce petit blog cosmogonies.

    Mais au final, même en anglais il manque autre chose que des mailling list elitistes pour les pythonistas.

    La meilleure communauté Python anglophone est sur stackoverflow :-p

  • Soli

    La meilleure communauté Python anglophone est sur stackoverflow :-p

    Ben r/python et r/learningpython ne sont pas mal non plus, et même comp.lang.python (oui, je sais, mais bon j’ai plus 20 ans, alors les news ça me parle) sous réserve de ne pas trop y dire n’importe quoi.

    Bref, il y a de quoi faire en anglais.

    En français, je n’ai aucun intérêt particulier si c’est en ligne (d’ailleurs je ne viens ici que pour les articles de cul-ture), IRL c’est autre chose et là il manque peut-être quelque chose, mais bon… les AFPYros sont un bon début, non ?

  • Sam Post author

    C’est vrai que r/python est pas mal (par contre comp.lang.python, c’est carrément élitiste :)).

    Mais je crois que le fais de se dire “on parle anglais” donc on a pas besoin de ressources françaises, ou “les bons programmeurs parlent anglais de toute façon” (ce qui n’est pas entièrement faux), c’est se couper d’un grande partie des devs qui font qu’un communauté est sympa, riche et diversifiée.

    Il faut des débutant, il faut des non anglophones, ils faut aussi des mecs chauvins ou qui ont pas envie de se taper un article anglais. Et surtout, une langue, ça rapproche autant qu’un langage de programmation. Il y a de la complicité et de la solidarité à gagner, tout autant que du dynamisme, dans la francophonie.

    D’ailleurs, rien que pour les blagues pourries, ça vaut le coup.

    Je vous met au défini de faire une blague à deux balles en anglais qui ai toute la portée de notre humour cocorico.

  • LeMeteore

    Donc, on retient quoi?
    – une (autre?) mailing list?
    – une PileDeDebordement? (Stack Overflow)
    – plus d’articles peut-etre? (pour debutants)

    Va peut etre falloir que je me mette a tenir un blog comme celui ci, ouh !!!

  • Max

    Le SO like version fr peut-être une formidable plateforme à synergies à mon avis:

    SO est un peu un système gagnant-gagnant mais ça tiens au fait que sa communauté est de très bon niveau poussée par une curation intelligente. On obtient une réponse généralement très rapidement et celui qui a répondu fait gonfler ses stats (et son égo), acquier des badges, etc, bref une réputation.

    Sur ce modèle on peut très bien y rajouter une sorte d’annuaire des profils des utilisateurs avec leurs points, badge, domaines d’excellence, etc.. Ce qui nous donne un très bon endroit à avoir sous le coude pour les chasseurs de tête ou ceux qui chercheraient des partenaires pour développer des projets, etc.

    Il y a aussi le fait que lorsqu’on cherche un dev à l’heure actuelle on passe une annonce et on attend les CV? et ? On doit donc juger le type sur son CV ou faire un entretien d’embauche, ça prend du temps, etc. Là on pourrait consulter le profil des utilisateur et avoir un aperçu direct de ses compétences. On gagne du temps et on diminue les chances d’avoir de mauvaises surprises.

    Les utilisateurs pourraient mettre dans leur profil si ils sont à la recherche d’un job ou freelance, partants pour des projets sur leur temps de libre, etc.

    Mais une autre question se pose, un SO like fr juste pour python ou tous languages de prog confondus du coup ?

    Et de plus avant d’en arriver là il faut construire une communauté, ce qui est pas évident ^^

  • Sam Post author

    J’aime bien aussi l’idée du SO like fr. Mais le réduire à Python se serait dommage.

    Après, au delà du blog et des soirées, juste participer (remplir r/pythonfr, pythonlive.fr, etc), se serait pas mal. Tout le monde à pas le temps d’écrire des articles.

  • roro

    Trève de bavardages, passons au concret.
    Notre ami Guido (V.R, pour les intimes), à pondu, plus pour s’amuser que dans un but didactique,(absence de com’) ce petit bout de code.
    Comme je suis curieux de savoir ce que les visiteurs de ce site, appellent: “commentaire”, je vous propose de commenter ce code.
    Sam et max, pourraient noter les plus pertinents, les plus marrants, les plus abscons.
    Ceux qui comprennent le français peuvent commenter en français.
    English pour les autres.

     
    from Tkinter import *
    import random
    import threading
    import time
    import sys
     
    WIDTH = 400
    HEIGHT = 300
    SIGMA = 10
    BUZZ = 2
    RADIUS = 2
    LAMBDA = 10
    FILL = 'red'
     
    stop = 0                                # Set when main loop exits
     
    def particle(canvas):
        r = RADIUS
        x = random.gauss(WIDTH/2.0, SIGMA)
        y = random.gauss(HEIGHT/2.0, SIGMA)
        p = canvas.create_oval(x-r, y-r, x+r, y+r, fill=FILL)
        while not stop:
            dx = random.gauss(0, BUZZ)
            dy = random.gauss(0, BUZZ)
            dt = random.expovariate(LAMBDA)
            try:
                canvas.move(p, dx, dy)
            except TclError:
                break
            time.sleep(dt)
     
    def main():
        global stop
        root = Tk()
        canvas = Canvas(root, width=WIDTH, height=HEIGHT)
        canvas.pack(fill='both', expand=1)
        np = 30
        if sys.argv[1:]:
            np = int(sys.argv[1])
        for i in range(np):
            t = threading.Thread(target=particle, args=(canvas,))
            t.start()
        try:
            root.mainloop()
        finally:
            stop = 1
     
    main()
    • Max

      faut utiliser le tag pre avec attribut lang=”python” par exemple ;)

  • roro

    Les balises de code non pas l’air marcher…Appelez moi le gérant!!

  • Anonyme

    Je trouve la réponse de fero14041 assez juste. Pour ma part j’ai abandonné l’idée de participer à la communauté francophone depuis longtemps, j’ai pourtant essayé un bout de temps avant de laissé tomber. Pourquoi ?

    1) Derrière l’ouverture annoncé et l’apparence accueillante des communautés Fr déjà bien implantés, il est impossible de se faire une place à moins de se conformer à l’état d’esprit qui y règne, qui se révèle et s’impose doucement.

    a. On arrive sur place, on commence à discuter, tout se passe bien jusqu’à ce qu’on aborde un sujet délicat et là c’est le drame. Peu importe la manière dont le sujet est abordé, on est attaqué personnellement juste pour l’avoir abordé, même intelligemment. J’ai déjà vécu ça et j’ai vu d’autres personnes le vivre aussi assez régulièrement et dans des endroits différents.

    b. On ne peut pas poser de questions qui dérive de l’état d’esprit de certaines communautés. J’ai eu un jour le malheur de poser une question sur le thème de l’anti-piratage en annonçant dès le départ que le but était simplement la compréhension du sujet et non la volonté de réaliser quelque chose en ce sens. Les rares personnes ayant essayés de développer la discussion avec moi dans le simple but d’améliorer leur compréhension du sujet se sont fait rembarrer sur le champs de manière virulente.

    c. Les conventions et les normes règnes en maître: il est très difficile de développer un esprit critique / scientifique étant donné qu’il faille batailler des heures avant qu’on puisse faire cracher une explication logique à une réponse normalisé qui est partagé inconsciemment par l’ensemble de certaines communautés.

    2) Les structures qui sont en places depuis longtemps et qui manquent de contributeurs actifs bloquent les initiatives.

    Même chose ici, on arrive, on est très bien accueilli, on nous annonce qu’on peut participer facilement, qu’il faut juste le vouloir, mais lorsqu’on rentre dans le vif du sujet, on se rend compte que rien n’est fait pour favoriser les contributions et même si ces contributions ne viennent pas chambouler l’organisation actuel.

    On nous incite à contribuer et lorsqu’on commence à s’y mettre, il y a un silence qui s’installe, ces mêmes personnes qui nous ont incités ne répondent plus à nos questions ou ne donnent pas de réponses pour nous aiguiller, bref, on se retrouve tout seul. Et bien entendu si l’on continue seul dans son coin, au moment où l’on propose son “travail” finale, ça ne va pas, il faut changer pleins de choses, ça n’est pas conforme aux attentes, etc.

    3) Des personnalités envahissantes.

    Sujet tabou mais oui, un certains nombre de structures/communautés ont laissés des personnalités envahissantes prendre place dans les espace publiques. Ces personnes peuvent être très sympathique et joviale au premier abord, mais envahissent totalement certaines discussions et espaces publiques et étouffent littéralement les personnes qui sont plus timides ou mesurés.

    4) Une communauté anglophone riche et mature

    Il y a quelques années, après avoir épluché les communautés Fr Python, je me suis intéressés aux communautés anglophone et j’ai ressenti immédiatement une immense bouffée d’air frais envahir mon esprit.

    Bien sur les problèmes cités plus haut existent aussi chez les anglophones mais à une échelle différente et qui n’est pas “bloquante”.

    Il y a par exemple des personnes actives qui sont très conservatrices et à cheval sur tout, mais il y en a autant qui sont très ouvertes sur tous les sujets. Chez les Francophones il y a aussi des personnes très ouvertes mais elles se font malheureusement beaucoup plus discrètes.

    Je ne saurais pas expliquer le pourquoi du comment, mais c’est vraiment un état d’esprit différent et plus vivant qui vibre dans la communauté anglophone Python, on sent que tout est possible lorsqu’on commence à y participer alors que du coté francophone cela apparait comme une montagne quasi-infranchissable.

    [Alors comment dynamiser la communauté Python francophone ?]

    Question difficile… il faudrait d’abord pouvoir sortir des schémas classiques que beaucoup de francophones adoptent lorsqu’ils commencent leur aventure Python. Le schéma le plus courant étant je pense celui que j’ai moi-même suivi et qui m’a amené vers la communauté anglophone.

    En mettant plus en avant les structures récentes et ouvertes comme par exemple pythonlive.fr, les nouveaux pourraient sentir que ce sont des alternatives viables et qu’il n’y a pas d’obligation de se conformer aux toutes premières structures qui se sont créés et qui semble s’imposer fatalement.

    Pour les anciens qui sont déjà bien installés dans la communauté anglophone, ça risque d’être encore plus difficile mais je pense qu’une partie migrera petit à petit et naturellement une fois qu’une vrai communauté francophone ouverte, riche et mature pointera le bout de son nez.

  • Max
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # vim: ai ts=4 sts=4 et sw=4
     
     
     
    # J'importe tout un tas de saloperies de libs pour afficher 3 points à l'écran
    from Tkinter import *
    import random
    import threading
    import time
    import sys
     
    # j'initialise plein de variables parceque c'est fun
    WIDTH = 400
    HEIGHT = 300
    SIGMA = 10
    BUZZ = 2
    RADIUS = 2
    LAMBDA = 10
    FILL = 'red'
     
    # elle je la met à part elle a pas été sage
    stop = 0                                
     
    def particle(canvas):
    	"""
    		Super fonction que j'ai copié sur wikipedia car je
    		pige rien en math et qui va générer des particules (points)
    		à l'écran
    	"""
        r = RADIUS # POILUS
        x = random.gauss(WIDTH/2.0, SIGMA)
        y = random.gauss(HEIGHT/2.0, SIGMA)
        p = canvas.create_oval(x-r, y-r, x+r, y+r, fill=FILL)
        while not stop:
            dx = random.gauss(0, BUZZ)
            dy = random.gauss(0, BUZZ)
            dt = random.expovariate(LAMBDA)
            try:
            	# Quand je danse, quand je danse ça me va !
            	# Et quand tu danse, quand tu danse, ça me va !
                canvas.move(p, dx, dy)
            except TclError:
                break
            time.sleep(dt) # repos brigadier!
     
    def main():
    	"""
    		Générateur de particules de positroneur 
    		désintégrant.
    	"""
        global stop
     
        # Instantiation de l'objet graphique tkinter
        root = Tk()
     
        # définition des valeurs de largeur et hauteur du continum espace-temps graphique
        canvas = Canvas(root, width=WIDTH, height=HEIGHT)
        canvas.pack(fill='both', expand=1)
     
        # nombre de particules chargées positivement
        np = 30
        if sys.argv[1:]:
            np = int(sys.argv[1])
        for i in range(np):
        	# Multithreading (un peu comme internet, écouter de la musique tout en payant le téléphone...)
            t = threading.Thread(target=particle, args=(canvas,))
     
            # En route Simone!
            t.start()
        try:
            root.mainloop()
        finally:
            stop = 1
     
    main()
  • roro

    Ah! ban, on comprend de suite beaucoup mieux.
    Comme disait ma grand-mère: “si tu veux attirer de la volaille, jette plutot du mais égrainé que des boites de petit pois-carotte”.
    Mais dis voir, tu n’a pas parlé du piège à ours qui se trouve en entrée de grotte…à savoir: le “T” de tkinter.
    Un débutant qui charge la 3.2(puisque c’est la plus fraiche), risque fort de proférer des mots ne figurant pas dans le dictionnaire.
    Il est toujours difficile de se placer plus bas que ceux qui sont en bas, car la progression dans l’acquisition d’un savoir
    à tendance à souder les vertèbres..Ce qui empeche de se baisser.

  • roro

    Pour illustrer le message de l’anonyme, une anecdote:
    Sur un site d’open source, un gars trés fort, du type: esthète, artiste, et sans doute rigoriste; poste un code. le code marche avec de petites instabilités. J’ajoute une fonctionnalité, qui fait sortir du bois un bug qui contre ma modif. Aprés avoir chassé le bug pendant une semaine, je me résouds à le contourner.
    Le prog devient stable. Hélas la méthode que j’emploie est,pour le moins qu’on puisse dire, loin d’etre “orthodoxe. Réaction:
    le gars se vexe, et se mure dans le silence.(ce est une des raisons de dans ma présence ici)
    Oh my god !…Que l’humain est compliqué.

  • Max

    @roro Les devs et leur égo… :) (pour le T j’en sais rien j’ai testé sur la 2.6 :), la 3 l’import se fait avec un t minuscule apparement, le débutant doit savoir utiliser google :p )

    @xavier codez.fr pas mal mais seulement 350 membres, ceci dit ça a l’air neuf, ils ont visiblement l’intention de couvrir un peu tout et n’importe quoi, plaza42 immo, code, entrepreneurs, déboucheurs de WC, astraunotes, à voir…

  • Sam Post author

    Codez, ça se tente. Faudrait essayer de participer. C’est toujours moins de boulot que de lancer le notre.

    Par contre les gars, utilisez un pastebin pour poster les snippets, ça craint sinon.

    Cela dit, ça pourrait être une bonne idée un article par semaine sur le thême “expliquez moi un script”. Vous postez un script par le formulaire de contact, et on l’explique dans l’article.

  • Sam Post author

    J’ai posté le code commenté en complément de la version de Max:

    Cliquez ici (tu l’as cherché max :-p)

    C’est vrai que la sienne est plus marrante :-)

    Il serait intéressant aussi de réécrire le programme pour voir comment on pourrait l’améliorer.

    • Max

      @sam

      Error
      Could not decrypt data (Wrong key ?)

      Pas fichu de nous faire un copier/coller correct :p

  • roro

    Un forum de prog, ça vit par le code.Si ça ne vit que par les com’ des visiteurs, ça part souvent en “live” quand ce n’est pas en “torche”.
    Comment comptez vous faire avec les intributeurs compertinents ?
    Une rubrique séparée ?
    Méfiance, “Famille de France” veille! vous avez un bon avocat ?
    Parce que ça risque de décoiffer…les troll aussi veillent ..
    Pour les snippets, c’est au niveau Droits d’auteur, propriété intellectuelle étoussa…Mayrde, je comptais poster le source d’IE v21 béta, je vais attendre un peu alors.D’ailleurs, il ne me reste plus de sacs à vomi, ça tombe bien.

  • Gael

    Personnellement je me suis investis pendant des années. Et je continue toujours un peu. Je suis trésorier de l’AFPY. J’organise les AFPyro parisiens en majeur partie (le site est afpy.ro, d’ailleurs). Je tiens des stands à l’occasion. Et je tache de faire une soirée Python à La Cantine parisienne tous les deux/trois mois (2 cette année).

    L’AFPY c’est essoufflée principalement parce que sont bureau ne se renouvelle pas. L’association a plus de 7ans, son site aussi. Ca lasse. Moi le premier. Mais c’est en train de changer. Il y a de nouveau des gens motivés. PyconFr n’aura jamais été organisé aussi peu à l’arrache. Avec un site refais à neuf, en Django. C’est un peu la preuve que quand on veut, on peut.

    L’autre problème (si c’en est un) est que l’AFPY n’a jamais su fédérer la communauté Django. Qui est probablement la plus grosse communauté python française actuellement (avec les scientifiques qui eux sont trop discret au niveau associatif). Du coup, il y a comme un éparpillement, effectivement.

    En tout cas, si vous avez des idées et que vous êtes prêt à les mettre en place (peut-être tout seul, oui), l’AFPY n’a, à ma connaissance, jamais refuser de soutenir ou mettre en place quoique ce soit.

  • Muchos

    Loin de moi l’idée de freiner toutecette créativité, mais en quoi les forums (Developpez, etc) ne font pas déjà le boulot ?

  • Sam Post author

    @Muchos: il suffit de voir l’activité sur SO pour comprendre qu’on est à des lieux d’avoir le 10eme de la qualité sur une forum lambda. Ceux de developpez.com on par ailleurs un niveau loin d’égaler les fora USA. Des questions toutes simples reviennent encore et encore, preuve qu’elles n’ont pas trouvé de réponse, où que la réponse est mal mise en avant.

    @max: pas fichu toi, de copier la clé jusqu’au bout au lieu de cliquer sur le lien mal surligné par wordpress. Alors je te met un lien qu’un ami à toi m’a conseillé.

    @roro, j’ai arrêté de te suivre après ton 4eme pastis.

    @gael: 7 ans déjà ? Ca date presque du départ de Zyons ça… L’AFPY fait déjà beaucoup hors ligne (c’est un sacré boulot de squatter la cantine régulièrement mine de rien, surtout avec les soifar de chez Pilot system. Je crois qu’il manque essentiellement une communauté en ligne. Rien qu’améliorer le forum de questions sur Python du site de l’afpy (coloration syntaxique décente, ergonomie générale, etc) et lui donner de la visibilité se serait pas mal.

    C’est aussi de notre faute à tous. Quand je vois la galère qu’on a eu pour organiser un afpyro dans notre région, à envoyer mal sur mail juste pour boire une bière et au final annuler, on doit pas être très doué non plus :-)

  • Sam Post author

    @roro: voici une version plus pro (et on pourrait aussi carrément faire une version corporate, avec des hooks partout).

    Dis moi si ce genre de trucs te parles (commentaire + une versio alternative de script). Si oui on pourrait bien lancer le truc plus régulièrement.

  • Gael

    Oui, c’est Zyons qui a fait les premiers commit du site.. Un Plone qui n’a pas vraiment bougé depuis. Et qui comprends le forum, tout moisis (pour notre époque). On est d’accord. Le problème étant que 1/ on aimerait garder l’historique 2/ utiliser un forum écrit en python (je suis un peu extrémiste la dessus, mais bon, y a moyen de faire des concession..) 3/ quelqu’un de motiver pour faire la migration :)

    Beaucoup de gens s’y sont penchés mais personne n’a été au bout.

    J’ai tenté d’initier un sprint avant pycon fr (il y a deux jours de sprint avant les conf) sur ce sujet “refonte du site AFPY”. Sans trop de succès. Who’s in ?

  • Sam Post author

    Tout est dans le:

    Who’s in ?

    D’ailleurs, faut que ça soit en Plone ?

  • Gael

    Non, y a déjà des bouts de plein de technos. Du sphinx pour les parties statique. Un wiki (pourris aussi) en moinmoins. La partie membres en pylons pour gérer un ldap.. On sait déjà plugger plein de frameworks. L’important étant de pouvoir s’authentifier via un cookie partagé. Mais ça, je sais déjà faire pour n’importe quel framework python (pour du php ça serait plus relou).

  • Sam Post author

    C’est du WSGI ? On pourrait peut être juste refaire la partie forum et la wsgi plugger dans votre arbo URL ?

    Ou alors mettre un truc genre OSQA mais uniquement orienté Python ?

    Les gars pour le LDAP vous aviez vu grand :-) Y a 20 personnes sur le site.

  • Gael

    C’est du WSGI, oui. Donc oui, on pourrait plugger du OSQA. Et probablement il réimporter l’existant.

    Pour ce qui est du ldap, oui, on a vu grand. Mais il y a plus de 285 membres (qui cotise) et bien plus de 1000 inscrits sur le site (j’avais calculé il y a bien 2/3ans). Et le ldap gère les adhésions. En plus c’est un bonheur à gérer grâce à http://pypi.python.org/pypi/afpy.ldap ;)

    • Sam Post author

      Y a les djangocongs à Rennes et à Toulouses bientôt, je pense qu’il faut proposer un truc comme ça en sprint.

      De bons dev Django seront sur place, ça vaut le coup de tenter.

      Peut-être pas virer le forum non plus, car OSQA c’est que pour des questions techniques alors que la communauté, ça a besoin de discuter sur plein d’autres trucs.

  • Gael

    D’après ce que j’ai vu, Rennes, c’est un jour de conf. Ca laisse pas trop le temps de faire quoique ce soit.. Je ne sais pas pour Toulouse. Je n’étais pas au courant de l’événement (soupir).

    Personnellement j’aimerais vraiment dégager ce forum. Ca ne me générais pas de voir des question non technique. De toute façon, il y a des tags.

    Je dois toujours avoir du code pour exporter les data du forum dans un coin. Il n’y aurai plus qu’a importer ça, et gérer des redirections d’urls.

    Perso je peux aider à:

    – fournir les données à importer
    – intégrer l’auth (il suffit d’utiliser http://pypi.python.org/pypi/django-authtkt, en fait)
    – gérer les redirections
    – intégrer l’appli dans le site actuel

    Pour le reste… Je n’ai pas le temps (en fait j’ai déjà pas le temps de faire ce que je propose de faire… ;))

  • Sam Post author

    Ouai mais OSQA c’est génial pour obtenir une bonne réponse à une question qui en à une. Ca exclut par contre les débats, les questions d’opinions, les best of (il en reste sur SO, mais c’est historique, les nouveaux se font dégommer), etc.

    Un bon forum reste important pour une communauté. Ou alors faut un meta-OSQA comme pour SO, ça peut le faire.

    Et surtout OSQA tel quel ça le fera pas. C’est une bonne idée sur le long terme, mais ça demande vachemement de taff à rendre utilisable: c’est lent et et assez confu par rapport à SO.

    Un forum c’est presque plug and play, et vu qu’on est tous pris pas le temps, juste mettre un truc genre DjangoBB (avec au moins une coloration syntaxique raisonable, des options de bases, etc), ça sera déjà pas mal.

    Il y a une liste de forum django ici: https://code.djangoproject.com/wiki/ForumAppsComparison

    Faut pas tout révolutionner d’un coup, mais déjà commencer par quelque chose, ça peut enclencher le mouvement.

    Max est en train de nous préparer un petit truc déjà pour rentre la consommation de l’actualité un peu fun, ça permettra peut être de mettre un peu de dynamisme, puisqu’on va voire ce que font les uns et les autres.

  • roro

    Salut, la réponse a été un peu longue à venir, j’espère qu’elle ne contient pas trop de conneries.
    (Apparté concernant l’alcool: je rappelle que le premier mot de la devise, est :Liberté. Chacun est donc libre de consommer un produit causant des ravages irréversibles sur l’organisme, comme sont libres ces enfants qui pratiquent l’anoxie pour atteindre l’ivresse sans payer la TVA. Je ne porte pas de jugement, ayant consommé moi-meme par le passé des produits illicites hautement dangereux)
    Pour ce qui nous occupe:
    Tes com’ portent sur les modifs que tu a pratiquées sur le code, et leur “pourquoi”. Trés bien, trés clair . Mééh! tu dois reconnaitre que l’ensemble s’adresse à un public déjà averti.
    (def_init, self,parser,threads…ext)
    Or, il s’agit en l’occurence, de convaincre des gens ayant des envies de prog, de se mettre au python.
    Ces gens, ont pour beaucoup, pratiqués d’autres langages.Je rappelle que la communauté”Basic” de l’époque était trés importante et trés active, malgrés l’absence de communication.
    Le principal inconvénient des tutos, est la rareté d’exemples fonctionnels autonomes, et duement commentés.(je te mets au défi de trouver un tuto dans lequel on explique par quoi sont remplacés, en python, les gotos et les gosub) dans un tuto de python, il n’y a que du python. Et c’est une erreur. il y faudrait meme des références à la vie courante, mises en miroir de certaines fonctions du langage.( ce qui demande de la part du pédagogue, une imagination féconde, et une sacrée maitrise du sujet, c’est une autre histoire…)
    Il me semble que la mise au point d’un prog, qui pourrait etre celui de Guido, qui avec ton apport est devenu plus “charnu” (niveau notions abordées); qui contiendrait une explication détaillé de chaque action, la plus infime soit-elle; et auquel l’apprenti pourrait se reporter, comme à un tuto; serait une bonne chose. Et qu’avec trois ou quatre progs de ce type, il est possible de couvrir une bonne partie du langage.( les amateurs faisant principalement du “desktop”
    Il s’agit bien d’une méthode d’apprentissage différente de celle des tutos traditionnels. Qui, il faut bien le reconnaitre, est un echec, puisque peu de candidats passent le cap des fonctions.(je ne parle pas de tes élèves, mais des amateurs)

    Je sais qu’il est extrèmement difficile de revenir en arrière, car le désir de tout un chacun (y compris toi) est d’aller de l’avant, autant qu’il est fatiguant d’apprendre à un enfant à tenir sur un vélo. je conçois de meme que tu soit plus enclin
    à dialoguer à ton niveau, qu’avec des analphabètes.
    Mais tant que ce travail ne sera pas fait, les mordus de prog (et il y en a), en seront réduits à se rabattre sur les Basics.(ce qui est fort dommage)
    Je suis certain que si de tels programmes étaient mis au point et largement diffusés, ils feraient “date” dans l’histoire de l’apprentissage de la prog.
    Je ne m’étends pas plus, sous peine d’etre étiqueté d’envahisseur”, et ayant de plus un chat à fouetter.

    • Sam Post author

      Certes. C’est pour ça que le site du zéro a eu tant de succes d’ailleurs.

      Tu exprimes en résumé ce que Max me répète depuis 2 ans.

    • Max

      @roro c’est exactement ce que je dis à Sam depuis que je me suis mis au python sous son dictat.
      Et c’est pour ça aussi qu’on a décidé de faire ce blog, pour proposer des tutos de cas d’utilisation particulier, voir le tuto sur Simuler un cookie avec Mechanize en python ou Traduire du texte avec UrlLib, BeautifulSoup et Google Translation.

      Mais je me rends compte que Sam publie de la “Doc” (très bien faite au passage) plutôt que des exemples concrets comme on en aime bien. Ceci dit c’est surtout moi qui suis un peu à la bourre pour vous proposer ce genre d’article car je m’étais dis qu’à chaque nouveau problème résolu en python je posterais un exemple et je traîne, mes excuses plates de grosse larve…

      Bon j’ai commencé Python il y a seulement 1 an et 1/2 donc je ne maitrise pas les subtilités, venant de VB et PHP je code plus comme un arracheur de dent mais il est clair qui manque ce genre de petit tuto prêt à copier/coller pour voir ce que ça fait de suite là tout de suite maintenant tout de suite là ! et voir après comment ça marche ^^ (j’en suis friand…)

      Je retourne à mon rosé sinon il va se réchauffer… Et le rosé pas frais ça va pas avec le pâté au saindoux.

  • François

    @sam : Les “commentaires + une version alternative de script” sont excellents. De mon point de vue, c’est ce qu’il me manque pour progresser dans le style général de programmation : c’est selon moi ce qui est le plus difficile à acquérir après la bonne connaissance des bibliothèques et des subtilités de langage que vous couvrez déjà.

  • Recher

    Bonjour tout le monde. J’arrive un peu tard, j’étais à la piscine, ou quelque chose comme ça.

    Juste pour dire que c’est moi le “type qui joue avec des bulles de couleur irisées”, dont parlait roro après son 2,5 ème pastis, dans ce commentaire.

    (Merci à lui de me permettre de parler de mes exploits ici, et de faire gonfler mon ego).

    J’ai créé “Blarg”, un petit jeu vidéo en python + pygame. Et comme j’avais envie de passer du temps à écrire un truc bien fait et clair, j’ai mis plein de commentaire dedans. Vous pouvez choper le jeu et son code source ici :
    http://www.indiedb.com/games/blarg/downloads

    J’ai fait ça y’a un an. Je continue d’en être fier. Mais avec le recul, je me rends compte qu’il y a des manques :

    – C’est commenté trop proche du code. Il n’y a pas de doc globale, décrivant rapidement le rôle de chaque classe, et comment elles interagissent entre elles. Du coup, quelqu’un qui veut explorer mon code ne sait pas par où commencer.

    – Ce n’est pas destiné aux gens qui ne connaissent rien à python et pygame, et qui voudraient l’apprendre. Mais pour ça, il y a les tutos de pygame.org.

    – Je suis peut-être un peu trop verbeux dans mes commentaires de code. (Je le suis en général)

    Je ne sais pas trop en quoi ce jeu, ainsi que ma personne, pourraient apporter quelque chose à la communauté de l’anus python francophone. Et, comme déjà dit ici où là : “J’ai pas l’temps” ™. Mais je vais surveiller ce que vous fomentez ici, dans ce blog, et je me joindrais à vous selon mes capacités et mes ressources.

    Et sinon, je connais rien à Django, j’en ai jamais fait.

    • Max

      je viens de jouer à blarg, les bruitages osnt comment dire….Fantastiques…
      me suis bien marré quand meme, beau taf et ambience délire

  • Sam Post author

    Il est SUPER bien commenté ce jeu. Ok, je veux bien qu’on veuille autre chose que ça, mais ça mérite pas critique. Le boulot de doc est énorme.

  • Guts

    Hola.

    Toujours débutant en python, je suis assez d’accord avec le constat : 2 petits tours du côté du web francophone et puis s’en va du côté des chexpir-hablantes !

    Peut-être est-ce aussi lié au fait que python est utilisé sous de multiples formes dans de multiples domaines. Par exemple je me suis à pythonner pour des besoins professionnels dans le secteur de la géomatique (SIG, carto, toussa). Et de là plusieurs constats :
    – on apprend à coder mais on n’est pas dev
    – on a un besoin précis mais une fois assouvi on s’en tamponne le coquillard de pousser notre avantage chez le Monthy Code
    – on code souvent comme des sales en oubliant les règles de base : partager, commenter, ne pas réinventer la poudre, etc.
    – et surtout. on s’appuie d’abord sur une communauté liée à notre domaine d’activité. Dans mon cas, le PortailSIG ou GeoRezo entre autres.

    Pour continuer avec mon propre cas puisque j’ai vocation à être un modèle universel (j’ai décrété que c’est la journée de l’ego aujourd’hui), je développe des petits outils et même avec des GUI (ooooh dans l’assistance) mais j’ai toujours pas franchi le cap de tout emboité dans des classes alors même que je sais que ce serait foutrement mieux et beaucoup plus sexy. Pourquoi ? parce que c’est un niveau d’abstraction assez élevé pour qui n’est pas dev et que quitte à me faire humilier, autant que ce soit par une délicate créature tout de cuir vêtue que par une bande de dév assoifés de ridicule ^^ En plus, dans ma communauté pro, tout le monde s’en foutra surement.

    Merci de votre attention

    PS : le trombone = une vraie madeleine de Word97 => Z’êtes cons, j’ai failli chialé en tapant !

  • Sam Post author

    Héhé, on se force à intégrer des easters eggs un peu partout ^^

  • Stéphane

    Paradoxalement, la multiplication des sites consacrés à Python sans que l’un d’eux ne dépasse vraiment du lot en terme de taille est probablement aussi un problème.

    Tant qu’un site ne prendra pas le pas sur les autres, la dilution perdurera. A contrario, je pense à linuxfr.org et plein d’autres sites avec une visée équivalente (un gros et plein d’autres). AMHA, il faudrait une fonctionnalité fortement différenciente pour réussir à fédérer autour de lui.

    J’ignorais l’existence du reddit Python fr et je n’ai jamais vraiment suivi PythonLive.fr. C’est pourquoi mes quelques articles sur Python ne sont agrégés que sur le flux RSS de l’AFPY. Mais sur ce flux-là aussi, Sam&Max domine…

  • Julien

    Hello à tous :)

    Merci à tous d’essayer de faire bouger les lignes :)

    Python et Django ne sont pas assez visibles en France et dans le monde du web ou du mobile en général. (deux aspects qui attirent le plus d’utilisateurs imho). Python apparait encore trop comme un language de scientifiques des années 80 :)

    Nous organisons les meetups Django Paris, évènements réguliers qui permettent d’échanger entre utilisateurs; n’hésitez pas à nous rejoindre : http://meetup.com/Django-Paris . Nous organiserons prochainement un évenement de plus grande ampleur orienté débutants qui permettra de faire découvrir Django et de présenter ses nombreux succès.

    Par ailleurs pour ceux qui ne connaissent pas ce projet : kivy.org est un framework python pour interfaces tactiles, desktop ou mobiles Android/iOS. très prometteur et important pour l’attractivité de python ! N’hésites pas à contribuer ;) http://github.com/kivy/kivy

    Merci à S&M pour ce blog de qualité !!

    Julien

  • Sam Post author

    Karl, va falloir relir tous les coms avant le tien là…

  • Guts

    Lecture des commentaires terminés.
    Perte de productivité**2 parce que c’est vendredi après-midi.

    Un billet résumé avec une to do list comme tout le monde aime et personne ne suit, peut-être ?

    Et un glossaire bien sûr !

    PS : avec un formulaire de contact en français, ce serait vahcement plus molière-friendly ^^

  • Sam Post author

    Pas con la todo list…

    Ouai, le formulaire de contact est un symbole de notre feignasserie.

  • martin

    Bonjour à tous, il y a aussi un élément que vous négligez: l’utilisation de plus en plus conséquente de Python dans les SIGs (Systèmes d’Information géographique) que ce soient dans les logiciels Open Source comme QGIS ou GRASS GIS ou les logiciels propriétaires comme ceux d’ESRI. C’est peut-être un domaine très spécialisé mais il est en plein boum.

    Et là, les questions/réponses se traitent exclusivement dans les forums consacrés aux SIGs (francophones, anglophones, hispanophones, etc.) et les scripts sont soumis dans des sites comme le Portail SIG où j’essaie humblement de partager mes connaissances en Python avec les Sigistes. C’est dans ce domaine que le manque de connaissances de Python se fait le plus sentir chez les utilisateurs, qu’ils soient anglophones ou francophones ou …. Ils ont en effet tendance à prendre Python pour un simple langage de script de leur application alors qu’ils ne font qu’utiliser un module particulier avec le langage Python. Mon but est de les ouvrir à autre chose dans l’utilisation de Python.

  • petit nain

    Pour moi :

    – manque de qualité pro et de méthodologie associées aux scripts et/ou projets,

    – référenciel des librairies bordélique

    – beaucoup de librairies de mauvaise qualité qui engendrent un bruit

    – manque de facilité, d’homogénéité et de qualité dans le packaging,

    – un travail supplémentaire à fournir pour utiliser les processeurs modernes disposant de multiples coeurs,

    – une communauté française élitiste surtout sur les newsgroups français avec un humour pourri.

    – et bien sûr une paire de traîtres qui sont passés à Java et cela est néfaste à une communauté quant à la crédibilité du langage en milieu professionnel.

    On arrivera pas à vaincre seulement avec django et son drainage. Django est orienté site web et est très difficile à intégrer dans un environnement professionnel industriel existant.

    Il faut des grosses applications desktop, des produits phares comme django et des applications pour mobiles. Il faut également élever la qualité et adopter des normalismes pour les librairies.

  • petit nain

    Et le truc le plus génial ce serait une documentation avec les principaux design pattern commentés en français avec des exemples concrets de qualité. Et là je rebanderais comme un nouveau né ;)

  • Sam Post author

    – manque de qualité pro et de méthodologie associées aux scripts et/ou projets,

    rhôoooooooo. Là t’es dur. Je connais quasiment aucun langage qui ai justement cette qualité générale dans les libs.

    – référenciel des librairies bordélique

    +1

    – beaucoup de librairies de mauvaise qualité qui engendrent un bruit

    Bon, en même temps c’est vrai pour tous les langages populaires.

    – manque de facilité, d’homogénéité et de qualité dans le packaging,

    Tu m’étonnes. Le packaging, c’est la misère.

    – un travail supplémentaire à fournir pour utiliser les processeurs modernes disposant de multiples coeurs,

    Bon ça, c’est un faux problème. D’abord, il y a des tas de facilités, ensuite, le nombre de personnes qui en ont vraiment besoin est quand même méga limité.

    - une communauté française élitiste surtout sur les newsgroups français avec un humour pourri.

    Tellemement vrai. Un gros plus pour ruby de ce côté. Ils ont de l’humeur eux.

    On arrivera pas à vaincre seulement avec django et son drainage. Django est orienté site web et

    Très vrai.

    est très difficile à intégrer dans un environnement professionnel industriel existant.

    Très faux. Je connais très peu de framework aussi faciles à adapter justement.

    Il faut des grosses applications desktop, des produits phares comme django et des applications pour mobiles.

    Pas sur que ce soit la prio, mais ça peut pas faire de mal.

    Il faut également élever la qualité et adopter des normalismes pour les librairies.

    Nain nazi va !

    Et le truc le plus génial ce serait une documentation avec les principaux design pattern commentés en français avec des exemples concrets de qualité. Et là je rebanderais comme un nouveau né ;)

    J’y ai pensé figure toi. J’ai tellement pas le courage…

  • Anucunnilinguiste

    Faudrait aussi un nouveau logo avec une femme à poils tellement plus vendeur !

  • Sam Post author

    Je propose l’image de notre tout premier article du blog.

  • cracked software downloads

    I recently could hardly abandon your website prior to recommending that we essentially appreciated the usual facts anyone deliver for your attendees? Are going to be once more on a regular basis as a way to take a look at cross-check fresh blogposts

Comments are closed.

Des questions Python sans rapport avec l'article ? Posez-les sur IndexError.