jeudi 19 juillet 2018
« Utiliser Numpy c'est bien, le faire de manière efficace, c''est mieux! Cet article fournit quelques règles simples à respecter pour écrire du code Python plus performant avec Numpy.  »
jeudi 19 juillet 2018
« Guido van Rossum, le créateur de Python, vient de quitter son poste de benevolent dictator for life suite à des débats houleux sur la dernière PEP (Python Enhancement Proposals). Il n'a pas désigné de successeur et laisse la communauté se réorganiser comme elle le souhaite. Un autre post de blog détaille un peu plus le fonctionnement actuel et discute ses limites.  »
mercredi 4 juillet 2018
« Vectorization, Broadcasting, Indexing : trois concepts à maîtriser pour tirer profit de la puissance de NumPy. Cet article met l'accent sur les deux premiers (Vectorization, Broadcasting) et aborde partiellement le troisième (Indexing) tout en insistant sur la nécessité de l'approfondir via la documentation de référence .  »
mercredi 30 mai 2018
« La nouvelle release de Python (3.7) introduit un nouvel artefact, la "Data class". Il s'agit d'une classe, au sens POO, optimisée pour faciliter la manipulation des données. Cet article survole les principaux atouts de ce nouveau concept.  »
mercredi 16 mai 2018
« Une comparaison intéressante des performances pour trois implémentation différentes d'une régression linéaire (Python standard, Numpy et TensorFlow).  »
Python environment [Sébastien]
mercredi 2 mai 2018
« Un récent xkcd moquant la complexité de la gestion des environnements Python, qui amènent par exemple à utiliser python3 -m pip plutôt que pip3 sur certaines installations (typiquement une VM Cloudstack). Pour xkcd de manière plus générale, un wiki existe pour tenter d'expliquer les strips; par exemple dans ce lien la référence à Superfund site m'échappait complètement.  »
mercredi 4 avril 2018
« Un article comparant les performaces entre plusieurs version de python et montrant que la prochaine release python 3.7 sera globalement la plus rapide.  »
mercredi 28 mars 2018
« Après une introduction rapide des notions de base, ce notebook dévoile un certain nombre de subtilités dans le fonctionnement de NumPy, utiles à connaître pour utiliser la bibliothèque de manière efficace.  »
mercredi 14 mars 2018
« Cette vidéo (31 mn) est un retour d'expérience très détaillé d'Olivier Grisel sur comment générer les wheels pour installer scikit-learn depuis PIP, et surtout comment cela a été automatisé.  »
Datasets in Python [Christian]
mercredi 14 mars 2018
« Nous sommes souvent confrontés, tout au long du processus de développement, au besoin de jeux de données satisfaisant des contraintes diverses. Ce billet est un recueil de sources de données qui ont en commun le fait d'être exploitables en Python.  »
mercredi 7 mars 2018
« Cet article présente quelques bonnes pratiques pour démarrer un package Python.  »
mercredi 31 janvier 2018
« Cet article expose brièvement l'algorithme K-Means et propose une implémentation très pédagogique en Python.  »
mercredi 17 janvier 2018
« Cet article offre une illustration de l'utilisation de TensorFlow sur un cas concret.  »
mercredi 29 novembre 2017
« Dask est un framework en langage Python de calcul parallèle pour l'analyse de données. Cette présentation de Matthew Rocklin expose les derniers développement de ce projet pour le traitement à la volée de données (Stream processing).  »
mercredi 22 novembre 2017
« Un article de blog dans lequel l'auteur de la bibliothèque de deep learning Keras décrit quelques règles simples pour rendre son code "User friendly". Vu le succès de Keras, ce sont certainement de bonnes règles à suivre.  »
mercredi 22 novembre 2017
«  Alors que l'arrêt du support de la version 2 de Python est prévu pour 2020, le projet NumPy prévoit un calendrier pour assurer la transition ...  »
mercredi 8 novembre 2017
«  IPyvolume est une librairie très prometteuse pour visualiser facilement et efficacement des données en dimension 3 ou 6 (avec vecteurs de vitesse) et bien plus. Si vous voulez avoir plus de détails, vous pouvez aller voir cette vidéo de présentation à PyData (30 minutes).  »
mercredi 8 novembre 2017
«  Un livre très utile aux développeurs Python confrontés aux défis liés aux données (manipulation, visualisation) et à l'apprentissage machine ("machine learning")  »
Xtensor [Sébastien]
mercredi 8 novembre 2017
«  Une librairie C++ pour la manipulation de tableaux multidimensionnels, avec une interface très proche de celle de numpy (voir ce lien pour s’en convaincre) et des bindings pour Python, Julia et R. A noter que deux des développeurs de cette librairie devraient prochainement intervenir lors d’un prochain café LOOPS.  »
mercredi 25 octobre 2017
«  La bibliothèque PyTools facilite, entre autres, l'emploi de quelques techniques issues du paradigme fonctionnel dans la programmation en Python. Cet article est une présentation rapide de cette bibliothèque, réalisée par son principal auteur.  »
mercredi 18 octobre 2017
« Cet article est une introduction à Theano, bibliothèque d'apprentissage profond (deep learning) développée à l'Université de Montréal.  »
The Python Graph Gallery [Christian, Hande]
mercredi 18 octobre 2017
« Ce site web donne, à travers des centaines d'exemples, un aperçu des possibilités de Python en matière de visualisation des données en faisant appel à différentes bibliothèques graphiques.  »
mercredi 4 octobre 2017
« Cet article introduit, avec pédagogie et quelques clins d'oeil historiques, la notion de coroutine implémentée dans Python.  »
mercredi 4 octobre 2017
«  Comparaison extrêmement détaillée des principales suites de solveurs d'équations différentielles, par le développeur de celle du langage Julia.  »
mercredi 27 septembre 2017
« L'utilité de la journalisation de l'exécution d'un logiciel (logging) à chaque stade du processus de développement ou d'exploitation n'est plus à prouver. Cet article passe en revue les possibilités du module logging, présent dans la bibliothèque standard de Python.  »
mercredi 20 septembre 2017
« Pyheatmagic est un profileur de code utilisable dans un Notebook qui a la particularité de présenter les résultats sous la forme d'une carte de températures (heatmap)  »
The docstrings main formats [Virgile Andreani]
mardi 22 août 2017
« Un aperçu des différents formats couramment utilisés pour les docstring Python. »
mardi 22 août 2017
« La fameuse PEP8, guide incontournable de style pour tout développeur Python, laisse une marge importante aux développeurs et aux équipes pour choisir les bonnes pratiques menant à un code plus lisible et maintenable. Cet article présente un certain nombre d'astuces pour améliorer son style et se doter de bonnes règles de codage. »
jeudi 22 juin 2017
« Un tutoriel sur le décorateur Python, qui donne au passage une très intéressante réflexion sur le paradigme objet et les design pattern. Une lecture instructive même pour les développeurs d'autres langages! »
Python Tips [Christian]
jeudi 22 juin 2017
« Un livre en ligne qui introduit les principaux concepts nécessaires aux développeurs C, C++ et Java pour aborder Python. »
Threads in Python [Christian]
jeudi 27 avril 2017
« Cet article est une introduction à l'utilisation des threads (fils d'exécution) en Python. »
Python for ecologists [Christian]
jeudi 13 avril 2017
« Une série de leçons sur la manipulation des données avec Python, particulièrement adaptées aux besoins des chercheurs en écologie et plus généralement à tous ceux qui sont confrontés à l'exploitation des données expérimentales au quotidien. »
jeudi 16 mars 2017
« Un générateur d'interface en ligne de commande (CLI). »
BeautifulSoup [Vincent]
jeudi 16 mars 2017
« Un exemple très simple en Python sur le comment et le pourquoi utiliser un tel parser html. »
jeudi 23 février 2017
« Un exemple de mise en place d'outils d'intégration continue avec Travis pour un projet Python utilisant Pytest, Tox et le service Coveralls pour la couverture de code. A la place de Coveralls, on peut aussi utiliser Codecov (non décrit dans l'article). »
vendredi 17 février 2017
« Un panorama de l'écosystème de Jupyter, un bloc-notes / carnet de laboratoire interactif. »
vendredi 17 février 2017
« Cet article est une introduction très pédagogique à l'utilisation des générateurs en Python. »
Les slices en Python [Christian]
vendredi 13 janvier 2017
« Une explication détaillée de l'utilisation des tranches (slices) en Python. »
JupyterLab [Romain]
vendredi 16 décembre 2016
« JupyterLab - un nouvel environnement basé sur Jupyter, anciennement IPython Notebook. Il s'agit en fait d'une réécriture du côté client.  »
vendredi 16 décembre 2016
« Ce billet passe en revue quelques fonctionnalités moins connues de Jupyter Notebook. »
vendredi 16 décembre 2016
« Dans cet article, l'auteur nous introduit au module Python asyncio pour faire de la programmation concurrente en Python. »
vendredi 25 novembre 2016
« "Une introduction très bien faite à la programmation concurrente avec le module Python asyncio." »
vendredi 4 novembre 2016
« Un tutoriel expliquant comment suivre l'utilisation d'un #mot-dièse sur Twitter à l'aide d'une LED, de Python et d'une carte Raspberry PI. »
Noteshrink [Romain]
vendredi 4 novembre 2016
« Une description de la création d'un script Python qui rend les notes manuscrites numérisées plus lisibles. »
Sanic [Alexandre]
vendredi 21 octobre 2016
« Un serveur Web Python de type Flask, asynchrone et performant. »
vendredi 14 octobre 2016
« Une introduction à Flask à travers un exemple. »
vendredi 14 octobre 2016
« Un tutoriel expliquant l'utilisation du module asyncio de Python. Ce module propose une API pour manipuler des entrées/sorties de manière asynchrone (utile pour des applications client/serveur) et gérer les appels concurrents. »
vendredi 7 octobre 2016
« Cet article est une introduction à Django channels qui est un extension du framework bien connu Django et qui introduit des fonctionnalités importantes comme le support des WebSockets et celui des tâches asynchrones. »
vendredi 30 septembre 2016
« Un tutoriel pour s'initier au Deep Learning en Python avec Keras. Les exemples sont vraiment bien faits et contiennent les pointeurs vers les ressources permettant de comprendre les concepts du Deep Learning. »
Introducing GeoViews [Alexandre]
vendredi 16 septembre 2016
« Un article montrant l'utilisation de GeoViews, un paquetage Python pour manipuler et afficher des données géographiques. »
vendredi 9 septembre 2016
« Un article de blog qui explique l'utilisation des séquences d'échappement ANSI pour améliorer l'ergonomie de ses programmes en ligne de commande. Les exemples sont en Python. »
vendredi 8 juillet 2016
« Une introduction à l'algorithme de descente de gradient avec des exemples de code en Python. »
vendredi 10 juin 2016
« Une liste des fonctionnalités essentielles pour Python et Python scientifique et développée par l'IPGP. »
anotherTest.pyx [Vincent]
vendredi 3 juin 2016
« Sur cet exemple, l'auteur nous montre comment résoudre des erreurs de double définition de fonction lorsque l'on cythonize du code en C++. »
Matplotlib tutorial [Alexandre]
vendredi 20 mai 2016
« Un tutoriel vraiment bien fait pour s'initier à la visualisation de données avec matplotlib. »
inflect.py [Christian]
vendredi 8 avril 2016
« Le module inflect (Python) permet de générer des pluriels, convertir des nombres de mots, gérer les numéraux ordinaux et les articles. »
Binder [Vincent, le retour]
vendredi 25 mars 2016
« Binder est un service qui permet de faire tourner un notebook Jupyter préalablement déposé sur GitHub sur un serveur. N'hésitez pas à aller voir un des nombreux exemples, cliquez sur "launch binder" dans GitHub et vous comprendrez l'intérêt de ce service. »
Breathe [Alexandre]
vendredi 11 mars 2016
« Un outil sympa de génération de documentation faisant le pont entre Sphinx et Doxygen (plutôt orienté C/C++). »
vendredi 5 février 2016
« WSGI est un standard d'interface entre un serveur HTTP et une application écrite en Python. Malgré sa simplicité, il est, paradoxalement, souvent expliqué dans la littérature de manière compliqué... Cet article de S. Bortzmeyer introduit avec beaucoup de pédagogie cette technologie. »
vendredi 5 février 2016
« Comment tirer parti du type de données JSON avec PostgreSQL et Django, et comparaison avec MongoDB. »
Python is not C [Christian]
vendredi 22 janvier 2016
« Le titre résume aussi bien la conclusion de ce retour d'expérience: les stratégies pour améliorer les performances de son code Python sont très différentes de celles du développement en C... »
vendredi 8 janvier 2016
« Ce petit livre, dresse un inventaire utile et éclairant des choses à ne pas faire quand on développe en Python. »
vendredi 11 décembre 2015
« Ce billet est une introduction rapide à Cookiecutter avec Django. Cookiecutter est un utilitaire permettant de créer des projets logiciels à partir de templates. »
vendredi 4 décembre 2015
« Faire du profiling pour optimiser son programme Python. »
vendredi 4 décembre 2015
« ... ou comment accéder à des sous ensembles de données en C++ comme on peut le faire en python. »
vendredi 13 novembre 2015
« Cet article s'adresse aux ingénieurs système et à tous ceux qui écrivent du bash par nécessité, pour leur rappeler que Python est facile à apprendre, puissant et présent sur tous les OS Linux et UNIX. »
vendredi 13 novembre 2015
« Compter les choses dans Python. »
vendredi 13 novembre 2015
« Une introduction à Cython avec des exemples et des graphiques montrant les résultats de l'optimisation. »
Full stack Python [Christian]
vendredi 6 novembre 2015
« Ce guide s'adresse aux développeurs disposant d'une première expérience en Python mais qui débutent dans le développement et le déploiement d'applications web basées sur ce langage et ses bibliothèques. »
vendredi 6 novembre 2015
« Intégration continue de son code Python sous Windows. »
vendredi 23 octobre 2015
« Ce billet met en perspective l'utilisation des langages Python et R dans la mise en œuvre de deux techniques utilisées dans l'analyse de données: l'analyse en composantes principales et la classification (clustering). »
vendredi 23 octobre 2015
« Manipulation de données et machine learning en python »
vendredi 16 octobre 2015
« Le développement dirigé par les tests (TDD) en python, principe et mise en pratique avec nose. »
Scipy Lecture Notes [Christian]
vendredi 2 octobre 2015
« Sur ce site, Gaël Varoquaux et ses collègues ont compilé une grande quantité de notes de cours sur Python et l'écosystème scientifique. »
Intermediate Python [Christian]
vendredi 4 septembre 2015
«  Ce livre en ligne met l'accent sur quelques particularités du langage Python, parfois inconnues aux développeurs occasionnels (mais par ailleurs expérimentés), s’appuyant dans leur travail sur l'expérience acquise avec d'autres langages (C/C++, Java etc.). »
vendredi 3 juillet 2015
« Python a la réputation d'être un langage "facile". Pourtant, certains des concepts qui lui sont propres peuvent surprendre le développeur débutant. Cet article passe en revue les principales difficultés pour aider le novice à les surmonter plus facilement. »
vendredi 26 juin 2015
« Le besoin de disposer d'une distribution de système d'exploitation stable ne va pas de paire avec le besoin, tout aussi important, de travailler avec les versions les plus récentes des langages et des bibliothèques logicielles dans son domaine d'intérêt. Plusieurs solutions permettent de résoudre, au moins partiellement, ce dilemme. L'une d'entre elles s'appelle Docker et son utilisation est illustrée dans ce billet. »
vendredi 19 juin 2015
«  Ce billet est une introduction brève et ludique à Tox, outil en ligne de commande qui vise l'automatisation et la standardisation des tests en Python. »
vendredi 12 juin 2015
«  Ce billet montre, à travers un exemple simple, comment développer une application Django dotée d'une interface utilisateur moderne, basée sur AngularJS. Les interactions client/serveur sont basées sur ReST (representational state transfer), grâce à l'API "Django ReST Framework". »
Entry point: Data [Christian]
vendredi 5 juin 2015
«  Une introduction aux outils python pour l'analyse des données et en particulier pour le "Machine Learning" »
vendredi 24 avril 2015
«  Une brève introduction aux concepts de base du "Machine Learning", par Sebastian Raschka, illustrés avec des implémentations en Python. »
vendredi 24 avril 2015
«  Considération de performances en python #array #slice #Pypy #CPython »
Matplotlib: plotting [Christian]
vendredi 17 avril 2015
«  Un tutoriel très bien écrit sur la visualisation des données en Python, avec la bibliothèque Matplotlib. »
vendredi 10 avril 2015
«  Un wiki dédié au langage Cython, plein de bonnes astuces. »
vendredi 27 mars 2015
« Une introduction à la statistique avec Python. »
vendredi 20 mars 2015
«  Une petite introduction à l'analyse statistique en Python avec les bibliothèques Scipy et Pandas. »
vendredi 13 mars 2015
«  Formation à Python scientifique conçue pour les professeurs de classes préparatoires scientifiques mais potentiellement utile à tout scientifique ou ingénieur qui débute avec Numpy et Scipy. »
vendredi 27 février 2015
«  Panda est une bibliothèque Python dédiée à l'analyse des données, proposant des fonctionalités comparables à celles de R, y compris le fameux type Dataframe. A découvrir à travers cet article de Michael Hansen. »
vendredi 13 février 2015
«  Le mois dernier Guido van Rossum annonçait la sortie du premier draft de la PEPPEP=Python Enhancement Proposal 484. Elle définit un système d'annotation des types inspiré par Mypy, variante expérimentale de Python combinant typage dynamique et statique. Le billet suivant est une analyse de cette proposition par Jukka Lehtosalo, le leader du projet Mypy.  »
vendredi 6 février 2015
«  Comment implémenter une Analyse en Composante Principale (ACP) avec Python. »
vendredi 23 janvier 2015
«  Un petit article qui montre comment on peut appeler du code Python depuis un programme C/C++ et compiler le tout. »
vendredi 23 janvier 2015
«  Cette page est une mine de bonnes idées en matière de programmation des décorateurs en Python et aussi un excellent outil d'autoformation par la pratique. »
Wand [Olivier]
vendredi 23 janvier 2015
«  WAND un binding Python d'ImageMagick qui nous permet de manipuler facilement des images de très grande taille (+1Go). »
c++ [Olivier]
vendredi 16 janvier 2015
«  Une bibliothèque C++ qui présente une interface simple pour définir/utiliser/commenter les arguments d'un programme en ligne de commande. »
vendredi 16 janvier 2015
«  Ce n'est pas un scoop, pip est l'outil de gestion des packages Python qui a le vent en poupe. Mark Litwintschik explore dans cet article les possibilités de l'outil, ainsi que les solutions alternatives à utiliser quand, ponctuellement, on a besoin d'une fonctionnalité qui y est absente. »
vendredi 16 janvier 2015
«  Sam&Max nous présentent WAMP, un protocole de messaging basé sur le standard WebSocket permettant de faire à la fois du RPC (bye bye SOAP) et du Publish/Subscribe C'est vu sous l'angle Python mais ça s'utilise aussi bien en JS, C++, etc côté client ou serveur. Il y a aussi des transparents. »
vendredi 16 janvier 2015
«  Comment faire du BigData avec Python? Pour le CSV, une solution simple: blaze, aussi simple et efficace que Postgresql. »