GNU/Linux Magazine Hors-série N°
Numéro
49

Incontournable Python

Temporalité
Juillet/Août 2010
Image v3
Incontournable Python
Article mis en avant

Résumé
Vous êtes un développeur ou un utilisateur régulier du langage de programmation Python. Arrive le jour où, en utilisant telle ou telle fonctionnalité, le déclic se produit : il manque quelque chose à Python. Vous aimeriez avoir à disposition une information importante ou il manque une fonction qui vous apparaît cruciale. Même si personne d'autre ne semble s'en apercevoir, vous avez mis le doigt sur une imperfection. Pourtant, techniquement, la chose est possible et vous avez en quelques minutes réalisé la modification sur votre ordinateur personnel.C'est le moment de contribuer à Python, de ne pas laisser tomber en disant « on verra ça plus tard » et d'apporter votre pierre à l'édifice. Nous nous appuierons sur un exemple concret de contribution à la bibliothèque standard de Python, exemple simple, mais qui nous permettra d'autant plus facilement d'expliquer comment contribuer au projet Python.

Dans ce numéro...


Généralement, les langages interprétés de haut niveau ne se prêtent guère aux accès directs aux périphériques. Il faut cependant noter que Python possède quelques atouts intéressants dans ce domaine. Bien entendu, il ne s'agit pas ici de développer un pilote de périphérique, loin de là. Le cas qui nous intéresse ici se résume à la communication série avec des modules de mesure.
Le langage Python existe depuis près de 20 ans et a acquis au fil du temps ses lettres de noblesse autant auprès des programmeurs débutants que des plus aguerris. Si les premiers aiment bien en lui le manque de cérémonial qui caractérise bon nombre d'autres langages comme le C, les derniers en apprécient les aspects dynamiques qui leur permettent de laisser cours à leur imagination. C'est sur ce dernier point que nous allons nous concentrer aujourd'hui.
Le langage Python évolue vite. De nombreuses versions différentes peuvent cohabiter sur un même système. Il est encore possible de croiser fréquemment des programmes uniquement compatibles Python 2.3 ou 2.4. La coexistence des versions 2.5 et 2.6 est également monnaie courante. Python 3.1 apparaît directement empaqueté sur de plus en plus de systèmes. Côté bibliothèques externes, la multitude disponible évolue comme elle peut, en comptant sur la forte compatibilité de la série 2.X. Dans ces conditions, faire tourner votre programme n'est pas toujours une sinécure. En effet, si deux applications ont besoin d'un même module, mais dans des versions différentes, vous risquez lors de la mise à jour de casser l'une des deux applications. De la même façon, les développements en entreprise sont souvent réalisés dans un temps limité avec un budget restreint. Vous obtenez au final un programme non évolutif qu'une prochaine mise à jour de la version de Python par défaut de votre système menace de casser.
Vous êtes un utilisateur du réseau de messagerie instantanée Jabber. En considérant le temps que vous passez sur ce réseau, vous en êtes venu à penser qu'un moyen d'automatiser certaines actions grâce à un bot s'exécutant sur un ordinateur distant pourrait être intéressant. Vous n'avez toutefois pas encore trouvé l'outil suffisamment flexible pour atteindre le niveau de détail que vous souhaitez ? Optez pour Jabberbot, une bibliothèque en Python qui va vous permettre de faire réaliser à un bot en écoute sur le réseau Jabber les actions que vous souhaitez. Précisons. Notre bot va en fait se mettre en attente d'ordres qui lui seront envoyés sous la forme de chaînes de caractères, à partir de votre client Jabber habituel. À la réception d'une chaîne précise qui constitue une commande, le bot va exécuter une suite d'ordres associée.
Parmi les nouveautés du mouvement NoSQL qui se développe actuellement dans le domaine des bases de données, Redis rencontre un succès certain. Dotée d'excellentes performances tout en offrant de nombreuses fonctionnalités intéressantes - dont la persistance des données - qui manque à d'autres applications phares du moment, Redis propose déjà à ses utilisateurs un nombre important de bibliothèques permettant d'accéder à ses instances depuis votre langage de programmation favori.Et cela tombe plutôt bien car, compte tenu du fait que nous sommes dans un hors-série Python, nous vous présenterons dans la suite de cet article l'une de ses intéressantes bibliothèques : Redis-py.
À côté des habituels serveurs web qui se présentent généralement sous la forme d'un binaire puisant ses options dans un fichier de configuration ou à partir de la ligne de commandes, une nouvelle génération propose un concept intéressant. Développé pour les besoins du site FriendFeed et libéré en 2009, Tornado est distribué sous la forme d'un framework écrit en Python. Il peut ainsi facilement s'intégrer au cœur de votre application. Asynchrone, Tornado a été conçu pour faire face à des milliers de connexions simultanées tout en fournissant son service en temps réel. Présentation.
Nagios est encore aujourd'hui la star des logiciels de supervision open source, même si de sérieux concurrents le talonnent. Si ses qualités sont indéniables, il souffre tout de même de problèmes dans la gestion des très grands environnements qui sont dus principalement à son implémentation actuelle. Le projet Shinken est une nouvelle implémentation de Nagios qui tente de lever ce problème et d'apporter un nouveau souffle à ce projet. Regardons son histoire et ce qu'il propose.
Les applications web open source permettant la gestion de projet ne manquent pas. Toutes possèdent leurs qualités et leurs défauts, qu'il s'agisse de la modularité, du nombre de fonctionnalités ou encore de la simplicité de configuration ou d'installation. Nous traiterons ici de l'une des plus connus d'entre elles, Trac, sur la base d'un serveur HTTP léger utilisant Lighttpd.
Le tactile est le sens à la mode dans les soirées digitales. Que cela soit à travers les téléphones mobiles, certains laptops/netbooks, ou encore le dernier gadget au goût pomme, l'avènement du touch & play est en marche. Nous allons voir comment mettre en œuvre des technologies ouvertes pour arriver à faire aussi bien, sinon mieux, que la désormais fameuse surface fenêtrée .

Magazines précédents

Voyage au centre de l'embarqué
GNU/Linux-Magazine Hors-série N°47
Voyage au centre de l'embarqué
Focus sur les outils pour mieux exploiter Linux
GNU/Linux-Magazine Hors-série N°46
Focus sur les outils pour mieux exploiter Linux
Electronique, embarqué et hacks
GNU/Linux-Magazine Hors-série N°43
Electronique, embarqué et hacks

Les derniers articles Premiums

Les derniers articles Premium

La place de l’Intelligence Artificielle dans les entreprises

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

L’intelligence artificielle est en train de redéfinir le paysage professionnel. De l’automatisation des tâches répétitives à la cybersécurité, en passant par l’analyse des données, l’IA s’immisce dans tous les aspects de l’entreprise moderne. Toutefois, cette révolution technologique soulève des questions éthiques et sociétales, notamment sur l’avenir des emplois. Cet article se penche sur l’évolution de l’IA, ses applications variées, et les enjeux qu’elle engendre dans le monde du travail.

Petit guide d’outils open source pour le télétravail

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Ah le Covid ! Si en cette période de nombreux cas resurgissent, ce n’est rien comparé aux vagues que nous avons connues en 2020 et 2021. Ce fléau a contraint une large partie de la population à faire ce que tout le monde connaît sous le nom de télétravail. Nous avons dû changer nos habitudes et avons dû apprendre à utiliser de nombreux outils collaboratifs, de visioconférence, etc., dont tout le monde n’était pas habitué. Dans cet article, nous passons en revue quelques outils open source utiles pour le travail à la maison. En effet, pour les adeptes du costume en haut et du pyjama en bas, la communauté open source s’est démenée pour proposer des alternatives aux outils propriétaires et payants.

Sécurisez vos applications web : comment Symfony vous protège des menaces courantes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les frameworks tels que Symfony ont bouleversé le développement web en apportant une structure solide et des outils performants. Malgré ces qualités, nous pouvons découvrir d’innombrables vulnérabilités. Cet article met le doigt sur les failles de sécurité les plus fréquentes qui affectent même les environnements les plus robustes. De l’injection de requêtes à distance à l’exécution de scripts malveillants, découvrez comment ces failles peuvent mettre en péril vos applications et, surtout, comment vous en prémunir.

Bash des temps modernes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les scripts Shell, et Bash spécifiquement, demeurent un standard, de facto, de notre industrie. Ils forment un composant primordial de toute distribution Linux, mais c’est aussi un outil de prédilection pour implémenter de nombreuses tâches d’automatisation, en particulier dans le « Cloud », par eux-mêmes ou conjointement à des solutions telles que Ansible. Pour toutes ces raisons et bien d’autres encore, savoir les concevoir de manière robuste et idempotente est crucial.

Body