pt
Moulé à la louche depuis 1999
Les trucs qui m'énervent... et je vais pas prendre de pincettes
Internet, informatique, logiciel libre, économie, politique, vie courante et tout le reste...

Bouts de code

Jeudi 02 fevrier 2012

Deux petites news concernant quelques bricolages que j'ai fait:

Je vous avais déjà parlé des hashs visuels dont je fournis une version opensource en php: Vizhash_GD (et qu'un internaute a même transposé en Java). J'ai fait une petite mise en application pratique: J'ai modifié le plugin Discussion de DokuWiki pour afficher le Vizhash des adresses IP des internautes qui postent des messages. L'intérêt ?
  • Suivre plus facilement les discussions
  • ...tout en évitant de recourir à des services externes comme Gravatar.
  • Permettre à tout le monde de distinguer les adresses IP... sans pour autant les révéler.
  • Repérer les IMposteurs ;)
  • Voir les pseudos utilisant plusieurs adresses IP.
  • Repérer les pervers polymorphes qui prennent plusieurs pseudos sous la même IP :-D

La mise en application est très simple: Cela s'est résumé, grosso-modo, à ajouter 3 lignes à DokuWiki:

$head .= '< div style="position:relative; float:left; width:16px; height:16px;">';
$head .= '< img src="../vizhash_gd.php?width=16&height=16&t='.urlencode(sha1('jesuisunsalt'.$comment['user']['id'])).'" width="16" height="16">';
$head .= '< /div>';

Facile, non ? C'est tellement simple que ça ne vaut pas le coup de s'en passer. Vous pouvez voir le résultat, par exemple, dans la discussion sur Shaarli.


Shaarli, tiens justement, dont je viens de sortir une nouvelle version (0.0.37 beta) avec quelques nouveautés:
  • Enfin une feuille de style pour mobiles. L'application devrait être nettement plus sympa à utiliser sur smartphones (même s'il y a encore du boulot).

  • Le mur d'images ne tuera plus votre navigateur: Les images se chargent désormais au fur et à mesure que vous scrollez. Cela réduit la consommation mémoire côté navigateur (surtout sur mobiles) et réduit la charge côté serveur. Rassurez-vous, ça marche aussi si vous avez désactivé Javascript: La page s'affichera comme auparavant.

  • La page "Shaarli Daily" possède désormais son propre flux RSS: Vous pouvez vous y abonner pour recevoir, une fois par jour, la liste des nouveaux liens (Je sais que cela va en intéresser certains).

  • Et une petite amélioration que je trouve bien utile: Il suffit d'un clic pour voir uniquement vos liens privés. Pratique pour retrouver les liens qu'on a mis de côté pour les consulter/publier plus tard, les notes qu'ont a prises, les articles en cours de rédaction, les bouts de code... Re-cliquez sur l'icône pour voir à nouveau tous les liens.

Lors de la sortie de la version 0.0.32, j'avais décidé d'utiliser un système de templates (RainTPL) pour faciliter la customisation de Shaarli par les internautes. Et bien je suis content de voir que certain se sont bien amusés. Quelques exemples: share.aldarone.fr, lamecarlate.net/links, marienfressinaud.fr/shaarli, sensini42.free.fr/shaarli ou porneia.free.fr/pub/links.


Bottom line: Programmer c'est fun (Si si, je vous assure).

Retour sur Flattr

Mardi 31 janvier 2012

Comme promis, et par soucis de transparence, je vous fais un retour sur la mise en place de Flattr sur mon site. Flattr est un système de micro-donation fondé par Peter Sunde. Si le nom ne vous dit rien, c'est aussi lui qui a fondé The Pirate Bay.

Pour la petite histoire, il y avait pendant un temps un petit encart de publicité sur mon site utilisant Google AdSense. Cela me rapportait une centaine d'euros par mois (pas mal !). Et puis du jour au lendemain, Google m'a jeté (d'ailleurs je ne suis pas le seul). En soit ce n'est pas grave: Je ne gagne pas ma vie avec mon site.

Suite à cela, vous avez été nombreux à me demander de mette un bouton Flattr sur mon site. J'ai au début mis un bouton général pour le site, et j'ai ensuite (comme vous me l'avez suggéré) mis un bouton individuel par article (à parti du mois de septembre 2011).

Voici mes revenus Flattr, mois par mois:

MoisSomme
Juillet 20116,62€
Août 201140,86€
Septembre 201127,12€
Octobre 201122,99€
Novembre 201159,64€
Décembre 201111,42€
Janvier 201215,57€

Soit un total de 184,22€. Je n'ai pas retiré cette somme (il faut un compte MoneyBookers ou PayPal, et je me refuse à cautionner ce dernier en m'y inscrivant). Et puis j'ai l'intention de donner à d'autres sites que j'apprécie.

Merci de vos flattrages, et merci de votre confiance.


PS: Inutile de m'envoyer l'article de rom1v. Non, Flattr ne prélève pas 10% à chaque donation, mais seulement lorsque la somme est retirée de Flattr. Ah flûte, il me semblait avoir lu ça, mais les termes de services continuent d'afficher ce prélèvement de 10%.

Une nouvelle astuce des logiciels malveillants pour éviter la détection

Lundi 30 janvier 2012

Je vous ai déjà parlé de malwares très évolués comme Conficker ou TDL4. Le problème majeur de ces logiciels malveillants est que - avant infection - leur signature peut être détectée par les antivirus. Comment implanter le code malveillant en contournant la détection ?

Souvenez-vous des armes démontables dans les vieux films d'espionnage: Chaque pièce prise séparément paraît anodine, sans danger, et n'attire pas l'attention. Mais combinées elles forment une arme. Et bien une nouvelle tendance tout à fait analogique s'amorce chez les auteurs de chevaux de Troie, comme constaté de manière indépendante chez Microsoft et F-Secure.


Dans la plupart des scénarios d'infection, un petit bout de programme (appelé le "downloader") est en charge de télécharger et exécuter le code malveillant lui-même (le cheval de Troie). Les antivirus détectent et interceptent alors soit le téléchargement, soit le lancement du code malveillant. Game over.

Mais Microsoft a découvert un nouveau type de downloader: Ce dernier télécharge une page HTML faisant la publicité d'un restaurant asiatique. Le downloader lui-même n'étant pas malveillant, les antivirus ne le bloquent pas. Quand à la page HTML, elle paraît tout à fait anodine.

Sauf que le downloader combine les octets de la page HTML avec son propre code machine (dans son propre processus), ce qui le transforme en code malveillant. Bingo ! L'antivirus n'a intercepté ni le téléchargement (puisque qu'anodin pour lui), ni le lancement du code malveillant (puisque le downloader n'a pas lancé de nouveau processus: il continue son exécution avec le code modifié).

Brillant.


De la même manière, F-Secure est tombé sur un malware sur Android utilisant une technique similaire: En principe, quand vous avez un exécutable Android, vous avez accès à son contenu: C'est du code machine Dalvik (une machine virtuelle similaire à celle de Java). Il est donc possible d'examiner le code machine pour y détecter du code malveillant. C'est d'ailleurs ce que font certains antivirus pour Android: Ils analysent le code pour trouver, par exemple, des instructions envoyant des SMS payant.

Un auteur de logiciel malveillant a trouvé une astuce: Son programme récupère quelques octets présents dans l'entête du fichier PNG utilisé pour l'icône de l'application et les combine avec son propre code. Le résultat est un code machine qui envoie des SMS. Gagné ! Les antivirus n'ont rien vu.


On croirait un mauvais remake d'un film de Batman: Différents fichiers binaires inoffensifs, sur internet, peuvent devenir dangereux quand ils sont combinés. Et les antivirus sont bien en mal de détecter et bloquer cela: Pour des questions de performances, ils n'examinent pas toutes les opérations mémoire effectuées par les applications. Ils ne font que du cas par cas: Bloquer les noms de domaines identifiées comme distribuant des fichier malveillants. J'attends le moment où ces bouts de code recombinants seront distribué par Amazon S3, Pastbin.com ou le cache de Google: on va rigoler quand il faudra les bloquer.

Imaginez maintenant qu'un auteur décide de créer un code qui devient malveillant une fois combiné avec des logiciels "sains" comme Flash, Firefox ou WindowsMediaPlayer. C'est facile: Une simple opération binaire XOR le permet. Ou même utiliser ces exécutables sains et très répandus comme clés de déchiffrement du malware. Bon courage pour les détecter.

L'avenir est brillant pour les auteurs de codes malveillants, et les éditeurs de logiciels sont trop content de nous fourguer leur "AppStore" comme solution miracle. Pfeu.

Ce que Google sait de vous

Lundi 30 janvier 2012

Je rebondis sur un article de Korben: Depuis que Google a unifié sont identification (autrement dit: Vous trace partout), ils ont même eu le culot de déterminer automatiquement votre âge, votre sexe et vos centres d'intérêts.


Je suis allé voir aussi: Google me dit ne rien savoir de moi   \o/

Merci à Ghostery et AdBlockPlus ? Sûrement, puisque grâce à eux Google ne peut plus suivre mes déplacements sur les sites web. Merci aussi à DuckDuckGo que j'utilise à 95% (Google n'est donc plus au courant de la plupart de mes recherches). Arg... il reste mon mail chez eux que je n'ai toujours pas migré. Pas bien.

En tous cas, on est fixé: Google a abandonné son slogan "Don't be evil", et pour une seule raison: Ses profits.

Si vous avez un compte Google, pensez à désactiver l'option d'affichage des annonces en fonction de vos centres d'intérêt: https://www.google.com/settings/ads/onweb/, et installez Ghostery et AdBlockPlus.

1,7 est différent de 1,7 ?

Vendredi 27 janvier 2012

Je reprend ici un petit article technique que j'avais écrit en anglais pour ma page de snippets Python.

Il sert juste à illustrer le fait que certaines notions en informatique ne sont pas du tout intuitives, et qu'il est utile d'apprendre tout cela. Le domaine du développement logiciel est plein de petits chausses-trappes de ce genre, et voir des développeurs se prendre les pieds dans le tapis me fait sourire (pas méchamment, je vous l'assure).


Je vais ici parler d'opérations élémentaires: Additionner et comparer des nombres. Élémentaires, mais pas évidentes pour autant. Cela a l'air très simple, mais rien qu'à ce niveau, il y a de quoi rendre perplexe le développeur débutant. J'ai choisi ici d'illustrer avec des exemples en langage Python, mais ce problème se reproduit dans la plupart les langages.


Commençons par créer deux variables (en Python):

a = 1.7
b = 0.9 + 0.8

En principe, a et b contiennent la même valeur, on est bien d'accord ? Affichons cela pour vérifier:

print a
print b
Ce qui affiche:
1.7
1.7

Bien. Maintenant comparons a et b:

if a == b:
    print "a et b sont égaux."
else:
    print "a et b sont différents !"

En principe, il doit afficher "a et b sont égaux", n'est-ce pas ? Faux !

a et b sont différents !

Comment est-ce possible ? Comment 1,7 peut-il être différent de 1,7 ?


Il y a deux choses qui sont à l'origine de cette incompréhension et qu'il fondamentale de connaître:
  • L'ordinateur stock ses données en binaire.
  • Il ne faut pas confondre une donnée et sa représentation textuelle.

A l'instant même où vous faites a=1.7, la variable a ne contient pas 1,7, mais une approximation binaire de la valeur décimale 1,7, c'est à dire quelque chose du genre: 1.10110011001100110011001100110011... (Avec les bits précédents, il s'agit de la valeur 1.699999999953434)

En binaire, on peut facilement stocker les fractions dont le diviseur est une puissance de deux. Quelques exemples:
  • 0,25 (1/4) en décimal vaut 0,01 en binaire.
  • 0,125 (1/8) en décimal vaut 0,001 en binaire.
  • 3/4 + 5/8 (0,75+0,625) = 1,375 en décimal vaut 1,011 en binaire.
Mais dans tous les autres cas, l'ordinateur est bien en mal de stocker la valeur. Vous pouvez tester en ligne avec ce petit convertisseur. L'ordinateur fait donc deux approximations:
  • Une approximation quand vous stockez la valeur 1,7 dans a: Il arrondit le décimale au binaire le plus proche.
  • Une seconde approximation quand vous affichez la valeur avec un print: Il arrondit le binaire au décimal le plus proche.

De la même manière, quand vous affichez une date:

print datetime.datetime.now()
2012-01-27 21:25:20.904000

Il faut bien garder à l'esprit que "2012-01-27 21:25:20.904000" n'est pas la date: C'est une représentation textuelle d'une donnée codée en binaire dans la mémoire de l'ordinateur. Ce que vous voyez à l'écran n'est pas forcément exactement ce qu'il y a dans la mémoire de l'ordinateur.

Bien sûr, il existe des bibliothèques mathématiques et des codages binaires qui permettent de stocker correctement des nombres décimaux, mais cela fait du travail en plus pour le processeur.

Alors comment comparer nos variables a et b précédentes sans recourir à ces codages spéciaux ? Soit en considérant que les valeurs sont égales si elles sont très proches:

if abs(a-b) < 0.00001:
    print "a et b sont égaux."
else:
    print "a et b sont différents !"

ou même en les convertissant en chaînes de caractères:

if str(a) == str(b):
    print "a et b sont égaux."
else:
    print "a et b sont différents !"


Et oui, l'ordinateur a ses limites, et même quand on développe dans un langage "haut niveau", il est bon de les connaître. ;-)


EDIT: Quelques précisions (signalées par Benjamin et Kévin):
  • Pour éviter ce problème de représentation binaire, certains langages ont adopté des codages différents. (EDIT: Voir ci-dessous). Le codage à virgule flottante le plus répandu est l'IEEE-754, supporté par une majorité de langages et processeurs.
  • A défaut d'utiliser ces codages, vous pouvez - pour les langages le supportant - surcharger l'opérateur == pour effectuer un test plus poussé en cas d'inégalité.

EDIT: Jean-Francois me fait remarquer que je me suis un peu raté sur l'IEEE-754: C'est également un standard à virgule flottante, donc soumis aux mêmes problèmes d'imprécision. La différence est que l'IEEE-754 définit clairement des règles (comme les méthodes d'arrondi à respecter), ce qui permet d'avoir un standard stable et d'avoir les mêmes comportements partout. Pour éviter ces problèmes d'imprécision, il faut recourir à d'autres encodages de nombres, généralement sous forme de bibliothèque (comme GMP ou CLN).

À défaut d'un "En vrac"

Mercredi 25 janvier 2012

Je continue à faire évoluer mon petit logiciel Shaarli, qui sert à partager les liens qu'on découvre. J'ai reçu tellement de suggestions d'amélioration que je ne sais plus où donner de la tête :-)

Je viens de sortir une nouvelle version, contenant entre autres des améliorations (QR-Code du permalien, miniatures pour xkcd et pix.toile-libre.org, etc.) et corrections de bugs divers.

Je sais que vous êtes nombreux à regretter mes "En vrac" et que Shaarli ne satisfait pas vraiment certains d'entre vous (qui n'aiment pas le flux continu de liens ou ne veulent pas utiliser un lecteur RSS). Alors à défaut d'un vrai "En vrac", je vous ai ajouté une fonction qui donne en une seule page tous les liens de la veille. Une sorte d'"édition du jour". Vous pouvez également naviguer pour voir les jours précédents.

Bon il y a encore du boulot à faire sur cette page (ajustements CSS, meilleure navigation, flux RSS...), mais j'avoue: Je me suis amusé à créer cette page et son look de vieux journal.

Ceux qui ont installé Shaarli sur leur site peuvent mettre à jour: Supprimez tout le contenu du répertoire de Shaarli (sauf /data) et dézippez la nouvelle version. Comme toujours, Shaarli reste un logiciel libre, opensource et gratuit.


PS: Grâce aux bons soins de quelques internautes, vous retrouverez peut-être Shaarli un de ces jours dans les dépôts Debian et Fedora ;-)

EDIT 22h47: ... et pour ArchLinux aussi :-)

CloudFlare: Le syndrôme Akismet ?

Lundi 23 janvier 2012

C'est un billet de Gof qui m'a remémoré ce problème.

Certains développeurs sont très forts. Ils savent développer une application techniquement performante et la rendre simple à utiliser. Ajoutez à cela la gratuité, et quel webmaster oserait résister ? C'est ainsi que Google Analytics est présent sur 86% des sites web. C'est ainsi qu'Akismet filtre le spam sur une incroyable quantité de blogs et forums de la planète. Et c'est ainsi que CloudFlare protège des millions de sites.

Une protection globale... ou un risque global ?

CloudFlare est mis en place à l'initiative des webmasters. Il se place entre les internautes et votre site web. Il agit comme un reverse-proxy: Toute requête HTTP destinée à votre site passe d'abord par les serveurs CloudFlare qui l'analysent et éventuellement la bloquent. Le service offert par CloudFlare est trop tentant: Protection contre le spam, les DDOS, statistiques, CDN, cache... le tout dans un service gratuit. Tellement tentant qu'un quart des internautes passent sans le savoir par CloudFlare (Korben, PC-Inpact, Zataz...). Si CloudFlare s'écroule ce sont des centaines de milliers de sites qui vont devenir tout à coup inaccessibles. Ouais, vive la centralisation. On remplace le risque (local) qu'un site s'écroule par un risque global, CloudFlare devenant une cible de plus en plus intéressante à mesure qu'elle grossit. Je ne suis pas certain que ça soit mieux pour internet.

Mais ce n'est pas le seul problème.

Quand CloudFlare se fera pirater (j'ai bien dit "quand", et non "si"), ça sera un problème de grande envergure, à l'image de ce qui s'est passé quand DoubleClick (et quelques autres régies de pub) se sont fait pirater: Tout à coup, des milliers de sites web se sont mis à diffuser des logiciels malveillants à travers leur bandeaux de pub, jusqu'au site du New-York Times.

I'm afraid of Americans... I'm afraid I can't help it

(paroles de David Bowie)

Techniquement, ils ont la possibilité d'injecter tout ce qu'ils veulent dans vos pages. Bien sûr, ils n'ont franchement pas intérêt à le faire, sous peine de perdre la confiance de leurs clients, en masse. Mais est-ce que cela se verrait, disons s'ils injectaient quelque chose pour un visiteur particulier, ayant une IP précise ? Quoi, je suis parano ? Pourquoi pas ? Microsoft l'a bien permis à l'échelle d'un pays entier. Quand on voit la mainmise des USA sur les registry DNS, ou même ce qui s'est passé avec Visa, MasterCard, PayPal, Google ou l'affaire MegaUpload, en quoi CloudFlare est-il plus à l'abri de ce genre de pression... ou de tentation ? Et CloudFlare est pourtant bien plus petit qu'eux.

Gardez bien à l'esprit que CloudFlare voit la totalité des requêtes envoyées à votre site par les internautes. Cela inclue donc également les formulaires, les logins/mots de passe... bref, tout. Et bien sûr, votre propre connexion au panel d'admin web.

Je suis peut-être parano (où est mon chapeau en papier d'alu ?), mais pourquoi devrais-je permettra à une société un accès total et détaillé à tout le trafic de mon site, mots de passe y compris ? Il y a assez de mon hébergeur. Encore pire, pourquoi devrais-je leur donner le pouvoir de bloquer absolument n'importe quel visiteur de mon site ? Pour me protéger ? C'est une question de confiance. Mais dans les faits, Gof lui-même a bien été bloqué par CloudFlare pour avoir ouvert trop d'onglets à la fois. CloudFlare se retrouve avec le même pouvoir qu’Askismet… et la même problématique: Moi (et bien d’autres) s'étaient retrouvé à ne plus pouvoir poster de commentaires sur pratiquement tous les blogs de la planète, sans explication et sans recours. Le problème est similaire avec CloudFlare.

Vous n'y échapperez pas

Côté visiteurs, dites aussi adieu à votre vie privée. CloudFlare est au courant de tout ce que vous faites sur tous les sites utilisant ce service. Je grogne contre Google Analytics et les javascript de Facebook, mais on moins on peut se prémunir de ces derniers avec un plugin comme Ghostery. Avec CloudFlare, vous ne pourrez pas y échapper. Ai-je vraiment envie d'imposer ce traçage supplémentaire à mes visiteurs ? Non.

Remarquez, je suis absolument scotché quand j'apprends qu'un groupe comme Lulzsec a utilisé CloudFlare pour ses serveurs. Tu parles d'une mauvaise blague. Alors suis-je trop parano ? Je vous laisse vous faire votre propre jugement.

En ce qui me concerne, je n'ai pas envie:
  • de laisser une entreprise privée tracer tous mes visiteurs.
  • de laisser une entreprise privée de décider qui peut visiter mon site ou non.
  • de laisser une entreprise privée (potentiellement) bloquer ou modifier des pages de mon site.
  • de laisser potentiellement un gouvernement étranger mettre son nez dans tout le trafic de mon site (oui oui, je sais, chapeau papier-alu, etc.).
  • de laisser potentiellement un gouvernement étranger bloquer l'accès à mon site.

Il n'y a pas eu assez de problèmes ? La centralisation excessive (Facebook, Google, Megaupload...) ne nous a rien appris ?

Malgré l'excellence technique de CloudFlare, je ne suis pas prêt à troquer ma liberté d'expression et la vie privée de mes visiteurs contre une commodité. Oui mon site tombera peut-être plus souvent que ceux utilisant CloudFlare, mais j'assume. Question de choix. Question de confiance. Je suis peut-être un peu jusqu’au-boutiste, mais comme Timo (Le Hollandais Volant), Mitsukarenai (Fansub-streaming) ou Hoper, j’ai plutôt envie de réduire les dépendances.

L'avenir me dira si j'ai raison.



PS: Histoire d'être transparent: A l'heure actuelle, les seules dépendances de sebsauvage.net envers des services extérieurs à mon hébergeur sont:
  • ProjectHoneypot, qui permet de bloquer certains robots spammeurs.
  • Flattr.com (uniquement sur /rhaa) (Un jour il faudra que je fasse comme Mitsukarenai et que je mette tout ça en statique.)

Ce sont les seuls services externes à obtenir votre adresse IP quand vous naviguez sur mon site, et encore, que sur certaines pages. Notez qu'ils ne peuvent en aucun cas vous interdire la navigation sur mon site (je garde le contrôle), et Project Honetpot ne connait que votre adresse IP, pas l'URL que vous visitez sur mon site (pas de HTTP_REFERER). Ce ne sont que des dépendances faibles: Même si ces sites tombent, mon site continuera à fonctionner.


EDIT 25 janvier 2012: J'vous jure, j'y suis pour rien si CloudFlare est tombé !

L'écrasante domination de php

Samedi 21 janvier 2012

(Cet article est technique.)

D'après Journal du net (qui reprend un rapport de W3Techs), le langage de programmation php domine le web: Il est présent sur 77,3% des sites web. Et en progression. C'est énorme. ASP.Net (Microsoft) est à 21,7%, et Java à 4%.

Je trouve cela plutôt étonnant étant donné que c'est quand même un langage assez amobifreux (de la contraction de "abominable" et "affreux"): typage faible, syntaxe peu élégante, lib standard bordélique, support unicode inexistant... php est vraiment un amas hétéroclite, comme s'il avait évolué de manière anarchique, avec des excroissances et appendices qui ne collent pas avec le reste du corps. Non je ne suis pas en train de lancer un troll: J'ai moi aussi commis du code php, en milieu professionnel mais aussi pour mes projets perso.

Non seulement le langage est moche, mais une énorme partie des exemples de code qu'on trouve sur internet prônent de mauvaises pratiques, quand elles ne sont pas carrément dangereuses.


Alors pourquoi malgré tout cela autant de sites choisissent php ? Wikipedia ? Programmé en php. Facebook ? En php. Wordpress ? En php. Les exemples sont nombreux.

php est moche, mais ça n'a aucune importance. php suck, but it doesn't matter (très bon article, au passage). On y arrive. Avec de la discipline, on peut faire assez propre. Et puis il y a une quantité absolument formidable de logiciels, bibliothèques et frameworks qui rendent le travail plus simple et plus efficace.

Même si je préfère 100 fois Python, c'est bien php que je choisis majoritairement pour mes projets web perso. Pourquoi ? Simplement parce que le choix d'hébergeurs proposant php est très large. En fait, il est même difficile de trouver des hébergeurs ne supportant pas php (Alors que trouver des hébergeurs qui supportent ASP.Net ou Python est plus difficile). Cela joue en faveur du langage.

Et comme php est finalement assez bas niveau, faire des choses simples reste simple. Vive le KISS. (Quand vous commencez à devoir trouver des solutions de contournement pour faire des choses qui ne sont pas prévues d'origine par certains frameworks évolués, ça peut commencer à devenir folklorique.)


Assez curieusement, si php progresse sur les serveurs, il régresse dans l'index TIOBE (qui tente de mesurer la popularité des langages): php perd 2,13% pendant que C# gagne 2,55%. Allez comprendre.

Tout ça pour en venir à quoi ? Je suis juste surpris de l'énorme popularité de php malgré sa conception.

Si vous apprenez php comme premier langage (Cthulhu vous en préserve !), ne prenez pas pour argent comptant le premier exemple que vous trouverez sur le net. Lisez un peu sur les best-practice et les erreurs de sécurité les plus courantes.


EDIT: Voilà, je vais manger grave.

Don't panic

Samedi 21 janvier 2012

Mon site a été inaccessible la nuit passée pendant quelques heures. Rassurez-vous, ce n'est pas un coup du gouvernement américain: Il s'agit juste de mon hébergeur qui a migré les serveurs (ils ont également changé d'adresse IP).

Megaupload fermé

Vendredi 20 janvier 2012

Je ne vais pas répéter tout ce qui a déjà été dit. Voici un bon résumé de l'affaire chez Rue89.

Les noms de domaine ayant été saisis, le site est encore accessible à l'adresse http://109.236.83.66 (EDIT: C'est un faux site), mais j'ignore pour combien de temps. Les responsable de Megaupload ont été arretés et risquent jusqu'à 20 ans 60 ans de prison.

En réponse à cette fermeture, les Anonymous attaquent en masse: Les sites tombent comme des mouches. fbi.gov, wmg.com, bmi.com, universalmusic.com... et même hadopi.fr.

Quel bordel.

Certes les digireants de MegaUpload ne sont pas des enfants de cœur, mais je partage l'avis d'Alda

En soit, la fermeture de Megaupload n’est pas si grave, c’est juste un site qui ferme, il y en aura d’autres pour le remplacer. Au jeu du chat et de la souris c’est toujours les internautes qui gagnent. (Un peu comme moi quand on essaye de jouer au plus con)

Mais la manière dont ça a été fait me dérange profondément. Sans aucun avertissement, un site légal qui dérange une industrie est fermé et ses dirigeants sont arrêtés, traités comme la pire engeance criminelle, accusés de faire tourner une entreprise mafieuse et de comploter contre la toute puissante industrie du disque. Un claquement de doigts dans un bureau d’Universal ou de je ne sais quelle major véreuse et c’est les polices du monde entier qui se mettent en branle.

Vous n’avez pas l’impression que quelque chose cloche ?

Mise à jour 23 janvier 2012: Quelques liens complémentaires:
  • La liste des sites attaqués par les Anonymous
  • Par vengeance, les anonymous diffusent sur le net 10 ans d'archives musicales du catalogue Sony. Ouch.
  • Certains sites de partage ont peur (comme FileSonic, uploaded.to ou FileServe). D'autres s'en foutent (comme RapideShare).
  • Un autre aspect de la disparition de MegaUpload: La disparition de tonnes de documents culturels que les industriels de la culture de toute manière refusent de ré-éditer (et qui n'étant pas très populaires, ne sont pas disponibles sur les réseaux P2P).

Orgie de fonds d'écran

Jeudi 19 janvier 2012

Ah le plaisir d'avoir un fond d'écran beau et original... voici de quoi vous gaver jusqu'à plus soif.

  • Les fonds d'écran "en vrac":
  • Quelques graphistes avec leur style particulier:
  • Fonds d'écran sélectionnés:
    • PixelGirl, de sources diverses (on en retrouve d'ailleurs quelques uns de VladStudio.)
    • simpledesktops.com, si vous cherchez des fonds d'écran minimalistes.
    • backgroundlabs.com est aussi assez minimaliste (cliquez sur un des ronds de couleurs pour avoir des fonds d'écran dans cette teinte).
  • DeviantArt, qui reste un grand classique et regorge des créations des internautes (dessin au trait, photographie, image de synthèse, illustration vectorielle... il y a de tout, dans tous les styles). Vous n'êtes pas obligé(e) de vous restreindre à leur section wallpapers.

Si avec ça vous n'en avez pas assez, c'est que vous le faites vraiment exprès !

Cliquez pour vous faire infecter

Mercredi 18 janvier 2012

Il paraît que les auteurs de malwares commencent maintenant à s'attaquer aux enfants, les incitant à installer n'importe quelle connerie.

Hum ?

C'est pas pour relancer un vieux troll (déjà largement battu, le pauvre), mais lâchez un enfant sur un ordinateur:

  • Sous Windows: Voulez-vous installer un malware ? → clic sur "Oui" → dans l'UAC, clic sur "Ok" (1) → malware installé.
  • Sous Linux: Voulez-vous installer un malware ? → clic sur "Oui" → Entrez le mot de passe root... X malware bloqué. (2)

C'est con, hein, ces petits détails de conception ?

Mais ça ne nous empêchera pas d'entendre encore et encore que c'est trop nul d'avoir à entrer un mot de passe pour installer un logiciel ou faire une modification système. Mais ouais, c'est sûr, c'est trop chiant.

(1) Oui je sais, l'UAC peut être configurée pour demander le mot de passe, mais ce n'est pas la config par défaut.
(2) Oui je sais, il existe des malwares en espace utilisateur, mais ils sont plus rares.


EDIT: ça y est, je commence à être inondé de mails. Oui j'avais un peu oublié ce problème sous Linux, et c'est moche, oui.

Pourquoi je suis un pirate

Mercredi 18 janvier 2012

Juste un excellent article de Ploum que je voulais vous faire partager, et qui résume bien la rage que la majorité d'entre nous peuvent avoir envers les industriels de la culture.

http://ploum.net/post/je-suis-un-pirate

Enjoy.

Pas de blackout SOPA sur sebsauvage.net ?

Mercredi 18 janvier 2012

Pas de blackout SOPA sur mon site. Et voici pourquoi:

  • Fermer un site n'aide pas à lutter contre une loi. Au contraire, il faut continuer à informer.
  • La lutte pour un combat ne doit pas oblitérer les autres combats (Adlène Hicheur, Iran, fichier des "gens honnêtes", HADOPI, LOPPSI, Amesys...). Il est important de continuer à informer.
  • Même si SOPA aura un impact mondial, la fermeture des sites francophone aura un impact quasi-nul sur les sénateurs américains.

Voici donc des liens pour vous informer sur SOPA, si vous ne connaissez pas encore:


EDIT: Bon que Wikipedia passe au noir en protestation, ok, c'est pas critique (même si c'est chiant). Mais que des sites comme PacketStorm (qui fait de la veille sécurité informatique en temps réel) passent au noir, je trouve ça très con, limite dangereux.

Boing boing boing faisait le petit lien

Lundi 16 janvier 2012

M'intéressant à un twitt particulier, je clic sur le lien. Non attendez, je colle le lien dans cette page qui permet de voir les redirections:

J'ai le droit de trouver ça complètement débile ? Sérieusement, 3 redirections pour aboutir à la page ?

Ce qui est formidable avec ça, c'est que si un seul de ces 3 services de redirection disparaît, le lien ne sera plus consultable. Et des sites qui disparaissent, ça arrive tout le temps (Ne me dite pas que les gros sont éternels: Yahoo a bien tué les millions de sites de Geocities).

Oh le bel internet amnésique qu'on nous prépare là.


PS: Oui je sais, lemde.fr appartient au Monde, et t.co à Twitter.

Dis Monsieur Nègre, il faudrait peut-être arrêter de nous prendre pour des cruches ?

Lundi 16 janvier 2012

Lu chez Clubic: « Pascal Nègre : "la musique n'est toujours pas sortie de la crise" ».

Ah bon, c'est la crise ?

Bizarre, la SACEM ne joue pas du tout la même musique. Je cite:
Sacem : une année d’exception grâce à d’importantes régularisations

« Après cinq années de stagnation, la croissance des perceptions est nettement supérieure à l'inflation. Le total des droits perçus par la Sacem en 2010 atteint 819,6 M€, en augmentation de + 7,5 % par rapport à 2009 (762,3 M€). »

+7,5% en un an, j'aimerais être en crise de cette manière là par les temps qui courent.

Dis Monsieur Nègre, il faudrait peut-être arrêter de nous prendre pour des cruches ?


Mise à jour 23 janvier 2012: Tiens... voilà une intéressante fuite qui à mon avis va tout à fait dans le sens de la déclaration de la Sacem.

Vu à la télé

Mercredi 11 janvier 2012

Avant-hier soir, un reportage sur les Khmers Rouges, avec interview d'un des tortionnaires qui a organisé ces crimes. Hier soir, Klaus Barbie et les SS. Les piles de cadavres décharnés, les enfants jetés vivants dans les fours, les expériences médicales de Mengele. L'horreur. Ce sont des témoignages historiques et importants, mais qui vous foutent le moral à zéro, surtout quand on voit - malgré les révolutions - tout le mal qui reste encore sur cette planète.

Tiens, en prenant une news au hasard: En Iran, deux blogueurs sont condamnés à mort pour avoir critiqué le régime en place. Elle disait quoi déjà, la connasse de la direction marketing de Facebook ? Ah oui:
« Je pense que l'anonymat sur Internet doit disparaître. Les gens se comportent beaucoup mieux lorsque leur véritable nom est visible. Je pense que les gens se cachent derrière l'anonymat et ont le sentiment de pouvoir dire ce qu'ils veulent derrière des portes closes ».

C'est ça, oui.  :-(


PS: Tant que je suis là, je voulais annoncer la fin des billets "En vrac" sur mon blog. Mais ne vous inquiétez pas, vous continuerez à trouver des liens en vrac (et même en plus grand nombre) dans mon shaarli. La raison est simple: ça prend un temps fou à faire, et au final ça fait double-emploi avec shaarli.

Souriez !

Mercredi 04 janvier 2012

Encore une fois, je suis tombé sur une intéressante vidéo chez TED qui m'a - littéralement - donné le sourire.

Ce chercheur nous fait un topo sur le sourire. C'est le fruit de recherches très sérieuses:

  • Plus une personne sourit, plus elle vit longtemps (oui, ça a été vérifié statistiquement).

  • Le sourire est contagieux (un peu comme le bâillement): Vous aurez tendance à sourire en face de quelqu'un qui sourit.

  • Sourire en réaction à quelqu'un qui vous sourit aide notre cerveau à évaluer si le sourire est forcé ou non. Une expérience montre qu'avec un stylo entre les dents (qui empêche de sourire), les personnes perdent leur faculté à détecter si un sourire est forcé. Les personnes botoxées perdent également cette faculté (tests IRM fonctionnelle à l'appui).

  • Sourire, même de force, modifie votre état d'esprit (cela modifie le comportement de zones émotionnelles du cerveau, et nous aide à nous sentir mieux). Souriez ! Vous vous sentirez mieux.

  • Des chercheurs anglais ont découvert qu'un sourire peut générer le même niveau de stimulation du cerveau que jusqu'à 2 000 barres de chocolat.

  • Sourire peut contribuer à réduire le niveau d'hormones de stress comme le cortisol, l'adrénaline et la dopamine, augmenter le niveau d'hormones qui améliorent l'humeur comme l'endorphine et réduire globalement la tension artérielle.

  • Une étude récente à l'Université de Penn State a montré que quand nous sourions nous n'avons pas seulement l'air plus aimable et courtois, mais nous apparaissons en fait plus compétent.

Souriez ! Vous avez toutes les raisons de sourire: Vous vous sentirez mieux, vous serez en meilleure santé, vous serez plus agréable pour votre entourage (ce qui ne fera qu'améliorer vos relations sociales) et en prime vous améliorerez le moral de ceux qui vous entourent (Rappelez-vous, le sourire est contagieux !). C'est un cercle vertueux.

Allez, bonne année ! (Parce que j'ai l'impression qu'on va vraiment avoir besoin de sourire, cette année.)

J'aime bien Reddit

Mardi 03 janvier 2012

Reddit est un site communautaire où chacun peu proposer des liens. Les internautes votent collectivement pour les liens qu'ils trouvent les plus intéressants. Ces liens apparaissent alors en page d'accueil. En dehors de la page principale, il y a de très nombreux "subreddits", des pages à thème.

J'aime bien Reddit, ils ont de l'humour:


J'avoue: Le maillet avec "F5" dessus, ça m'a fait sourire.


Et je n'aime pas Reddit seulement pour leur humour et pour ce que contient le site, mais aussi parce que ce sont des gens biens: L'équipe de Reddit communique avec ses utilisateurs, ils les rappellent parfois à l'ordre. Ils demandent comment améliorer Reddit pour aider les utilisateurs dans leurs campagnes de dons. Ils organisent des rencontres. Ils affichent des pubs pour des organisations caritatives. Ils organisent des dons de cadeaux. Reddit participe à la FSF (Free Software Foundation). Ils ont même distribué le code source de Reddit (sauf la partie anti-spam).

Mais ce sont les utilisateurs de Reddit qui en sont le cœur. Bien sûr comme n'importe quel site communautaire, Reddit est rempli de conneries, des blagues à la con aux lolcats en passant par les karma whores. Mais il y a aussi une large partie de la communauté qui fait plaisir à voir: Ouverts, généreux. Cela se matérialise par un terme-clé: Random acts of kindness. C'est une autre manière de nommer l'altruisme. Quand quelqu'un appelle à l'aide, il est rare de ne pas voir les internautes essayer d'aider de parfaits inconnus, parfois de manière très généreuse. Lors de la dernière campagne de dons de cadeaux organisé par Reddit, 39000 utilisateurs ont participé, offrant pour 1 million de dollars de cadeaux à de parfaits inconnus à travers le monde. Même si dans certains subreddit les débats sont endiablés et les opinions fortement exprimées, il y a de la vie, de la discussion, du dialogue.

Reddit est un joyeux et généreux bordel.


Reddit a fini par générer ses propres mèmes, ses propres références et coutumes, comme les fameux "IAMA" (I am X, Ask Me Anything). Il a aussi beaucoup hérité de 4chan (typiquement les "rage comics") et Digg (dont les utilisateurs ont fuit en masse vers Reddit).

Même si Reddit appartient désormais à la même holding que l'énorme Wired, et malgré l'augmentation absolument colossale du nombre de visiteurs, ils ont su garder leur authenticité, à des années-lumières de ce qu'est devenu son sombre concurrent Digg.

Reddit est un exemple de ce qu'internet - et les internautes - peuvent donner de bon. Ne faites pas attention au bordel, ce n'est pas le plus important.


EDIT: Tiens justement je viens de tomber sur une interview des fondateurs de Reddit.