Apprendre Python, et aider les associations

CC BY-SA 2.0 Marcus Brown
CC BY-SA 2.0 Marcus Brown

Voilà quelques années que je suis dans le développement web. Je me suis naturellement dirigé vers PHP, qui a beaucoup évolué. C’est un langage que j’ai appris en autodidacte puis j’ai utilisé les frameworks Zend, FuelPHP, puis Laravel, que je place largement au dessus, question plaisir. Mais, même si je me suis déjà penché plusieurs fois sur Python, PHP reste le seul langage que j’utilise côté serveur (ne parlons pas ici de JavaScript, svp, ce n’est déjà limite pas un langage, encore moins côté serveur #Buglegacy). Ayant vécu quelques moments frustrants pendant des entretiens liés au fait que je ne maîtrisais pas Python, et le fait que je soit attiré par ce langage depuis longtemps, me poussent à me lancer un défis.

Le défi, le projet

Je vais apprendre Python, en autodidacte toujours, uniquement avec des ressources web. Et le vrai souci quand on se lance dans ce genre d’apprentissage, c’est de trouver un projet qui soit assez gros pour voir un maximum d’aspects du langage, sans pour autant qu’il soit trop lourd, ce qui pourrait être démotivant.

Mon idée de projet est liée à une mauvaise expérience : Je voulais donner un coup de pouce à une association. L’encaissement de dons pour une asso’ reste assez difficile à gérer, et il n’existe pas vraiment de solution clé en main. Les établissement bancaires ne sont pas aidants, etc. Le fait est que je n’étais plus certain de la légitimité de l’association en question, et donc de mon implication dans le projet. Le manque de réactivité de l’association, m’a également stoppé net. Mais, si un outil clé en main existait, et permettait de gérer les dons, en tenant compte des contraintes très particulières des associations ? Un outil qui s’installe sur son serveur web, et qui tourne après un minimum de configuration.

Comment

N’ayant eu aucun mal à réalisé un produit similaire avec PHP, ça ne devrait pas être impossible en Python, au contraire. Soyons clair, je ne vais pas faire natif. Certains diront que c’est une erreur, mais ce que j’aime faire c’est coder pour le web. Donc je vais partir directement sur Django. Ne partant pas de 0 dans la programmation, et ayant déjà appris les fondements de Python, ça ne devrait pas être un souci. Au pire, on apprend de ses erreurs.

Les bénéfices

Apprendre plus en profondeur un langage qui me nargue depuis longtemps, et donner un coup de pouce à des associations qui manquent de cette compétence. C’est un gap assez important, parce que les environnements sont radicalement différents, et je suis aujourd’hui dans une zone de confort avec PHP. Les mécanismes des 2 langages étant fondamentalement différents, et il va être facile de tomber dans : Comment je fais ***TRUC SPECIFIQUE A PHP*** avec Python ?

A chaque étape, je présenterai ici ce que j’ai crus comprendre, les échecs, les trucs cool, etc. Donc si vous démarrez aussi avec Python, on devrait pouvoir s’aider dans les commentaires !

  1. Installer Django, mettre en place l’environnement de dev
  2. Django : La base de données
  3. Django : Utilisation de la base de données via l’ORM
  4. Introduction à Django Admin
  5. Django : les vues et le templating
  6. Django : Créer des formulaires
metrogeek

Comments 3

Laisser un commentaire