Sometimes I write things, sometimes I don't.

To content | To menu | To search

Tag - Python

Entries feed - Comments feed

Wednesday 25 August 2010

Effet de mode ou vrai plus ?

code.pngLes langages de programmation, il y en a énormément. Et beaucoup d’entre vous en connaissent une partie. Moi, je m’y suis intéressé un peu avant de rentrer en DUT. J’ai fait du Java surtout, et mon DUT a été l’occasion d’apprendre l’assembleur, le C et de me perfectionner en Java. J’ai bien entendu fait du script avec le shell sous Debian, Ubuntu, et compagnie. Aujourd’hui, je livre un sentiment personnel sur l’utilisation des langages de programmation dans le monde du Libre. Et j’ai cette impression que, bien que très diversifié dans la façon de faire un programme, le monde du FLOSS ne s’articule plus qu’autour d’un seul langage, à savoir, Python.

python.png
Si Python est si apprécié c’est qu’il possède des avantages. La puissance, la clarté du code, le côté script, la facilité d’apprentissage et j’en oublie certainement un bon paquet. Pour ma part, je n’arrive pas à m’y faire et ce n’est pas faute d’avoir essayé (même que GNOME Split devait être écrit en Python à la base). Aujourd’hui, Python est très utilisé et par énormément de monde. On sait par exemple que chez Canonical, ils aiment bien ce langage mais il n’y a pas qu’eux. J’ai constaté, qu’en ce moment, tous les débutants et les programmeurs expérimentés se tournent de plus en plus vers Python pour coder. Je trouve ça dommage. Il y a-t-il encore des gens qui s’intéressent à d’autres langages ? J’espère que oui, cela serait dommage de perdre une telle diversité. Je ne reproche rien à Python et c’est pour moi un langage comme un autre, je suis simplement triste de voir de moins en moins de programmes écrits en C, en C++, en Java ou que sais-je encore.

python-code.png
Pythonistes, je me répète, mais je tiens à dire que je ne blâme pas Python. J’ai simplement peur qu’un jour programmation veuille dire Python comme pour certains Linux veut dire Ubuntu. Je ne tiens pas non plus à lancer un troll du style “Python c’est nul, le C c’est de la vraie programmation”. J’aimerais seulement savoir si d’autres ont le même sentiment que moi à propos de l’abandon des autres langages de programmation. Beaucoup de monde le sait, je suis un Javaiste convaincu donc ce sentiment de solitude est assez naturel chez moi, peut-être à cause du fait que je travaille sur java-gnome et que ce n’est pas l’API la plus utilisée. Peu importe, suis-je le seul à me dire “je n’aime pas coder en Python, suis-je un irréductible gaulois non-pythoniste ?” ?

Si vous vous sentez attiré par Python, allez faire un tour du côté de l’AFPY. Ayant eu l’occasion de discuter avec des membres aux JDLL, je peux vous dire que vous aprendrez plein de choses.

Tuesday 31 March 2009

Serveur HTTP en Python en 1 minute

Encore une preuve que Python ça se code facilement et que ça veut simplifier la vie du programmeur un maximum. Faire un serveur HTTP en C, C++, Java, etc... ça peu prendre du temps, pas mal de temps même. Le faire en Python ça prend en gros 10 lignes. Bien sûr ça reste un support "simple" du protocole HTTP 1.1 mais ça reste quand même très très pratique.

On crée un fichier server_http.py puis on l'édite et on y insère le code suivant.
#!/usr/bin/env python

import os

from BaseHTTPServer   import HTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler

os.chdir(os.path.expanduser("~/dossier_de_base/"))

httpd = HTTPServer(('', 8080), SimpleHTTPRequestHandler)
httpd.serve_forever()


On peut ensuite lancer le script via la commande :
user@computer:~$ python server_http.py

Et après, on ouvre son navigateur web et on peut accéder à son serveur en entrant l'adresse http://localhost:8080/

Monday 6 October 2008

Emesene et webcam ça avance

Je vous ai déjà parlé de Emesene, le client Windows Live Messenger alternatif écrit en Python. Il semblerait que le développement du support de la webcam s'active grandement grâce à un utilisateur. Il propose en effet un patch (pour la version SVN) qui permet d'établir une session webcam (envoi et réception). Je vous invite donc à essayer pour lui faire remonter un maximum de bugs afin que tout ça se stabilise et soit intégré directement dans Emesene. Je sais que beaucoup n'ont pas l'habitude d'utiliser des versions de développement et de patcher le code source, voilà pourquoi je vous fais un petit guide.

Il nous faut, pour commencer, récupérer le code source de la version SVN de Emesene. Pour ceci, il nous faut l'outil Subversion.
~$ sudo aptitude install subversion

Et on checkout le code.
~$ svn co https://emesene.svn.sourceforge.net/svnroot/emesene/trunk/emesene emesene

On récupère le patch et on l'applique.
~$ cd emesene
~/emesene$ wget http://www.sbisinger.net/emesene/webcam-20081005.patch
~/emesene$ patch -p1 < webcam-20081005.patch


Maintenant, il faut réaliser un build afin de pouvoir utiliser la librairie libmimic que la webcam nécessite.
~/emesene$ sudo aptitude install python-dev
~/emesene$ python setup.py build
~/emesene$ sudo python setup.py install


Et enfin, on lance le client Emesene.
~/emesene$ ./emesene

Si vous l'utilisez (et je sais qu'il y en a ici), n'hésitez pas à rapporter les bugs sur le forum ou ici (je me chargerais de transmettre). C'est toujours bon pour un développeur d'avoir des retours sur l'utilisation de son code. Pensez bien à exécuter Emesene dans un terminal pour voir les logs s'afficher et le copier-coller pour les éventuels rapports de bugs.

Wednesday 1 October 2008

Création d'une interface GTK+ avec Glade

Pour les développeurs, faire une interface graphique est une partie assez importante du travail. Heureusement des outils existent pour aider au développement de l'interface. Ils permettent entre autre une approche moins "brutale" puisque l'on peut concevoir sa GUI graphiquement en quelques clics. Glade est un programme permettant de réaliser ses propres interfaces en GTK+ qui donc s'intègrent très bien avec l'environnement Gnome. Voyons comment ça marche. Pour cela, nous allons aussi utiliser du code Python afin de pouvoir "gérer" cette petite GUI.

Continue reading...

Monday 11 August 2008

PyMedia sur Ubuntu 8.04.1 LTS

Depuis peu, je m'attaque à la programmation en langage Python.
Pour l'instant je n'en suis encore qu'au début, mais ça s'apprend plutôt bien et rapidement. Je trouve même que c'est un bon programme pour débuter en programmation.
Dans le même but que mon player audio en langage Java, j'ai essayé d'en faire un en Python grâce à la bibliothèque PyMedia mais c'est là que les soucis commencent.

Continue reading...