Auteur/autrice : Éric

  • [Photo] Mejika Setsu­naï

    Je suis frus­tré par ces gens qui arrivent à faire des auto-portraits corrects. Les quelques fois où j’ai essayé, non seule­ment ça prend des heures mais impos­sible d’ar­ri­ver à quelque chose d’un mini­mum perti­nent. La tech­nique est ingé­rable quand on doit courir des deux côtés de l’objec­tif, et s’il faut en plus tenter de soi-même gérer sa propre émotion… c’est le désert.

    Bref, allez voir les gale­ries de Mejika Setsu­naï

    tumblr_nzj67vuD4v1uiwj2io1_1280

  • The reso­lu­tion of the Bitcoin expe­riment

    I’ve spent more than 5 years being a Bitcoin deve­lo­per. The soft­ware I’ve writ­ten has been used by millions of users, hundreds of deve­lo­pers […]

    The funda­men­tals are broken and whate­ver happens to the price in the short term, the long term trend should proba­bly be down­wards. I will no longer be taking part in Bitcoin deve­lop­ment and have sold all my coins.

    — Mike Hearn

    On y parle un peu de ques­tions tech­niques mais on se rend compte aussi que fina­le­ment les projets sont extrê­me­ment dépen­dants des humains.

    Quel est l’ave­nir souhaité pour le projet ? Il y a-t-il un consen­sus ? Quels en sont les impacts ?

    the block chain is control­led by Chinese miners, just two of whom control more than 50% of the hash power. At a recent confe­rence over 95% of hashing power was control­led by a hand­ful of guys sitting on a single stage.

    CVhkEhtUAAAl0LH[…] Even if a new team was built to replace Bitcoin Core, the problem of mining power being concen­tra­ted behind the Great Fire­wall would remain. Bitcoin has no future whilst it’s control­led by fewer than 10 people. And there’s no solu­tion in sight for this problem: nobody even has any sugges­tions. For a commu­nity that has always worried about the block chain being taken over by an oppres­sive govern­ment, it is a rich irony.

    Rien que ça empêche assez bien d’en­vi­sa­ger un avenir, mais si vous voulez un résumé plus complet :

    Think about it. If you had never heard about Bitcoin before, would you care about a payments network that:

    • Couldn’t move your exis­ting money
    • Had wildly unpre­dic­table fees that were high and rising fast
    • Allo­wed buyers to take back payments they’d made after walking out of shops, by simply pres­sing a button (if you aren’t aware of this “feature” that’s because Bitcoin was only just chan­ged to allow it)
    • Is suffe­ring large back­logs and flaky payments
    • … which is control­led by China
    • … and in which the compa­nies and people buil­ding it were in open civil war?

    I’m going to hazard a guess that the answer is no.

  • Fluent inter­face are evil

    1. Fluent Inter­faces break Encap­su­la­tion
    2. Fluent Inter­faces break Deco­ra­tors (and some­times Compo­si­tion)
    3. Fluent Inter­faces are harder to Mock
    4. Fluent Inter­faces make diffs harder to read
    5. Fluent Inter­faces are less readable (perso­nal feeling)
    6. Fluent Inter­faces cause BC breaks during early deve­lop­ment stages

    Fluent Inter­face are Evil

    J’ai parfois l’im­pres­sion d’être dans les dino quand je me bats contre cette mode alors je suis heureux de voir ne pas être le seul.

    Ce type d’écri­ture est juste magique pour créer des filtres succes­sifs, essen­tiel­le­ment dans les objets de construc­tion (buil­der).

    Pour tout le reste, c’est juste un faux raccourci d’écri­ture. On casse beau­coup de choses pour gagner quelques carac­tères. Le plus souvent on ne les gagne pas vrai­ment puisqu’il faut bien penser à faire le return $this/self dans la méthode appe­lée et à gérer correc­te­ment l’in­den­ta­tion dans la méthode appe­lante.

     

  • La confé­rence des premiers prési­dents estime que le PL de réforme pénale contient des dispo­si­tions dange­reuses

    La France ne saurait sacri­fier les valeurs fonda­men­tales de sa justice, au motif qu’un manque cruel et ancien de moyens l’a affai­blie

    […]

    Elles consti­tuent un trans­fert de compé­tence de l’au­to­rité judi­ciaire vers l’au­to­rité admi­nis­tra­tive, dans la dépen­dance de l’exé­cu­tif, incom­pa­tible avec le prin­cipe de sépa­ra­tion des pouvoirs, fonde­ment de la démo­cra­tie.

    Bref, la direc­tion prise est assez dange­reuse.

  • Extre­mely Defen­sive PHP

    Comment faire un code qui évite les mauvaises pratiques et reste main­te­nable en élimi­nant les risques ? La présen­ta­tion de Marco Pivetta est à regar­der.

    Il y a pas mal d’idées. Tout n’est pas forcé­ment à reprendre tel quel à mon avis, mais ça permet au moins d’y penser.

  • Quand le Conseil Natio­nal du Numé­rique va trop loin

    « Il nous semble parti­cu­liè­re­ment stupé­fiant qu’une insti­tu­tion dite indé­pen­dante, dépen­dant inté­gra­le­ment du budget de l’Etat et donc d’argent public pour rému­né­rer ses colla­bo­ra­teurs et assu­rer son fonc­tion­ne­ment, utilise ces moyens pour défendre des propo­si­tions rele­vant d’in­té­rêts privés et contraires aux arbi­trages et posi­tions défen­dues par le gouver­ne­ment. »

    SACD, « Quand le Conseil Natio­nal du Numé­rique va trop loin »

    Oui, un syndi­cat privé, en la voix de son lobbyiste offi­ciel, se plaint qu’une auto­rité indé­pen­dante puisse expri­mer une opinion diffé­rente des choix du gouver­ne­ment en place.

    Je passe sur l’ac­cu­sa­tion de défendre des inté­rêts privés. Pour la SACD tout ce qui est voulu par ses affi­liés est de fait l’in­té­rêt public et les posi­tions contraires des inté­rêts privés. On en est à la cari­ca­ture où c’est l’in­té­rêt public de quelques dizaines de milliers d’af­fi­liés contre l’in­té­rêt privé des 65 millions de citoyens.

    Quand une posi­tion publique échappe au contrôle des lobbyistes du droit d’au­teur, c’est telle­ment excep­tion­nel qu’on a le droit à des lettre ouvertes pour se plaindre à la maîtresse au premier ministre. Ça veut tout dire.

    Trop loin le Conseil du Numé­rique ? Disons qu’il casse le mono­pole des syndi­cats privés sur le sujet.

  • 10 ques­tions posées lors d’en­tre­tiens d’em­bauche chez Apple

    Heureu­se­ment que personne ne me fait passer d’en­tre­tiens d’em­bauche de ce type. Je crois que je ne quali­fie­rai jamais. Voici ce que je me senti­rais réel­le­ment capable de répondre en face à face.

    Heureu­se­ment, on ne m’a jamais, mais alors jamais, posé de ques­tions de ce type. Je trouve ça bien à côté de la plaque quand c’est pensé au premier degré, et assez aléa­toire si c’est pensé au second degré (c’est à dire pour regar­der le pourquoi, le comment et quelle réponse il donne plus que savoir s’il a donné la bonne réponse).

    Je m’y essaye bête­ment :

    Si vous avez 2 oeufs et que vous voulez savoir la hauteur maxi­male à laquelle vous pouvez lâcher un oeuf sans qu’il se brise, comment vous y pren­driez-vous ? Quelle est la solu­tion opti­male ? – poste de Soft­ware Engi­neer

    Je cherche sur Inter­net. Et j’es­père qu’il n’at­tend pas « je le lâche de plus en plus haut jusqu’à ce que le premier casse » parce que même en alter­nant les deux œufs, non seule­ment on va les fragi­li­ser au fur et à mesure, mais en plus les résul­tats seraient bien trop aléa­toires en fonc­tion de comment ils atter­rissent pour prétendre avoir un résul­tat fiable.

    Combien d’en­fants naissent chaque jour ? – poste de Global Supply Mana­ger

    Je ne sais pas, mais je suis capable de trou­ver cette infor­ma­tion si besoin.

    Vous dispo­sez de 100 pièces posées à plat devant vous sur une table, chacune avec un coté « face » et un coté « pile ». 10 d’entre-elles ont le côté « face » vers le haut, les 90 autres ont le côté « pile ». Vous ne pouvez d’au­cune manière voir ou sentir quelles pièces ont le côté « face » et quelles pièces ont le côté « pile ». Sépa­rez les pièces en 2 tas de manière à ce qu’il y ait le même nombre de pièces avec le côté « face » dans chaque tas. – poste de Soft­ware Engi­neer

    Certains trou­ve­ront peut-être la solu­tion mais je crains que ça ne filtre surtout ceux qui connaissent le truc ou qui ont le déclic sur place. Le problème c’est que si ceux qui ont d’eux-même le déclic ont bien une capa­cité d’ana­lyse inté­res­sante, ça ne dit rien sur la majo­rité qui reste : ceux qui n’ont pas su trou­ver mais qui sont pour beau­coup tout aussi capables.

    Je pense que j’au­rais triché, et proposé de mettre les piles hori­zon­tales, sur la tranche. Tricher c’est mal, mais ça s’ar­gu­mente : là je réponds au besoin réel­le­ment exprimé.

    Il y a trois boîtes, une ne contient que des pommes, l’autre que des oranges et la dernière contient un mélange de pommes et d’oranges. Les boîtes ont mal été iden­ti­fiées, ce qui induit qu’au­cune d’entre elles n’a le nom corres­pon­dant à son véri­table contenu. En ouvrant une boîte unique­ment, et sans regar­der son contenu, vous prenez un fruit à l’in­té­rieur. En regar­dant le fruit que vous venez de prendre, comment pouvez-vous immé­dia­te­ment iden­ti­fier les trois boîtes ? – poste de Soft­ware Quality Assu­rance Engi­neer

    Je la pose­rai à mon fils quand il sera en école primaire celle là. Je ne peux qu’es­pé­rer que ce que cherche ici le recru­teur c’est véri­fier qu’on sait expliquer et prou­ver que notre solu­tion couvre tous les cas au lieu de se baser sur notre compré­hen­sion intui­tive. Ce serait effec­ti­ve­ment une compé­tence très perti­nente pour un ingé­nieur QA.

    Si par contre le recru­teur reste au premier degré et que c’est leur niveau d’exi­gence pour un ingé­nieur, ce sera sans moi. Le pire c’est qu’a­vec le stress ou simple­ment si on ne voit pas le truc, même quelqu’un de très intel­li­gent peut ne pas savoir répondre à une ques­tion basique. Très mauvaise ques­tion si c’est bien ça qu’on attend.

    Comment pour­riez-vous répar­tir le coût de ce stylo ? – poste de Global Supply Mana­ger

    Je ne suis pas certain de comprendre la ques­tion, savoir si on parle de répar­tir entre le coût d’achat, de trans­port, de stockage, de négo­cia­tion, etc. ou si on parle de répar­tir entre le bouchon, la bille, le tube, etc.

    L’in­ti­tulé du poste me fait penser qu’on est plutôt dans le premier type de répar­ti­tion. Dans ce cas un expé­ri­menté aura proba­ble­ment une idée des ordres de gran­deur. Sinon : « je cherche sur Inter­net ». Oui, c’est la réponse magique mais c’est réel­le­ment la réponse.

    Êtes-vous intel­li­gent ? – poste de Build Engi­neer

    Oui selon la défi­ni­tion la plus clas­sique de l’in­tel­li­gence et dans sa clas­si­fi­ca­tion rela­tive à la popu­la­tion humaine récente, mais est-ce cette défi­ni­tion et cette clas­si­fi­ca­tion qui est réel­le­ment recher­chée ?

    J’ai peur que cette ques­tion soit plus une ques­tion humaine, donc la réponse varie telle­ment en fonc­tion du stress, de l’his­toire et du carac­tère de la personne qu’elle en devienne assez peu perti­nente – même s’il s’agit juste­ment de comprendre le carac­tère de la personne.

    Qu’un recru­teur me demande ça est un point néga­tif dans l’in­ter­view.

    Vous posez un verre rempli d’eau sur une platine vinyle et vous augmen­tez progres­si­ve­ment la vitesse. Qu’ar­rive-t-il en premier – est-ce que le verre tombe de la platine, se renverse dessus ou est-ce que de l’eau est éjec­tée du verre ? – poste de Mecha­ni­cal Engi­neer

    Quel verre, quelle platine, quelle vitesse, quel niveau d’eau dans le verre, quelle progres­si­vité, quelle posi­tion initiale sur la platine ? Si c’est une ques­tion liée à un projet réel, la solu­tion la plus perti­nente est réel­le­ment de mettre en test, même si on a une réponse théo­rique à dispo­si­tion.

    S’il faut faire une réponse au jeté, si on a une progres­si­vité parfaite avec une accé­lé­ra­tion constante la plus faible possible, sauf erreur de ma part le verre va glis­ser jusqu’à sortir de la platine.

    Quelle est la chose la plus impor­tante entre régler le problème du client ou lui offrir une expé­rience client satis­fai­sante ? – poste d’Apple At Home Advi­sor

    Je n’ima­gine pas que le client puisse consi­dé­rer avoir une expé­rience satis­fai­sante si son problème n’est pas réglé. Inver­se­ment, je ne vois pas pourquoi régler son problème indui­rait une mauvaise expé­rience.

    Ques­tion au recru­teur : a-t-il un cas concret où il est néces­saire d’ar­bi­trer entre ces deux valeurs afin de pouvoir lui présen­ter une solu­tion adap­tée ?

    Si l’on vous donne un bocal avec un mélange de pièce normale et de pièces truquées, que vous en piochez une, que vous la faites sauter 3 fois et que vous obte­nez comme séquence de résul­tats : face, face et pile, quelles sont les chances pour que la pièce que vous avez tirée au hasard soit normale ou truquée ? – poste de Lead Analyst

    Ne sachant pas ce quel est le compor­te­ment d’une pièce truquée (est-ce qu’elle est censée donner plus de face ou plus de pile ? toujours ou simple­ment plus souvent ? si c’est juste plus souvent, quelles sont les proba­bi­li­tés asso­ciées ?) il n’y a pas de réponse.

    À défaut de plus d’in­di­ca­tion, la proba­bi­lité dépend de la propor­tion de pièces truquées et normales.

    Comment teste­riez-vous un grille-pain ? – poste de Soft­ware Quality Assu­rance Engi­neer

    Quelles sont les qualité et niveau d’exi­gence atten­dus sur ce grille-pain ? Quels sont les défauts les plus courants ou corri­gés récem­ment ?

  • [Photo] Demi-pas chassé

    Deux photos de ma dernière séance de 2015. Je n’ai pas beau­coup avancé, avec trop d’es­pace entre mes diffé­rents essais. Il y en aura plus en 2016, mais pour ça j’ai besoin de vous.

    Tout a été pensé en noir et blanc mais parfois j’hé­site longue­ment avec la couleur lors du déve­lop­pe­ment. Ça a été le cas ici, le noir et blanc de la seconde partie me semblait trop imper­son­nel :