The Wayback Machine - https://web.archive.org/all/20060518130626/http://www.neokraft.net:80/

Neokraft Blog

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

vendredi 12 mai 2006

Coup de main

Si vous êtes étudiant et cherchez un stage pour l'été, si vous aimez le web, HTML, CSS, Linux, vous devriez répondre à l'offre d'Eyrolles.

Eyrolles est une société qui traite bien ses stagiaires, ils ont un vrai travail, ne sont pas laissés à l'abandon, ont un bureau avec le reste de l'équipe, des tickets resto gratuits et ils sont payés (comme des stagiaires certes mais c'est déjà mieux que pas payé du tout.)

Note: pas la peine de me poser des questions, je n'y travaille plus ;-) je rends juste un petit service.

Travaillez mieux, travaillez moins

Ryan Carson a publié il y a quelques jours The Four-Day Week Chalenge, une lecture que je recommande chaudement à toutes les personnes qui ont l'impression de trop travailler, d'être fatigué tout le temps et de ne pas arriver à grand chose (c'est parfois mon cas.)

Il y a toujours quelque chose à faire, travailler plus ne changera rien et ça sera même contre-productif.

Je ne saurais dire mieux. Il n'y a pas de secret. Travailler 4 heures en étant bien reposé et sans distraction sera forcément mieux que travailler 14 heures avec l'agrégateur qui clignote et des contacts qui vous parlent du petit dernier sur messagerie instantannée. Voici quelques techniques que j'utilise assez souvent :

  • Ne pas lire de blogs ou de sites de news,
  • Ne pas utiliser de messagerie instantannée,
  • Ne pas lire les mails dès qu'ils arrivent,
  • Tenir une petite liste sur une feuille A5 des choses à faire après (ceci permet de ne plus y penser et se concentrer sur ce qui est important)

En respectant bêtement ces points, on travaille généralement 2 fois mieux en 2 fois moins de temps.

Et un peu de musique ne saurait nuire mais ça dépend beaucoup des personnes.

Edit: Se couper du monde ne signifie pas ne pas faire de pause. Et pour ne pas oublier, rien de tel que l'excellent Workrave.

mercredi 3 mai 2006

Dépassé...

Selon Loïc Le Meur, ne téléchargez plus de musique illégale, contentez-vous de l'écouter...

... ou téléchargez de la musique légale et libre de droit. Allez, je suis sûr que vous allez aimer :

  • Lonah, Pièces. Fort bel album, musique de qualité et belle voix.
  • La fille d'Octobre, Hurle-Vent. Très bien aussi, un peu plus mélancolique.
  • Happy House, j'ai une nette préférence pour Archives 2002-2004, le son est moins lisse et plus agréable que sur l'album suivant. Dans l'ensemble, je suis moins emballé mais ça reste de très bonne qualité.

Voilà, pour les filles. J'avoue avoir une nette préférence pour les voix féminines, les mecs qui copient Noir Désir à longueur de chanson ayant très vite tendance à me lasser. De même que j'adore les voix de PJ Harvey ou Grace Slick.

Mais bon, ceci ne m'empêche pas de reconnaître la qualité, la vraie, quand elle pointe le bout de son nez. Et là, je vous conseille de vous ruer sur David TMX (n'importe quel album), des titres comme Bébé phoques fuck BB ou Un bain de cassoulet, ça ne trompe personne ; ce garçon a du goût :)

Jamendo fête son 1000ème album et c'est une excellent nouvelle.

samedi 29 avril 2006

Testez vos applications web

Depuis toutes ces années où je développe des applications web, je teste bêtement tout ce que je fais, petit bout par petit bout. Cette technique a fait de moi un spécialiste du Ctrl+S, Alt+Tab, Ctrl+R, Alt+Tab (parfois suivi de "ah bon sang de fenêtre débile, que fais tu là?") Bref, ça a son charme et je ne me vois pas faire autrement.

Quand l'application est terminée (ou sur le point de l'être) je réalise généralement une checklist de plusieurs pages, avec tous les points de contrôle à effectuer. Vient ensuite le moment du test, c'est assez laborieux, il faut remplir des formulaires, cliquer, valider, cocher la case sur le papier. Imaginez un logiciel de blog (exemple totalement au hasard) qu'il faut tester dans 5 contextes d'hébergement différents. Imaginez ensuite que le logiciel en question fonctionne avec 3 bases de données différentes et qu'il est impératif de tester le comportement de chacune d'entre-elle (vous aimiez le développement cross-browser ? vous allez adorer le développement cross-database ;-) 3x5=15, une heure par test, 15 heures[1]. Les releases, c'est ma hantise (et ça rime !)

Il y a quelques mois est sorti Selenium IDE, un produit dérivé de Selenium qui permet de réaliser et de lancer automatique des actions sur un site web et de récupérer certaines valeurs. Je savais que je m'en servirai, je ne savais pas encore à quel point j'allais adorer !

Avec Selenium, on peut enregistrer des variables, ouvrir une page, remplir un champ de formulaire identifié via XPath (une bonne occasion de réviser) ou DOM, cliquer sur un lien ou un bouton, ajouter des points d'arrêt, etc... On peut même évaluer un bout de code javascript ou encore intéragir avec une fenêtre en popup.

Conséquence assez logique, la checklist est bien plus longue à écrire, ça prend pas mal de temps, surtout au début. Mais ensuite, pour chaque nouveau test, on appuie sur play et on regarde le travail se faire[2]. Et pour chaque release, plus de checklist à préparer, il faudra éventuellement la compléter ou la corriger mais rien de comparable au calvaire que je vivais avec mes feuilles de papier.

Selenium IDE, quand à lui, est l'extension Firefox qui permet d'écrire les tests très facilement (voire de les enregistrer automatiquement) et de les lancer directement depuis l'extension. Celle-ci s'accommode fort bien de XPather, encore une autre géniale extension Firefox pour jouer avec XPath.

Si tout ce que je viens de raconter vous intéresse, lisez la liste des commandes Selenium et jetez un oeil aux User-Extensions (et puis inquiétez vous aussi un peu de l'intérêt que vous portez à ce genre de choses, sauf si c'est votre travail, là vous avez le droit.)

Si j'ai un peu de temps, je vous parlerai du côté serveur avec xdebug pour PHP, encore un bien bel outil :) Bon tests !

Notes

[1] Je triche un peu, tous les contextes n'ont pas forcément les 3 bases de données mais ça reste long.

[2] J'ai toujours bien aimé l'idée de réduire la machine en esclavage et lui demander de faire des tâches débiles.

mardi 25 avril 2006

bye bye ZDNet

Depuis quelques mois, si vous êtes abonné au fil RSS de ZDNet quand vous cliquez sur le lien vers l'article, vous obtenez une superbe page d'erreur. Pareil si vous arrivez chez ZDNet depuis l'extérieur (un site qui en parle).

Ceci n'arrive que si vous refusez le cookie de ZDNet. Je n'ai rien à acheter chez ZDNet, je n'ai pas de compte (si ça existe chez eux), donc je refuse le cookie.

À première vue ZDNet procède à une vérification du referer (la page d'où je viens, où rien du tout si j'arrive de nul part) et du cookie. Si on n'a ni l'un ni l'autre, pas de lecture. Pas de bras, pas de chocolat.

Pour mémoire, le referer est une information qu'il est très facile de changer, de forcer à ce qu'on veut. S'appuyer là dessus n'est pas très malin mais quand on ne permet pas au moins le referer vide, ça devient stupide.

Où voulais-je en venir. Ah oui, aujourd'hui, dans le dernier article du fil de ZDNet (dont je ne peux lire que les deux première lignes) il y a une immense publicité, pas un truc discret, non, un placard de quelques 100 par 80 pixels. Et bien, ça fera un fil de moins à lire :)

Edit: il semblerait qu'il y a gourance de ma part. (Enfin, pas pour la grosse pub dans le rss, elle est toujours là elle ;-)

samedi 22 avril 2006

откуда !

Je ne sais pas ce que signifie ce titre, si ça se trouve je viens d'offenser nombre de personnes :)

Tout ça pour dire que mes problèmes d'UTF-8 sont réglés et que j'en suis fort aise. Reste que spécifier le jeu de caractère d'une table ne suffit pas, je suis obligé de forcer celui-ci côté client. Quelque chose m'échappe peut-être...

Permettez moi de vous dire...

Επί δε λαμβάνουν εφαμοργής, το της τότε μπουν σημαντικό. Μου τι οέλεγχος τεκμηριώνει. Το έγραψες ευκολότερο μου, μια διαδίκτυο συνεντεύξης μα, δούλευε ελέγχους μην θα. Ζώνη σημεία διοικητικό μην σε, σαν ώς βήμα γέλασαν δωροδοκηθούν.

et...

सुचना अधिकार तकनीकी मुखय विनिमय तकनीकी संदेश एछित बलवान वर्ष गयेगया मुख्यतह आजपर लेकिन मुख्यतह लाभान्वित प्रतिबध्दता विभाग अधिकार अंग्रेजी पडता आवश्यकत हार्डवेर मानव सुचना लेकिन शुरुआत लचकनहि आंतरकार्यक्षमता जैसे तरीके हुआआदी आवश्यकत प्रसारन भारत उपलब्ध सहायता करता। गटको भाति सोफ़तवेर गोपनीयता वास्तविक बलवान

J'arrête mes bétises :)

Note: jetez un oeil à l'URL, oui, vous aurez le droit :)

vendredi 21 avril 2006

SQLite et les contraintes d'intégrité

SQLite est un excellent moteur de base de données. Il a quelques défauts bien sûr, il s'essoufle un peu quand il a trop de données (et encore, je crois avoir des problèmes d'index), il a un typage anarchique qui ne me plaît qu'à moitié, il lui manque quelques fonctions SQL essentielles. Mais on peut faire des choses très intéressantes avec, il gère les triggers et les vues.

Généralement, une base de données bien construite gère l'intégrité des données toutes seule, on réalise ceci avec les clés étrangères et on indique ce qu'on fait quand on met à jour ou supprime un élément parent. Ça évite nombre de problèmes et c'est fort reposant de savoir que changer l'id d'un blog (exemple au hasard) dans une table de blog va provoquer toute une série de changements en cascade dans les billets, les catégories, etc.

SQLite comprend la syntaxe de déclaration des clés étrangères. En fait de comprendre, il ne fait pas d'erreur à la création des tables mais ça s'arrête là. Fort heureusement, David Wheeler a écrit un guide pour simuler les contraintes d'intégrité avec les triggers sous SQLite. Ça marche très bien, on ne voit pas de différence à l'usage. Par contre, à la création des tables, c'est l'enfer.

Je me suis dit qu'on pouvait bien automatiser l'affaire et comme le jour où j'ai eu cette drôle d'idée j'avais envie de faire du JavaScript, j'ai fait un petit outil qui donne le code permettant d'arriver à ses fins. Enjoy ! (et dites moi si y a des bugs ;)

PS: ça ne marche peut-être pas sous IE et... je m'en fous un peu :)

mercredi 12 avril 2006

Ave Xave

Quand il n'échange pas des mots doux avec le capitaine[1], Xave apprend à écrire des plugins pour DotClear en faisant vainement croire qu'il ne sait pas programmer. Il ne sait tellement pas que ce matin, à la pause café, il a écrit un plugin pour mettre à jour votre DotClear 1.2.3 en 1.2.4. Oui, c'est tout, sinon il ne sait pas programmer.

Merci et bravo. Xave président !

Notes

[1] Et je ne parle pas du plug de minuit qui a mis le capitaine en émois. On attend d'ailleurs qu'ils officialisent définitivement leur relation. Si Pep apprenait ça !

mardi 11 avril 2006

Merci

Je ne peux me résoudre à fermer les commentaires alors ils reviennent.

Je tenais à remercier ceux qui savent être un minimum intelligents, à ceux qui savent apporter la contradiction sans blesser les autres, - chose que j'admire plus que tout - à ceux qui savent dire merci.

Mon plus grand tort aura été d'accorder une importance quelconque à des aigris qui parlent plus fort que les autres au lieu d'ignorer les insultes et la mauvaise foi. La prochaine fois que vous venez vomir sur mon palier, je vous mets dehors à coup de pieds au cul.

DotClear 1.2.4 est sorti, l'équipe a fait un travail exceptionnel et l'a fait vite. Un grand merci à Christophe Grenier qui a fait un audit de DotClear et a eu l'immense gentillesse de nous envoyer les corrections.

lundi 10 avril 2006

MySQL out !

Il y avait là feu un billet sur mysql et tout le bien que j'en pense. Ceci ne regardant finalement que moi je ne partagerai plus mon aigreur comme je l'ai fait même si ça ne change rien à ce que je pense du logiciel en question.

Ah, rien à voir avec ce billet ou les réactions qui ont suivit mais ce site n'accueille plus de commentaires à partir de maintenant.

- page 1 de 43