Prédire la note d’un journal sur LinuxFr.org

139
9
juin
2017
LinuxFr.org

Cette dépêche traite de l’exploration de données sur des données issues de LinuxFr.org.

Ayant découvert récemment scikit-learn, une bibliothèque Python d’apprentissage statistique (machine learning). Je voulais partager ici un début d’analyse sur des contenus issus de LinuxFr.org.

Avertissement : je ne suis pas programmeur, ni statisticien. Je ne maîtrise pas encore tous les arcanes de scikit-learn et de nombreux éléments théoriques m’échappent encore. Je pense néanmoins que les éléments présentés ici pourront en intéresser plus d’un(e).

Tous les scripts sont codés en Python et l’analyse à proprement parler a été réalisée à l’aide d’un notebook Jupyter. Un dépôt contenant les données et les scripts est disponible sur GitLab.

L’installation et la distribution de paquets Python (1/4)

Posté par  . Édité par Benoît Sibaud, alberic89 🐧, L'intendant zonard, nonas, palm123 et gUI. Modéré par Ysabeau 🧶 🧦. Licence CC By‑SA.
92
6
nov.
2023
Python

Quelques dépêches précédentes ont parlé des outils de packaging Python, comme ici, ou encore . Je vais chercher à faire un tour complet de la question, non seulement du point de vue de l’utilisateur qui cherche à comprendre quelle est « la bonne » solution (← ha ha ha rire moqueur…), mais aussi en expliquant les choix qui ont été faits, les évolutions, la structure de la communauté autour des outils, et les critiques qui leur sont souvent adressées, à tort ou à raison.

Des nouvelles de WeasyPrint, ou comment développer du libre à (presque) plein temps

Posté par  . Édité par Benoît Sibaud, Xavier Teyssier et Ysabeau 🧶 🧦. Modéré par Ysabeau 🧶 🧦. Licence CC By‑SA.
Étiquettes :
92
22
sept.
2022
Python

WeasyPrint est un générateur de documents qui transforme du HTML/CSS en PDF. C’est écrit en Python, c’est libre (bah oui, sinon on n’en parlerait pas ici), et nous en avions déjà discuté ici il y a quelques années dans un petit article.

Avec le temps (plus de 11 ans depuis le premier commit, que le temps passe vite ma p’tite dame…), le logiciel a gagné une sacrée ribambelle d’utilisateurs avec plus de 750 000 téléchargements par mois. Parmi tous ces gens qui utilisent WeasyPrint, on a forcément rencontré plein de gens avec plein d’idées pour générer plein de drôles de trucs ! Nous avons croisé entre autres des rapports de sécurité informatique 🖥️, des livres de jeu de rôle 🎮️, des tickets 🎫️, des documents scientifiques 🧮️, des factures de sites de vente en ligne 📄️, des compte-rendus biologiques ⚛️, des modes d’emploi de fours 🧑‍🍳️, des lettres officielles 💌️, des étiquettes électroniques 🏷️, des affiches promotionnelles en pharmacies ⚕️, des diplômes universitaires 🎓️…

Forts de ce petit succès, Lucie Anglade et moi (Guillaume Ayoub) avons créé depuis deux ans une structure qui s’appelle CourtBouillon (oui, parce que notre autre passion est la bonne nourriture) dédiée au développement de WeasyPrint et de ses dépendances. Nous avons donc pu passer beaucoup de temps à travailler sur le logiciel et apporter plein de nouveautés, tout en nous posant beaucoup de questions pour assurer un modèle économique viable. Voilà ce que l’on aimerait partager avec vous.

Python 3.2

Posté par  (site web personnel) . Modéré par Lucas Bonnet.
88
21
fév.
2011
Python

Un an et sept mois après Python 3.1, voici une nouvelle version majeure de Python 3 : la version 3.2. Elle apporte notamment deux nouveaux modules (argparse et concurrent.futures), des améliorations sur les extensions écrites en C (API stable et marquage dans le nom de fichier des bibliothèques) et les modules compilés (fichiers .pyc) sont désormais rangés dans un dossier « __pycache__ ». Pour rappel, Python 3 corrige les erreurs de jeunesse de Python et harmonise la bibliothèque standard (relire la dépêche annonçant Python 3.0).

Pour faciliter le travail des développeurs des autres implémentations de Python (IronPython, Jython, Unladen Swallow, PyPy), la syntaxe, la sémantique et les fonctions builtins n'ont pas changé dans version 3.2, comme décidé par le moratoire (PEP 3003: Python Language Moratorium). Le moratoire prend fin avec la publication de Python 3.2.

La seconde partie de la dépêche présente en détail les nouveautés de Python 3.2, l'état du portage des modules vers Python 3, et évoque ce qui est prévu pour la suite.

Journal Moi, expert C++, j'abandonne le C++

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
86
3
juin
2019
Ce journal a été promu en dépêche : Moi, expert C++, j’abandonne le C++.

Je profite de cette anecdote pour rédiger un long journal afin de partager mon expérience et mon apprentissage en espérant t’apprendre de nouveaux points de vue.

Peut-être cela vaut le coup d'en faire une dépêche… Dis-le moi dans les commentaires. 😉

Ma passion C++11, C++14, C++17…

Ma carrière professionnelle de développeur C a débuté en 1994 et j’ai naturellement adopté avec enthousiasme le C++ en 1999.
J’étais un développeur C++ heureux et j'avais considéré la nouvelle version du standard C++11 (…)

Collaboration laborieuse ? Si les symptômes persistent, installez Tracim 2.1 !

83
19
fév.
2019
Bureautique

Tracim est une solution collaborative libre pour le travail en équipe.

Après la version 2.0 sortie dans un certain anonymat courant novembre, la 2.1 est une avancée majeure — la première réelle version de cette nouvelle lignée.

Tracim, plateforme collaborative libre

Cette dépêche comprend deux grandes parties :

  • dans un premier temps nous parlerons de collaboration, d’information et du positionnement de Tracim par rapport à ces problématiques ;
  • dans un second temps, nous présenterons la multi‐refonte qu’est Tracim 2 dans sa mouture 2.1.

Python 3.8 : opérateur d’assignation, REPL async, Pickle v5 et plus

Posté par  . Édité par Ysabeau 🧶 🧦, palm123, Davy Defaud, Benoît Sibaud, patrick_g et Pierre Jarillon. Modéré par Ysabeau 🧶 🧦. Licence CC By‑SA.
Étiquettes :
80
15
oct.
2019
Python

Łukasz Langa vient d’annoncer au nom de la PSF la disponibilité de CPython 3.8, l’implémentation de référence. Cette version est particulière puisqu’elle introduit une syntaxe controversée : l’assignation avec l’opérateur := qui permet d’assigner dans une expression et plus seulement dans un statement.

Le nombre de changements est assez impressionnant. Malgré la maturité de Python et sa popularité, il y a encore à faire !

Pour les systèmes stables, la version de référence reste la 3.6. Pour les autres, profitez de pyenv ou Docker pour utiliser les nouveautés de ce bon cru ! Découvrez‐les dans la suite de cette dépêche.

Sortie de YOGA Image Optimizer 1.0

Posté par  (site web personnel) . Édité par Ysabeau 🧶 🧦 et Benoît Sibaud. Modéré par Benoît Sibaud. Licence CC By‑SA.
78
17
juin
2021
Graphisme/photo

YOGA Image Optimizer est un utilitaire graphique libre (GPLv3) permettant de convertir et d’optimiser des images (on parle ici de réduire le poids des fichiers sans en diminuer la qualité perceptible). Il supporte la plupart des formats courants en entrée et génère en sortie des JPEG, des PNG et des WebP optimisés.

La toute première version est sortie il y a quelques jours, je viens donc vous présenter ce projet (ou plutôt ces projets) sur lequel je travaille depuis quelque temps déjà… 😀️

Logo de YOGA Image Optimizer

Sortie de YunoHost 4.2

76
30
mai
2021
Distribution

La sortie de YunoHost 4.2 est l’occasion de rappeler l’existence de ce projet et de tenir au courant de ses dernières évolutions. On note la réécriture en Python 3, et en Vuejs pour l’interface web.

Interface utilisateur de Yunohost

YunoHost est une distribution basée sur Debian qui facilite l’auto-hébergement en fournissant une interface conviviale pour installer et administrer des applications serveurs. Le catalogue d’applications gérées par YunoHost est de plus en plus fourni et propose des logiciels pour gérer ses courriels, son nuage de données, son serveur média, le partage de fichiers, l’agrégation d’informations, etc.

Nautilus Terminal : un terminal intégré au navigateur de fichier de GNOME

Posté par  (site web personnel) . Édité par patrick_g, Xavier Teyssier et Julien Jorge. Modéré par Xavier Teyssier. Licence CC By‑SA.
75
30
avr.
2021
Gnome

Nautilus Terminal est un terminal intégré à Nautilus, le navigateur de fichier de l'environnement de bureau GNOME. Il peut être affiché ou masqué à tout moment et suit automatiquement la navigation ; il permet donc de taper rapidement des commandes dans le dossier courant.

La version 4.0 venant tout juste de sortir, j'en profite pour venir vous présenter ce projet sur lequel je travaille depuis plus de dix ans.

Capture d'écran et logo de Nautilus Terminal

Journal Optimisez votre code !

Posté par  . Licence CC By‑SA.
Étiquettes :
75
7
déc.
2017

Cher journal,
Je voudrais te raconter une histoire, qui n'est peut-être pas encore finie d'ailleurs, qu'on pourrait résumer en 1 mot : OPTIMISATION !

Tout commence en tout début d'année : je suis embauché chez Chacun cherche son Film, une toute petite (5, moi inclus) boite qui développe un site Web faisant la promotion du cinéma indépendant. Cette boite a fait le (très mauvais, comme on va le voir) choix de faire développer son site par une boite de prestation (…)

Sortie de Python 3.7

74
10
sept.
2018
Python

Python 3.7 a été publié le 27 juin 2018, soit un an et demi après la précédente version. Celle‐ci vient avec son lot de nouveaux modules et fonctionnalités que nous détaillons dans la suite de la dépêche.

Logo de Python

mat2 0.4.0

72
11
oct.
2018
Sécurité

mat2 est la nouvelle itération du défunt MAT, une suite logicielle pour nettoyer les métadonnées d’une multitude de formats de fichiers.

La récente sortie de la version 0.4.0 (3 octobre 2018) est l’occasion de faire découvrir ce projet, en deuxième partie de dépêche.

Logo de mat2

Internet des objets l'ESP8266 et ma porte de garage

Posté par  (site web personnel, Mastodon) . Édité par Benoît Sibaud, palm123, Pierre Jarillon et Ontologia. Modéré par Pierre Jarillon. Licence CC By‑SA.
71
11
sept.
2015
Do It Yourself

Dans ma maison, j'ai un garage dont la porte est motorisée ; avec une petite télécommande (433MHz) on peut l' ouvrir ou la fermer depuis la voiture, ce qui est bien pratique en hiver. Mais il y a deux problèmes : le premier c'est que la télécommande fonctionne aléatoirement (ce qui n'est pas pratique), le second c'est la sécurité du 433MHz.

Ayant un Arduino UNO qui traîne dans un coin, ma maison étant domotisée (serveur fait-maison tournant sur du Python, du PHP, des scripts shell et le tout reposant sur xpl-perl) je me suis dit que le serveur domotique pourrait piloter la porte.
Il peut déjà lire l'état de la porte du garage avec un capteur d'ouverture.

Le moteur de la porte fournit un contact sec. Il suffit de ponter deux fils raccordés à un bornier pour actionner la porte : ouvrir si elle est fermée ou fermer si elle est ouverte.

Avec un Arduino et un relais on peut actionner sans problème la porte du garage. Je code vite fait un petit bout de script qui me permet d'activer un relais 1.5 seconde.
Le problème : il faut donner les ordres par un câble USB à l'Arduino donc je pars en recherche d'une carte WI-FI pour l'Arduino et c'est là que je tombe sur l'ESP8266.

Entretien avec les développeurs Python francophones

Posté par  (site web personnel) . Modéré par Lucas Bonnet.
66
16
avr.
2011
Python

Le 11 mars, nous vous proposions de poser des questions à des développeurs francophones du langage Python. Un peu occupés par leur participation à PyCon 2011, ils ont finalement trouvé le temps de vous répondre. Un grand merci à eux et à tous ceux qui ont posé les questions.


L'ensemble des réponses de l'entretien est en seconde partie et est placé sous licence Art Libre : cette œuvre est libre, vous pouvez la copier, la diffuser et la modifier selon les termes de la Licence Art Libre.