Catégorie : Technique

  • Usure mentale de la non-qualité

    Usure mentale de la non-qualité

    Vous pouvez argu­men­ter à propos du retour sur inves­tis­se­ment de haus­ser un peu le niveau de qualité – je l’ai fait aussi – mais il faut avouer que sauf à connaitre le futur, ces chiffres auront la même fiabi­lité et la même préci­sion que l’ho­ro­scope de l’an­née dernière.

    Tout au plus peut-on tracer une ligne en dessous de laquelle le manque de qualité rend vrai­ment le travail diffi­cile, mais en réalité nous cher­chons tous à mettre la barre bien plus haut.

    Le coût de non-qualité est en fait bien plus basique. Il se cache dans la fatigue mentale, l’épui­se­ment, mais aussi la baisse d’en­vie, de moti­va­tion, de résis­tance à la frus­tra­tion ou de celle aux petits accrocs trop fréquents du quoti­diens…

    Le terme anglais est burn-out, et c’est bien plus une ques­tion de qualité et de bien-être que de temps de travail ou de pres­sion.

    C’est Nico­las qui le forma­lise le mieux :

    Ces petites erreurs aux grandes consé­quences font de plus en plus mal. Autant sur les personnes (le moral, l’es­time de soi, la frus­tra­tion) que sur le busi­ness (image, etc.). […] Je crois que ces galères de coûts de non-qualité et l’usure sur nos corps et nos esprits sont trop souvent sous-esti­mées.

    La ques­tion est : Où avez-vous envie de travailler ? Où vos colla­bo­ra­teurs ont-ils envie de travailler ? Combien de temps tien­dront-ils avant d’être usés et rési­gnés, sans moti­va­tion ni initia­tive ? Qui voulez-vous atti­rer ?

    Cet aspect est trop souvent oublié dans la logique produc­ti­viste du retour sur inves­tis­se­ment, pour­tant ce sont les ques­tions essen­tielles : À côté de l’im­por­tance du dyna­misme de l’équipe, tout gain de produc­ti­vité lié à une baisse des exigences revient à travailler à la bougie pour écono­mi­ser l’élec­tri­cité.

    Photo d’en­tête sous licence CC BY par Intan­gi­bleArts

  • Archi­ver le web

    Archi­ver le web

    J’adore le prin­cipe de la wayback machine de l’ini­tia­tive Inter­net Archive. Ils indexent le web et gardent une archive des versions rencon­trées. On peut revoir les conte­nus qui ont disparu du web, ou consul­ter des anciennes versions de conte­nus qui ont changé entre temps.

    Et si on réuti­li­sait l’ini­tia­tive à titre person­nel ? Pouvoir retrou­ver les conte­nus déjà visi­tés, même s’ils ont été reti­rés ou ont été amen­dés. Avec un peu de bidouille on pour­rait même recher­cher à travers nos archives.

    C’est ce que propose l’IIPC avec le projet open­way­back. Pour ceux qui ne veulent pas utili­ser pywb.

    Je pense de plus en plus à me consti­tuer mon archive : Au moins avec les pages que je mets en favori, celles que je lie à partir de mon blog, les liens que j’en­re­gistre dans Pocket, que je lis dans mon flux Twit­ter ou que j’y pose moi-même. Peut-être même que ça vaudrait le coup d’en­re­gis­trer tout ce qui passe dans mon histo­rique de navi­ga­tion.

    Pour l’ins­tant je n’ai jamais sauté le pas, mais est-ce si complexe ? pas certain. Il suffi­rait d’un peu de temps, d’un peu de code et de stockage en assez grande quan­tité. Rien d’in­fai­sable.

    Entre temps, d’autres se mettent en tête d’ar­chi­ver le web, tout le web. Rien que ça. L’In­ter­net Archive n’est qu’une compo­sante parmi d’autres reliées grâce à Memento. L’Archive Team fait un travail paral­lèle : Eux réus­sisent à archi­ver les conte­nus de quelques services en vue avant qu’ils ferment, les conte­nus des redi­rec­teurs d’URL, et même les conte­nus FTP.

    Le web gros­sit à une vitesse formi­dable mais les possi­bi­li­tés de stockage restent suffi­sam­ment impor­tantes pour qu’ar­chi­ver le web soit du domaine du possible.

    Photo d’en­tête sous licence CC BY-NC-ND par Pietro­mas­simo Pasqui

  • We’ve streng­the­ned our passs­word complexity requi­re­ments

    1. We’ve streng­the­ned our passs­word complexity requi­re­ments. We’ve noti­ced that the recur­ring pass­word expi­ra­tion often results in the use a poor or weak pass­words. The new pass­word requi­re­ments are:

    • Mini­mum length for 16 charac­ters
    • Mini­mum of 4 words when using a pass­phrase (a sequence of unre­la­ted words)
    • Maxi­mum length of 100 charac­ters
    • No pass­words that reuse the same words too many times, contain a birth­date suffix/prefix, etc.

    We stron­gly encou­rage the use of pass­phrases, instead of a tradi­tio­nal pass­word with multiple charac­ter classes. Example pass­phrases are displayed on the pass­word reset site.

    2. We’re remo­ving pass­word expi­ra­tion enti­rely. After chan­ging your LDAP pass­word one last time, it will no longer expire. The only reason you will need to change your change your LDAP pass­word in the future is if it has been acci­den­tally leaked, or if one of your compu­ters/mobile device were lost, stolen, or compro­mi­sed.

    Je ne saurais trop remer­cier Mozilla d’avoir sauté ce pas, quand bien même je ne suis pas concerné. Les poli­tiques de mots de passe n’ont géné­ra­le­ment ni queue ni tête, et l’obli­ga­tion de chan­ger régu­liè­re­ment de mot de passe est proba­ble­ment la superbe mauvaise idée du siècle en termes de sécu­rité.

    Je râle encore contre tous ces sites qui ont une procé­dure de réini­tia­li­sa­tion mais qui t’em­pêchent de saisir de nouveau un mot de passe que tu avais oublié préa­la­ble­ment.

    Juste un point pour Mozilla : Pour les appa­reils perdus ou volés, la solu­tion est plus la possi­bi­lité d’avoir des mots de passe unique dédiés. Le mot de passe géné­rique n’est utile que là où il est tapé régu­liè­re­ment.

    Partout où le mot de passe est à demeure (par exemple la confi­gu­ra­tion du client email), le système devrait permettre d’uti­li­ser un mot de passe unique, dédié. Si l’ap­pa­reil est compro­mis on ne change pas le mot de passe géné­rique, on se contente de « griller » le mot de passe dédié dans la liste des auto­ri­sa­tions.

    Google le fait très bien pour ceux qui ont activé l’au­then­ti­fi­ca­tion en deux étapes.

  • Tomber en marche

    Celle ci je ne peux me rete­nir de la copier car elle est magni­fique :

    $override = null;
    if ($notify_admin and $conf['browser_language'])
    {
      if (!get_browser_language($override['language']))
      {
        $override=null;
      }
    }

    À première vue, le code ne fait rien. À la seconde lecture non plus, je vous rassure.

    Après expli­ca­tion, la méthode get_browser_language utilise un passage par réfé­rence (oui, avec ce nom là…), c’est à dire que la variable qui est passée en argu­ment pourra voir sa valeur modi­fiée.

    Eureka! En sortie de code on pour­rait bien avoir une variable $override qui contient quelque chose. On a au passage fait une créa­tion de tableau impli­cite en utili­sant la syntaxe avec crochets sur une valeur nulle (conseil : ne jamais faire ça si vous souhai­tez rester lisible).

    La seconde affec­ta­tion $override=null sert si jamais get_browser_language a bien modi­fié $override['language'] mais a renvoyé une valeur évaluée à false.

    Mais pourquoi cette seconde affec­ta­tion à null ? Et bien il se trouve que la fonc­tion get_browser_language renvoie false si elle ne modi­fie pas la variable passée par réfé­rence. Dans ce cas le code d’ap­pel aurait quand même créé un tableau dans $override à cause de override['language'], il faut donc reve­nir en arrière et écra­ser ce tableau créé impli­ci­te­ment.

    À rete­nir :

    1. Ne jamais créer de tableau implic­te­ment avec l’opé­ra­teur crochet sur une valeur null.
    2. Ne jamais attendre un retour par réfé­rence sur une fonc­tion qui s’ap­pelle « get_* »
    3. Globa­le­ment, ne quasi­ment jamais utili­ser le passage par réfé­rence pour récu­pé­rer une simple valeur.

    Ici en plus vu qu’on utilise déjà l’éva­lua­tion à true ou false du retour de get_browser_language, autant lui faire retour­ner direc­te­ment la langue, ou null si aucune n’est trou­vée.

  • Dead­line

    Dead­line

    La plupart du temps la dead­line est une manif d’une fausse urgence créée par une absence de déci­sion
    Raphaël

    Je ne saurais mieux dire. Esti­mer puis mesu­rer le niveau d’ef­fort est impor­tant pour pilo­ter la déci­sion. Parfois la date de livrai­son est un élément néces­saire, mais le plus souvent il ne s’agit que d’un élément arti­fi­ciel qui se veut moti­vant et qui ne vient que d’une inca­pa­cité à pilo­ter l’ef­fort en continu, à s’adap­ter aux situa­tions qui se présentent.

    Qu’im­porte quelle était l’es­ti­ma­tion précé­dente, la date qu’on a pu maladroi­te­ment en déduire. L’im­por­tant est quelle est la déci­sion la plus perti­nente à prendre aujourd’­hui, en fonc­tion de la valeur produite, et du niveau d’ef­fort encore à four­nir pour ce qu’on envi­sage.

    Le reste est simple­ment hors sujet, y compris savoir si on est « en avance »,  « en retard » ou même « parfai­te­ment dans le plan­ning » par rapport à la date prévue en direc­tion. Le pilo­tage par la date est juste une inca­pa­cité à prendre ce recul et à s’adap­ter au présent plutôt qu’aux plans passés. Tout envi­sa­ger en un bloc et sous forme de retard ou d’avance est juste telle­ment plus rassu­rant, plus simple… Ça n’ap­porte malheu­reu­se­ment aucune valeur.

    Photo d’en­tête sous licence CC BY-NC-SA par João Almeida

  • Termi­nai­son d’ap­pel et débit asymé­trique

    Termi­nai­son d’ap­pel et débit asymé­trique

    Je ne sais pas où ça a commencé mais il y en a un qui mérite des baffes. Fiction.

    Hier le rapport de force a pris un tour­nant inat­tendu. Youtube a coupé l’ac­cès aux abon­nés SFR, ou plutôt a telle­ment ralenti les débits qu’il est impos­sible de regar­der une vidéo.

    Le distri­bu­teur de vidéo se plaint d’un nombre gran­dis­sant de requêtes venant de SFR, nombre qui dépas­se­rait le raison­nable. La tension est montée à un niveau insou­te­nable il y a plusieurs mois, date à laquelle les abon­nés fibre SFR ont pu télé­char­ger à 1 Gb/s.

    Décryp­tage : Quand vous regar­dez une vidéo sur Youtube, SFR demande la vidéo à Google et la trans­met direc­te­ment à l’abonné – actuel­le­ment sans rien payer pour l’ac­cès à la vidéo.

    Non seule­ment le nombre de requêtes augmente mais en plus avec la fibre ce sont des vidéos très haute qualité qui sont deman­dées, très goinfres en bande passante. Le cas des mobiles avec une connexion inter­mit­tente et de faible qualité pose aussi problème.

    Youtube rappelle qu’il gère un service gratuit, déjà défi­ci­taire, avec « un réseau que SFR conti­nue à surchar­ger sans y contri­buer finan­ciè­re­ment ».

    L’abon­ne­ment inter­net SFR clas­sique coûte 29,90 € par mois et monte jusqu’à 45 € par an. Aucun rever­se­ment n’est fait aux diffé­rents four­nis­seurs de services et conte­nus qui enri­chissent la plate­forme, lais­sant ces derniers finan­cer seuls rede­vables des coûts d’in­fra­struc­ture et de bande passante néces­saires.

    Rien que pour Youtube – prin­ci­pal appor­teur de contenu des FAI – on a estimé le coût de bande passante à 400 millions en 2010. Ce coût a augmenté expo­nen­tiel­le­ment depuis.

    Faut-il impo­ser aux FAI une contri­bu­tion aux gros four­nis­seurs de services pour payer la bande passante et les conte­nus ? Le modèle de la contri­bu­tion des chaînes de télé­vi­sion aux studios de cinéma a déjà été évoqué.

    Les FAI qui veulent faire payer les gros four­nis­seurs de contenu à cause du trafic injecté dans leur réseau se tirent une balle dans le pied. Ils oublient que le rapport de force n’est pas forcé­ment à leur avan­tage sur le long terme, et que la situa­tion peut tout à fait s’in­ver­ser à l’ave­nir.

    En fait ça commence déjà : Les ayants-droits cherchent déjà à impo­ser une contri­bu­tion obli­ga­toire aux FAI pour « parti­ci­per à la créa­tion des conte­nus qui enri­chissent leurs offres »

    Ne pas oublier que quand Youtube « injecte » du trafic dans le réseau du FAI, c’est en fait qu’il répond à une requête du réseau du FAI. S’il y en a un des deux de respon­sa­ble…

    Photo d’en­tête sous licence CC BY-NC-SA par Hendrik Terbeck

  • Hygiène de sécu­rité

    Hygiène de sécu­rité

    Aujourd’­hui on véri­fie la sécu­rité.

    Les services en ligne « sensibles »

    Même en ne gardant que le prin­ci­pal, il faut penser à :

    • votre boite email (qui sert à la récu­pé­ra­tion des mots de passe de tous les autres comptes),
    • votre service de nom de domaine,
    • celle de secours (qui sert à la récu­pé­ra­tion du mot de passe de la boite prin­ci­pale),
    • votre service de backup,
    • vos services de stockage ou synchro­ni­sa­tion en ligne,
    • votre héber­geur de serveur en ligne si vous en avez.

    [ ] La première étape c’est s’as­su­rer d’avoir des mots de passe « sûrs ». Ça veut dire suffi­sam­ment longs et complexes.

    Suivant les préfé­rences c’est au moins huit carac­tères aléa­toires entre chiffres lettres et symboles, au moins 12 carac­tères avec des lettres rela­ti­ve­ment aléa­toires, ou au moins 15 carac­tères mini­mum si vous avez des suites de mots communs.

    Le l34t sp33k, l’in­ver­sion des carac­tères, l’ajout d’une année, et globa­le­ment la plupart des varia­tions auxquelles vous pour­riez penser sont testables en moins de quelques minutes donc n’ajoutent pas de complexité signi­fi­ca­tive.

    [ ] Seconde étape, s’as­su­rer que ces mots de passe sont uniques et vrai­ment diffé­rents (pas de simples varia­tions du même).

    Au grand mini­mum, s’as­su­rer d’avoir un mot de passe pour les services très sensibles diffé­rent du mot de passe que vous tapez tous les jours pour les services moins impor­tants. Ce mot de passe sensible ne devra être tapé que dans des espaces correc­te­ment sécu­ri­sés.

    [ ] Quand vous le pouvez, acti­vez l’ »authen­ti­fi­ca­tion en deux étapes ». C’est possible au moins pour Google, Gandi, Drop­box, iCloud. C’est fran­che­ment peu gênant vu la sécu­rité que ça apporte, ne pas le faire est limite une faute.

    [ ] Les « ques­tions secrètes » pour récu­pé­rer des comptes dont vous avez oublié les mots de passe sont de vraies plaies pour la sécu­rité. En géné­ral il est très facile d’en trou­ver la réponse.

    À vous de voir si vous préfé­rez tricher et mettre de fausses réponses (au risque de ne pas vous en souve­nir) ou si vous avez une grosse faille à cet endroit là. C’est le moyen d’ac­cès de la plupart des usur­pa­tions courantes.

    L’ac­cès depuis vos postes

    Tablette, télé­phone (même les « pas smart »), micro-ordi­na­teur, NAS de la maison…

    [ ] Tous doivent avoir un mot de passe à l’al­lu­mage et à la sortie de veille. Tous, pas d’ex­cep­tion.

    Sur les smart­phones et tablettes vous avez parfois la possi­bi­lité de mettre un « schema ». Ça fonc­tionne assez bien et c’est plutôt simple à déver­rouiller. Si vous n’avez pas d’autre choix, utili­sez le code PIN.

    Pour les autres les mots de passe doivent respec­ter les mêmes règles que pour les services en ligne.

    [ ] Tous ceux qui le peuvent doivent avoir un disque chif­fré. Micro-ordi­na­teurs, tablettes et smart­phones le permettent quasi­ment tous.

    Le coût en perfor­mance ou en batte­rie est quasi­ment nul sur les proces­seurs des 5 dernières années qui ont des circuits dédiés pour ces calculs.

    Sans ça n’im­porte qui avec très peu de connais­sances infor­ma­tiques peut passer outre votre mot de passe.

    Parfois il existe une procé­dure de récu­pé­ra­tion si jamais vous oubliez vos mots de passe, de façon à déver­rouiller le disque. Sur Apple par exemple ça utilise le compte iCloud. Dans ces cas, le compte utilisé pour la procé­dure de récu­pé­ra­tion doit être consi­déré comme sensible avec les mêmes règles que plus haut.

    [ ] Les mises à jour sont confi­gu­rées pour être télé­char­gées auto­ma­tique­ment, et instal­lées dès qu’elles sont dispo­nibles.

    [ ] Si vous enre­gis­trez vos mots de passe dans votre navi­ga­teur pour ne pas les ressai­sir à chaque fois, ce dernier doit avoir un « mot de passe maître ».

    Si en plus ces données sont synchro­ni­sées en ligne, le mot de passe qui gère le compte de synchro­ni­sa­tion doit être consi­déré comme sensible avec les mêmes règles que plus haut.

    [ ] Vous avez une poli­tique de backup auto­ma­tisé et testé pour toutes vos données impor­tantes. Bien entendu le compte qui permet d’ac­cé­der aux données de backup est à consi­dé­rer comme sensible.

    La machine qui reçoit les backup doit avoir un disque chif­fré et si vous faites appel à un service tiers le chif­fre­ment des données doit se faire côté client pour que le pres­ta­taire ne puisse pas déco­der les données.


    Tout ça est un mini­mum, main­te­nant imagi­nez quelqu’un qui connait la réponse à la ques­tion secrète de votre opéra­teur télé­pho­nique. À partir de ça il peut réini­tia­li­ser le mot de passe pour accé­der à votre compte. Là il a une inter­face pour lire et écrire des SMS. Il demande alors la réini­tia­li­sa­tion du mot de passe de votre boite email prin­ci­pale, qui se fait via SMS. À partir de là il réini­tia­lise le mot de passe de votre service de stockage en ligne, de backup, et de votre banque. Le voilà avec de quoi récu­pé­rer vos photos, même si vous les avez effacé, et peut être même de quoi faire des vire­ments. Situa­tion fictive mais on a vu des attaques bien plus inven­tives.

    Si vous avez lu jusqu’au bout (sérieu­se­ment ?) je suis curieux de savoir quelle propor­tion de ces bonnes pratiques vous vali­dez, ou si vous respec­tez tout en détail pour l’in­té­gra­lité de vos maté­riels et comptes sensibles.

    Photo d’en­tête sous licence CC BY-NC-SA par Steve Crane

  • Justice folle sur le numé­rique

    Notre justice est folle. Bon, celle des US, mais ça aurait pu se passer ici.

    No-ip est un service qui permet à des inter­nautes de donner un nom public à leurs machines person­nelles pour pouvoir y accé­der faci­le­ment depuis Inter­net. On parle de millions d’uti­li­sa­teurs.

    Ce service a été anec­do­tique­ment utilisé par des logi­ciels malveillants pour infec­ter des machines sous Micro­soft Windows.

    Réac­tion : Micro­soft s’adresse à la justice pour faire cesser le problème (plus exac­te­ment ici : filtrer les accès malveillants et réus­sir à en tracer l’ori­gine). La justice lui délègue tota­le­ment la gestion des noms de domaine No-ip corres­pon­dants.

    Bien entendu Micro­soft n’a pas eu l’in­fra­struc­ture suffi­sante pour gérer le trafic et le service No-ip s’est partiel­le­ment écroulé, lais­sant les utili­sa­teurs dans le noir.

    À vrai dire tout se serait bien passé que le scan­dale serait quand même là. La justice vient de donner à Micro­soft, qui n’est pas ciblé par les attaques infor­ma­tiques mais unique­ment concerné indi­rec­te­ment parce que ça exploite des failles de son OS, l’ac­cès aux noms de domaine d’une société tierce à qui on ne reproche rien.

    Avec ça Micro­soft contrôle (et ici a fait s’écrou­ler) le busi­ness d’un tiers, peut en tracer le volume, les clients, les services utili­sés, etc. Sans compen­sa­tion aucune.

    Tout ça sans même avoir contac­ter No-ip pour tenter de résoudre le problème en colla­bo­ra­tion initia­le­ment.

    Vous avez un .com ? prenez peur.

     

  • Auto­pre­fixer

    Je note ici autant pour ceux qui ne connaissent pas que pour mon moi de plus tard : Auto­pre­fixer, qui prend une CSS clas­sique et qui ajoute les versions préfixées utiles pour les diffé­rents navi­ga­teurs.

    Ça ne le fait pas bête­ment, genre pour flex­box ça sait gérer les diffé­rences de syntaxes. Bref : utile.

  • Reti­ring the Netflix Public API

    To better focus our efforts and to align them with the needs of our global member base, we will be reti­ring the public API program. Effec­tive on Novem­ber 14, 2014, public API deve­lo­pers will no longer be able to access Netflix content. All requests to the public API will return 404 errors.

    […]

    Thank you to all of the deve­lo­pers who have parti­ci­pa­ted in the ecosys­tem throu­ghout the years.

    Termi­ner comme ça c’est ajou­ter une insulte à l’hu­mi­la­tion.

    Vous nous avez bien servi, main­te­nant nous capi­ta­li­sons sur ce que vous avez créé et qui nous rému­nère le plus et nous vous coupons l’ac­cès au reste. L’éco­sys­tème ne nous inté­res­sait que le temps qu’on gagne une posi­tion domi­nante.