Eric et son Blog

Aller au contenu | Aller au menu | Aller à la recherche

vendredi 30 juin 2006

Seduku

Abrutis-videos.com a publié un sudoku de cul:

En bon amateur de Sudoku, je ne pouvais que relever le défi. Ma solution

jeudi 29 juin 2006

Little Van Gogh: Anki Ewing Savenbrand

Ce mois-ci, l'artiste de Little Van Gogh dans nos couloirs est Anki Ewing Savenbrand. Les images sur le site de Little Van Gogh sont trop petites pour pouvoir juger les peintures. En réalité, même s'il s'agit de formes "simples", "d'éclaboussures" et de "traits", il y a une certaine finesse qui les rend vraiment plaisants. Le seul reproche que je pourrais faire est le choix des couleurs qui est vraiment déprimant. Pour le reste, j'aime beaucoup.

mercredi 28 juin 2006

Lire au-delà des mots

J'entends souvent des informaticiens se plaindre ou se moquer des managers non-techniciens qui décident des choses techniquement absurdes. Un exemple très typique est cet article tiré de TheDailyWTF: Un manager demande avec insistance à un développeur de retirer le numéro de version du logiciel du help -> about. De prime abord, cette requête est ridicule et franchement néfaste. Cette information est présente dans la quasi totalité des logiciels et elle est indispensable au support. Et puis, vous voulez savoir si le Word installé sur votre PC est un 2000, XP ou 2003.

En général, la discussion s'arrête là, le technicien refuse de faire ce qu'on lui demande pour d'excellentes raisons et le manager use de son autorité pour forcer le technicien à le faire quand même. Résultat: c'est le bordel.

Pourtant si le manager avait présenté son problème au technicien et laissé à celui-ci la possibilité de proposer des solutions techniquement réalisables, ou si le technicien avait cherché à comprendre pourquoi le manager demandait celà, ils auraient pu se comprendre. Le manager était (comme c'est indiqué dans les échanges de mails) inquiet que le numéro du build (élevé) puisse faire penser au client qu'il leur avait fallu 5000 essais pour arriver à un résultat potable. Le technicien aurait alors pu proposer de supprimer le numéro du build et de le remplacer par la date du build. Il aurait aussi pu souligner qu'une version 1.0.0 donne une impression de "version béta pleine de bugs et de maladies de jeunesse". Ainsi, une politique de versions où on ne donne un numéro qu'à chaque nouvelle version réellement envoyée au client genre "v.2.5.4" serait plus rassurante et avec la date du build, le support aurait assez d'infos pour travailler.

Comme je le disais ce comportement est assez fréquent sous différentes formes. Un jour un collègue se moquait de son manager qui lui demandait de modifier son site web pour intégrer des raccourcis vers Word, Excel etc. Il avait beau lui expliquer le principe du web et que les applications locales ne pouvaient pas être référencées, le manager ne voulait rien savoir. En fait, le manager avait trouvé un document présentant un produit existant chez un client potentiel et voulait s'en rapprocher pour se vendre à ce prospect. Dans ce document, il y avait une copie d'écran du logiciel avec la barre de tâches de Windows. Word et Excel y étaient visibles. La réaction de base "quel con !" aurait pourtant dû être mise de côté et il aurait fallu que le technicien prenne le document, l'étudie et propose au manager un comparatif entre ce produit concurrent et le leur. Ainsi le manager aurait pu aller vendre son produit avec des bonnes armes.

Amis informaticiens, avant de nous moquer, essayons de comprendre l'esprit tortueux et chaotique des non-techniciens.

jeudi 22 juin 2006

Résonnance avec amortisseurs fatigués ou autre effet ?

Dans cette vidéo, on voit une voiture passer sur des bosses à bonne vitesse et l'arrière de la voiture finit par sauter si fort qu'il manque de faire retourner la voiture. L'effet est assez amusant de l'extérieur mais je me demande à quoi il est dû... Je dirais que c'est la somme de:

  • des amortisseurs américains déjà très mous à la base
  • des amortisseurs fatigués, presque morts
  • les bosses qui font une résonnance dans le train arrière de la voiture
  • le freinage assez secs sur la fin qui écrase l'avant et aide l'arrière à se soulever encore plus fort

Vous en pensez quoi ?

jeudi 8 juin 2006

Bonux, le multi-taches

A une époque, IBM vendait un système basé sur Windows NT nommé OS/2 Warp. On pouvait l'acheter avec son bonus-pack. D'où la blague d'informaticien: OS/2 Warp Bonux pack, c'est un système multi-taches.

Tout ça pour introduire une différence d'orthographe entre "tache" et "tâche". Sans accent circonflexe, il s'agit de la tache sur la robe de Monica Lewinski. Avec l'accent, il s'agit d'une tâche difficile: nettoyer la robe de Monica après toutes ces années.

Pour l'aide-mémoire, vous savez sûrement que souvent les accents circonflexes remplacent un S qui a disparu après la lettre. Hôpital mais hospitaliser. Pensez donc au mot Anglais "task". Le "task manager" est le "gestionnaire de tâches". Mais the "the spots on the dress of Monica" seront "les taches sur la robe de Monica". Bien sûr, ça vaut aussi au-delà de l'informatique ou des débordements présidentiels: "tâche de faire attention (à la robe)", "il se tue à la tâche" mais "son histoire a fait tache d'huile".

PS: C'est marrant, après avoir écrit ce post, j'ai la désagréable impression d'avoir oublié un accent ou d'en avoir mis un de trop.

Motiver les élèves pour les langues

Apprendre les langues c'est important mais peu de professeurs sont capables de motiver leurs élèves. Je vais ici présenter deux cas titillant l'intérêt des élèves mais avec des effets... différents.

Le premier était professeur de Néerlandais. Le Néerlandais était ma deuxième langue mais j'étais assez hermétique. Bref, un jour, Monsieur B. lança un film sur VHS. Chouette, on adore les cours où il suffit de regarder un film. Le film est en noir et blanc. On y voit un vieux train à vapeur approcher d'une gare. Fidèle aux grandes théories dont je parlerai une autre fois, le prof met la cassette en pause au bout de quoi... 3 secondes... et nous demande "que va-t-il se passer ?". Les élèves dont l'intérêt pour le cours avait été éveillé par la leçon-TV était exarcerbé par le titillement de leur imaginations. Les propositions ont fusé depuis "le train va dérailler", "quelqu'un va traverser la voie et se faire écraser" à "le train va rentrer ses roues, décoller et filer au nez des voyageurs sur le quai parce qu'en fait c'est le train de retour vers le futur."...

A chaque fois le prof restait impassible et se contentait de répondre "nee". Au bout d'un moment, n'en pouvant plus d'imagination, les élèves se turent et le prof relança la bande.... Réponse: "le train entre en gare". On a pu entendre jusqu'à l'autre bout de l'école la motivation d'une classe entière se faire broyer sous le pragmatisme ringard d'un prof peu enclin à motiver ses élèves. La suite de l'année a été d'un ennui mortel. De tête la cassette s'appelait "het spoor voorbijdestreefd" mais je ne me souviens absolument plus de ce dont ça parlait.

Quelques années plus tard, en 2e et 3e info, nous avons eu une prof d'Anglais absolument géniale. Au contraire de mon prof de Néerlandais, elle avait su titiller l'imagination de ses étudiants pour faire de l'Anglais en s'amusant. Dans le livre qui servait de support au cours, il y avait souvent des images bizarres avec comme énoncé d'exercice: "imaginez une histoire autour de cette image en 5 lignes". Souvent, on nous donnait l'exercice comme devoir et au cours suivant il y avait toujours quelqu'un pour dire "Madame, j'ai 5 pages, ça va quand même ?". On imaginait les histoires les plus tordues, les plus rocambolesques, les plus farfelues possibles. Mais comme tout ça était écrit en Anglais, c'était parfait. Elle nous corrigeait genti(lle)ment et le cours se passait dans la joie et la bonne humeur. Il nous est même arrivé de la supplier pour faire des exercices supplémentaires qu'on lui a envoyé sur une carte de noël. Et toute la classe l'a fait. Lors de mon examen oral en fin d'année, elle avait même glissé un magazine parlant d'astronomie au milieu de la pile parce qu'elle savait que j'aimais ça.

L'un m'a dégoûté de son cours, l'autre a été l'un de mes meilleurs professeurs. Amis professeurs, si vous voulez intéresser vos élèves, titillez leur imagination mais encouragez-les sinon vous ferez pire que mieux.

PS: pour la petite histoire, ces deux profs sont devenus directeurs de leurs écoles respectives.

jeudi 1 juin 2006

Geekerie: Un WTF sur un system call en OpenVMS

Comme le titre le laisse penser, ce post n'est compréhensible que par des informaticiens.

Lors de mes études, on avait un cours d'OpenVMS. OpenVMS, c'est un système d'exploitation assez ancien qui tournait sur les machines Digital (DEC) VAX et Alpha. Quand Microsoft a créé Windows NT, ils ont débauché le concepteur d'OpenVMS, ce qui explique les similitudes.

OpenVMS offrait un système très amusant pour opérations systèmes: chaque appel pouvait être fait en synchrone (normal quoi) ou en asynchrone. Dans ce cas-là, on appelait la fonction avec un numéro de ticket et la fonction retournait tout de suite la main. La requête était exécutée en arrière-plan pendant que le programme continuait. Une fois que le programme avait besoin de l'information demandée, il se mettait en attente avec son numéro de ticket. Une fois l'info disponible, le programme reprenait son cours.

Exemple:

demander(login)
lire_sur_disque_infos_utilisateur(login, ticket=1)
demander(ancien mot de passe)
attendre_infos(ticket=1)
comparer le mot de passe de l'utilisateur avec celui entré.

L'avantage est flagrant: on peut déjà chercher l'ancien mot de passe pendant que l'utilisateur le tape. Et sans se fatiguer. Du coup l'application semble plus rapide. Chaque appel système OpenVMS pouvait se faire dans les deux modes: SYS$QIOW(...) pour lire sur le disque en attendant la réponse et SYS$QIO(1, ...) pour ne pas attendre et utiliser le ticket no 1.

Tout ça pour expliquer qu'un jour au cours théorique d'OpenVMS, le prof nous montre un programme qui fait une lecteur asynchrone avec le ticket numero 7 et puis directement après se met en attente sur ce ticket numero 7. Le prof signale la stupidité du procédé puisqu'il était mieux d'utiliser la fonction synchrone. J'en prenai bonne note et lorsque j'ai codé l'application pratique de ce cours, j'ai fait la correction. Et au lieu d'écrire:

...
SYS$QIO(7,
     null,
     foo,
     bar,
     ... );

SYS$WAIT(7);
...
J'ai écrit:
...
SYS$QIOW(7,
     null,
     foo,
     bar,
     ... );

...

Tout allait bien dans le meilleur des mondes jusqu'à l'examen oral ou le prof a parcouru le code jusqu'à cet endroit et a dit "Monsieur Darchis, taisez-vous. Monsieur Jasselette, dites-moi donc à quoi sert le 7 ici."
Pour moi la réponse était foutrement simple: "à rien !". C'était juste un reste de la fonction asynchrone qui était ignoré par le système en mode synchrone.
Mon pauvre coéquipier, lui, n'en avait pas la moindre idée même s'il connaissait bien sa matière. Comment pouvait deviner la raison de ce 7 alors qu'il n'y en avait pas. Je me suis vraiment senti très mal sur ce coup-là.