CrEv's blog

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

2012 juin 25

Maintenance matérielle

Hop hop, cette fois si c'est bon. J'ai enfin un nouveau boitier pour le serveur !

Fini le serveur en pièces sur le bureau, place à un petit fractal arc mini. C'est pas mal, assez bien rangé, pas trop trop gros (enfin un peu large quand même) et équipé de base de trois gros ventilos.

A voir ce que ça donne, dans tous les cas c'est mieux que avant, je vais pouvoir le remonter dans le placard.

Ha oui, et tout ceci explique la petite coupure du blog (et autres) pendant quelques temps.

De tout, de rien, des liens, bla bla bla

Introduction

Pour bien commencer la semaine, voici une nouvelle sélection de mes marques pages.

Comme vous pouvez le remarquer j'ai essayé de faire quelque chose à la fois plus structurée et plus pratique pour ceux souhaitant uniquement une liste de lien. Pour une fois j'aurais bien voulu mettre des notes de bas de page mais je n'ai pas réussi à le faire correctement.

Au final vous avez donc le choix de la lecture, soit un journal de brêves, qui commence juste après l'introduction, soit un journal multi-bookmark si vous sautez directement à la section Liste des liens présentés.

Un peu de contenu

Développement

Tout codeur sait bien que la documentation est son ~~meilleur ami~~ pire cauchemard. Les développeurs aiment, en général, tellement écrire de documentations qu'on en arrive à avoir des choses du genre (piqué de twitter) :

php /** * Gets the title. * @return string The title */ public function getTitle() { return $this->title; }

Résultat on en arrive à avoir des développeurs qui disent que la documentation ne sert à rien, et qu'il vaut mieux un code clair. Et oui, au final trop de (mauvaise) doc tue la doc. Pour ma part je ne suis pas vraiment partisant de ceci. Cet exemple est exagéré dans le sens où ça ne sert à rien, mais très fortement encouragé par les générateurs de documentation (typique java & javadoc, c'est là où j'ai vu le pire de doc idiote).

J'aimerais bien pouvoir faire du literate programming, un peu ce qu'on trouver dans docco. Le problème est que je trouve que ça s'adapte assez peu à des programmes objets un peu complexes.

Et en attendant, ben je pense qu'on va rester sur des générateurs "classiques" de documentation. Côté PHP, un petit nouveau est arrivé (libéré), il s'agit de Sami, libéré par Fabien Potencier, auteur entre autre de symfony.

Histoire de rester dans le PHP, voici une présentation sur l'utilisation de Silex pour faire des api REST. La présentation est plutôt simple et claire, elle fait plutôt bien son job. D'ailleurs, je vois de plus en plus de monde utiliser speakerdeck, slideshare serait-il en perte de vitesse ? Quoi qu'il en soit, si vous ne connaissez pas ou peu silex ça peut vous faire une introduction assez sympa à ce micro framework php.

Si vous utilisez Git pour vos projets, vous serez peut-être intéressés par ce tableau de bord. C'est écrit, une fois n'est pas coutume pour un outil du genre, en PHP. Pour ma part je n'ai pas réussi à le faire fonctionner (sous cygwin) et pas eu le temps de faire sous linux ou mac. Si certains l'ont testé/le test, un retour m'intéresserais pas mal.

Toujours pour Git, voici Crew un outil de code review. Comme indiqué plusieurs fois, je suis pas mal intéressé par ce type d'outil. Pour le moment j'utilise parfois un review board pour sa compatibilité Mercurial entre autre. Avez-vous déjà utilisé Crew ?

Je me permet de partager ce lien, contenant nombre de logiciels non libre pour un OS terreux (mais en même temps il parait qu'un tel os permet d'aller sur le chan des extrémistes bdsien alors bon...). Le but de cet article est configurer un mac pour du développement web.

edit : Ha be en fait non, les pommes sont passées de terreuses à SALE SALE SALE

Je quitte un peu la partie pure développement pour vous parler de Cloud. Vous le savez certainement, en Europe le cloud est un peu à la traine. De grands acteurs tentent quand même de tirer leur épingle du jeu mais c'est pas évident. Et à priori, au delà des problèmes technique, se pose également des problèmes légaux. Entre autre, les lois sur la protection des données personnelles sont un frein à certaines possibilités techniques (par exemple le fait que ces données ne doivent pas sortir de l'Europe, problématique lorsque les data centers sont répartis partout dans le monde). Le CERN demande donc une évolution de la réglementation afin de favoriser le Cloud. C'est évidement un sujet loin d'être simple, mais pour le moins urgent, surtout que changer la réglementation est long, très long, surtout à l'échelle des changements informatiques.

Voici, pour changer un peu, un long et instructif post sur WebGL et la 3D. Je ne vais pas vraiment détailler, le mieux étant d'aller le lire. /me se souvient avoir bossé dans une startup dont l'objectif était de faire de la 3D dans les navigateurs. A l'époque point de WebGL, on intégrait un moteur Ogre sous forme de plugin et on le pilotait depuis une interface html/js (et des web services, et du scripting lua). C'était bien sympa, même si pas évident. Aujourd'hui les choses semblent tout d'un coup un peu plus simples...

Et pour fermer cette partir développement, quelques petits points sur GitHub. Tout d'abord une présentation sur l'utilisation d'une armée de robots. J'aime bien le principe et ça correspond bien normalement au boulot des ingénieurs et des informaticiens : automatiser ce qui peut l'être, ne pas faire 2 fois la même chose manuellement si on peut l'éviter. Ca permet également d'avoir des contraintes plus fermes que si les choses étaient faites humainement "oué bon, ma branche ne passe plus les tests mais c'est pas grave, je push quand même...".

I'm tired of writing bad code

C'est ainsi que commence cette présentation intitulée Why our code smells. Elle est aussi réalisée par employé de GitHub. La présentation est vraiment sympa, et j'ai l'impression que cette boite et quand même assez particulière. Entre autre, ce qui ressort est qu'il n'y a pas vraiment de hiérarchie ni réellement de direction des produits. On dirait que ça fonctionne simplement parce qu'ils réunissent les bonnes personnes et les laissent simplement bosser. Enfin c'est l'impression que ça donne. Et ça donne quand même envie tout ça, même si j'ai l'impression que c'est à l'inverse de beaucoup d'entreprises. Par contre GitHub est encore plutôt jeune, à voir ce que ça donnera / deviendra dans quelques années.

D'ailleurs vous pouvez aussi aller voir les autres articles de son blog c'est pas mal. Il y a un article qui m'intrigue, celui montrant son bureau pour travailler en position debout. Je sais que certains utilisent ce genre de bureau (ou cotoient des personnes qui les utilisent, par exemple chez Google). Que pensez-vous de ce type de bureau ? C'est pas un peu fatiguant tout la journée ? Si je me pose des questions c'est que j'ai entre autre un syndrôme rotulien (syndrôme du cinéma en langage courant) et rester assis est parfois très désagréable (pour pas dire plus) mais je me vois difficilement coder debout. En même temps j'ai jamais vraiment essayé...

Misc

Si vous développez pour android, ce petit utilitaire devrait vous plair. Il s'agit d'un petit logiciel, en lien avec le SDK d'Android, vous permettant de visualiser sur votre écran d'ordinateur ce qu'il se passe sur le téléphone ou la tablette. L'avantage est que vous avez à la fois un matériel complet, efficace et performant (par rapport aux émulateurs) et un affichage nikel sur écran, vidéo projecteur, etc. Droid@Screen peut être vraiment intéressant pour vos présentations ou formation par exemple.

Wikimedia semble toujours en recherche autour de son éditeur visuel pour, entre autre, wikipedia, et demande de l'aide pour le réaliser. Pour ma part j'ai été assez intrigué lorsque, quasiment à chaque fois que le sujet apparaît, il y a tout un lot de personnes plus ou moins actives sur wikipedia qui se montrent farouchement opposées à cet outil. Tout ça parce que l'édition deviendrait plus facile. Et là je trouve que c'est réellement totalement se planter. Déjà, côté élitisme c'est pas trop mal. Mais surtout ça fait vraiment "on veut rester entre nous". Le problème c'est que quelqu'un spécialisé en histoire, en langues, en n'importe quoi autre que l'informatique (et encore) n'est pas forcément à l'aise, n'a pas forcément envie de perdre son temps avec une syntaxe wiki. Et sous pretextes qu'ils ne veulent pas de cette syntaxe ils ne devraient pas écrire sur wikipedia ? C'est con mais moi ça me fait bien penser à ces histoires de religion, ou pendant longtemps la messe était dite en latin, pour garder une distance avec les pauvres fidèles. Et ça, c'est moche, surtout lorsqu'on parle de transmission et partage du savoir.

Côté savoir, v'la't-y pas que Xavier papote dans les journaux aux sujets des Free mobile : mythes et réalités. Bon, évidemment c'est à prendre de manière partiale, mais il y a des choses intéressantes, entre autre le rapport entre investissement et chiffre d'affaire plutôt différent si on regarde Free ou les trois autres acteurs mobiles.

Que serait ces brêves sans parler un peu de travail, de condition de travail ? Ce serait triste, non ? Allez, un article plutôt simple sur le fait de rêvasser au travail. Bon, je sais que certains vont me dire que c'est déjà comme ça, mais faut croire qu'en fait c'est pas le cas partout. Evidemment ça peut dépendre des travails, mais croire qu'on peut avoir un métier un minimum créatif (et probablement idem pour les autres) sans jamais lever le nez est une connerie, malheureusement encre bien implantée dans le cerveaux de certains dirigeants (quelle que soit le niveau de direction). C'est domage.

Cartographie

Google a annoncé récemment l'ouverture de son nouveau service faisant partie de Google Maps/Earth, Coordinate. En gros c'est un peu comme latitude, mais de manière professionnelle. Le but étant de pouvoir gérer des équipes mobiles en temps réel, avec entre autre assignation de travaux, workflow, etc.

La deuxième annonce de Google conciste en une simplifcation des limites et une baisse des prix de l'API Google Maps. C'est plutôt une bonne nouvelle pour ceux qui utilisent la version de base (non business).

Graphisme & co

La dernière fois j'avais présenté quelques scènes de films reproduites en Lego. Cette fois-ci c'est un oeuvre un peu différente, mais je trouve ça plutôt pas mal du tout. J'aimerais bien avoir ce genre de Lego sur mon bureau, je trouve que ça rend bien et ça change un peu de les voir à nu (mais non, pas comme ça, bande de pervers !)

Histoire de rester dans le graphisme, voici une petite vidéo sympathique vous montrant qu'on peut peindre cheveux, poils ou trucs dans le genre rien qu'avec une brosse ronde. Bon, va falloir que je ressorte ma wacom, j'en suis pas encore là moi...

Un petit making of d'une nouvelle graphique intitulée l'héritage en couleur. L'un des points intéressant est que c'est réalisé sous linux, avec krita et mypaint. D'ailleurs si vous souhaitez avoir des infos sur le dessin numérique sous linux ce blog est une belle mine d'informations, avec des ensembles prédéfinis de brosses et outils pour vos logiciels. C'est vraiment un bon site à avoir dans ses flux / marquetapage.

Liste des liens présentés

Développement

Misc

Graphisme & co

Cartographie

2012 juin 18

De tout, de rien, des liens, du dev

Pour bien commencer, rien de tel que CodeKit. Il s'agit juste une outil (éditeur ? IDE ?) orienté web, pas libre, sous mac. Parfait, pour mon bon public, non ?

Si vous avez étés déçus par le premier lien (mais je suis sur que ce n'est pas possible...) voici la sortie d'AngularJS 1.0. J'étais probablement à l'ouest ces derniers temps, mais je ne me souvenais pas que c'était passé chez Google. D'ailleurs j'ai pas tout compris, mon navigateur avait encore une partie du site en cache, de l'ancien site je veux dire. Ca faisait un mélange assez particulier.

Quoi qu'il en soit, j'ai commencé à m'y mettre ces derniers jours. Au début plus par curiosité qu'autre chose, et finalement j'ai trouvé ça plutôt bien. Assez simple d'utilisation, une documentation correcte, des possibilités intéressantes. Evidemment je suis tout de suite tombé dans des cas tordus : genre je veux exécuter une fonction JS lors de la compilation de la donnée, j'ai pas encore bien réussi à le faire malheureusement.

Pour l'histoire, le but est de recevoir une donnée en Markdown et de laisser le javascript l'afficher correctement. Pour ce faire j'utilise PageDown qui n'est ni plus ni moins que le js utilisé sur l'ensemble des sites Stack Exchange. Et ça fonctionne plutôt bien. Mais bon, c'est pas tout, faut que je me plonge dans AngularJS pour savoir comment appeler le formatteur au bon moment. Ca doit pas être si compliqué que ça, mais j'ai pas encore vraiment mis la main dessus.

Et une fois que mon applis ressemblera à quelque chose, je viendrai probablement en parler icitte, je sais que certains seraient intéressés (mais j'en dit pas plus sinon c'est pas drôle).

Ha oui, et Google utilise déjà AngularJS en production dans Places par exemple. Google ressemble malheureusement sur ce point à une entité sans direction réelle, entre closure, jquery, angular, gwt... c'est un beau bordel.

Allez, pour continuer dans le oueb, voici un article réellement intéressant concernant les performances CSS. C'est un point qu'on oublie souvent lorsqu'on parle de performances web, pourtant l'impact peut être important. Il est en effet intéressant de comprendre comment les navigateurs interprètent le CSS. L'impact n'est pas tout le temps en terme de performance pure, mais il l'est beaucoup en terme de ressenti. Ce qui est important si on veut que l'utilisateur ait une bonne impression c'est que ça ne flash par exemple pas partout, mais pour ça il faut comprendre l'ordre de chargement et d'exécution de l'html et du css. Certains navigateurs fonctionnent à l'envers les uns des autres par exemple (application du CSS pendant le rendu du DOM ou uniquement après par exemple). Bon, je vais pas beaucoup plus loin, le but étant surtout de vous intéresser au sujet, il faut parfois fouiller un peu mais il y a pas mal de ressources sur le sujet mine de rien.

Tant qu'on est à parler de navigateurs, parlons un peu de bouses. Certains sites se sont mis à appliquer des taxes pour les utilisateurs d'IE7. Justification : "faire un rendu propre pour IE7 ça prend du temps et coûte de l'argent". J'adore !

Un peu de sérieux quand même ! Revenons au CSS. Vous n'êtes pas sans savoir que, depuis quelques temps, des générateurs de CSS existent. Les plus connus étant {less} et Sass. Je suis plutôt fan il est vrai. J'aime particulièrement Closure Stylesheets mais c'est aussi parce que j'utilise toute la stack closure.

Quoi qu'il en soit, voici un article du train de 13h37 vous permettant de bien démarrer avec LESS au cas où ce ne serait déjà pas le cas. Entre autre découverte pour ma part, SimpleLESS qui est une petite application compilant vos fichiers .less à la volée. D'ailleurs cette application est disponible sous windows, linux et mac, et les sources sont sur Github sous licence CC by. Alors, pourquoi s'en priver ?

J'en profite égalemment, ceux qui ne le connaissent pas et qui pourtant s'intéressent au web pouront aller faire un tour du côté du train de 13h37. Assez sympa pour le moment.

Une petite apparté pour signaler à ceux qui l'auraient loupé que Github a désormais un client sous windows. Ça reste intéressant bien que je préfère l'ergonomie et le style du client mac (et que j'apprécie encore un peu plus SourceTree entre autre par la gestion de mercurial, j'aimerais vraiment que ce type d'application arrive sous linux, en open source si possible...).

Afin de rester sous windows (vous remarquez comment j'essai de lier mes news ? ;-) ) mais entre gens sérieux, voici de quoi avoir un petit shell sympathique : gow. Je ne l'ai pas encore testé parce que ma machine windows tourne avec un cygwin déjà configuré et que ça me gave de devoir tout changer, mais si je devais en réinstaller un aujourd'hui ce serait probablement celui-ci. Si vous avez de retours (bon ou mauvais) je suis preneur.

Hop, on revient un peu sur le dev web quand même. J'ai appris récemment l'existence de JSX : une alternative plus rapide, plus sûr, plus simple à JavaScript. En gros, un langage dont le but est d'être compilé en javascript, tout en étant fortement accès performances. L'objectif est donc de produire du code plus sûr, plus rapide, tout en étant plus lisible et plus maintenable. Une fonctionnalité intéressante (pour moi sans ça le projet perd réellement de son intérêt) qui est le support des sourcesmap permettant de debugger correctement son code.

Ce projet s'inscrit donc en partie en concurrence avec Dart. Enfin en partie seulement, car l'un des objectifs de Dart est d'être exécuté de manière native (ils pensent que c'est l'un des meilleurs moyens pour améliorer réellement les performances). La capacité de Dart à être traduite en JS est en quelque sorte un paliatif en attendant les VMs, alors que pour JSX ça semble être le but. Dans tous les cas quelque chose d'assez sympa.

Pour ceux qui en font (je sais qu'il y en a ici) écrire du coffeescript permet-il d'améliorer les perfs, ou est-ce plus lent, ou on en sait rien ?

Dans un précédent je parlais de l'attaque de CloudFlare. Un travail assez intéressant a été réalisé afin d'analyser les différents problèmes et de refaire la chronologie des évènements. C'est plutôt instructif.

Sinon, pour rester côté sécurité, une analyse du système de collision MD5 dans Flame a été réalisée. Le problème, ou au moins la surprise, est que l'attaque MD5 employée ne fait pas partie des versions qui étaient connues jusqu'à présent. Et il faut aussi avoir en tête que Flame date de 2010. C'est donc assez intriguant, et c'est quand même à se demander qui a écrit Flame. A priori seules des très très bons en crypto ont pu le réaliser. D'ailleurs, en 2008 casser du MD5 ça revenait à utiliser un cluster de 200 PS3 ou l'équivalent de $20 000 d'Amazon EC2... Assez impressionnant mine de rien.

Et si on s'éloignait un peu du développement et de la sécurité ?

Alors parlons, rapidement, un peu d'agilité. Pour ceux qui connaissent les méthodes agiles cet article ne va pas vraiment leur apprendre quelque chose. Par contre il tente, de manière certes un peu rapide et pas hyper approfondie, de répondre à la question de savoir si les méthodes agiles sont un effet de mode ou une révolution durable ? L'article est assez succinct et la conclusion est plutôt intéressante car résume bien le problème des méthodes traditionnelles en comparaison des méthodes agiles :

En définitive, ce qui différencie les deux approches (Cycle en V versus AGILE) est la réponse apportée à la question de la connaissance. D’un côté l’hypothèse qu’il est possible de connaître et de formaliser a priori (antérieurement à toute expérience) un système complexe. De l’autre, les méthodes AGILE qui réfutent implicitement cette hypothèse et proposent des pratiques intégrant une connaissance a posteriori des systèmes complexes.

Une assez bonne définition je trouve.

Et pour rester dans les méthodes, et vous, demandez-vous des M&M's dans votre cahier des charges ? Je ne me souvenais plus de cette histoire, mais sous ses allures de caprice se cache en réalité une vrai réflexion sur les cahiers des charges, leur lecture. Et mine de rien c'est une assez bonne option pour augmenter la sécurité.

Pour finir, et histoire de se détendre, voici quelques photos sympathiques. Il s'agit de scènes cultes de filmes réalisées à partir de lego. Bon je sais, c'est pas la première fois que certains réalisent des trucs en Lego mais c'est marrant.

2012 juin 11

De tout, de rien, des liens, du vrac (mais moins bookmarks cette fois)

Et voici un nouveau numéro !

Bon, faudrait que j'arrive à me caler sur trolldi pour publier, ça pourrait être un peu plus marrant...

Quoi qu'il en soit, j'ai essayé de faire ça un peu mieux en catégorisant un peu plus, même si c'est pas encore parfait. Les liens sont plutôt inclus dans le texte, à vous de dire si c'est mieux ou si vous préférez de bêtes listes.

Pour cette fois, principalement trois thèmes :

  • Des histoires de boulot
  • Quelques news de sécurité
  • Un peu de développement

Alors commençons avec le boulot.

Connaissez-vous le principe de Peter ? Non, je ne parle pas du [syndrome de Peter Pan](http://fr.wikipedia.org/wiki/syndrome de peter pan). t Le Principe de Peter est un principe vraiment intéressant qui dit, en gros « Avec le temps, tout poste sera occupé par un incompétent incapable d'en assumer la responsabilité ».

En résumé rapide (si vous voulez en savoir plus allez lire le lien) lorsqu'on est compétent à un poste, qu'on réussi, on a tendance à monter dans la hiérarchie. Le truc c'est qu'on est probablement moins compétent dans ce nouveau poste. Et ainsi de suite on s'élève jusqu'à un niveau d'incompétence problématique alors qu'initialement on était compétent.

A méditer lors des choix d'évolution de carrière...

En parlant de postes, pour vous développeurs (enfin ça peut sûrement s'appliquer à d'autres) comment se passe votre temps de travail ? Etes-vous contraint par des horaires strictes ? Horaire libres ? Finalement, dans quel cas êtes vous le plus productif et combien d'heures par jour de boulot ? Voici deux articles sur le sujet, l'un sur le fait d'avoir 2 à 3 heures par jour de réellement productives, l'autre sur le fait d'Être comptable de son temps.

Pour ma part je suis plutôt d'accord avec ces posts. Souvent, avoir un décompte trop précis ou vouloir que chaque minute soit réellement productive a l'effet inverse. Combien de fois trouvons-nous des solutions en regardant par la fenêtre ou une fois sorti du boulot ?

Je me souviens que, lorsque je travaillais à 100km de chez moi, je faisais alors pas mal de voiture (ok, 2h en temps normal, 2h20 si c'était sous la neige). Histoire de rajouter un peu, le temps était mesuré, en gros je pointais... Mais quelle connerie au final ! Parfois, j'étais bloqué sur un problème en fin d'après midi. Pas moyen de s'en sortir. Et pas question de quitter puisque je pointais et avait un nombre d'heure mini à faire (le résultat de la pointeuse était aussi que personne ne faisait plus lorsqu'il l'aurait fallu). Donc j'attendais en gros. Je cherchais quand même, j'étais pas en train de me promener sur facebook (faudrait que je regarde la date mais ça n'existait peut-être même pas, en tout cas je ne connaissais pas - et de toute façon j'avais pas le net sur mon poste...). Puis, arrivé l'heure fatidique, je repartais prendre ma voiture et faire 100 bornes. Souvent, au bout de quelques kilomètres je trouvais la solution. Alors je la notais pour le faire le lendemain matin.

Au final, n'aurais-je pas été gagnant (et mon entreprise également) à pouvoir m'échapper un moment puis revenir avec la solution ? Si j'avais pu, j'aurais résolu le problème avant la fin de la journée. En voulant me forcer à rester, la solution n'a été implémentée que le lendemain. En croyant augmenter la productivité au final elle a été réduite, en plus de ne pas donner envie.

Mais d'ailleurs, si on laissait plus de liberté à ces gens qui font des logiciels, ça donnerait quoi ? Et pourquoi pas un ~~plan de domination mondiale~~ Master plan !

Et en parlant de domination, où on en est côté cyberwar ces derniers temps ? Car il semble que ça avance réellement. Notamment côté Stuxnet, où il semblerait que La NSA et l’Unité 8200 étaient à l’origine de Stuxnet.

En même temps, dans certains cas, pas besoin de puissance folle pour bouffer du mot de passe Linkedin. Ils ont oubliés le poivre. Ou le sel. Rha je sais plus :-) An Update on LinkedIn Member Passwords Compromised

Par contre, impossible évidemment de passer sous silence la jolie 0day concernant MySQL et MariaDB. Tellement gros qu'on a du mal à y croire, surtout à quel point c'est facile. On souffle par contre dans l'oreille que certaines debian ne seraient pas concerné, il faut une version suffisamment récente pour que ça se produise :-)

Ces petites news vous ont mis en bouche ? Ok, il ne reste plus qu'à passer à la partie développement alors.

D'ailleurs, pour ceux qui font du java, vous connaissez Guice ? C'est un système d'injection de dépendance vraiment bien foutu, développé par Google. De mon côté ça a complètement changé mon point de vue sur Java. J'ai enfin pu faire du java qui soit agréable avec ça et je conseil à tous ceux qui font du java d'aller voir d'un peu plus près.

Quoi qu'il en soit, je ne suis pas le seul à penser ça. Et on peut le voir par exemple dans Sitebricks :: A Web platform. Il s'agit d'un petit framework web java, utilisant massivement Guice. Je ne l'ai pas encore testé mais ça ne saurait tarder, ça me tente vraiment bien. Ha oui, l'auteur était développeur Google Wave, mainteneur Guice. Pour lui des outils comme GWT mais aussi closure sont overengineered et il a voulu faire quelque chose de plus simple.

Histoire de rester dans le web, quelques petits liens en vrac :

Voici dans un autre registre une comparaison visuelle de C++, Ruby et CoffeeScript. Intéressant, mais peut-on réellement comparer des langages aussi différents et donc les objectifs (notamment d'abstraction) sont plutôt éloignés ?

Pour continuer, voici une présentation pour le moins intéressante : Devops is a verb its all about feedback

Si vous pensiez vous ennuyer les jours qui arrivent, j'ai ce qu'il vous faut. Rien de moins qu'une petite revue du code source de Doom3 ! Mine de rien un sacré travail de réalisé. Ce gars est un peu un malade je crois. Pour ma part je ne l'ai pas encore lu. Par contre je suis convaincu que c'est entre autre en lisant ou étudiant les codes d'autres personnes qu'on peut s'améliorer. C'est loin d'être négligeable, alors un titre pareil.

Ha oui, et il y a aussi twitter qui vient de libérer zipkin. Si j'ai bien compris c'est utilisé pour tracer une application dans un contexte distribué. Et il est vrai que nous en avons de plus en plus. Tous ceux qui bossent avec de multiples machines, de multiples services, savent combien il est difficile de savoir précisément ce qui se passe entre l'arrivée du requête et sa réponse. Comment visualiser ceci et pouvoir agir ensuite ? C'est un peu le but de cet outil. Et c'est construit à partir du papier de Google Research sur le sujet, Dapper.

Et pour finir ce petit épisode, un peu de lol !

PairHero: A game of collaboration for pair programming Vous trouviez le pair programming ennuyant ? Ce petite plugin Eclipse est fait pour vous alors !

J'aimerais vraiment bien mettre en place ce qui suit. Si les gens le prennent bien il y a vraiment moyen de rigoler. D'ailleurs, certains d'entre vous ont-ils déjà mis en place lolcommits ?

Quand Murphy veut jouer...

Le gros des perturbations est enfin passé.

Perturbations ? Ben oui, tout à commencé par la freebox tv : impossible d'avoir la tv. Free m'a déjà fait le coup la semaine dernière, un problème chez eux.

Ok, c'est pas bien grave je pense. Tiens, si j'allais voir sur l'aduf ou ailleurs si quelqu'un se plaint. Heu... Attends... plus d'accès net O_o. Ha non, c'est plus de wifi sur le mac. Tiens, étrange. Ca doit être pour ça que mon téléphone s'est déconnecté du wifi lui aussi.

Etrange, mais c'est surement pas grave, un petit reboot de la freebox et ça devrait aller. Reboot... ... ... (oui c'est quand même long) Heure ! Pfiou, j'ai cru que c'était mort, mais non !

Ha ben si, toujours pas de wifi. Il ne le trouve même plus. Oulà, ça commence à gaver là.

Bon, je ressort un cable ethernet et je branche le mac... ... Supaÿr ! ha ben non, pas super, j'ai pas d'IP. Génial !

Alors, là ... ben il ne reste plus qu'à débrancher / rebrancher la freebox pour la réinitialiser. Hop hop.

Branché en direct (plus routeur) et ça fonctionne. Pfiou !

Un petit test de ping. Ok, ça roule. Tout semble ok (ha oui, vu que j'héberge blogs, sites et outils divers, mails - surtout - ça me gave vite quand la connexion tombe, surtout dans le contexte actuel où j'ai vraiment besoin de mes mails)

Je vais sur l'interface de free, je vois que mes paramètres sont tous là, ça me semble ok. Bon, on repasse en routeur (obligatoire, j'ai plusieurs machines derrière et pour rien je ne voudrais être en direct sur le grand nain ternaite.

Reboot... ... ... J'ai une ip. Ben oui, tout est ok.

Par contre c'est étrange le net est quand même super lent. Nan mais attends, c'est pas le que net, c'est en local que c'est super lent aussi.

ping 192.168.0.254
55% de paquets perdus, moyenne de 90ms

Ha oué, quand même !

Je désactive le routeur -> OK Je réactive le routeur -> KO

Bon, c'est la merde.

Je désactive le routeur pour avoir un accès au net, je commence à bouger mes DNS pour que mon MX pointe chez mon hébergeur (enfin un autre), disons que ça sert de MX secondaire (oui je devrais toujours l'activer et récupérer le courrier si mon serveur n'est pas assez rapide. Oui, je sais, ça viendra un jour...)

Evidemment c'est pas aussi simple, la config est chiante à changer, mais je fini pas réussir. Je fais quelques tests dans tous les sens et ça fonctionne. J'ai tout de même une boite mail (enfin deux) qui n'est pas accessible, je n'en maîtrise pas les DNS donc je ne peux rien faire. Ca serait pas mal que ça ne dure pas trop longtemps.

Problème supplémentaire : j'utilise la freebox comme switch, donc je ne peux plus accéder à mon serveur qui est juste à côté. Qu'à cela ne tienne, je vais remettre en route mon routeur perso, il doit être déjà configuré. Ha ben ça fonctionne pas... Supaïr ! Pas grave, je vais au moins brancher mon switch. Heu... il est bien alimenté mais ne fonctionne pas, il ne trouve aucun de mes cables. Re-Supaïr ! Heureusement j'ai encore un switch qui trainait. Lui il fonctionne ! Pfiou !

Une fois que j'ai un peu fait le tour, je pense simplement que la freebox est morte. C'est pas comme si j'avais déjà claqué le wifi d'une boite tv il y a quelques temps.

J'appel la hotline de free, un samedi matin. Et vous savez quoi ? Ben je suis tombé sur quelqu'un rapidement, et en plus quelqu'un de compétent. Ben c'est quand même bien cool, et pas du tout comme on pourrait le croire, qu'on dit que c'est rien que des mauvais. Donc très bonne surprise.

On réalise quelques tests, on en vient à tout débrancher (tous les cables ethernet). Et là, le drame. Enfin façon de parler. J'ai des perfs correctes. Aucun problème.

Je rebranche : ça déconne.

Et merde.

Au final, il semble qu'il y ait eu deux problèmes, relativement simultanés et similaires (oui je passe une ou deux étapes) :

  • la carte réseau de mon serveur ne fonctionne pas correctement, quelques secondes après que je branche le cable tout part en vrac.
  • je n'arrive plus à faire communiquer freebox et boitier tv en CPL. J'en suis rendu à faire du wifi.

J'ai quand même l'impression que la carte réseau et le CPL ont merdés... c'est moche quand même.

Ha mais je vous ai pas dit, c'est mon ancien serveur. Le nouveau est ... sans boitier sur le bureau. Heureusement c'est le nouveau qui gère mes mails, donc ça c'est ok. Par contre, mes sites webs sont encore sur l'ancien, ainsi que des données. Oups. Et comment faire sans réseau ? Bon, ben on va descendre le serveur de son armoire et brancher un disque externe. On va aussi y brancher un clavier et un écran.

Ok, là ça va, je gère. Sauf que ...

L'interface graphique (gdm) est en qwerty. Ha oui, et en fait j'ai aucun bureau d'installé, il ne reste que 30Mo de dispo sur la machine. Mon clavier est un azerty. Et histoire de rigoler, j'arrive pas à faire un CTRL ALT F1 pour balancer une console.

Vraiment génial tout ça !

Bon, après avoir tourné le problème un moment, rebranché 20x le cable, rien ne fonctionne. Voici donc la solution :

  • reboot
  • passage en mode interactif (c'est quand même génial)
  • répondre oui à tout sauf à DM (interface)
  • taper oui trop vite, zapper la ligne DM
  • recommencer sans se tromper

J'arrive sur un tty, cool. Je tape mon login, password. Ca fonctionne pas. Je recommence. Ca fonctionne pas. Ha ok, cette fois ci je suis en azerty. Et be...

Au final ça fonctionne plutôt bien, et je récupère même le réseau. J'ai comme l'impression que le reboot a réglé le problème de la carte réseau. M'enfin, déjà que j'ai perdu un disque de mon raid5, c'est un peu la merde. Faudrait peut-être que je finisse la migration des services.

J'ai donc passé une partie de la soirée à migrer des dotclear, hyla, jyraphe et autre entre mes serveurs. J'en ai profité pour installer un owncloud, ça me tente pas mal cette solution. Je pense que c'est un vrai bon truc pour m'affranchir de hyla tout en étant beaucoup plus complet. Enfin faut que je vois tout ça en détail, c'est juste installé pour le moment.

Résultat, le blog que vous consultez a migré de serveur, c'est maintenant sur une bête de course (enfin un amd X4, 8Go de ram, avec un ESXi et des VM sous mageia). J'en suis plutôt bien content, et je pense que je vais bientôt mettre à jour ma vm web (tout en me permettant de le faire indépendamment de mes mails)

Maintenant il ne me reste plus qu'à migrer des données et finaliser les sauvegardes et la réplication entre mes deux disques. J'ai pas de raid mais je pense juste faire un clone des machines et backup des données / programmes importants, c'est au final le mieux je trouve. Ca demande plus de temps au moment où on remet en route mais on repart sur quelque chose de plus propre en général. Bon c'est aussi que mon raid n'étant pas matériel sur cette machine je n'ai pas pu installer l'ESXi en raid. Et je voulais tester ce produit, c'est quand même bien sympa.

Voici pour les péripéties du week end !

2012 juin 7

Mise en prod

L'une de mes dernières réalisation est désormais en production : il s'agit de la localisation des agences du site http://www.ganassurances.fr ! Voilà, trop rien de plus, mais ça fait plaisir :-)

2012 juin 5

De tout, de rien, des liens, du vrac (des bookmarks quoi)

Si vous souhaitez savoir comment fonctionne LLVM cet article est fait pour vous. Bon, j'ai pas encore eu le temps de le lire, mais dès que j'en ai le temps... (oui c'est facile)

Gerrit est un système de revue de code destiné à être utilisé à partir de Git. Je suis personnellement de plus en plus intéressé par les revues de code, mais le problème est souvent la _facilité_ ou non de le gérer et de l'intégrer aux processus existants. L'avoir au plus près du gestionnaire de source peut être intéressant. A tester rapidement sur mes projets sous Git. D'ailleurs j'en profite :

  • Vous faites des revues de codes vous ?
  • Et dans votre taff ?
  • Si oui, vous utilisez quoi ?
  • Pas trop chiant comme contrainte dans les processus de dev ?


Depuis quelques année, une liste de 14 bonne pratiques pour les perfs web est utilisée. L'article présent (première partie) revient sur ses règles mais en utilisant un navigateur récent (chrome 19) et en le comparant avec un ancien (IE6) afin de voir si ces règles sont toujours d'actualité ou non. Un très bon article, il est je pense intéressant de faire régulièrement se travail afin de ne pas appliquer des règles idiotes, surtout vu l'énorme évolution des navigateurs ces derniers temps.

Vous voulez des checkbox et range qui aient de la gueule ? En voici plutôt bien sympa (et pas qu'un peu).

Vous ne savez pas quel nom donner à votre classe ? Simple, ce site va vous permettre d'en trouver un à votre place !

Je connais peu Paris. Mais j'aime bien les articles du genre. Il montre l'évolution de certains coins de Paris qui ont (ou non d'ailleurs) changé durant les derniers siècles.

Question intéressante. On le présente souvent comme un _jeune geek_. Est-ce vraiment le cas ou est-ce une façade ?

Heu, comment dire...

En fait je crois que le titre suffit. Pour info c'est une présentation faite par Jeff Atwood (derrière Coding Horror, Stack Exchange, Stack Overflow) durant le Atlassian Summit 2012.

Petit article imagé sur KISS.

Petit guide pour démonter un macbook unibody blanc (pas pro).

Vous avez un macbook 13 unibody blanc ? Le fond se décolle ? Il n'est plus sous garantie ? Qu'importe, il suffit de demander à Apple et ils le change ou fournissent un nouveau fond. Pour ma part, je viens de le recevoir ce matin, reste plus qu'à le monter et renvoyer l'ancienne pièce (UPS fourni et prepayé)

Une bonne nouvelle pour Google, et une corde de plus à leur arc pour convaincre les réticents à passer sur une solution bureautique dans le cloud.

Un pas de plus dans la décadence de Yahoo!. Yahoo! Babel fish, le service de traduction de Yahoo! devient Bing Translator.

Oué, le nom peut prêter à sourire. Par contre ils ont l'air bien sérieux quand même. En gros, le vide n'est pas vide, et donc il peut y avoir des forces. Et qui dit force dit possibilité de mouvement. Autrement dit (bon c'est pas forcément dans cet article) une possibilité de déplacer des objets dans l'espace (qui n'est pas si vide que ça finalement) sans carburant.

Très bon parallèle entre jeux et agile. Et surtout l'explication de la différence entre stratégie (product owner) et tactique (équipe). Plutôt court et bien écrit, allez le lire, c'est vraiment intéressant.

Mise à jour du design de Openweb et ajout de nouvelles rubriques "blog" et "voir ailleurs".

Openweb reste un site important dans le paysage web francophone de part ses nombreuses traductions. Content de voir un peu de fraicheur dans leur design et une activité. (et j'aime bien le nouveau style)

Ha ha, cloudflare !

Bon, déjà j'aime pas spécialement cloudflare, mais là. En gros, si j'ai bien compris, un admin c'est fait piraté son compte google. Ok, mais le rapport avec Cloudflare ? Ben la fonctionnalité de récupération de mot de passe. Et oui, aussi bête que cela, une fois le compte mail en poche il suffisait de lancer la procédure suite à une perte de mot de passe et hop, gagné ! Au final intéressant comme article, dans les conseils pas bête, utiliser un compte autre que le compte courant pour récupérer les comptes. Disons que ça évite les problèmes si quelqu'un vous pirate votre compte.

2012 juin 2

Livres en cours

Pfiou, j'ai pas vraiment le temps (enfin comme toujours) par contre je commence à avoir pas mal de bouquins à lire ou en cours.

Et vous, vous lisez quoi en ce moment ?

2012 mai 30

Vrac de liens

Quelle est vraiment la différence entre UX (User eXperience) et UI (User Interface) ? Et si on rajoute serveur et datacenter ?

Voici une vision très imagée mais qui permet de rapidement comprendre les différences. A regarder de préférence le matin, au réveil :-)

Une petite cheatsheet pour un web meilleur et propre (je veux dire par là en utilisant de vrai règles de typo, d'accessibilité, etc). Par le W3C.

Ha ha !

N'empèche, ils sont vraiment trop ridicules sur ce coup là ! En gros, Yahoo! a fourni la clé privée permettant de signer une app chrome. N'importe qui récupérant la clé peut donc faire passer son application pour une officielle provenant de Yahho!

A voir, c'est vraiment très sympa. Faut être doué ou avoir beaucoup de chance (surtout) mais le résultat est bien amusant.

Comment savoir si une startup a des chances de réussites ? Voici une petite infographie qui présente les principales raisons.

Comment appeler du C/C++/Obj-C depuis du java ?

BridJ est un outil vraiment puissant répondant à cette problématique de manière plutôt élégante. Entre autres possibilités bien sympa, le fait de pouvoir créer un classe Java dérivant une classe C++ !

In this paper, we present Google, a prototype of a large-scale search engine which makes heavy use of the structure present in hypertext.

Infographie assez intéressante sur les liens et interactions entre les différents grands noms du numérique (au sens d'où provenait le créateur de tel ou tel entreprise)

Belle petite analogie d'un projet informatique... A méditer.

Ensemble de fichiers "extern" pour Google Closure Compiler. Entre autre les API Google, JQuery, JSON, etc.

Et be... certains ne doutent de rien...

Ca me tenterait bien ça :)

Voici une très bonne introduction (et même plus) à Javascript. Si vous voulez coder avec ce langage, allez lire ceci (ou un équivalent), vous ne le regretterez pas.

CSS3 say bien ! Voici un petit exemple d'accordéon, uniquement en CSS. Plutôt sympa, évidemment pas compatible avec tous les navigateurs, mais ça vaut le coup (et d'abord vous n'avez pas honte d'utiliser IE ??)

Mozilla sort (est en train de ?) une web application pour éditer et publier de l'html et du css en ligne. Intéressant, surtout techniquement, mais je ne vois pas trop l'intérêt réel... A moins d'avoir les sources et de pouvoir imaginer l'intégrer dans d'autres sites.

Une lib PHP permettant de transformer de l'HTML (et CSS, 2.1) en PDF. Il m'arrive d'utiliser la même chose en java, c'est vraiment sympa. Enfin une solution pour générer facilement et proprement des PDF.

Une petite explication de la manière de gérer les branches et les merges chez Microsoft (ou en tout cas un guide proposé par Microsoft).

Un bon et complet tuto sur la gestion du débordement de contenu dans les boites CSS.

Une très bonne présentation (ok, j'ai seulement lu les slides, pas vu la vidéo) concernant le chargement des ressources (essentiellement des scripts) dans des pages web.

A voir plus en profondeur, le sujet mérite réellement de s'y attarder et les gains en performances peuvent être spectaculaire.

Une version française d'un des livres les plus connus sur JavaScript. Je ne l'ai jamais lu mais ça m'intéresserait pas mal d'y jeter un coup d'oeil (ou de l'avoir en référence par exemple).

Très souvent, on entend les développeurs (ou les clients, utilisateurs, etc) se plaindre du cache. En réalité c'est souvent à cause de deux choses : la méconnaissance du cache et sa très mauvaise utilisation.

Voici une présentation donnée par l'un des développeurs principaux de Internet Explorer qui présente les différentes solutions de cache local au navigateur. Un bon usage du cache permet d'avoir des applications beaucoup plus intéressantes, réactives voir simplement fonctionnant hors connexion. A lire et appliquer sans plus attendre !

Ho merde, les gens sont juste des tarés ! Voici un ensemble d'artwork réalisés sous ... excel !

C'est à ce demander jusqu'où ira Dart et dans quel but exactement... Dart permet désormais de s'interface avec des codes en C ou C++ (aussi bien appel de code natif qu'intégration de Dart dans du natif).

Très intéressant au demeurant mais l'objectif reste un peu flou je trouve...

Je suis toujours à la recherche d'une bonne sauce barbecue maison... peut-être celle-ci ?

2012 mai 24

Liens (en vrac)

L'intégration continue saybien !

Oué, mais si on a un serveur|cluster d'intégration et qu'on utilise un DCVS, avec des branches, ben c'est pas si simple à mettre en place. Pourtant, l'usage des branches est quelque chose de très important pour développer, c'est vraiment une bonne manière de faire les choses. Mais souvent on se retrouve avec des branches qui ne sont pas sur le serveur d'intégration car il faudrait dupliquer tous les projets, ça devient très vite le bordel. En gros, jankins (en l'occurrence) n'est pas super adapté à ça.

Mais v'la't'y pas que certains se sont attaqués au problème. Ce qui a donc donné naissance à Jenkins Khan ! L'objectif étant vraiment de gérer l'ensemble des branches d'un même projet (enfin de plusieurs quoi) pour avoir un meilleur suivi de ces branches et favoriser ce fonctionnement.

Il faudrait vraiment que je le teste rapidement, ça me semble particulièrement intéressant !

Un article très intéressant autour de l'agilité chez Google. C'est toujours enrichissant de savoir comment ces entreprises mettent en oeuvre de type de méthode, et de voir entre autre à quel point ils adaptent les méthodes et surtout ne s'enferment pas dans des carcans rigides (y compris en appliquant "bêtement" une méthode agile précise sans l'adapter)

Si c'est pas beau le monde des SSII... Mais au delà de ces sociétés, que penser de leurs "clients". Oui, vous savez, toutes les entreprises (souvent grosses) qui sont clientes des SSII. Car c'est aussi là une part du problème, ces entreprises qui pensent que l'informatique c'est comme réparer un pc, qu'il n'y a pas besoin de payer cher un développement et qui se plaint que le logiciel ne fonctionne pas correctement. Les SSII c'est, de la manière dont c'est réalisé aujourd'hui, clairement pas la bonne chose à faire de mon point de vue. Mais ce ne sont pas les seuls fautifs.

Pour finir : vive les vrais éditeurs de logiciels, petits ou grands !

Facebook entre en bourse... oué ben je pense qu'on va en entendre parler pendant un bon moment :)

o_O

Vous croyez Yahoo! mort ? Il n'en est rien, ils viennent d'ailleurs de sortir un nouveau navigateur web, Axis. Entre autre chose il y aurait une fonctionnalité bookmark type "read it later" qui pourrait être intéressante. Bon, va falloir tester, même si je crains un peu sur le succès réel d'un nouveau navigateur dans l'écosystème actuel (enfin je veux dire un nouveau navigateur doit apporter des choses réellement nouvelles, et pour le coup Yahoo! ne bénéficie pas non plus de l'aura que Google a pu avoir)

Edit : Oué bon, pas la peine. C'est pas un vrai navigateur, c'est "juste" une extension qui vient se greffer au browser courant. Ca te vire la page par défaut pour les nouveaux onglets sous chrome sans vraiment te demander ton avis. Franchement, aussitôt installé, aussitôt supprimé.

Vous voulez recruter un informaticien en France ? Allez lire ce petit article !

Nan mais vraiment, allez le lire et vous comprendrez pourquoi c'est pas simple, pourquoi vous avez des personnes peu motivées, des produits pas toujours bien finis, etc.

Une liste de 6 points, plutôt simples, sur ce qui fait un bon environnement pour un développeur.

Pour ma part j'apprécie particulièrement le choix de clavier/souris. Il y a tellement de modèles, mais aussi tellement de ressenti différent suivant les personnes, le tout pour un coût somme toute modique (comparativement à un salaire de développeur) que je ne comprend pas qu'on fournisse si souvent du matériel basique inergonomique et relativement ... inconfortable. Faut pas oublier que c'est quand même une composante primordiale des outils nécessaires.

Vous faites du BDD vous ? Non ? Pourquoi ? Voici un document intéressant montrant quelques causes d'échec du BDD.

Comment avoir des ressources en cache tout en permettant de les recharger au besoin... la réponse dans l'article.

Une infographie bien sympa qui liste les avantages à travailler dans les "grandes" boites d'informatique comme Google. Il serait intéressant de pouvoir rajouter Microsoft par exemple. Y'a pas à dire, ça donne plutôt envie !

Un article, long, complet et intéressant sur l'interface de Windows 8. Mieux que ça, ça présente rapidement l'historique de l'interface de Windows, depuis les toutes premières versions.

On peut ne pas aimer l'interface de Windows, mais ils essaient (c'est assez récent) d'améliorer petit à petit les choses, et c'est cool (et Windows 7, bien que pas du tout révolutionnaire, est ma fois pas si inintéressant que ça).

Sublime Text 2 est un très bon éditeur de texte (malheureusement pas libre) multiplateforme (un vrai concurrent à TextMate). Atoum est un framework de tests unitaires pour PHP. Ben voici simplement un plugin pour ST2 permettant d'exécuter atoum ! Intéressant, faudrait vraiment que j'essai tout ça (enfin atoum surtout)

Ce site comporte une collection de schémas, de tags html, que les webmasteurs peuvent utiliser pour créer leurs pages. Le tout est organisé de manière hiérarchique, pensée entre autre pour le référencement et les moteurs de recherche. Plutôt bien foutu, intéressant, orienté html5. A avoir de côté lorsqu'on crée de nouvelles pages, notamment avec des données bien organisées (telles qu'un annuaire, des agences, des adresses, etc).

2012 mai 20

Du retard dans les liens

Bon, ça fait un moment (un mois quoi...) que j'ai pas posté. Histoire de rattraper un peu, voici une liste de liens un peu en vrac, pas vraiment triés, mais il peut y avoir des choses intéressantes. Pour le moment j'ai un shaarli qui traine dans lequel je met pas mal de mes liens, et mon compte google synchronisé entre mes ordis et mon tél pour les liens que j'ai pas encore mis. Peut-être un jour j'ouvrirai l'url du shaarli, auquel cas ça remplacera ces posts.

Quoi qu'il en soit, voici un mois de liens divers et variés !

En voici un site Google Maps qui est 'achement bien ! Vraiment sympa, j'en dis pas plus, allez le voir, cliquez un peu partout dedans, c'est vraiment bien fait.

Voici les anales du concours Geipi Polytech. Et be, j'ai passé ce concours il y a plus de 10 ans, si je devais le repasser aujourd'hui ce ne serait pas si simple... mais c'est intéressant pour se rendre compte de ce qu'on demande, et de là où on en est plus de 10 ans après.

A l'heure où on utilise de plus en plus de js, où on mélange de plus en plus des codes divers, de provenance plus ou moins connues, il peut se poser régulièrement des questions de sécurités.

Voici un petit bout de programme, qui propose rien de moins que d'exécuter du js ... en js. Ou comment faire du sandboxing pour les scripts js. Intéressant, sauf que la question des performances est vraiment importante aujourd'hui.

Petite mise à jour des Terms of Service des API Google Maps

En voilà un code PHP intéressant ! Comment reprendre le téléchargement d'un fichier en PHP. C'est souvent quelque chose qui est décrié lorsqu'on parle de téléchargement en web. Mais peut-être est-ce juste qu'on ne fait pas bien / totalement les choses.

Petit article "guest" chez Atlassian sur Gliffy.

Gliffy, pour faire simple, est une sort de visio en ligne. Pour le moment il est réalisé en flash, mais ils sont en train de le passer en html5. Dans les phrases intéressantes, j'ai retenu la suivante : Flash helped make Gliffy successful, but has no future

Voici un bouquin qui me semble plutôt intéressant. La typographie a mine de rien un rôle très important dans le web. On s'en rend bien compte d'ailleurs si on regarde un peu l'évolution du design des sites web, après une période très "graphique", on en revient de plus en plus au texte car c'est au final le plus important. Bon, j'en parle pas plus, j'ai pas lu. Mais je pense que je vais l'acheter un de ces jours car ça m'intéresse vraiment beaucoup !

Photon est un framework PHP plutôt performant (même si je ne l'ai pas essayé, c'est ce qui en ressort) et il me semble assez bien foutu. Un jour je le testerai... En attendant voici un petit guide d'installation sous Mac.

Petite série d'icones vectorielles, orientées "réseaux sociaux"

Une présentation plutôt intéressante sur le développement dans chromium (la partie open source de chrome).

Comment dire... ce gars est un grand malade !! A partir de roues, suspension, moteur et bras oscillant (en gros) il a décidé de construire sa moto. Le boulot est réellement impressionnant. Si vous aimez la mécanique, allez lire ce sujet, ou regardez au moins les images !

Petit compte rendu de la remise en état d'un embrayage sur une R6. Je garde ça sous le coude au cas où je devrais un jour refaire celui de ma thundercat, ça doit être relativement proche.

Rien que pour cette présentation j'aurais bien aimé être au mix-it cette année. J'adhère vraiment au message. Vous êtes développeur ? Allez regarder / écouter cette présentation !

Manifeste pour de l'utf-8 partout !

Un article sur les performance en usage mobile de SPDY par rapport à HTTP.

Quelques petits trucs d'utilisation des tableaux en ruby

DevOps. En voici également une bonne voie dans le développement !

Une manière de "noter" des candidats lors d'une embauche. Pas a utiliser comme critère exclusif mais ça permet de donner une idée.

Présentation de kanban

Une manière sympa pour comprendre les différents codes HTTP (très important pour faire de REST correctement)

Voici une très bonne présentation des "green coordinates". Vraiment intéressant, instructif ! (c'est des histoires de transformation graphique, de formes, de dessin, etc)

Règles de style HTML / CSS par Google

Description de la recherche plain text avec Postgresql 8.3

Vous voulez faire vos propres "tuc" ? Voici la recette !

Comment faire des boites avec flèche (comme une info window sur une carte par exemple) en CSS

Un article très intéressant sur l'utilisation des divers caches HTTP. Très très important pour bien maitriser ses données et utiliser au mieux tous ces caches plutôt que de tenter de les supprimer par méconnaissance.

Responsive design cette fois dans un article de Google.

Nouvelle version du compilateur dart vers js

Petite explication des différents types de clustering sur le cartes, par Google Maps

Comment parser facilement une URL en javascript ? En utilisant la balise 'a' bien sur !

2012 avr. 19

Liens, veille, toussa

Après un peu d'absence, revoici une petite liste de liens, de veille, etc. C'est pas vraiment classé, je pense que je ferai ça bientôt.

Sublime Text 2 est un (très) bon éditeur de texte. Entre autre il fonctionne sous windows, linux et mac. Enfin un vrai remplaçant à TextMate ? J'en ai bien l'impression, d'autant que nombre de bundle, thèmes sont compatibles.

A tester plus en avant, le "mauvais" point étant qu'il est payant et surtout non libre, mais ça me semble être réellement un produit de qualité.

Ha, j'oubliais presque : le lien présenté est une page regroupant pas mal d'astuces à propos de ce logiciel.

Savez-vous comment fonctionne (quelles technologies) YouTube ?

YouTube utilise MySQL au coeur de son infrastructure ! Et oui mon bon monsieur. Je suis sur que vous vous attendiez à du NoSQL ou je ne sais quelle technologie hype, mais non, un bon vieux MySQL des familles.

Enfin, façon de parler, car ce serait oublier vitess ! Pour faire simple, vitess est un outil permettant d'aider à avoir une bonne scalabilité de MySQL. C'est entre autre une interface RPC qui accepte et transmets des commandes SQL (tout en les améliorants, corrigeant) vers des MySQL. Il fait office de multiplexeur (10 000 connexions en entrée, beaucoup moins en sortie vers les MySQL) et relativement rapide, de l'ordre de 10 000 requêtes par seconde.

Je vous laisse lire la suite si cela vous intéresse, je trouve ça plutôt pertinent et montre que, finalement, il est assez dur de se situer entre NoSQL et SQL aujourd'hui.

Ha oui, c'est donc un programme, open source, développé par Google ... en Go ! Car Go est sorti en version 1. Mais il s'agit d'une autre histoire.

Et si PHP devenait un langage executable au dessus d'une JVM (au même titre que Java, Scala ou Groovy) ?

Beaucoup ont cru à un poisson d'avril, en mode "trop gros, passera pas". Finalement non, il s'agit d'un réel travail de Clever Cloud qui entend remplacer Zend (le moteur de PHP) par la JVM.

Honnêtement, c'est une piste intéressante. Même si je ne suis pas convaincu de l'intérêt réel, la JVM a tout de même d'assez bonnes possibilités d'optimisations et performances, à la volée. C'est pas toujours significatif (je note en général une amélioration significatives de perfs sur mes tests à partir de, à la louche, 50 000 exécutions de la même requête) mais ça vaut le coût d'essayer. En outre ça permettrait peut-être d'augmenter l'eco système PHP avec des bibliothèques provenant de Java. A voir ce que ça donnera, dans tous les cas un projet à suivre.

(vous noterez que j'arrive même à parler de PHP sans en dire du mal...)

Voici un mémo bien sympa sur divers langages interprétés : php, perl, python et ruby. Vous y trouverez un tableau présentant les points communs et différence entre ces 4 langages, de manière plutôt complète. Intéressant si vous devez en utiliser un tout en connaissant un autre.

Ou comment se sortir d'un test de développement, lors d'un entretien, haut la main... Bon, je ne suis pas certain que ce soit réellement une bonne idée, mais pourquoi pas ;-)

Avec les lois type DADVSI, il devient très compliqué de savoir ce qui est légal ou non dans le les logiciels (notamment lorsqu'il est question de DRM).

VLC, qui voudrait bien avoir l'assurance du droit de lire les Blu-ray vient de saisir Hadopi afin de savoir ce qu'ils peuvent ou non faire de manière légale. Hadopi servirait-elle enfin à quelque chose d'autre que la mise en place du pare-feu openoffice ?

Une présentation de SpringSource (vmware) sur les choix d'architecture pour des applications cloud scalables. La prez dure environ 1h, par contre les slides sont plutôt légères. Néanmoins, l'une des informations importantes est celle-ci : "App-level Modularity"

Comment débuter le développement d'une grosse application ?

Voici en substance à quoi cet article tente de répondre. Entre autres choses, se concentrer sur la capacité à livrer rapidement un produit (même totalement incomplet) mais ayant une certaine valeur, un intérêt.

Voici une très très intéressante présentation sur l'utilisation FindBugs pour améliorer la qualité des logiciels. FindBugs est un outil d'analyse statique de code Java, dans le but avoué de détecter les erreurs potentielles (ou pas d'ailleurs).

Comment débugger un système en production ? Voici une très vaste question, à laquelle nous devons chaque jour trouver un minium de réponses. Mais il s'agit d'un problème réellement compliqué, problème auquel on sera toujours confronté, même en améliorant encore nos procédures de test.

Voici donc une présentation axée sur ce problème, et certaines pistes de réflexion.

Un très très bon article sur l'encodage des caractères, sur Unicode.

D'après l'auteur, tout programmeur digne de se nom doit savoir comment fonctionne unicode, au moins ce qui est dans cet article. Ha oui, je vous ai pas dit, l'article date de 2003...

Je vous recommande vraiment de lire cet article. Lorsqu'on voit à quel point les problèmes d'encodage, encore aujourd'hui, viennent nous pourrir la vie, il serait temps de réellement comprendre ce qu'il en est de, enfin, prendre les choses correctement. Bonne lecture !

Vous le savez certainement, Google Maps propose une couche météo. Désormais cette couche est disponible dans l'API Google Maps v3. Pour le moment je n'ai pas trouvé la bonne doc, le "problème" de la doc en lien est quelle est interne à google (login.corp.google.com)... Mais la lecture des sources suffit à pouvoir savoir comment l'intégrer.

Edit : la doc a été corrigée, vous pouvez désormais aller voir comment l'utiliser.

Tiens, j'envoie plus beaucoup d'infographies en ce moment. En voici une, représentant l'état de l'industrie du numérique en France. A voir, entre autre, que les jeux vidéo, les vidéos à la demande et le téléchargement de musique représente une part presque négligeable de l'industrie...

En ces temps, ou le moindre jeux correct à un style vraiment poussé, un petit retour aux bases s'impose ! Je sais pas vous, mais moi lorsque j'ai commencé à jouer sur ordi le son venait du buzzer du pc (vous savez encore ce que c'est ?) et il y avait ... 4 couleurs (ou 8, faudrait que je vérifie).

Quoi qu'il en soit, j'aime beaucoup ce style, un peu oublié, mais tellement agréable.

Saviez-vous que le plus vieux tunnel de métro au monde est à Paris, et date de Louis XIV ? Non ? Dans ce cas, que diriez-vous d'une petite visite du métro parisien ? Pour tout dire, le côté abandon m'a toujours fasciné...

Histoire de continuer avec les histoires de lieux abandonnés, voici le fabuleux travail de Lucie et Simon, qui ont vidés les plus grandes villes du monde afin de les photographier. Très sympa !

Et, mais je crois que je l'avais déjà fait passé, un petit lien sur des villes réellement abandonnés : http://www.topito.com/top-10-des-vi...

Un article présentant l'intérêt d'utiliser la bonne techno au bon moment. Oui je sais, dit comme ça c'est une évidence, en réalité c'est rarement fait.

Pour l'occasion, il s'agit d'utiliser au maximum les streams (dans ce cas c'est du node.js mais le principe est valable pour tous) pour créer des zips à la volée, et non créer le zip puis l'envoyer.

La conclusion c'est surtout que la manière de coder nos applis peut influencer de manière importante l'expérience utilisateur. Et ça fait aussi la différence entre une bonne et une mauvaise application, à fonctionnalités équivalentes.

Un petit exemple d'intégration des nouveaux layers de Google Maps API, à savoir la couche météo mais surtout, assez sympa, la couche "nuage".

Si vous voulez savoir à quel point c'est simple à faire, allez simplement regarder la source html, c'est vraiment tout bidon...

Une map plutôt sympa, encore une fois basée sur Google Maps API.

Je vous laisse naviguer dessus, c'est assez bien foutu, même s'il n'y a pas grand chose. Mais comme quoi, rien qu'un peut de style sur une map fait déjà beaucoup.

Je ne sais pas si le terme "sticky navigation" (navigation collée) vous dit quelque chose, mais je suis certain que vous l'avez tous déjà rencontré. Il s'agit de la tendance actuelle a faire apparaitre une partie du bandeau, liée à la navigation, tout en haut de la page, constamment visible, lorsque vous scroller dans cette dite page.

C'est assez sympa, visuellement c'est souvent plutôt bien fait, et en terme d'ergonomie c'est un vrai plus. En effet, sans pour autant prendre une place trop importante, la navigation devient tout le temps disponible, ce qui est très agréable. Voici donc quelques exemples de sticky navigation assez sympa.

Histoire de continuer sur les bases SQL utilisée sur de (très) gros services, voici que Twitter livre certains de leurs travaux autour de MySQL.

Il est très intéressant de voir les efforts mis en oeuvre par ces sociétés pour continuer à utiliser du SQL "standard" alors qu'on aurait tendance à croire que tout le monde passe sur du NoSQL.

Un petit tuto permettant de créer un formulaire type "écriture à la main". Plutôt sympa, ça permet d'avoir des mises en pages un peu plus originales et contextualisées. Surtout depuis qu'on peut (pour les navigateurs récent) embarquer facilement des polices de caractères. Bon, par contre le résultat n'est pas totalement au point, je pense qu'il reste quelques ajustements à faire dès qu'on dépasse quelques lignes de texte.

Un petit article sur l'utilisation de l'API HTML5 FileSystem. L'objectif étant d'avoir des pages entières hors connexion. Il faut bien voir que ce type d'usage tend à se généraliser de plus en plus. Bien qu'on ait du matériel de plus en plus connecté, il reste important de comprendre que ce n'est pas toujours le cas (ne serait-ce que dans le métro, alors que c'est un lieu ou beaucoup de monde utilise ses appareils mobiles).

L'article est plutôt succins, mais si vous suivez les liens contenus vous pourrez accéder à de nombreuses informations sur cette API.

Voici un article assez complet sur les nouvelles possibilités de drag and drop et d'upload en HTML5. L'article est plutôt simple et clair, mais il fait son taff. N'hésitez pas à aller le lire, ne serait-ce que pour savoir ce qui est possible.

J'ai déjà parlé, de nombreuses fois, de Go, le langage de Google. Initialement un langage dédié au système, désormais un langage généraliste.

Voici un petit article montrant comment écrire un web service en Go. Pour un langage qui se rapproche du C/C++, vous verrez qu'on peut faire des choses simples, élégantes, mais puissantes.

C'est un exemple assez sympa pour prendre en main Go et voir quels sont les intérêts de ce langage.

Suite à l'écriture d'un service web en Go, voici la même chose en C.

Bon, vous l'imaginerez sans mal, c'est déjà un peu plus coton. Mais ça se fait. Intéressant à lire pour bien mettre en évidence la différence entre ces deux langages.

Si vous manquez d'inspiration, voici une sélection assez sympa de street art. Certains sont tout simplement magnifiques, et on dépasse, de loin, le cadre de tags ou graffitis classiques.

En tant que mot de passe, qu'est ce qui est le plus sécurisé et plus difficile à casser : 'Tr0ub4dor&3' ou 'correcthorsebatterystaple' ? En gros, pour le premier il faut 3 jours de brute force, pour le second de l'ordre de 550 ans...

zxcvbn (wxcvbn en azerty...) est une lib js qui permet de calculer de manière plus correcte la complexité d'un mot de passe, non seulement en regardant la présence de tel ou tel caractère. Plutôt intéressant comme code, et surtout, intéressant dans la réflexion de ce qui rend un mot de passe réellement complexe à être cassé.

Je savais bien que j'avais dit un peu trop de bien de PHP ces derniers temps... Un "petit" bug bien sympa, PHP n'arrivant pas à réaliser certaines égalités correctement...

Et en plus ça affecte le switch (qui effectue donc une égalité simple == et non une égalité stricte ===) : https://gist.github.com/2397507

Un jour peut-être arrêtera-t-on de voir des bugs de ce type dans les programmes informatiques

Ha ha !

D'ailleurs, voici quelques commentaires de Douglas Crockford : "That is insanely stupid code", " Learn to use semicolons properly." Un peu de bla bla sur le sujet : http://brendaneich.com/2012/04/the-...

Ha oui, et pour ceux qui ne connaissent pas Dougle Crockford (http://fr.wikipedia.org/wiki/Dougla...) il a juste un peu créé le json, participé depuis longtemps dans le JS, créé JSLint.

Bon, il apparaît aussi que JsMin était lui aussi en cause...

Voici un petit site avec beaucoup de démos et expérimentations basées sur CSS3 (et les portions 3D). Pas forcément vraiment utiles, mais plutôt intéressantes pour savoir un peu ce qui est possible, ce qui sera possible demain sur le web. Dans le genre très flashy, les effets de scroll sont pour certains assez sympa.

Et voilà ! Google a enfin sorti mod_spdy. SPDY est un nouveau protocole initié par Google, dans le but d'améliorer significativement HTTP (en gros). Les performances s'en trouvent grandement améliorées.

D'ailleurs, si vous surfez sur les sites de Google avec Chrome, vous utilisez sans le savoir SPDY (ok, peut-être pas tout le temps). Mozilla a commencé à ajouter le support de SPDY dans les dernières versions de Firefox. Voici donc un mod pour Apache, permettant de faire dialoguer votre serveur préféré en SPDY.

Comment passer sous silence cette news ?! Voici les sources de Prince of Persia ! Heu oui, je parle du vrai jeu, pas des versions moisies pseudo 3D jenesaisquoi. Le vrai, le seul. Bon ok, je n'y jouait pas sur un Apple II mais sur un 286. Et c'était vraiment un jeu fabuleux pour l'époque (on parle d'avant 1990 donc les petits jeunes nés après auront quand même du mal à comprendre...)

Comment ne pas avoir en tête le bruit des "guillotines" un peu partout !

(le pire c'est que j'ai remis il y a peu en route un 386, la première chose que j'ai fait a été de lancer Prince of Persia...)

Histoire de continuer l'histoire de Prince of Persia, voici le début du Making of réalisé par Jordan Mechner. Plutôt intéressant, notamment concernant les mouvements du joueur, point participant grandement à l'intérêt du jeu. Voir également ici : http://fr.wikipedia.org/wiki/Rotosc... pour connaître la technique.

2012 mar. 30

Links

Petite liste de liens des trois derniers jours :

Ca c'est une technique CSS qu'elle est bien ! Comment faire un menu déroulant, au click, uniquement en CSS ! Bon, c'est évidemment pas compatible IE, mais par contre c'est vraiment bien. La non utilisation de javascript fait que la page est plus légère, et fonctionne même pour ceux qui le désactive (oui ça existe). Dans tous les cas c'est vraiment sympa.

Deux très très bons articles sur comment créer une application web, pour iphone, qui mime le plus fidèlement possible l'apparence d'une application native. Vraiment passionnant !

Tron, en javascript, en 219 octets. Qui dit mieux ?

Un peu de CSS, cette fois sur la gestion de l'espace minimum autorisé pour du texte lorsqu'on insère une image (en float).

On a supprimé les tableaux de la mise en page web... pour finalement faire arriver la mise en page sous forme de grille ! Bon ok, y'a pas à dire c'est quand même mieux, et ça respecte surtout la différence entre données et style/mise en page. Maintenant, faudrait que tout le monde supporte ce mode de positionnement...

Une superbe implémentation de "timeline" en javascript. Vraiment bien réalisée, vous noterez la possibilité de donner en entrée ... un google doc !

Une petite surcouche à git afin d'avoir une utilisation un peu plus simple.

Les "sources map" permettent de faire le lien entre code source javascript initial et la version compilée. Autrement : ça permet de debugger du code minifié / compilé !

Et si bientôt on n'avait plus besoin de less, google stylesheet, sass, etc. Car désormais on peut faire des calculs dans les feuilles de style. Qui n'a jamais voulu écrire par exemple : width: calc(50% - 10px) De mon point de vue une avancée majeur pour CSS

Vous aimez le JS ? Vous aimerez alors cette présentation ;-)

Ca tombe bien, on en a en partie parlé en Réunion d'itération. En résumé, en quoi le jour homme est contraire aux principes agile (oui c'est vraiment très résumé)

Un "émulateur" d'android pour PC. Ca fait appel à la virtualisation, et ça permet d'exécuter les applications Android. A tester, ça peut être sympa si les performances et la fidélité sont au rendez-vous.

Ha ha ! la surréflexion ! A lire, j'en dis pas plus sinon ce ne sera pas drôle.

Petite histoire de l'utilisation du Space Pen

Impossible de passer sous silence cette information capitale : Go, le langage de programmation de Google, vient de passer en version 1. Maintenant, à voir où cela va vraiment mener, quels projets vont petit à petit l'utiliser, etc.

Un article assez sympa sur les transitions effectuées au niveau design web. En gros, on a des écrans avec une bien meilleur précision, des résolutions de plus en plus grande. Que faire, comment adapter les pratiques pour exploiter au mieux ces changements et anticiper l'augmentation encore probable des résolutions.

2012 mar. 26

Links of the day

Voici quelques effets présentant le titre et la description d'une image lors du survol. A noter que ces effets sont entièrement réalisés en CSS3, en utilisant les transitions et les animations. Plutôt sympa et bien réalisé, pas disponible sur tous les navigateurs mais ça peut être vu comme un mode "avancé" bien sympa.

Combien de seconde durera la dernière minute du 30 juin 2012 ? - mouarf, trop facile, tu nous prends vraiment pour des billes, 60 secondes et puis c'est tout ! - FAUX !

Et oui, cette minute durera 61 secondes ! Ha ha !
Pour tout savoir sur cette seconde intercalaire (qui d'ailleurs pourrait être négative bien que ce ne soit pas produit) suivez le lien ;-)

Redis est une base 'NoSQL'. Voici un article présentant le fonctionnement de la persistances des données dans Redis. Plutôt intéressant, ça permet de comprendre tous les mécanismes mis en oeuvre afin d'être sur que les données sont bien correctement écrites et persistées afin de pouvoir être relues après.

Et si changer de police pouvait aider les dyslexiques à lire ?

Ha ha, vous aussi vous ne comprenez pas comment on peut, encore aujourd'hui, planter son passage à l'heure d'été ?
Comment Free (mais aussi Orange) font des boxes qui ne se mettent pas à l'heure correctement ? (et par la même font foirer les enregistrements). Selon free, il ne s'agit pas d'un dysfonctionnement (heu oué, mais on appelle comment un fonctionnement incorrect alors ?)
Alors, d'où ça vient cette histoire ?
Il s'agit, en réalité, d'un bug dans µClibc, la bibliothèque C standard destiné à l'embarquée, qui serait présente dans les boxes de free et orange. Le problème c'est qu'un "correctif" a été intégré pour régler un problème de changement d'heure les années bissextiles. Cool, un correctif ? Et non, car il amène son propre bug. Mais en vous inquiétez pas, il ne se produit que tous les 28 ans... dont cette année ! En gros, si le changement d'heure intervient pile 7 jours avant la fin du mois, c'est mort. Bon, il reste deux solutions : soit ils corrigent le bug, passent une mise à jour et on en parle plus. Soit ils attendent 7 jours, et nous prennent un peu pour les pigeons qu'ils aiment dénoncer lorsque ça les arranges...
http://old.nabble.com/-PATCH--libc%...

2012 mar. 24

Le mystère des machines à photocopier (suite, et fin?)

Ce post provient d'ici et je le recopie, entre autre pour en garder trace. L'auteur du post a été modifié pour correspondre à l'auteur réel.

Voilà, des mois plus tard, la conclusion d'une énigme qu'en fait j'ai résolu quelques jours plus tard. C'était pas si compliqué que ça. Je sais vraiment plus pourquoi, j'avais abandonné l'envie de bloguer.

Mon intuition première était qu'il y avait quelque chose qui se jouait dans l'espace. Mais d'une c'était qu'une intuition et il faut se meffier de ces bêtes-là. Et de deux, c'est un peu insatisfaisant de se contenter d'un truc aussi flou...

Après quelques tests, je peux dire qu'en fait, une photocopieuse, ça marche comme une machine à café.

Quiand on parle d'une machine à café, on parle non seulement de la machine en question, mais aussi de tout l'espace qui entoure (cf. par exemple Caméra Café). L'expression désigne à la fois un référent bien précis et l'espace où on prend son café, son thé ou sa soupe de tomate et où on discute, etc.

La photocopieuse, même si socialement c'est moins marqué qu'une machine à café (et beaucoup moins convivial), c'est pareil. On peut aller à la photocopieuse, croiser quelqu'un à la photocopieuse, s'y donner rendez-vous, etc.
Essayez de faire pareil avec un photocopieur. C'est quand même pas aussi facile. "Je vais au photocopieur", ça sonne bizarre, c'est le genre de phrase qu'on pardonnerait à un locuteur non-natif, mais qu'un francophone natif ne produit pas. Et d'ailleurs, quand on tape "au photocopieur" dans un moteur de recherche, on obtient des exemples comme "de la machine de Guttenberg au photocopieur". Mais on ne croise personne au photocopieur. C'est pourtant le même objet, mais il est catégorisé différement.

En réalité, je me rends compte en ce moment-mêm que le problème n'est pas totalement résolu. On sait désormais que photocopieuse peuvent représenter une appréhension de la réalité que photocopieur ne peut pas. Mais l'inverse? Il faudrait chercher des contextes (et je pense qu'il y en a) ou photocopieur convient, mais pas photocopieuse.

Oui, c'est dans ce genre de moment qu'on se rend compte qu'on peut paraitre bizarre et donner l'impression d'avoir vraiment que ça à fouttre. Mais pour l'heure, mon lit m'attend.

Enfin, pour finir, tout ça me fait penser à un truc qur lequel je bosse beaucoup ces temps-ci (j'en fait mon mémoire), c'est les catégories syntaxiques. J'en parlerai sans aucun doute dans autre post, mais vous trouvez pas bizarre, vous, que quand on parle d'un référent hors du lexique on peut lui donner plein de catégories et pas tout le temps les mêmes, qu'il a pas besoin de changer sa nature pour que ça marche, et qu'aucune catégorie ne prend en compte tout ce qu'il est, alors qu'un mot, il a une catégorie et puis basta, toutes ses caractéristiques grammaticales sont incluses dans ce classement. Moi, je trouve ça louche. Surtout quand on sait qu'aucun système de catégories syntaxiques n'est réellement satisfaisant... (ça y est, j'ai perdu tous les lecteurs qui ont osé lire jusqu'ici...)

bonne nuit les gens

Le mystère des machines à photocopier

Ce post provient d'ici et je le recopie, entre autre pour en garder trace. L'auteur du post a été modifié pour correspondre à l'auteur réel.

Je recopie le fameux (?) post qui n'avait jamais eu de suite. Cette fois il en aura une.

C'est quoi la différence (sémantique) entre une photocopieuse et un photocopieur?

On est bien embêté pour trouver une différence (pour le TLFi c'est une seule entrée, d'autres sont un peu plus audacieux).

Et d'ailleurs il est clair que l'objet du monde auquel il est fait référence est le même pour les deux mots.

Mais il ne faut pas confondre sens et référence. Un exemple simple :
M. Patate marche dans la rue. Il croise Mme Courge.
"Bien le bonjour, chère amie", dit M. Patate.
Dix mètres plus loin (hors de portée des esgourdes de Mme Courge), M. Patate gromelle dans sa barbe de trois jours : "Mais quelle connasse, celle-là, je peux vraiment pas la sentir!"

De chère amie à quelle connasse, l'objet du monde (au sens large) auquel on fait référence est resté le même. Pour autant, il est évident que le sens a changé.
Le sens des mots n'est pas question de la description d'un état objectif du monde, mais à comment on perçoit un état du monde, comment on l'appréhende. La nuance n'est pas négligeable.

Pour un peu plus de clarté, je vais désigner par P l'objet physique désigné la plupart du temps par les termes photocopieur et photocopieuse.

Point 1 : si il y a une différence, ce n'est pas en décorticant des P qu'on la trouvera. Ca, c'est fait.

Passons au point 2 : Est-on sûr qu'il y a une différence?

Je serais tenté de dire "oui, forcément". Si il y a deux mots, alors il y a deux sens.
Il y a tout un tas d'arguments pour avoir ce point de vue, mais franchement, aujourd'hui, j'ai pas spécialement envie de développer là-dessus. On va le prendre comme une pétition de principe et puis voilà.

En fait, à défaut d'arguments théoriques, je vais quand même donner un argument empirique :
si nous avions deux mots avec exactement le même sens, et comme seule différence une caractéristique grammaticale (le genre), il n'y aurait rien pour discriminer l'un de l'autre. La probabilité de tomber sur l'un ou l'autre serait donc de 1/2. Ce n'est pas ce que nous dit Yahoo! :

au singulier :
photocopieur : 250.000
photocopieuse : 91.900
soit environ 2,7 fois plus de photocopieur que de photocopieuse.

au pluriel :
photocopieurs : 160.000
photocopieuses : 33.100
soit environ 4,8 fois plus de photocopieurs que de photocopieuses.

Les écarts sont trop grands sur de trop grosses quantités pour être fortuits.

Autre argument : il ne s'agit pas d'un simple problème de genre. Ce n'est pas le même mot qu'on aurait fléchit au féminin et au masculin l'autre coup (je me rends compte que j'aurais dû commencer par là : bien dire qu'il y a deux mots différents). Pour la bonne et simple raison que les noms en Français ne sont pas sensibles à la variation en genre. Tel nom est féminin ou masculin et point barre. Si on veut l'autre genre, il faut construire un autre mot.

Exemples classiques : 1) J'ai trois lions adultes et un qui est adolescent. versus 2) *J'ai trois lions adultes et une qui est adolescente. L'énoncé 2) ne fonctionne pas, parce que le mot lion ne peut pas fonctionner au féminin.

Pour en revenir à nos P, ça veut dire que photocopieuse et photocopieur ont été créés chacun isolément à partir du verbe photocopier à l'aide de deux règles morphologiques distinctes. Lesquelles règles n'ont pas les mêmes exactement caractéristiques sémantiques.

A suivre...

Dans le prochain épisode du mystère des machines à photocopier, vous aurez peut-être un des machins-là... ou peut-être pas, je sais pas encore, là je fais une pause :
_l'élargissement du champ lexical étudié (rajouter "machine à photocopier" par exemple)
_un développement à partir des règles morphologiques
_des analyses d'exemples trouvés sur les moteurs de recherches
_des observations sur les images que fournissent les moteurs de recherche avec l'un ou l'autre terme
_un grand lapin blanc qui est toujours en retard
et un jour (lointain sans doute)........ la résolution du mystère (mais c'est pas gagné)

Bientôt sur vos moniteurs.

2012 mar. 21

Vrac

Et si on collait quelques news ? Peut-être qu'un jour je tiendrai se blog en vie sur une période suffisamment intéressante ;-)

2012 janv. 22

News inintéressantes en vrac

Quelques petites news inintéressantes !

  • la moto a dépassé les 90 000 km ! Je crois qu'il faut que je fasse une vidange, mais elle roule toujours bien.
  • je cherche des nouvelles bottes de moto. Les actuelles, des alpinestars web GTX ont 4 ans (en roulant tous les jours), mais j'ai fini par trouer la semelle (et l'intérieur est quand même abimé) 030a_35.JPG
    • En fait il n'y a pas beaucoup de choix en bottes suffisamment bonne qualité (pas envie de perdre ma cheville sur une chute) mais qui soit confortable pour rouler tous les jours et parfaitement étanche...
    • j'ai essayé entre autre une paire de Gaerne gwt aquatech, c'est plus racing que mes actuelles, mais aussi plus sécurisantes (plus de renforts entre autre). A voir si c'est assez souple et confortable pour rouler tous les jours. * bottes-moto-gaerne-grw-aquatech_bf_2437327.jpg
  • j'ai remis en état mes rollers. Les roues sont un peu usées (des hyper concrete+grip si je ne me trompe pas, en Hi-Low 80-76) et j'ai du démonter quelques roulements qui avaient des points dur à cause de flasques abimées (je sais franchement pas comment les flasques se sont abimées par contre...) Quoi qu'il en soit les rollers sont parrés

2011 août 23

Load un peu trop haut...

Il y a peu de temps, je n'arrivais plus à accéder à mes sites, mails, etc. Et en plus impossible de se connecter convenablement à mon serveur (oué, denyhosts c'est amusé à blacklisté mon adresse locale... dur dur...)

Une fois connecté sur une machine, puis sur l'autre, etc j'arrive à l'une semblant plus ramer que les autres. Un petit uptime plus loin :

13:29:51 up 12 days, 21:49, 2 users, load average: 61.02, 50.37, 46.42

Ouch, ça fait mal !

Un load de 61 sur une vm relativement moyenne, ben ça fonctionne pas très bien.

A priori c'est apache qui est parti en caraf... Si j'ai le temps j'essairai de remonter dans les logs pour comprendre exactement, mais je penche plutôt pour juste apache tout seul comme un grand (bon, c'est rare quand même).

Voilou, très sympa de devoir se plonger là dedans pile au moment de manger (mais quelle idée de vouloir regarder ses mails aussi...)

2011 août 10

Maintenance

Le blog n'était pas dispo depuis quelques jour (et d'autres services en fait)... 6 jours pour reconstruire le raid 5 supportant les VM. Celui-ci était avait perdu une partition de spare suite à une coupure de courant.

Ca a été beaucoup plus long que prévu, mais tout rentre dans l'ordre progressivement. Bon, faudrait peut-être que je regarde aussi pourquoi mon raid était aussi lent à reconstruire (jamais dépassé 800ko/s). Probablement un problème de disque dur, à voir quoi.

- page 2 de 6 -