Mon langage préféré a la syntaxe de l'ActionScript, la puissance du C++, la banque de fonction de PHP, l'indentation de Python, l'extensibilité de Java, l'intuitivité de SQL.

Mon pire langage a la lourdeur du Java, le typage de PHP, les erreurs à la compilation de C++, le sandbox d'ActionScript la syntaxe de Visual Basic et l'interopérabilité de Javascript.

Mon éditeur de texte préféré a la polyvalence et la coloration syntaxique de Kate, la minceur de gedit, les plugins de Notepad++, l'auto-complétion de Netbeans, l'aspect professionnel de Code : : Blocks, l'aspect geek de vim.

Mon OS préféré a la rapidité de Linux, la puissance de Linux, le multitâche de Linux, la personnalisation de Linux, la beauté de Linux.

Mon troll préféré est juste là.

En me baladant sur les réalisations de l'éminent Docteur Goulu, je suis tombé sur cette superbe montre de Pierre Kunz, nommée « Infinity Looping » (depuis renommée Insanity avec un changement de design qui ne lui réussit pas).

Montre infinity Looping de Pierre Kunz

Après avoir admiré le mécanisme extrêmement simple pour une montre de ce genre, j'avoue avoir été tenté par l'achat – mais bon, $20 000, voilà qui n'entre pas dans mon budget ! Tous mes remords de pauvre ont d'ailleurs disparu puisque la montre a été tirée en édition limitée, et n'est plus disponible. Le jour où je serai riche et célèbre, j'écumerai (enfin, je ferai écumer par une armée de secrétaires) le web à la recherche d'un ancien magnat du pétrole devenu pauvre qui revendra sa montre, que je rachèterai alors à quatre fois sa valeur pour le simple plaisir d'acquérir enfin ce joyau mécanique. Mais je m'égare.

Revenons à nos moutons : le jour de ma découverte (dimanche), je me suis lancé le défi de reprogrammer cette montre en deux heures. Pour des raisons indépendantes de ma volonté (ah, j'ai horreur quand le boulot vient s'immiscer dans le weekend… surtout s'il me coupe en plein élan), j'ai été coupé après une heure trente et n'ai pu reprendre que le lendemain soir. Au final, je pense y avoir passé plus de temps, parce que mes capacités graphiques font passer Picasso pour du réalisme et que j'ai eu du mal à maîtriser Inkscape (superbe logiciel, que je conseille fortement).

Sans plus vous faire languir, voilà le résultat brut ; l'analyse suit juste après.

Read more...

Dis tonton Neamar, tu trouves pas que tes sites font pas très ouèbe 2.0 ? C'est vrai quoi, on peut même pas commenter !

Hum. La franchise m'impose de répondre sans ambages ni atermoiements : « oui ».
Mais mon côté cartésien me dicte d'expliquer les méandres qui m'ont amenés jusqu'à cette position peu courante sur les rivages de l'Internet…

Read more...

Voilà plusieurs fois que je tombe sur des programmes C cherchant à savoir si un nombre est premier ou pas. La plupart du temps, on peut aller beaucoup plus loin que ce qui est proposé.

Petit tour d'horizon des optimisations à appliquer ; pas toujours évidentes, mais qui ont l'avantage d'être bien plus rapides que l'implémentation naïve.

Définition du cahier des charges

Que doit faire le programme ?

Dans cet article, j'examinerai différents algorithmes qui auront pour but de trouver tous les nombres premiers inférieurs à une constante, MAX_NUM et de les renvoyer à l'intérieur d'un tableau d'entiers.

Les contraintes suivantes devront être respectées :

  • Code le plus performant possible.
  • Pas d'algorithmes compliqués : les codes ne dépasseront pas quarante lignes.
  • MAX_NUM restera inférieur à la taille maximale codable sur une variable de type unsigned long.
  • On ne se soucie pas de l'affichage du tableau à la fin
  • Pour rester général, les codes seront en C.

Read more...

Bon, on est entre geeks ici : on a tous déjà fait la blague de cacher les icones du bureau d'un ami qui s'absente pour satisfaire un besoin naturel. Ok. C'était drôle au collège, mais maintenant c'est lassant, surtout que tout le monde connaît le truc1.

Mais ! Et si on s'amusait de façon un peu plus mature avec les nerfs de notre victime ? Allez, je vous propose deux idées bêtes et méchantes pour avoir votre victime à l'usure. Et bien évidemment, tout le monde n'ayant pas une diarrhée chronique permanente, il suffit de quelques secondes pour mettre votre plan machiavélique en action !

Read more...