J'aime coder en Python mais pas uniquement pour l'esthétique ou la puissance du langage, j'apprécie l'écosystème me permettant de concrétiser une idée en quelques commandes. Je vais prendre un exemple concret avec l'idée du jour qui était de créer un triple store à partir de redis_graph suite à un tweet de Régis Gaidot.
Un projet Python : de l'idée à la publication
Posté dans les catégories : Python, Web Semantique, 6 commentaires.
★ De l'OpenData au LinkedData : exemple de nosdonnees.fr
Je suis en train d'écrire un framework permettant d'apporter du sens et du lien à des données plates (csv, xls, etc), l'objectif est de les rendre directement exploitables par les utilisateurs et surtout d'en faciliter la publication pour les détenteurs originaux. J'ai choisi d'en tester l'application sur des données répertoriées dans le tout nouveau nosdonnees.fr dont je salue l'initiative citoyenne.
Posté dans les catégories : Django, Python, Web Semantique, 6 commentaires.
Bilan personnel sur djangocong
Les rencontres Django se sont achevées hier et il m'a fallu une bonne journée de récupération. Les premiers bilans de Laurent, Bruno, Nicolas, William, Boris et Olivier sont clairement positifs et ça me fait vraiment plaisir. Tout n'a pourtant pas été tout rose, enfin à part le poney ;-)
Posté dans les catégories : Conferences, Django, Python, 8 commentaires.
★ Pourquoi Python et Django
Retour sur l'événement Scrumpy auquel j'ai participé le mois dernier. J'ai déjà eu l'occasion de m'exprimer ici sur Pourquoi Python et Pourquoi Django mais le contexte était assez différent sur cet intervention car je devais commencer à convaincre des bienfaits de Python. Or convaincre sur un langage ou un framework est relativement stupide.
Posté dans les catégories : Conferences, Django, Python, 15 commentaires.
Scrum, Python et Django à Montpellier
J'aurais le privilège de présenter Django dans le sud de la France (et ce n'est qu'un début, rhâ teasing quand tu nous tiens...) ce vendredi 23 octobre après-midi à Montpellier. Si vous venez de loin ça peut faire ensuite un chouette weekend au soleil :-).
Posté dans les catégories : Conferences, Django, Python, 19 commentaires.
★ Django-ROA, pour une architecture orientée ressources
Il y a un projet sur lequel je travaille depuis un moment maintenant dans le cadre de mes prestations et que j'ai décidé de libérer (sous licence BSD) car je pense qu'il peut être utile à pas mal de monde : Django-ROA.
Posté dans les catégories : Django, Python, Web Semantique, 13 commentaires.
Réflexions sur les conférences de geeks
Ah le printemps, période de sortie des geeks pour aller à leurs rendez-vous préférés : se retrouver entre eux pour discuter technique de vive voix. Après avoir assisté à pas mal de confs de geeks (et parfois participé), je me suis enfin décidé à écrire quelques idées à ce sujet.
Posté dans les catégories : Conferences, Django, Python, Web, 11 commentaires.
★ L'élitisme de la curiosité
J'ai comme prévu fait une rapide description des avantages de Django à La Cantine (oui ce billet date un peu...) et je ne compte pas faire un résumé de ce qui a été dit. Je souhaiterais en revanche revenir sur une question concernant l'élitisme de Python ou Ruby face à PHP car c'est vraiment dommage que ce soit ressenti comme tel par les développeurs PHP.
Posté dans les catégories : Conferences, Django, Python, 40 commentaires.
Son propre TinyURL en Python et HTML5 avec webpy
Avec Twitter, la concision est de mise. Tout le monde utilise des "raccourcisseurs" d'URL comme TinyURL ou Bit.ly mais ça pose plusieurs problèmes : vous n'avez aucune idée de la pérennité du service (et en ce moment on voit bien le problème des services gratuits et non rentables qui ferment) et aucune garantie que les liens seront toujours redirigés vers les bonnes destinations sans passer par une pub/un outil de traçabilité/insérez votre délire parano ici.
Posté dans les catégories : Django, Python, Web, 21 commentaires.
Sortie de Django 1.0, une année de nouveautés
J'étais assez sceptique lors de l'annonce de la roadmap avant l'été mais il faut bien avouer que ça n'a pas chômé pendant ces vacances et que les développeurs sont arrivés à bout des fonctionnalités annoncées. Chapeau bas. Je ne vais pas faire un inventaire exhaustif des nouveautés (je vous laisse consulter la page dédiée) mais plutôt une liste des ajouts vraiment intéressants au quotidien au cours de cette dernière année.
Posté dans les catégories : Django, Python, Web Frameworks, 27 commentaires.
★ Conférences Django pour PyCon fr
J'ai eu le privilège de présenter Django lors des journées organisées par l'afpy. C'était vraiment un weekend exceptionnel, une organisation exemplaire, des conférences de qualité, des discussions de geek, que du bon. Je me suis enfin décidé à mettre les slides en ligne, en attendant les vidéos.
Posté dans les catégories : Conferences, Django, Python, 18 commentaires.
Bonnes pratiques et astuces Python
Ça faisait un moment que je n'avais pas parlé des bonnes pratiques Python mais l'approche de Pycon fr (où je présenterai Django : le pourquoi et le comment le 18 mai), l'événement Python incontournable avec un programme des plus alléchants, m'a bien motivé pour effectuer la traduction de l'une des meilleures présentation par David Goodger que je connaisse qui remet les bonnes pratiques Python à plat, ce qui est toujours bon avant d'aller plus loin.
Posté dans les catégories : Bonnes Pratiques, Conferences, Django, Python, Traduction, 15 commentaires.
Des vacances et des liens
Après être venu à bout du 1000+ de Google Reader, autant partager avec vous mes dernières découvertes car les billets de qualité ont été nombreux au cours de mes vacances. J'ai un peu la flemme de tout classer, au moins vous lirez jusqu'au bout ;-).
Posté dans les catégories : Django, Informatique, Python, Web Frameworks, Web Semantique, 6 commentaires.
Envie de développer agilement en Python ? Suivez le guide !
J'ai beaucoup de mal à critiquer un livre pour lequel j'ai fait une relecture (c'est la raison pour laquelle je n'avais pas parlé de la seconde édition du livre Ubuntu) car j'ai généralement déjà fait mes remarques à l'auteur avant la parution. En ce qui concerne le Petit guide à l’usage du développeur agile, je me sens obligé d'en parler car je suis trop jaloux de ne pas l'avoir écrit :-).
Posté dans les catégories : Critique, Livre, Python, 8 commentaires.
Une solution pour faciliter la conception d'applications web RESTful avec Django
Voila la solution à laquelle je suis arrivé après avoir testé les solutions existantes : django collection, django crudapi et django restful model views. J'attends beaucoup du GSoC consacré à l'inclusion native de REST dans Django et les choses vont dans le bon sens de ce côté là mais j'avais besoin d'une solution maintenant. Enfin notez bien le une dans le titre qui est très important, il y a énormément d'interprétations de l'architecture REST, cette implémentation essaye de s'inspirer de celle définie dans le livre RESTful Web Services : l'architecture orientée ressource (ROA).
Posté dans les catégories : Django, Python, Rest, Web Frameworks, 3 commentaires.
Présentation de Django aux journées Python francophones
Un petit billet pour signaler que les prochaines journées Python francophones se tiendront les 2 et 3 juin prochains à la Cité des Sciences de la Villette. J'y ferais une présentation intitulée « Tout savoir sur Django » le dimanche après-midi qui pourra être utile à tous ceux qui n'ont pas encore eu l'occasion de faire le grand saut ou qui sont tout simplement curieux.
Posté dans les catégories : Conferences, Django, Python, 5 commentaires.
Développement web python et frameworks, tour d'horizon début 2007
Un article intitulé « Python web development and frameworks in 2007 » très intéressant que j'aurais aimé traduire fait le bilan sur le développement web python et ses principaux frameworks, de web.py à Zope, en passant par Django, Pylons et TurboGears. J'ai appris de nombreuses choses donc je vous invite à aller le lire sur place mais c'est vrai que c'est assez long donc en voici un résumé accompagné de mes commentaires.
Posté dans les catégories : Python, Web Frameworks, 6 commentaires.
Modélisation d'un workflow linéaire avec Django
Pour le boulot, je devais réaliser un prototype implémentant des processus simples, c'est-à-dire représentés par une suite d'étapes ordonnées. On peut facilement se représenter un tel processus en considérant une ligne de métro avec ses stations sans ramifications.
Posté dans les catégories : Django, Python, Web Frameworks, 9 commentaires.
Benchmarks map, filter vs. list-comprehensions
Je viens de tomber sur les snyppets de Seb Sauvage (site que j'apprécie beaucoup par ailleurs) et il y a une phrase qui m'a interpellé sur le paragraphe consacré à zip, map, filter et aux list-comprehensions :
Except that {map|filter} is faster. (than list-comprehensions)
Ni une, ni deux, je récupère l'article de Tarek qui est très bon et qui comporte une fonction testant la durée d'execution des fonctions pour pouvoir comparer. J'avais déjà essayé d'autres fonctions mais autant innover un peu.
Posté dans les catégories : Bonnes Pratiques, Python, 4 commentaires.
Analyse des données utilisateur d'AOL : suite et fin
Devant le franc succès remporté par le premier opus, au passage merci NiKo, j'ai décidé de faire des analyses plus poussées. Ça m'a donné l'occasion de faire une vraie classe Python et d'obtenir de beaux graphes grâce à matplotlib.
Posté dans les catégories : Python, Web, 0 commentaires.
Les 100 premiers mots-clés recherchés par les utilisateurs d'AOL
Vous n'êtes pas sans savoir que des données reatives aux utilisateurs d'AOL ont été mises en ligne dernièrement (version anglaise, je pense que les serveurs sont plus régulièrement mis à jour si vous voulez récupérer les données). Voici le script et les 100 premiers mots-clés de recherche réalisées par ces utilisateurs. Attention les données n'ont pas été filtrées donc ce post peut contenir des mots heurtant la sensibilité des plus jeunes lecteurs.
Posté dans les catégories : Python, Web, 9 commentaires.
★ Pourquoi programmer en Python ?
Guido le soulignait il y a quelques temps, Python souffre un peu du manque de promotion. La nouvelle version du site est un premier pas, de « nouvelles » initiatives voient le jour (à quand une telle ressource en français ?!) mais peut-être que les blogs sont un des meilleurs moyen de promotion d'un produit actuellement. Voila donc ma participation, ce ne sont pas forcément les arguments que vous pourrez lire ailleurs, nous n'aimons pas forcément tous les mêmes choses pour les mêmes raisons mais ce sont ceux qui me font apprécier Python aujourd'hui.
Posté dans la catégorie : Python, 54 commentaires.
Python : lisibilité vs simplicité
Le programmeur est fainéant. C'est ainsi. S'il ne l'était pas, il n'essayerait pas de s'aider d'un ordinateur. Du coup il évite dans la mesure du possible de s'encombrer de variables trop longues, ou d'appels répétitifs un peu trop élaborés. Heureusement, en Python, on peut simplifier tout ça. Mais la simplification peut mener à un manque de lisibilité dans certains cas. Un cas intéressant est celui de l'underscore.
Posté dans les catégories : Bonnes Pratiques, Python, 4 commentaires.
Critique du livre Programmation Python
C'est LE livre que j'attendais, un peu comme beaucoup de personnes qui connaissent les bases du langage et qui souhaitent aller plus loin mais qui n'arrivent pas forcément à trouver l'information sur internet. Je dois avouer que j'avais un peu peur, un peu comme un bon film duquel on en attend trop, et bien je n'ai pas été déçu, c'est le moins qu'on puisse dire !
Posté dans les catégories : Critique, Livre, Python, 3 commentaires.
Principales nouveautés dans Python 2.5
Je m'y prend un peu à l'avance (la sortie est prévue pour septembre 2006) mais Guido a apparement fait quelques annonces lors de Pycon qui viennent s'ajouter aux PEPs approuvés sur la page officielle. J'essayerais de mettre à jour ce billet lors de l'annonce de nouvelles nouveautés histoire qu'il ne soit pas obsolète dans 6 mois, n'hésitez pas à m'en informer.
Posté dans les catégories : Bonnes Pratiques, Python, 4 commentaires.
Un template python pour parser des arguments
En réaction au billet de mat qui a codé un convertisseur em vers pixels. Je me demande souvent si la méthode que j'emploie est la plus pertinente pour parser des arguments en ligne de commande lorsque je crée des petits scripts en python. Voici le template que j'utilise souvent, toutes les remarques en commentaire sont les bienvenues !
Posté dans les catégories : Bonnes Pratiques, Python, 3 commentaires.
Optimisation des chaînes de caractères en Python : le retour !
Dans les épisodes précédents, je m'étonnais de voir des concaténations de chaînes de caractères être plus rapide que des remplissages de listes. Depuis je cogite car il est indiqué un peu partout qu'il faut privillégier les listes. Et j'ai fini par trouver une réponse :-).
Posté dans les catégories : Bonnes Pratiques, Python, 5 commentaires.
Formatage des chaînes de caractères en Python
À l'intersection entre bonnes pratiques et optimisation comment afficher des chaînes de caractère en Python ? Privillégier la lisibilité ou l'optimisation ? Les deux mon capitaine !
Posté dans les catégories : Bonnes Pratiques, Python, 5 commentaires.
Optimisation des chaînes de caractères en Python
Dans quelles situations utiliser les chaînes de caractère ? Pourquoi pas des listes ? Et les list-comprehension dans tout ça ? Réponses en tests, c'est plein de strings mais ne vous inquiétez pas, rien de sexuel ;)
Posté dans les catégories : Bonnes Pratiques, Python, 0 commentaires.
★ Bonnes pratiques de la programmation en Python
Ça faisait longtemps que je voulais écrire un peu là-dessus et puis le temps tout ça... bref je viens de tomber sur deux billets qui m'ont motivé, apparemment je suis pas le seul à vouloir apprendre/faire partager sur Python. Coïncidence pas si pure que ça, la sortie du livre Programmation Python que j'attends depuis quelques semaines et que je compte acheter à Solutions Linux ou gagner :)
Posté dans les catégories : Bonnes Pratiques, Python, 3 commentaires.
Convertisseur de syntaxes wiki Dotclear à Dokuwiki
Le jour de l'unification des syntaxes wiki sera un grand jour. Voila le parfait exemple d'un défaut du monde du Logiciel Libre, toujours premiers pour dire qu'il faut appliquer les standards mais pas très doués pour en créer un... enfin bon j'avoue que je suis un peu énervé. Dans le cadre du transfert de certains billets de blogs sur le wiki de documentation d'ubuntu-fr on me demande souvent s'il n'existe pas un convertisseur pour passer d'une syntaxe wiki Dotclear à une syntaxe wiki Dokuwiki, c'est maintenant chose faite.
Posté dans les catégories : Python, Web, 17 commentaires.
★ Parser un fichier PDB en python facilement et efficacement
L'une des galère tâche quotidienne d'un bio-informaticien s'intéressant un tant soit peu à la biologie structurale et à la position d'une protéine dans l'espace est de parser des fichiers PDB. C'est fichiers, issus de la Protein Data Bank, contiennent une foultitude d'informations plus ou moins pertinentes en fonction de son sujet de recherche. Or, les parsers actuels que je connais sont pour la plupart de véritables usines à gaz souvent inadaptés et lourds pour le traitement que j'ai à faire. Voici donc un « squelette » de parser de PDB en python, par « squelette » j'entend que vous allez devoir coder les parties spécifiques à vos besoins.
Posté dans les catégories : Bio Informatique, Python, 8 commentaires.
Votre aggrégateur manquerait-il de fonctionnalités ?
Si vous n'avez toujours pas trouvé d'aggrégateur satisfaisant, il serait peut-être temps de coder le votre passer votre commande :-)
Je me suis finalement décidé à coder un aggrégateur en python, d'une part pour réaliser un projet intéressant et d'autre part pour avoir des fonctionnalités qui me manquent cruellement, voila une première liste à compléter :
Posté dans les catégories : Python, Web, 19 commentaires.
★ Cours pour apprendre Python
Je vais bientôt être en stage et celui-ci va consister à réécrire un programme qui est en C++ en C puis à l'interfacer avec Python pour enfin proposer ce service sur Internet (simplicité quand tu nous tiens...). Tout ça pour dire qu'il faut que je me mette à Python car le reste c'est normalement de l'acquis (hum).
Posté dans la catégorie : Python, 20 commentaires.