Les forfaits mobiles, tant de choses à dire !

Moi qui était en panne d’inspiration, voici que l’actualité m’en donne !

Voici donc pour commencer un nouveau dossier sur la baisse des prix chez les différents opérateurs mobiles, expliquant simplement, du moins je l’espère, ce que vous payez lorsque vous payez un forfait mobile, et pourquoi les opérateurs de téléphonie ne sont pas aussi arnaqueurs que ce qu’on voudrait nous faire croire (même s’ils le sont quand même un peu :p )

C’est donc par ici !

Migration terminée

La migration du site vers ovh est maintenant finie et fonctionnelle, normalement il n’y a plus d’erreurs 404. N’hésitez pas à me contacter si vous en trouvez quelques unes.
Il me reste à présent à trouver de nouveaux sujets d’articles ! 2012 commence pour moi avec le syndrome de la page blanche…

Changement d’hébergeur

Tout d’abord, ne passons pas à côté des inispensables :

BONNE ANNEE 2012 A TOUS !

Une fois les formalités passées, je tiens à m’excuser des absences de Bugneurone ces temps ci ainsi que du nombre incalculable d’erreurs 404 présentes sur le site… Je suis en train de changer d’hébergeur et ça ne se fait pas sans anicroches… Je vous préviendrais une fois que tout sera de retour à la normale.

Des fonds d’écran aléatoires sous Linux

Voici un nouveau petit script vous permettant de changer de façon aléatoire le fond d’écran de votre bureau Linux toutes les cinq minutes. J’ai utilisé comme base de ce script celui du Hollandais Volant, disponible à cette adresse (je vous conseille d’ailleurs d’aller faire un tour sur ce site, il y a des scripts bien sympathiques).J’ai ensuite ajouté le côté aléatoire.

Le voici donc en téléchargement zip : wallpapers

Copiez ce fichier dans un dossier de votre disque dur, puis pensez à l’ajouter aux applications au démarrage si vous souhaitez qu’il se lance dès l’ouverture de votre session. Sinon, il vous faudra taper la commande suivante dans un terminal :

 /votre/dossier/wallpapers

Pour faire correspondre le code à vos besoins, vous devrez modifier le chemin du dossier dans lequel vous avez stocké les images que vous voulez utiliser comme fonds d’écran (ligne 3). Vous pouvez également modifier le temps entre chaque changement ligne 19. Ici, il est réglé à 5 minutes soit 300 secondes.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash
 
dossierimages="$HOME/Images/wallpapers/" # chemin du dossier des images
images_dispo=`ls $dossierimages`
nbFile=$(find $dossierimages -type f | wc -l)
while :
    do
    image=$RANDOM
    let "image%=$nbFile"
 
    for image_courant in $images_dispo
        do
        if test "$index" != "$image"
        then
            gconftool-2 --set /desktop/gnome/background/picture_filename --type string "$dossierimages$image_courant"
        fi
        let "index=$index+1"
        sleep 300 # durée en seconde
    done
done
#!/bin/bash

dossierimages="$HOME/Images/wallpapers/" # chemin du dossier des images
images_dispo=`ls $dossierimages`
nbFile=$(find $dossierimages -type f | wc -l)
while :
    do
    image=$RANDOM
    let "image%=$nbFile"

    for image_courant in $images_dispo
        do
        if test "$index" != "$image"
        then
            gconftool-2 --set /desktop/gnome/background/picture_filename --type string "$dossierimages$image_courant"
        fi
        let "index=$index+1"
        sleep 300 # durée en seconde
    done
done

Un plugin pour programmer en Lisp avec Eclipse

Je ne sais pas vous, mais moi j’adore l’IDE Eclipse. Certes, il est un peu lourd, mais il regroupe une quantité de fonctionnalités et de langages divers, d’outils de suivi de votre projet, de debuggage… Et si jamais vous ne trouvez pas votre bonheur dans les fonctionnalités existantes, de nombreux plugins sont disponibles sur le Web pour de nouveau langages. Un IDE complet, simple et modulable, c’est tout ce que je demande. C’est pourquoi je commence une petite série « Des plugins pour Eclipse » ou je recenserais différents plugins que j’ai pu utiliser (surtout pour de nouveaux langages), comment les installer et les configurer.

Aujourd’hui, je m’intéresse à la programmation en Lisp avec Eclipse Indigo. Pour cela, j’ai trouvé le plugin Cusp qui me paraît correspondre à mes attentes concernant un IDE Lisp. Pour l’installer, c’est assez simple en passant par l’installation automatique d’Eclipse.

Vous allez donc dans « Help/Install New Software ». Dans la fenêtre qui s’ouvre, vous colle l’adresse http://www.sergeykolos.com/cusp/update dans le champ « Work With », puis vous sélectionnez dans la fenêtre du dessous les composants de Cusp :

  • Cusp plug-in
  • Lisp Libraries
  • SBCL-Linux si vous êtes sous Linux et SBCL-Win32 si vous êtes sous Windows, mais surtout pas les deux. Vous risqueriez de tomber sur des bugs.

Fenêtre d'exemple d'installation de CuspLaissez les autres options telles quelles et cliquez sur « Next ».

Si vous êtes sur une version récente d’Eclipse, comme Indigo, celui-ci va vous dire que certains composants que vous souhaitez installer nécessite l’ancienne version de l’installeur. Acceptez et lancez cette ancienne version.

Puis sélectionnez l’installation de nouvelles fonctionnalités :

Selection nouvelle fonctionnalité

Cliquez sur « Next », puis sur « Finish » sans modifier la dernière fenêtre.

Une nouvelle fenêtre apparaît ensuite, sélectionnez une fois encore Cusp puis cliquez sur « Next »

Installation suiteAcceptez les termes du contrat, et cliquez sur « Next », puis cliquez sur « Finish »

Laissez tourner Eclipse sans fermer les fenêtres ouvertes, jusqu’à ce qu’une nouvelle fenêtre apparaisse vous demandant de confirmer l’installation de paquets non vérifiés : Cliquez sur « Install All » et laissez l’installation se poursuivre, toujours sans fermer les fenêtres. Eclipse vous demandera ensuite de redémarrer. Cliquez sur « Yes ».

Et voilà, vous pouvez à présent programmer avec Lisp. Pour cela, allez dans « File > New > Project » puis sélectionnez le « Lisp project ». Cliquez sur « Next », donnez un nom à votre projet et cliquez sur « Finish ». Cusp se charge de créer les packages et les fichiers nécessaires à votre projet. Si Eclipse vous le demande, ouvrez la perspective Lisp. Sinon c’est dans « Window > Open Perspective > Other ».

Vous devriez avoir une fenêtre de la sorte :

Le fichier main contient votre programme principal, et le fichier tests les tests de votre programme (Sans blague…)

Pour compiler et tester  votre programme, vous devrez utiliser l’onglet REPL. La partie inférieure sert à écrire vos commandes et la supérieure donne les résultats de la compilation et de votre exécution. A la création de votre projet, celui-ci est compilé automatiquement. Sinon, faites un clic droit sur le projet et choisissez « Load Project ». Vous pourrez voir le résultat de la compilation dans REPL. Tapez « (main) » dans la partie inférieure de l’onglet, puis pressez entrée. Si votre plugin est bien installé, « Hello World ! » devrait s’afficher dans la partie supérieure.

Une fois que cette vérification est effectuée, vous pouvez taper à la suite du fichier main.lisp la fonction suivante :

(defun f ()<br /> "Hello f !" )

Et sauvegardez. A la sauvegarde, le projet est automatiquement compilé. Vous pouvez ensuite taper « (f) » dans REPL et vérifier que la sortie est conforme.

Si Cusp fonctionne bien, vous n’avez plus qu’à vous lancer dans votre projet !

Bonne programmation !

John McCarthy, fin de carrière

Je ne pouvais pas ne pas en parler, vu que je viens d’apprendre le décès de John McCarthy le 24 octobre 2011 à l’âge de 84 ans. Pour ceux qui ne le connaissent pas, McCarthy est l’inventeur du langage de programmation Lisp, très utilisé dans le monde de l’Intelligence Artificielle et ancêtre d’autres langages tels que Python, Ruby, Javascript… On lui doit également ce terme d’Intelligence Artificelle, qu’il « créa » en 1955 avec Marvin Lee Minsky, la première. Il a également été récompensé de nombreuses fois notamment par le prix Turing, la plus haute récompense possible pour un chercheur en informatique. Pionnier de la programmation utilisant la logique symbolique, il a également inventé avec Fernando Cobarto la technique du temps partagé, permettant à un même ordinateur d’être utilisé par plusieurs utilisateurs simultanément à partir de terminaux connectés à ce premier. Après des centaines d’articles et plus 50 ans de carrière au MIT puis à l’université de Standford, John McCarthy « ferme définitivement la parenthèse » (citation du MagIT)

Je signale également que le père du langage C et cofondateur du système UNIX, Denis Ritchie, est également décédé le 13 octobre, mort passée inaperçue à côté de celle de Steve Jobs.

Le monde informatique est vraiment touché en ce moment…

Google AI Challenge 2011

Après son édition 2010, le Google AI Challenge revient cette année encore ! Je vous rappelle le principe : il vous faut programmer dans le langage de votre choix une intelligence artificielle permettant de gagner un petit jeu contre un autre participant. Les points sont comptabilisés en fonction des résultats de ces jeux et un classement est effectué ! Que vous soyez programmeur débutant ou confirmé, vous pouvez participer, les intérêts sont multiples.

Cette année, il vous faudra contrôler une colonie de fourmis et conquérir la carte !

A vos lignes de code et vos IDE, cette année c’est ici que ça se passe !

Amusez-vous bien.

Tri des photos

Je me suis attaquée récemment au problème du tri de mes photos, ou comment ranger totalement un dossier contenant plus de 10 000 photos ? Ces photos étant classées par thème, comment les réorganiser de façon à les classer par date ?

Etant donné qu’il est très difficile voire impossible de tout ranger à la main – impossible car j’en aurais eu marre avant d’arriver au bout – je me suis décidée à apprendre le python et à faire un script qui ferait ça pour moi. Je vous le donne également, pour ceux à qui ça pourrait servir. Il est disponible en téléchargement ici : TriPhoto

Pour pouvoir l’utiliser, il faut avoir installé python sur votre PC ! Pour cela, rendez vous sur ce site pour télécharger, en version 2.x (attention, risque de ne pas fonctionner avec les version 3.x).Vous aurez également besoin de la librairie Python Imaging Library disponible ici. Après cela, sous Windows un double clic sur le fichier Tri.py devrais suffire à lancer le script. Sur les linux, il vous faudra taper dans la ligne de commande en fonction de la version installée :

user@computer:$ python Tri.py
user@computer:$ python2.6 Tri.py
user@computer:$ python2.7 Tri.py

Cinq options sont possibles :

  • La standardisation du nom des fichiers : supprime tous les caractères spéciaux des noms des répertoires et des fichiers. Seuls sont autorisés les caractères alphanumériques, les parenthèses et le caractère underscore. J’ai ajouté cette fonctionnalité dans le cas de noms un peu bizarres et où le script ne parviendrait pas à lire le fichier.
  • Le renommage des fichiers : renomme vos photos en fonction des dates exifs sous le format annee_mois_jour_heures_minutes_secondes.extension. Si le renommage n’a pas pu être fait pour diverses raisons, le fichier n’est pas modifié.
  • Le tri des fichiers : trie vos photos d’un dossier dossier/de/départ vers un dossier dossier/arrivee/annee/mois. Le dossier de départ et le dossier d’arrivée doivent être renseignés par vous au lancement du script. Les dossiers annee et mois sont crées automatiquement en fonction de la date exif de votre photo. Les fichiers qui n’auront pas pu être triés (car ce ne sont pas des photos, ils ne possèdent pas de données exif…) seront stockée dans un répertoire dossier/arrivee/nonTrie. Ce tri ne supprimera en aucun cas les fichiers de dossier/de/depart. A vous ensuite d’effectuer cette suppression une fois que vous avez vérifié que le tri s’est correctement effectué.
  • Standardisation et Tri : réunit ces deux traitements en un seul
  • Renommage et Tri : idem

A la fin du traitement, un fichier de log out.log est créé soit dans le répertoire dossier/de/depart si vous avez demandé une simple standardisation ou un simple renommage, et dans dossier/arrivee si vous avez demandé un tri. Ce fichier de log contient l’ensemble des opérations effectuées, avec ancien et nouveau chemin, ainsi que les erreurs éventuelles.

Voilà, en espérant que cela vous sera utile. Si vous avez des questions ou des problèmes à utiliser mon script, n’hésitez pas à laisser un commentaire !

Fin du dossier sur les logiciels libres

Et voilà, le dossier sur les logiciels libres est terminé. En espérant qu’il vous aura servi / servira. Pour ma part j’ai beaucoup appris en l’écrivant.

Le prochain dossier BugNeurone sera certainement consacré au téléchargement illégal, son impact dans notre société, les solutions possibles… Problème épineux !

Installer des paquets avec Miktex

Un problème que j’ai rencontré (encore) ces jours-ci m’a amené à ce nouvel article : comment installer des packages sous Miktex, je précise : sans accès à Internet.

Petit rappel : Miktex est une distribution LaTeX pour Windows, plutôt bien faite pour le management et l’installation de paquets à partir du moment où on a une connexion Internet fonctionnelle, puisque le Manager de packages les télécharge directement. Or, dans certains cas, comme par exemple une entreprise qui bloque des ports d’accès, on n’a pas la possibilité de télécharger les paquets directement depuis la toile. Comment donc installer un nouveau package sans Internet ?

  1. Télécharger le paquet dont vous avez besoin. Pour cela, il existe des catalogues en-ligne de packages, comme par exemple ici.
  2. Vous récupérerez le plus souvent une archive. Dedans, vous aurez soit des fichiers .sty (si c’est le cas, rendez-vous au point numéro 4), soit des fichiers .ins et .dtx
  3. Si les fichiers .sty ne sont pas disponibles, et qu’à la place vous disposez de fichiers .ins et .dtx, sortez-les de l’archive et copiez-le dans un dossier. Ensuite, ouvrez la ligne de commande Windows et placez vous dans le répertoire où vous avez copié vos fichier (« cd adresse_du_repertoire », ou « NomDeLaPartition: » pour changer de partition). Tapez ensuite la ligne de commande « latex NomDuFichier.ins ». Le script vous génère un joli fichier .sty ! Vous devez le refaire pour chacun des fichiers .ins que vous souhaitez installer. Plus qu’à aller au point numéro 4 !
  4. Si vous avez des fichiers .sty, copiez les et allez dans votre répertoire d’installation Miktex, puis dans tex/latex. Créer alors un nouveau dossier du nom de votre package et collez les fichiers .sty dedans. Il ne vous reste plus qu’à aller dans le Menu Démarrer/Miktex/Maintenance/Settings et à cliquer sur le bouton « Refresh FNDB ». Vous pouvez maintenant utiliser votre package dans votre fichier LaTeX !

Settings Miktex

Articles plus anciens «