Cette page appartient aux archives web de l'EPFL et n'est plus tenue à jour.
This page belongs to EPFL's web archive and is no longer updated.

Maxime Augier

cudoku 0.2
Nouvelle version du Curses suDoKu Solver ! maintenant avec descente récursive pour les grilles les plus difficiles, et sauvegarde/chargement des grilles !

Nécessite perl avec le module Curses.

via mercurial:
hg clone https://xolus.net/hg/cudoku

tarball:
https://xolus.net/~max/cudoku-0.2.tar.gz

Ah, pour les ptis malins qui prétendraient que ce serait mieux en C: le remplissage d'une grille entièrement vide prend moins de deux secondes sur un pentium M 1.7GHz
Posted by Maxime Augier at 2:24
Comments (2)
Moved
Je déplace la suite de mes aventures sur http://xolus.net/drupal. Eh oui, encore une tentative de changer d'outil... j'espère que c'est la bonne cette fois :D

EDIT:

Moved again... http://blafh.blogspot.com
Posted by Maxime Augier at 22:01
Rien de bien spécial
Allez, petit update de la situation, ca faisait longtemps :]

Il s'en sont passées des choses depuis mon dernier post. Alors, par quoi commencer mhhh...

L'islande, c'était formidable, ce pays est extraordinaire. Il y a trop a raconter en un seul article de blog, alors je ne retiendrai que le soleil qui se couche a minuit, les couleurs des paysages, et les buffets de saumon et autres poissons... pour le reste, je m'en remettrai au témoignage des quelques photos sur http://jepc3.epfl.ch/gallery/max . En passant, il y a aussi quelques photos d'ici, ma mère ayant eu la bonté de me prêter son vieux numérique de poche (un truc avec aucune fonction et qui cadre même pas droit, excusez la pauvre qualité des prises).

De retour a Bloomington, je suis reparti peu de temps après pour Palo Alto, ou je suis resté deux jours sous le toit de mes deux estimés collègues Cédric et Stéphane, fiers ambassadeurs locaux de l'ingénierie suissse. Je les remercie encore pour leur hospitalité !

Le premier des deux jours était dédié au workshop TIPPI à Stanford, ou Steve présentait notre projet. C'était très intéressant, le problème des interfaces de confiance a vraiment été examiné sous tous les angles. L'ambiance était très sympathique, et tout s'est déroulé pour le mieux.

Le deuxième jour, Steve a reconduit sa présentation chez Google cette fois. Impressionnant. A la fin de la présentation, un de leurs employés m'a demandé de considérer l'implémentation de la partie client en javascript, pour des raisons de portabilités. Sur le moment, ses arguments paraissaient extrêmement convaincants. La récente annonce d'une vulnérabilité dans la plupart des browsers courants m'a un peu refroidi, et nous avons entre temps formalisé un type d'attaque que nous n'avions pas considéré, et qui confirme la pertinence du choix de java pour la partie client.

J'ai ensuite dit adieu a mes compatriotes pour retrouver l'indiana et sa météo merveilleuse (cette semaine, avec une température constamment au dessus de 35°C et une humidité supérieure a 70%, je vous raconte pas...). Du coup, je travaille la nuit et je dors le jour, c'est plus agréable. Juste un peu gênant pour la synchronisation avec les collègues...

Il y a deux semaines, je suis passé a mon rythme de croisière et j'ai finalisé la démo du projet. Je comptais finir vendredi, j'ai été retardé jusqu'a mardi dernier a cause d'une erreur ridicule dans le code qui enrobait les opérations mathématiques (nommément, modulo q au lieu de modulo q-1 sur l'exposant d'une exponentielle dans le groupe multiplicatif des entiers mod q). Tout a l'air de fonctionner correctement; le seul problème étant que j'ai utilisé java 1.5, qui n'est apparemment pas encore disponible sur OS X (ils utilisent tous des macs ici).

La prochaine phase sera apparemment de prendre en charge le développement des interface pour l'expérimentation sur les humains (nyark nyark), histoire de vérifier si nos hypotèses relatives aux performances de l'humain seront suffisamment exactes pour que le bénéfice en matière de sécurité soit concret.

Ah, je risque aussi de faire un petit saut en suisse autour de la dernière semaine de juillet, histoire de me réacclimater un peu.

Il m'est arrivé une expérience étrange récemment: l'overdose de cafféine. C'était l'après-midi, je travaillais sur mon projet, et il faisait excessivement chaud. Sans m'en rendre compte, j'ai absorbé un gallon de Dr Pepper (~ 4 litres). Eh bien, j'ai passé la nuit a programmer frénétiquement, et j'ai fait plus de progrès que les 2 semaines précédentes cumulées; vers 9h du matin je me suis écroulé de fatigue. Je me suis réveillé a 14h, trouvant dans ma mailbox un mot de Steve qui voulait me voir pour discuter de l'avancement; j'ai alors pris la douche la plus rapide de ma vie, puis je me suis rendu à mon bureau en courant tout le long des 2km qui le séparent de ma maison; j'ai monté les 10 étages a pied, j'ai débarqué en trombe dans son bureau; je parlais a toute vitesse et en bougeant les bras dans tous les sens... le plus drôle, c'est que je ne me rappelais plus de rien, et que je ne me souvenais plus d'avoir écrit mon code (comme si je le voyais pour la première fois...), mais au moins tout marchait parfaitement... d'après mes amis d'IRC, il parait que cette nuit la je parlais a tout le monde et a toute vitesse, et que j'étais intarissable.

J'ai toujours évité le café... mais la, je comprends mieux la vénération de certains codeurs pour la cafféine :]
Posted by Maxime Augier at 17:48
Billet d'avion acheté
Ca-y-est, j'ai mon billet pour l'Islande pour le w-end du 22 ! Vive IcelandAir avec ses prix imbattables vers les Etats-Unis. Ca va être bien drôle...

Le labo m'a gentiment prêté un Palm IIIc pour tester le portage de mon code sur une plateforme J2ME. Malheureusement, ce n'est pas aussi trivial que ce que j'imaginais, mais heureusement le protocole lui-même tournera sans changements, seule l'interface graphique est à ajuster. J'ai hâte de passer aux mesures de performances.

En début de semaine, Steven a imaginé un hack qui épargne n exponentiations sur le serveur au prix de deux échanges de messages supplémentaires. Je suis content que mon code ait été bien structuré dès le départ.

Markus a procédé a une expérience de phishing grandeur nature sur les étudiants de l'université locale... sans bien évidemment demander leur accord aux "participants", pour obtenir des résultats précis (Mais le projet avait l'accord du comité d'éthique local). Beaucoup sont furieux, les langues se sont déchainées sur le blog du projet, la news a fait la première page du journal étudiant local, puis a aterri sur slashdot il y a peu. Comme quoi...

J'ai annulé le projet MOAZ (trop de temps de calcul) après plus de 120 heures de calcul sur xolus1. J'en lancerai une deuxième version bien plus efficace dès que j'aurai trouvé le courage de me plonger dans les détails malsains de tar.

Virgil continue ses expériences de datamining sur des sites communautaires japonais... les différences culturelles sont frappantes. Sans commentaire.

J'ai découvert deux restaurants thibétains tout près de chez moi. Le premier est plutôt un restaurant "américain d'inspiration thibétaine", donc tout a fait abordable par un occidental, presque un peut trop. Mais appréciable quand même. Le deuxième est plus traditionnel, et vraiment excellent, même si la saveur particulière du fromage de yack peut être déconcertante au premier abord.

Voila voila, c'est tout pour le moment.
Posted by Maxime Augier at 4:32
ColdC, Genesis, ColdCore et al
Savez vous ce qu'est un MUD ? Multi User Dungeon, l'ancêtre de nos MMORPGs courants. Pensez World of Warcraft, mais avec la pureté ergonomique du mode texte (Les GUI peuvent brûler en enfer, nous sommes tous bien d'accord, hein ?) Quitte a perdre du temps sur un jeu en ligne, j'apprécie l'aspect d'évolution et de construction des RPG, ainsi que la liberté offerte par le mode texte, autrement stimulante pour l'imagination. Mais là n'est pas le débat.

Il existe sur le net plusieurs logiciels implémentant le concept, de manière plus ou moins générique. Parmis ceux-ci, j'ai découvert une obscure référence vers cette plateforme: http://www.cold.org.

D'après les dates mentionnées sur le site, le projet a démarré il y a plus de dix ans. Le système se décrit comme une Base de données orientée-objets, a code mutable en runtime; il inclut un langage (ColdC), une machine virtuelle (Genesis) et un compilateur dédié. Le langage est orienté objet, à héritage multiple, supporte les listes et les dictionnaires nativement, et surtout supporte la modification de son programme sans redémarrage; les objets sont persistants, et sont sauvegardés de manière asynchrone sans interruption de service. Une combinaison de fonctionnalités peu commune, mais dont l'intérêt dans le cadre d'un MUD est évident: plus besoin de rebooter le processus serveur, et donc d'interrompre potentiellement des centaines de joueurs, pour un changement de code. La machine virtuelle fournit les fonctions de base d'I/O réseau et la persistence des objets, tout le reste des fonctionnalités tenant dans une bibliothèque dont la totalité est modifiable interactivement depuis le système lui-même.

J'ai été impressionné par les spécifications, et je ne comprends pas encore pourquoi ce projet n'a pas connu une diffusion plus large. Problème de performance ? Intérêt trop restreint ou mauvais marketing ? manque de diversité dans les environnements pré-fournis ? Complexité excessive ?

Pour l'instant, la seule solution que je puisse imaginer qui soit équivalente et basée sur des technologies "En vogue" serait une collection de classes Python. (Je soupçonne que Python est a même d'implémenter ce mécanisme de modification dynamique du code, mais n'en suis pas certain). Je soupçonne également que Zope serait capable d'un travail équivalent, mais j'ignore si Zope peut être facilement découplé du support web.

J'hésite donc entre me plonger dans les quelques 50000 lignes de ColdC constituant l'implémentation "stock" d'un MUD générique (ColdCore), pour l'adapter a mes besoins, M'orienter vers Zope, ou réécrire le noyau de base en Python (je n'ai pas l'habitude de Python, Perl occupant déja sa niche principale dans mon cas.)

Suggestions, quelqu'un ?
Posted by Maxime Augier at 22:53
(Presque) victime d'une blague de mauvais goût
J'ai reçu ceci par mail... Je trouve la plaisanterie d'un goût plus que douteux. Que dire à tous les non-geeks de l'école, dont la culture Internet n'était pas suffisamment hypertrophiée pour leur permettre de voir le coup venir !

Référence: http://en.wikipedia.org/wiki/Shock_sites

Bon, après un gag pareil, on espère que M. Delaloye ne laissera plus trainer le mot de passe de sa boite mail dans les coins..

Puisque le plaisantin a si gentiment laissé une trace bien claire,Stephane Ecuyer pourra-il nous révélér qui utilisait la dite machine a cette heure-là, afin que le coupable puisse être lynché sur la place publique ?

I Hate Clueless n00bs (tm)

------

Received: (from apache@localhost) by sicdec1.epfl.ch (8.12.11/8.12.11/Submit)
id j2EKmSHs013803 for etudiants.epfl@epfl.ch; Mon, 14 Mar 2005 21:48:28 +0100
Date: Mon, 14 Mar 2005 21:48:28 +0100 (MET)
From: mathieu.delaloye@epfl.ch
Subject: sondage sts
X-Originating-IP: 128.178.79.65
To: etudiants.epfl@epfl.ch
Message-id: <1110833308.4235f89c0f6d5@imapwww.epfl.ch>
MIME-version: 1.0
Content-type: text/plain; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
Delivered-to: etudiants.epfl@epfl.ch
User-Agent: IMP/PHP IMAP webmail program 2.2.8
X-EPFL-list-sender: mathieu.delaloye@epfl.ch
X-Imap-User: mathieu.delaloye@epfl.ch
X-Scanned-By: MIMEDefang 2.39

Salut tout le monde je voulais vous demander pour remplir mon petit sondage sts
ca prend 2 minutes....
www.tubgirl com
concerne les filles de l'EPFL

merci+
Posted by Maxime Augier at 0:20
Comments (3)
Sources de Nutriments Disponibles
comme promis, voici un récapitulatif des points stratégiques d'alimentation pour le nouveau venu célibataire, non meublé et non motorisé.


près d'Eigenmann Hall (la ou est mon bureau):

Dagwood's Deli & Subs Shop - Sandwiches
Ambiance fast-food mais service tout a fait acceptable par rapport a la taille du restaurant. Produits de bonne qualité.

Jimmy John's - Sandwiches
Sandwiches a l'emporter, service très rapide, bonne qualité.

Sobon - Restaurant Coréen
Pas de service. Décoration sobre mais plaisante. Mets relevés.



Downtown (près de chez moi)

Chow Bar - Restaurant Chinois
Mets excellents, personnel aimable, mais décoration un peu glauque.

Penn Station - Sandwiches de bourrins
Sandwiches pas mauvais du tout, mais un peu lourd sur l'estomac.

Village Deli - Sandwiches sur assiette, petit-dejeuner 24h/24
Sandwiches raffinés, produits frais, serveuse charmante :D

Dagwood's Deli & Subs Shop - Sandwiches sur assiette
Pas encore testé

Starbucks - Café américain dégeu
Leur produit standard est une insulte au terme même de café.

Burger King - Duh
Se méfier de leur thé froid, il est sans sucre, pas comme ici. (Valable pour d'autres endroits également)



Pas testé, mais entendu parler ou reçu des publicités:

Chili's - Piments
Long John Silver's - Poissons et Fruits de Mer
Arby's - Hamburgers de bourrins
Pizza Hut - Duh
Papa John's - Pizzeria
Posted by Maxime Augier at 21:12
Comments (3)
Nouvelles de Bloomington
Quelques nouvelles en direct de Bloomington, IN, de votre correspondant local.

Les états-unis, c'est chouette. Une fois passé le cap des formalités administratives, l'immigration a l'aéroport, la douane, etc..., les gens sont vraiment aimables et acueillants. Le lendemain de mon arrivée, j'avais déja un bureau à disposition avec un cable réseau, une clef, une carte d'accès et tout le toutim. Le chauffeur de la faculté est à ma disposition, et je recevrai bientôt mon abonnement de bus pour le semestre, ce qui est particulièrement bienvenu vu que le trajet maison-bureau prend plus d'une demi-heure a pied.. Ais-je précisé que j'ai eu droit a une tempête de neige hier ? Aujourd'hui, ciel bleu, le temps change à une vitesse hallucinante, sans doute a cause de la platitude de la région.

Il semblerait qu'un de mes voisins aie un access point wifi, configuration linksys par défaut, que du bonheur. La ligne monte a 50k/s facile. Ce serait bête de ne pas en profiter !

Avis aux futurs voyageurs, il est apparemment impossible de trouver un adaptateur pour prises suisses. Bien que tous mes chargeurs soient compatible avec leur 110V, j'ai failli me retrouver sans téléphone, PDA et laptop opérationnels. Après avoir demandé la dite pièce sans succès dans une dizaine de commerces différents, je me suis résolu a fabriquer mon propre adaptateur a partir d'une multiprise que j'avais emmenée, et d'une rallonge que j'ai achetée sur place.

Je n'ai pas encore de balance donc je ne peux pas vous communiquer de données sur ma masse corporelle, mais comme plus de la moitié des "restaurants" ici sont de type fast-food, c'est pas brillant brillant. Je compte sur les céréales du matin pour m'aider a tempérer la situation. (En passant, je n'ai trouvé que deux types de céréales ne contenant pas de BHT; ce sont les Kellogs Special K "Low-Carb" et "aux fruits". ces gens sont fous). En matière de fast-food, on trouve de tout et n'importe quoi, avec des chaines spécialisées dans le poisson grillé ou les piments (sic). Pour l'instant, j'ai testé un restaurant coréen, une échoppe a sandwiches locale, un Burger King et une espèce de Mac Donalds mais avec que du poulet (j'en connais un à qui ça plairait). Notons au passage que le Burger King se trouve dans un batiment historique, avec fenêtres style gothique flamboyant. Il y a aussi une banque et un bowling dans le même bâtiment... ces gens sont fous.

Ici, le piéton a toujours raison, les feux a piétons sont donc conséquemment peu utiles et tout le monde traverse n'importe comment. J'espère ne pas prendre de mauvaises habitudes et me faire écraser à mon retour...
Posted by Maxime Augier at 20:00
Comments (1)
PolyLAN 4: Debriefing
Historique du déroulement de la LAN:

* vendredi, 3h00: Dans un moment d'inattention, notre développeur web flingue la base de données des inscrits. Le backup planifié pour son serveur de développement n'a pas fonctionné. La plupart des données vitales peuvent être récupérées, à l'exception des n° de tickets des joueurs, que nous finissons par saisir à la main. Moralité: la prochaine fois, plutot que d'utiliser des tickets générés aléatoirements, prendre le hachage du nom du joueur concaténé avec une clef secrète, de manière à pouvoir regénérer les tickets en cas d'accident.

* samedi, 10h00: premier cafouillage, certains nouveaux arrivés semblent ne pas obtenir accès à Internet. La whitelist dynamique d'IPs authentifiées, composant bricolé à la hâte le vendredi soir, est d'abord suspectée. La majorité des joueurs étant déja enregistrée, la whitelist est désactivée, sans succès.
Un examen sommaire du traffic révèle la présence d'une tempête ARP. Les logs du noyau de la passerelle confirment le débordement du cache ARP. Quelques recherches sur le web nous apprennent que l'implémenation ARP de linux ne s'adapte pas a des réseaux de couche 2 importants. Comme mesure provisoire, la taille du cache ARP est augmentée, ce qui atténue légèrement le problème, mais moins que ce que nous attendions.

Les joueurs commencent à se plaindre de problèmes pour l'accès à Internet. Un deuxième examen sommaire indique un nombre important de requètes ARP vers des machines inexistantes, nous indiquant la présence d'un ver sur notre réseau. L'utilisation d'un masque de sous-réseau trop large (classe A) nous aura paradoxalement rendu service, en rendant le réseau inutilisable bien avant qu'un nombre important d'hôtes soient infectés. Nous partons à la chasse aux machines infectées. Nous gravons à la hâte un antivirus sur un CD et le faisons circuler.

Samedi, ~12h ? : L'activité du ver est à son comble, Les switches ne répondent plus. Comme dernier recours, nous abaissons drastiquement le seuil du mécanisme de contrôle de broadcast de nos deux switches principaux. L'accès à internet est immédiatement rétabli, mais au détriment des joueurs cherchant une partie, car la plupart des mécanismes de découverte de partie des jeux actuels font une utilisation intensive du broadcast. Nous profitons de l'accalmie pour retrouver et désactiver les machines responsables. Une fois les machines problématiques déconnectées, devant les demandes des joueurs, nous élevons à nouveau le seuil de contrôle de broadcast.

* Samedi, ~17h00: Off duty jusqu'a dimanche, 06h00. Pendant ce temps, Nitro a identifé la présence d'un autre ver, source de SYN flooding, et a recompilé le noyau de la passerelle avec le support pour les SYNCookies.

Dimanche, 06h00: la situation est calme, j'en profite pour me documenter sur la scalabilité d'ARP sous linux. Les noyaux de nos deux serveurs réseau supportant déja le Netlink et les démons ARP, l'arpd inclus dans le package iproute2 est mis en service manuellement. Le débordement du cache ARP est immédiatement résolu.

08h00: Les joueurs se réveillent progressivement. Une charge inhabituelle de la passerelle nous alerte, nous constatons a nouveau la présence de traffic de scan sur la passerelle. Quelques machines sont identifiées. Nous suspectons une variante de SDBot, non détectée par Stinger, et malgré la recommandation avisée de winsec.epfl.ch, impossible de déployer ePO sur les machine des joueurs. Les dites machines sont isolées, mais trop tard, le réseau est de nouveau saturé...

11h00: Nous gravons un CD contenant le SP2 pour Windows XP, et demandons à tous les joueurs de se mettre a jour. Parallèlement à cela, le traffic a destination du port 445(microsoft-ds), cible de notre ver, est surveillé, et les machines arborant un comportement de scanner sur ce port sont automatiquement isolées.
Concernant l'installation du Service Pack 2, aucun problème de compatibilité n'est signalé avec les jeux utilisés. Les hésitations de certains, conséquence de la mauvaise réputation du SP2, sont vite dissipées par les témoignages d'autres joueurs dans la salle. Seul un récalcitrant contaminé refuse d'interrompre sa partie (de CS, je souiigne) pour mettre a jour et nettoyer sa machine, mais finit par se plier à nos arguments lorsque nous lui expliquons le danger qu'il représente pour le reste du réseau.

Une fois installée l'isolation semi-automatique des machines infectées, plus aucun problème de réseau majeur n'a été signalé chez les participants. (Excepté bien sur chez les personnes concernées.)
Posted by Maxime Augier at 19:37
Départ -14h
Voila, mes bagages sont prêts, de même pour la paperasse administrative. Demain matin, je m'envole pour Indianapolis. Le premier jour de six mois de stage.

Je laisse derrière moi deux associations et trois PME démunies de sysadmin; pour l'instant pas de problèmes, pourvu que ça dure le plus longtemps possible... Bonne chance les gars.

Ce matin, ma masse (oui, pas poids, je suis ingénieur) était de 58kg, ce qui me fait un IMC de 20.8 (Normal). Au pays de la consommation, en quelles proportions cette mesure va-elle augmenter ? les paris sont ouverts (Gab est le bookmaker).

Voila, restez informés.
Posted by Maxime Augier at 17:00
Page : 1 2 3 Next »