Rédaction d'une collection de tutoriels Python

Qui ? Quoi ? Comment ?

a marqué ce sujet comme résolu.

Malheureusement je n'ai pas de notes. Les idées me viennent généralement au fil de discussions ou en réfléchissant à la façon dont je présenterais les choses, mais je travaille sans brouillon pour garder le ton le plus "conversationnel" possible.

Cela dit j'aime assez l'idée de prendre le livre de Swinnen (que j'ai conseillé à mon neveu…), de le porter et de l'améliorer au fil de l'eau. Au début c'était ce que je voulais faire avec le tuto du site orange avant de m'apercevoir que les bases étaient à revoir complètement. À propos des bases dans le Swinnen, il y avait seulement quelques retouches à faire dans mon souvenir (par exemple le nommage des variables qui n'est pas pep-08).

Edit : a propos de Kivy, j'avoue que je suis un petit peu indécis. Pour moi, c'est incontestablement une techno d'avenir, avec beaucoup de choses excellentes qui gravitent autour, mais le statut un peu flou de sa compatibilité avec Python 3 m'embête un peu.

Edit2 : précision sur mon ancien message, je ne suis pas "par choix" dans une période-éponge, simplement je suis sous l'eau au boulot en ce moment donc je n'ai simplement pas le temps de rester concentré sur un gros projet en dehors. Par contre tout ce que j'acquiers au boulot pendant ce temps est clairement du matériel pour des tribunes libres parce que ça a un intérêt certain. Si j'avais les ressources (temps libre…) j'aurais bien fait un ensemble de billets qui aborde tous ces sujets en utilisant un toy-project comme fil rouge, par exemple développer un embryon de système de stockage basé sur redis, puis plusieurs façons d'y accéder dont une API REST avec aiohttp.web, ou un point de montage comme pseudo-système de fichiers avec fuse, le tout organisé comme des micro-sercices dans des containers docker, puis à partir de là montrer la tête qu'auraient ces services en Go, ou comment déployer tout ça avec Salt, ou encore comment élaborer une stratégie correcte de test pour faire de l'intégration continue… Chaque mot-clé étant un billet de tribune-libre. Il y a une infinité de choses à dire sur la gestion de projets en info, si on décide de sortir du cadre du seul code métier des applications.

+0 -0

À propos des débutants,

+1 -0

Cela dit j'aime assez l'idée de prendre le livre de Swinnen (que j'ai conseillé à mon neveu…), de le porter et de l'améliorer au fil de l'eau. Au début c'était ce que je voulais faire avec le tuto du site orange avant de m'apercevoir que les bases étaient à revoir complètement. À propos des bases dans le Swinnen, il y avait seulement quelques retouches à faire dans mon souvenir (par exemple le nommage des variables qui n'est pas pep-08).

nohar

Ça fait longtemps que je ne l'ai plus lu, donc je ne me rends pas bien compte de la quantité de travail, mais c'est un sujet à étudier sérieusement car je crois que ça formerait une bonne base.

  • Qu'en est-il du tuto de pascal.ortiz ? Vous étiez plusieurs à être assez enthousiastes (ce qui n'était pas mon cas). Il avait dit qu'il l'enverrait en validation, mais semble l'avoir supprimer. Sans forcement donner de détail, on fait un croix dessus ou non ?

Gabbro

C'est en écrivant mon message jeudi que j'ai découvert sa suppression, ce qui m'a plutôt étonné. Donc tant pis, je crois qu'il faudra faire sans. j'aimais bien l'approche.

Gabbro

Comme Swinnen, je ne l'ai pas relu récemment, donc je n'ai que des souvenirs partiels. Mais ce qui me gêne en règle générale avec leurs contenus, ce sont les approximations parfois nombreuses, mais à côté de qualités pédagogiques indéniables. Ils connaissent le site, et sont assez faciles à approcher, je pense que l'on pourrait leur parler directement si l'on souhaite importer l'un ou l'autre article.

J'ai voulu regarder un peu le travail que représenterait l'import du cours de Gérard Swinnen, et surtout s'il y avait moyen d'automatiser le tout.

La source est en odt, qui n'est déjà pas géré en entrée par pandoc. J'ai essayé de travailler avec un export HTML du document, mais le résultat est un fichier imbuvable de 60000 lignes qui contient encore beaucoup de tags HTML.

Il y a aussi le problème des images, elles sont ancrées à des endroits précis du code dans le fichier source, il n'est pas possible d'en faire de même en Markdown.

C'est donc un import en grande partie manuel qu'il faut réaliser, et c'est un travail colossal (le document source fait 473 pages).

Ok, donc on fait quoi ? Je ne sais pas quel est l'état de l'importation sur ZdS (donc je ne sais pas non plus quelle est la bonne approche pour rédiger hors-ligne), mais si tu crées un tuto avec plusieurs auteurs pour porter ça à plusieurs, j'en suis.

Ok, donc on fait quoi ? Je ne sais pas quel est l'état de l'importation sur ZdS (donc je ne sais pas non plus quelle est la bonne approche pour rédiger hors-ligne), mais si tu crées un tuto avec plusieurs auteurs pour porter ça à plusieurs, j'en suis.

Lz36GQfANCkOchnWu2yv

Si on part dans l'optique de l'importer ici, il va falloir en premier lieu le convertir en Markdown (depuis l'epub, donc, puisque ça passe assez bien), le découper en différents fichiers (un par chapitre), et générer l'archive correspondante pour l'importer ici (ça peut se faire assez facilement).

pandoc prend le format odt en entrée (je viens de tester).

yoch

Ah, j'ai dû faire mes tests avec une version trop ancienne. Il refusait de me le traiter en indiquant explicitement que je pouvais plutôt essayer depuis un export HTML réalisé avec LibreOffice.

Si on part dans l'optique de l'importer ici, il va falloir en premier lieu le convertir en Markdown (depuis l'epub, donc, puisque ça passe assez bien), le découper en différents fichiers (un par chapitre), et générer l'archive correspondante pour l'importer ici (ça peut se faire assez facilement).

Ensuite, il faudra corriger les erreurs que l’import auront fait, adapter le contenu aux spécificités de ZdS (utilisation des blocs ?), importer les images, etc. Quelqu’un a commencé l’import ?

+0 -0

Oui bien sûr, il y a encore tout ce boulot après, je parlais simplement des étapes nécessaires pour pouvoir commencer le travail collaboratif. Après, libre à nous de l'importer directement sur le site pour travailler sur le cours, ou de le mettre à disposition sur un dépôt Git externe.

J'ai juste regardé la sortie de pandoc pour me donner une idée, mais je n'ai pas tellement le temps de m'occuper de l'import pour le moment.

Qu'appelles-tu un niveaux intermédiaires ? Car je crois qu'au contraire, les contenus les plus avancés s'adressent aux gens de niveaux intermédiaires, et qu'au-delà de ces niveaux, les développeurs s'orientent plutôt vers des documentations que des tutoriaux.

Oui bien sûr, il y a encore tout ce boulot après, je parlais simplement des étapes nécessaires pour pouvoir commencer le travail collaboratif. Après, libre à nous de l'importer directement sur le site pour travailler sur le cours, ou de le mettre à disposition sur un dépôt Git externe.

entwanne

Si jamais vous souhaitez travailler sur Github, sachez que depuis Zest Writer vous pouvez importer votre tutoriel de Github, pour le réinjecter ensuite sur le site en un clic. Ce qui peut vous éviter bien des aléas.

par intermediare j' entend ceux qu'ont lu openclassroom+Swinnen+codes sources à droite à gauche + avoir codé plusieurs petits projets.

En fait je me lasse devant les mini TP et je me sens completement dépassé par des gros projets. Les meilleurs jeux de la pyweek rentrent dans la categorie "intermediaire" en terme de difficulté, en plus d' être attrayant. (en plus des jeux je m' interesse aussi au module Requests, sqlalchemy et à Django.)

le tuto de Swinnen est bien fait, qu'allez vous apportez de neuf ?

+0 -0

par intermediare j' entend ceux qu'ont lu openclassroom+Swinnen+codes sources à droite à gauche + avoir codé plusieurs petits projets.

buffalo974

Je dirais que c'est la cible des tutos plus avancés qui sont proposés ici.

le tuto de Swinnen est bien fait, qu'allez vous apportez de neuf ?

buffalo974

Simplement le porter sur le site dans un premier temps. Peut-être le couper en plusieurs cours pour ne pas intégrer tkinter et le réseau dans le cours de base, c'est à voir.

Je suis d'avis de garder le réseau dans un tuto à part également. Le sujet est vaste et il y a BEAUCOUP de choses à dire dessus qui dépassent de loin le cadre du livre de Swinnen.

Que ce soit l'aspect système et bas niveau (socket, select…), les choses un peu plus élaborées et proches du web (socketserver, http.server…), ou les pratiques vraiment modernes (asyncio et la galaxie qui commence à naître atour…), tout cela ne peut être abordé sereinement qu'en expliquant comment ces diverses solutions s'articulent les unes autour des autres, et comment elles se complètent.

+0 -0

Dans le livre de Swinnen, il y a aussi quelques sections traitant de sqlite3, or j'ai justement un tutoriel en cours dont une première partie est en validation.

Après, le mieux ce serait peut-être de ne garder dans le cours de base que ce qui concerne le langage en lui-même, comme ça ça resterait dans la lignée du tutoriel intermédiaire et celui avancé. Et puis de cette manière, les tutoriels/articles sur les modules et trucs annexes (Réseau, Tkinter, Sqlite3, etc.) graviteraient autour de ces trois là. Ce serait plus clair, plus modulaire, et moins redondant à mon sens.

+0 -0

Simplement le porter sur le site dans un premier temps. Peut-être le couper en plusieurs cours pour ne pas intégrer tkinter et le réseau dans le cours de base, c'est à voir.

entwanne

Pourtant c'est ce qu'il y a de plus rigolo dans le livre, et c'est assez central si je me souviens bien. Je sais que Tkinter c'est moins bien que X, Y ou Z, mais en attendant c'est livré avec, simple à utiliser et rigolo. Swinnen présente ça plutôt bien.

Je suis d'avis de garder le réseau dans un tuto à part également. Le sujet est vaste et il y a BEAUCOUP de choses à dire dessus qui dépassent de loin le cadre du livre de Swinnen.

Le mieux est l'ennemi du bien.

Pourtant c'est ce qu'il y a de plus rigolo dans le livre, et c'est assez central si je me souviens bien. Je sais que Tkinter c'est moins bien que X, Y ou Z, mais en attendant c'est livré avec, simple à utiliser et rigolo. Swinnen présente ça plutôt bien.

Lz36GQfANCkOchnWu2yv

Le problème n'est pas le choix de telle ou telle bibliothèque graphique, mais d'axer l'apprentissage autour de ça. De mémoire, la programmation orientée objet se confond avec la découverte de tkinter dans le livre.

Je ne suis pas partisan du « c'est ce qu'il y a de plus rigolo », car ce sont clairement les parties que j'avais zappées quand j'avais lu ce livre pour apprendre Python. Je cherchais à connaître le langage pour pouvoir me débrouiller avec, pas à faire joujou avec des fenêtres et des boutons.

Les parties sur tkinter doivent persister, car ça peut intéresser du monde, mais je ne suis pas d'avis de les conserver dans le cours de base.

L'autre raison pour laquelle je prefererais ne pas integrer le réseau à la partie portée du livre de Swinnen, c'est que le portage a quand même pour objectif de combler les lacunes du parcours existant, et de le compléter, mais pas de le remplacer. Le projet sur Python sur ce site n'est pas de sortir un cours unique et auto-suffisant mais bien un parcours hypertextuel. Dans ces conditions, prendre aveuglément les mêmes partis-pris pédagogiques que l'auteur d'un livre (la POO par TkInter) serait une erreur évidente.

+1 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte