Développement

Tout ce qui concernent mes travaux en développement.

Le temps des releases : easy_extract

Posté par fantomas, le 19 janvier 2010 sous Développement

Imaginons que j'ai sur un serveur de donnée une grosse quantité d'archives sous différents formats, tel que RAR, ZIP, XTM...

Si je souhaite extraire toutes ces archives, je devrais aller trouver chaque archives dans son répertoire, taper la bonne commande pour pouvoir les extraire, les réparer au besoin et ainsi de suite... Plutôt fastidieux non ? :(

Sur ce constat m'est venu l'idée de easy_extract, un script écrit en Python qui va analyser récursivement les répertoires à la recherche d'archives ou de collections d'archives pour les extraire et les réparer automatiquement si elles sont corrompues.

Pour ...

Lire la suite… 1 commentaire : developpement python release

Le temps des releases : Vélib'erator

Posté par fantomas, le 24 septembre 2009 sous Découvertes Développement

Vélib'eratorSuite à mon abonnement à Vélib', habitant près d'une station récemment construite, j'ai vite remarqué que de trouver un vélo en bon état ou une place de parking à proximité avant les 30 minutes fatidiques et payantes pouvait vite devenir un calvaire.

Sur ce, après quelques recherches,  j'ai pu constater que les informations sur l'état des stations du réseau Vélib' étaient librement accessibles. D'où l'idée de créer un paquet python nommé Veliberator, me permettant depuis mon shell de consulter l'état de mes stations favorites.

Pour les fans de la ligne de commande, essayez ...

Lire la suite… 1 commentaire : developpement django python service velib

Le temps des releases : Django-sekh

Posté par fantomas, le 31 août 2009 sous Développement

SurligneurVous avez certainement déjà vu dans Google quand vous consultez une page depuis son cache, les termes de la recherche sont coloriés dans le contenu de la page pour permettre de les discerner rapidement.

De ce principe certains sites ont adapté la même technique en coloriant certains mots de la page correspondant à la recherche de l'utilisateur si il provient d'un moteur de recherche. 

C'est ce que django-Search Engine Keywords Highlighter fait !

Une fois installé avec BeautifulSoup, il suffit juste d'ajouter ce middleware à la fin de la liste dans votre fichier ...

Lire la suite… 0 commentaires : developpement django release

Le temps des releases : Django-smileys

Posté par fantomas, le 19 juillet 2009 sous Développement

Parfois il est temps de se sortir les doigts du code, et d'en parler !
Mais pour en parler, il faut documenter, ce qui prend un peu de temps, mais j'y travaille.

Pour commencer je vais vous présenter une de mes applications favorites, par sa simplicité et son utilité incroyable. :D

Django-smileys est une application Django comme son nom l'indique, permettant d'inclure facilement dans ses templates des smileys, de ce genre :) :p.

Pour cela, une fois l'application téléchargée et installée dans votre projet django, il vous suffit dans vos templates d'utiliser le filtre qui va convertir tout ...

Lire la suite… 0 commentaires : developpement django release

Paye ta Fabric !

Posté par fantomas, le 01 mai 2009 sous Découvertes Développement

Le déploiement d'applications, c'est pas toujours facile et rébarbatif surtout quand on travaille sur un parc de machines.

Imaginons que j'utilise un serveur de version, du genre Subversion ou Mercurial et que j'utilise un ou deux serveurs (test, production 1, production 2, ...) pour héberger mon ou mes applications.

Le déroulement est le suivant :

  • Développement en local.
  • Propagation des modifications.
  • Connection SSH sur les serveurs.
  • Rapatriement les dernières modifications
  • On redémarre le soft.

Vous me direz que cela n'est pas forcément très long, mais quand vous devez le faire souvent et plusieurs fois par jour, on ...

Lire la suite… 1 commentaire : django découvertes python

Stop aux spams sur django.contrib.comments

Posté par fantomas, le 15 avril 2009 sous Développement Expériences

Depuis quelques jours, les formulaires de commentaires fournis par l'application django.contrib.comments dans la distribution de Django, sont devenus vulnérables aux spams.

L'application comments contient par défauts plusieurs sécurités pour éviter le spamming, comme un honeypot et la vérification du temps de saisie du commentaires.

Malgré cela les équipes de spammer sont très réactives, et coder un bot spécifique pour les sites django utilisant ce système de commentaires, rend tous ces sites vulnérables.

En parallèle de cela, dans la version 1.1b de Django, l'application comments acquiert une nouvelle fonctionnalité, qu'est la modération automatique. L ...

Lire la suite… 0 commentaires : blog comments django

Intégrer Twitter dans Django

Posté par fantomas, le 06 janvier 2009 sous Développement Expériences

Twitter, c'est le nouveau média à la mode pour lancer le buzz.
Créer en 2006, son but est simple, pouvoir résumer à tout instant, ce que l'on fait, ce que l'on pense, par des messages courts, que l'on envois par SMS. En effet les messages ne doivent pas dépasser 140 caractères.

De plus votre réseau peut suivre instantanément vos status, enfin bref voilà le Micro-Blogging d'inventé.

Twitter fournis une API pour pouvoir communiquer avec son service. Je me suis alors demandé ce que je pouvais en faire, et ait décidé d'interfacer celle ci avec ...

Lire la suite… 0 commentaires : django python twitter

Distribuer une application Django en moins de 5 minutes

Posté par fantomas, le 29 décembre 2008 sous Développement Expériences

Vous venez de finir votre dernière application en Django, qui se veut réutilisable et distribuable. Félicitations :).

Désormais vous voulez automatiser l'installation et la distribution du paquet, et pourquoi pas le rendre installable facilement en 1 ligne de commande, sous la forme d'eggs.

Le plus simple est de réaliser un script d'installation basé sur distutils qui permettra de télécharger et d'installer le code en quelques secondes.
L'idée est de paqueter le module à distribuer avec un script nommé setup.py se chargeant de l'installation.

Mais réaliser ce script est parfois assez contraignant et long, surtout ...

Lire la suite… 2 commentaires : django python

Django unique et timed sessions

Posté par fantomas, le 24 décembre 2008 sous Développement

VerrouComment rendre unique les comptes utilisateurs connectés sur un site en Django ?

Ce genre de problématique se retrouve souvent sur les sites internet proposant des abonnements à un service en ligne, voulant empêcher le partage d'abonnement.

Pour les besoins d'un projet spécifique en Django au sein de la société Emencia là où je travaille, j'ai du développer un moyen d'empêcher 2 utilisateurs de se connecter sur un compte utilisateur en même temps.

Mais le problème ne s'arrête pas là, comment empêcher la connection et la déconnection successive entre 2 utilisateurs ? L'idée est de donner ...

Lire la suite… 0 commentaires : django développement python

Clustered Models

Posté par fantomas, le 22 décembre 2008 sous Développement

Je vous parlais récemment de l'application Django Clustered Sitemap, servant à établir la correspondance entre 2 objets sur des projets Django.

Après une review globale du code et l'ajout de certaines fonctionnalités, j'ai changé le nom du projet en Clustered models car il ne correspondait plus vraiment à la philosophie du projet.

La première modification à été d'ajouter une nouvelle version du sitemap, mais cette fois ci en nuage 2D.

Le code et les vues ont été rendu génériques pour en faciliter l'intégration et l'extensibilité.
Une feature intéressante est qu'il est possible de ...

Lire la suite… 2 commentaires : django intelligence python

Clustered Sitemap

Posté par fantomas, le 15 décembre 2008 sous Développement Expériences

Comme je vous en parlais dans mon précèdent article, je comptais faire quelque chose d'utile tiré de l'intelligence collective.
J'ai donc intégré une partie du code de mon projet Feed Clusterer pour en faire un module Django.

L'idée est de reprendre la configuration des vues génériques, et de spécifier les champs à inspecter pour effectuer une correspondance. Cette correspondance servira à l'établissement d'une cartographie des différentes vues d'un site en Django.

En modélisant ces données sous la forme d'un dendogramme on peut avoir un sitemap assez surprenant, que l'on peut retrouver ...

Lire la suite… 0 commentaires : django intelligence python

Analyse hiérarchique par le contenu

Posté par fantomas, le 14 décembre 2008 sous Développement Expériences

DendogrammeJe suis actuellement en train de lire un livre sur les différents types d'intelligences dîtes collectives.
C'est à dire l'analyse de données représentant les choix, ou les comportement de plusieurs personnes, et comment en extraire des vérités globales.

Une des première applications à laquelle je me suis attaqué à été de construire un Feed Clusterer en Python, servant à effectuer des regroupements par pertinences entre différents sites web.

Comment ca marche ?

Tout site web qui se respect propose un service de Flux RSS ou Atom, résumant les dernières actualités publiées sur le site. L'idée est ...

Lire la suite… 5 commentaires : intelligence python robot

Python 3.0 : compatibilités et évolutions

Posté par fantomas, le 11 décembre 2008 sous Développement

PythonC'est le 3 décembre dernier que la version 3.0 de Python est sortie. Une version attendue par une grande partie de la communauté Python.

Au programme, un bon coup de nettoyage de la librairie standard, des nouveautés comme le passage en tout Unicode, et une nouvelle syntaxe. Même si cette dernière reste proche des moutures 2.x, elle est clairement incompatibles avec les versions précèdentes.
Un fait assumé par les créateurs.

Pour effectuer la transition en douceur, les versions 2.6 et 2.7 ont amorcées le travail en intégrant une partie des nouveaux concepts présent dans ...

Lire la suite… 0 commentaires : développement python

Comment passer de Wordpress à Django

Posté par fantomas, le 24 novembre 2008 sous Développement

Wordpress c'est très bien, mais ca devient peu devenir vite une machine à gaz. Mon hébergement gratuit et mutualisé chez 1and1 étant finis, je dois migrer sur un nouveau serveur, et PHP, pour moi c'est révolu, autant passer à Django, et décrire la marche à suivre.


Consulter le tutorial

Lire la suite… 0 commentaires : blog django python wordpress zinnia

Changement d'adresse et migration sur Django

Posté par fantomas, le 16 novembre 2008 sous Développement Expériences

Cela va faire 3 ans que j'ai souscrit à mon hébergement gratuit chez 1and1, 3 ans de bons et loyaux services, mais cette période est terminée.... C'est aussi pour cela que j'ai perdu mon nom de domaine en .info....

 

Donc le site change d'adresse, et deviens http://fantomas.willbreak.it, mettez à jours vos bookmarks :)

 

Je décide donc de migrer chez un autre hébergeur, celui même qui me permet d'héberger mes projets en Python, Upasika et je me dis que dans la foulée pourquoi ne pas changer de solution ...

Lire la suite… 0 commentaires : blog django migration wordpress zinnia

Ogame Statistics

Posté par fantomas, le 02 mars 2008 sous Développement

Ogame StatisticsLors de mon dernier article, je vous ai parlé de Open Flash Chart, en vous spécifiant que cela avait un rapport avec un prochain article, cet article le voilà.

Ogame Statisitics est un nouveau site que je viens d'ouvrir permettant de consulter les statistiques de tous les joueurs et alliances présents sur un univers de jeu de Ogame.

Le site réalisé grâce au framework Django, permet de créer une interface visuel des statistiques collectées par un module de mon robot pour Ogame, Obot dont j'ai déjà parler précèdement sur le blog.

En effet j'ai développé un nouveau ...

Lire la suite… 3 commentaires : django développement ogame openflashchart python robot

Open Flash Chart avec le Python's style !

Posté par fantomas, le 28 février 2008 sous Développement

Open Flash ChartRécemment, pour les besoins d'un projet dont je parlerais bientôt lors d'un prochain article,
je me suis mis à rechercher une librairie Python me permettant de réaliser rapidement de jolis graphiques statistiques.

Passé les PyChart et autre ChartDirector. Mon choix s'est porté sur Open Flash Chart, une librairie permettant de réaliser des graphiques statistiques grâce à Flash.

Comme son nom le laisse supposer, la librairie est open source, un point primordial ;)
Un site bien documenté avec des exemples complets, permettant une prise en main rapide et un résultat graphique abouti, m'auront convaincu assez rapidement.

L'avantage ...

Lire la suite… 4 commentaires : actionscript développement flash openflashchart python

Ogame Attack Watcher, la suite !

Posté par fantomas, le 22 janvier 2008 sous Développement

A l'attaque !Cela fait maintenant quelques semaines que le silence se fait sur le blog, ceci est du au développement intensif de mon dernier projet, mon robot pour Ogame, j'ai nommé Obot. C'est l'occasion idéale de faire un focus sur la progression de ce projet.

Je résume le projet dont j'ai parlé dans un article précédent : j'ai ouvert le site web OAW pour mettre à disposition les avancées techniques du robot, et éventuellement recruter de nouveaux contributeurs pour ce projet.

Avec actuellement en frontal un site réalisé grâce au framework python Django, qui m'as permis d ...

Lire la suite… 47 commentaires : ajax django développement ogame python robot

Ogame Attack Watcher

Posté par fantomas, le 25 septembre 2007 sous Développement

OGameOgame Attack Watcher (OAW) est un programme écrit en Python qui permet la surveillance de comptes inter-univers pour OGame.

En effet OGame est un jeu de rôle massivement multi-joueurs en ligne, qui se joue à travers un navigateur internet.

L'intêret de ce programme est de pouvoir surveiller à distance son compte de toutes tentatives d'attaques sur ses planètes, qui pourraient ruiner des semaines d'efforts. Le programme se connectera toute les 30 minutes sur votre compte et vous previendra par email de toute attaques, laissant le temps de préparer une manoeuvre.

Le plaisir d'écrire ce programme pour ...

Lire la suite… 8 commentaires : développement ogame python robot

Génération de flux RSS en PHP

Posté par fantomas, le 21 août 2007 sous Développement

RSSRSS pour Really Simple Syndication, est une des récentes technologies qui popularisent le web 2.0. Le format RSS est un flux de données XML regroupant diverses informations sur des ressources accessiblent depuis le réseau.

Dans le cas d'un site d'actualités, les flux RSS du site regrouperont les nouveaux articles publiés et les commentaires récents qui permettront aux utilisateurs de voir l'évolution du site sans avoir besoin de s'y connecter en permanence.

Générer un flux RSS 2.0 à l'heure actuelle peut rester facile pour n'importe quel développeur. Cependant, générer de multiples flux devient ...

Lire la suite… 3 commentaires : développement php rss service

Valeur binaire et décalage

Posté par fantomas, le 26 juin 2007 sous Développement

Vive le binaireL'informatique a un secret, un secret aussi fondamental que spectaculaire. Toutes les informations circulant à l'intérieur d'une calculatrice ou même d'un ordinateur sont composées de 0 et de 1. Ce système appelé binaire, permet de synthétiser toutes les informations possibles, chiffres, images, caractères, à travers des séquences de bits pour rendre ces informations compréhensibles par une machine.

Par exemple, si on prend le nombre 42, il aura besoin de 6 bits pour stocker son information, qui se représentera pour un l'ordinateur 101010. Je vous épargne la conversion du système décimal au système binaire :)

Lors de ...

Lire la suite… 0 commentaires : actionscript binaire développement

Persistence

Posté par fantomas, le 03 juin 2007 sous Développement

PythonComment rendre les variables du code persistentes à travers le temps et les pannes de courants en passant par les crashs d'application ?

Cette problèmatique fut mise en avant lors du développement d'ECS, un framework e-commerce écrit en Python, au sein d'Emencia, société de services en logiciels libres.

Les modules Python pickle et cPickle servent à cela, mais leurs mise en place de manière générique peuvent etre coûteuse et de plus comment centraliser des centaines d'objets à un moment T donné ?

ECS grâce au projet SQLAchemy, supporte tous types de bases données et fournis en plus un ...

Lire la suite… 5 commentaires : développement ecs persistence python

Service class design

Posté par fantomas, le 19 mai 2007 sous Développement

PHP.jpgAvant de faire du Python par la force des choses et d'en découvrir la toute puissance.

J'ai commencé la programmation sur le web avec PHP, et me suis particulièrement interessé aux moyens de communication à travers les différentes technologies qui composent internet.

A la suite de plusieurs projets plus ou moins grands, une subtilité m'apparait, peu importe la technologie, du moment que les programmes ont accès aux mêmes ressources, et qu'ils partagent le même langue pour communiquer, il n'y a pas de problèmes.

D'où l'idée de centraliser les tâches à partir d'un ...

Lire la suite… 1 commentaire : développement php service

Micro Blogging

Suivez mon actu sur Twitter.com...

Référencement

Quelques liens recommandés chaudement...

Last.fm

Ce que j'écoute actuellement...