Auteur/autrice : Éric

  • Feds Seized Hip-Hop Site for a Year, Waiting for Proof of Infrin­ge­ment

    S’il fallait encore des exemples des dangers des filtrages et autres inter­rup­tions admi­nis­tra­tives de sites Inter­net, malgré la débacle austra­lienne, en voici un nouveau : Feds Seized Hip-Hop Site for a Year, Waiting for Proof of Infrin­ge­ment

    Un site mis hors ligne par déci­sion admi­nis­tra­tive sans mise en accu­sa­tion ni procès, pendant plus d’un an, sur demande non moti­vée d’en­tre­prises privées, puis retourné à son proprié­taire sans expli­ca­tion autre que l’ab­sence de charges.

    Sur un tout autre plan, le désor­mais célèbre megau­pload ne sera fina­le­ment pas mis en accu­sa­tion. Le site a été mis hors ligne, la boite a été tuée, les données légales et payées proba­ble­ment perdues, tout ça sur ordre des auto­ri­tés US et au final des juges améri­cains avouent qu’il n’y aura certai­ne­ment pas de procès car rien dans toute cette histoire n’est soumis à la loi US. Quoi qu’on pense du site en ques­tion, la possi­bi­lité de tels actes unila­té­raux et sans moti­va­tion judi­ciaire fait froid dans le dos.

  • Harvard and M.I.T. Team Up to Offer Free Online Courses

    Il y a beau­coup à faire avec nos outils de commu­ni­ca­tion. Réfor­mer l’édu­ca­tion à l’heure du numé­rique ce n’est pas four­nir un iPad ou un ultra­por­table à chaque élève. La nouvelle éduca­tion c’est profi­ter et se former à la profu­sion des conte­nus, au partage que le numé­rique permet, et se baser sur l’abon­dance plutôt que la rareté.

    Il y a beau­coup à faire, mais je regrette que des initia­tives comme celle de Harvard et du MIT ne soit pas plus fréquentes et mieux établies.

    L’enjeu des frais d’uni­ver­sité gratuits qui court aujourd’­hui au Québec est impor­tant, mais c’est déjà un combat d’ar­rière garde. Les États financent des cours et du maté­riel, si nous voulons qu’ils soient les plus utiles possibles, il faut les diffu­ser large­ment, gratui­te­ment, libre­ment, faire qu’ils puissent être enri­chis, réuti­li­sés, inté­grés à d’autres conte­nus.

    Je n’ai jamais compris que les cours de lycée et d’écoles supé­rieures publiques soient inter­dits de diffu­sion, que chaque profes­seur, pour­tant payé pour cela et guidé par des programmes offi­ciels, refasse sa sauce dans son coin en y appo­sant son droit d’au­teur pour en brider les usages. En école d’in­gé­nieur j’ai vu des profes­seurs refu­ser de diffu­ser leurs notes ou leurs poly­co­piés pour éviter que ces cours profitent à d’autres.

    Pour ça il faut une véri­table volonté de l’État, il faut chan­ger l’orien­ta­tion des univer­si­tés, les rebas­cu­ler vers la diffu­sion des connais­sances pour tous et moins sur le profit de quelques uns seule­ment. C’est du long terme, mais je suis abasourdi que des écoles US privées fassent ce choix (même limité) plus rapi­de­ment que nos univer­si­tés publiques à qui au contraire on vient de donner une indé­pen­dance et donc un besoin de renta­bi­lité : Harvard and M.I.T. Team Up to Offer Free Online Courses

  • Le scan­dale finan­cier du siècle

    On entend parler de prési­den­tielle, et de pas mal d’af­faires, mais quelqu’un a-t-il entendu parler d’un scan­dale finan­cier où des grandes banques inter­na­tio­nales se sont enten­dues pour des mani­pu­la­tions de cours et camou­fler leurs diffi­cul­tés ?

    Le scan­dale finan­cier du siècle, à lire en atten­dant une enquête ou des confir­ma­tions.

  • Extraire la couver­ture d’un fichier ePub

    Les ePubs ont déjà pas mal d’his­to­rique et d’im­plé­men­ta­tions diver­gentes. Je fouillais ces jours ci les diffé­rentes méthodes pour trou­ver l’image de couver­ture. J’ai proba­ble­ment du louper des choses, mais ça servira proba­ble­ment à d’autres.

    Avant toute chose, il faut ouvrir l’ePub à l’aide de unzip

    unzip exemple.epub

    Puis repé­rer l’adresse de l’OPF dans le fichier META-INF/container.xml. Atten­tion à ne pas recher­cher manuel­le­ment un fichier content.opf à la racine de l’ePub. Si c’est souvent là qu’il se trouve, ce n’est pas toujours le cas.

    L’adresse de l’OPF est dans l’at­tri­but @full-path de la balise <rootfile> avec le media-type « appli­ca­tion/oebps-packa­ge+xml ». S’il existe plusieurs corres­pon­dances, c’est la première qui doit être utili­sée.

    <?xml version="1.0"?>
    <container version="1.0"
    xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
    <rootfiles>
    <rootfile full-path="Ops/content.opf"
    media-type="application/oebps-package+xml"/>
    </rootfiles>
    </container>

    C’est dans ce fichier OPF que tout va se passer. Voici mes quatre méthodes pour trou­ver les couver­tures, à essayer par ordre de prio­rité :

    1– Recher­cher une balise <meta> avec pour nom « cover ». Si elle existe, son contenu réfé­rence la balise <item> qui contient la couver­ture.

    En XPath, le chemin de la couver­ture donne­rait quelque chose comme //item[id=//meta[name='cover']/@content]/@href

    <?xml version="1.0" encoding="UTF-8"?>
    <package xmlns="http://www.idpf.org/2007/opf" version="2.0" unique-identifier="BookId">
    <metadata xmlns:opf="http://www.idpf.org/2007/opf">
      <meta name="cover" content="img1"/>
    </metadata>
    <manifest>
    <item id="ncx" href="toc.ncx" media-type="application/x-dtbncx+xml"/>
    <item id="style" href="style.css" media-type="text/css"/>
    <item id="id1" href="1.html" media-type="application/xhtml+xml"/>
    <item id="id2" href="2.html" media-type="application/xhtml+xml"/>
    <!-- ... -->
    <item id="id13" href="13.html" media-type="application/xhtml+xml"/>
    <item id="img1" href="images/img1.jpg" media-type="image/jpeg"/>
    <item id="img2" href="images/img2.jpg" media-type="image/jpeg"/>
    </manifest>
    </package>

    2– Recher­cher, dans la liste des <item> celui qui a « cover-image » dans son attri­but @properties. Il faut regar­der l’en­semble de l’at­tri­but. Ce dernier peut conte­nir plusieurs valeurs sépa­rées par des espaces.

    En XPath ce serait quelque chose de proche de //item[@properties and contains(@properties,'cover-image')]/@href

    <?xml version="1.0" encoding="UTF-8"?>
    <package xmlns="http://www.idpf.org/2007/opf" version="2.0" unique-identifier="BookId">
    <metadata xmlns:opf="http://www.idpf.org/2007/opf"></metadata>
    <manifest>
    <item id="ncx" href="toc.ncx" media-type="application/x-dtbncx+xml"/>
    <item id="style" href="style.css" media-type="text/css"/>
    <item id="id1" href="1.html" media-type="application/xhtml+xml"/>
    <item id="id2" href="2.html" media-type="application/xhtml+xml"/>
    <!-- ... -->
    <item id="id13" href="13.html" media-type="application/xhtml+xml"/>
    <item properties="cover-image" id="img1" href="images/img1.jpg" media-type="image/jpeg"/>
    </manifest>
    </package>

    3– Recher­cher, dans la liste des <reference> du <guide>, la première avec « cover » comme attri­but @type. Le fichier réfé­rencé pourra être un fichier XHTML. Dans ce cas je consi­dère comme couver­ture la première <img> de taille égale ou supé­rieure à 200×200 pixels (oui, c’est moche, mais je n’ai pas trouvé mieux).

    En XPath ce serait quelque chose de proche de //reference[@type='cover']/@href en n’ou­bliant pas ensuite qu’on obtient un fichier XHTML et non une image.

    <?xml version="1.0" encoding="UTF-8"?>
    <package xmlns="http://www.idpf.org/2007/opf" version="2.0" unique-identifier="BookId">
    <metadata xmlns:opf="http://www.idpf.org/2007/opf"></metadata>
    <manifest>
    <item id="ncx" href="toc.ncx" media-type="application/x-dtbncx+xml"/>
    <item id="style" href="style.css" media-type="text/css"/>
    <item id="id1" href="1.html" media-type="application/xhtml+xml"/>
    <!-- ... -->
    <item id="id13" href="13.html" media-type="application/xhtml+xml"/>
    </manifest>
    <guide>
    <reference type="cover" title="Cover image" href="1.html"/>
    </guide>
    </package>

    4– Enfin, à défaut de mieux, je descend les trois premiers <item> du <manifest> jusqu’à trou­ver une <img> de taille égale ou supé­rieure à 200×200 pixels (oui, c’est encore plus moche que précé­dem­ment, je sais)

    <?xml version="1.0" encoding="UTF-8"?>
    <package xmlns="http://www.idpf.org/2007/opf" version="2.0" unique-identifier="BookId">
    <metadata xmlns:opf="http://www.idpf.org/2007/opf"></metadata>
    <manifest>
    <item media-type="application/x-dtbncx+xml"id="ncx" href="toc.ncx" />
    <item media-type="text/css" id="style" href="style.css" />
    <item media-type="application/xhtml+xml" id="id1" href="1.html" />
    <item media-type="application/xhtml+xml" id="id2" href="2.html" />
    <item media-type="application/xhtml+xml" id="id3" href="3.html" />
    <item media-type="application/xhtml+xml" id="id4" href="4.html" />
    <!-- ... -->
    <item id="id13" href="13.html" media-type="application/xhtml+xml"/>
    </manifest>
    </package>

    Malgré cela, certains livres n’ont pas de couver­ture, et d’autres auront une couver­ture SVG qui ne sera pas récu­pé­rable, même si c’est rare. Si vous voulez complé­ter ou préci­ser, n’hé­si­tez pas.

  • Fuku­shima: Le début de la catas­trophe, c’est main­te­nant

    Personne n’a envie de parler de ça. Il y a eu indi­ges­tion, du n’im­porte quoi de tous les côtés, mais il est impor­tant de rappe­ler que l’ac­ci­dent de Fuku­shima n’est pas encore derrière nous.

    Ça s’ap­pelle Fuku­shima: Le début de la catas­trophe, c’est main­te­nant. C’est comme toujours à lire avec un sens critique et en véri­fiant les chiffres donnés sur plusieurs sources, mais c’est proba­ble­ment une lecture néces­saire.

    Pensez bien : Si tout était résolu, on en enten­drait parler régu­liè­re­ment à chaque fois qu’on aborde la ques­tion du nucléaire. Il est facile de jeter la pierre au gouver­ne­ment japo­nais mais il y a des compro­mis à faire et un équi­libre à trou­ver entre les risques sani­taires et les mesures à prendre. Dépla­cer la moitié de l’île n’est pas une solu­tion utile ou propor­tion­née. Ça ne veut pas dire pour autant que la situa­tion est bonne ou même accep­table.

  • What’s Your Geek Number? My Points System To Rate Soft­ware Engi­neers (without a full tech­ni­cal inter­view)

    Recru­ter est diffi­cile. Les candi­dats que je reçois sont parfois surpris du fait que je fais passer peu de tests tech­niques. J’ai appris à m’en méfier et que la réponse à des ques­tions simples est beau­coup plus signi­fi­ca­tive. La curio­sité, la connais­sance de l’état de l’art, l’état d’es­prit, sont fina­le­ment beau­coup plus impor­tantes.

    Et derniè­re­ment je tombe sur « What’s Your Geek Number? My Points System To Rate Soft­ware Engi­neers (without a full tech­ni­cal inter­view) ». La première impres­sion est de dire que c’est quand même irréa­liste comme façon de faire, puis en regar­dant de plus près et en tentant de forma­li­ser mes critères subjec­tifs, je me rends compte qu’ils n’en sont pas si éloi­gnés que ça.

    J’ajoute d’autres choses sur l’état d’es­prit et l’in­té­gra­tion à l’équipe, mais fina­le­ment c’est peut être sur ce types de critères que je fais le premier filtre.

  • Speed Index

    Mesu­rer la perfor­mance a toujours été une gageure. On parle de temps de char­ge­ment total de la page, de char­ge­ment de la page au dessus du pli, de temps de premier rendu, de char­ge­ment asyn­chrone, etc. Bref, nous avons déjà une demi douzaine de mesures, mais toutes qui reflètent un état diffé­rent et peu signi­fi­ca­tif.

    Webpa­ge­test semble être enfin arrivé à défi­nir une mesure qui a du sens et qui prend en compte le char­ge­ment progres­sif des pages. Une page qui se charge à 90% immé­dia­te­ment mais qui a un petit bout qui n’ar­rive que bien après reste plus inté­res­sante que celle qui se charge globa­le­ment plus vite mais où tout arrive d’un coup.

    Je reste un peu dubi­ta­tif sur comment ça gère les carrou­sels et autres anima­tions, mais ça m’a l’air assez repré­sen­ta­tif du ressenti utili­sa­teur : à tester.

  • Sarkozy à la Concorde: Y’a quelqu’un?

    Vive la commu­ni­ca­tion ! Sarkozy à la Concorde : Y’a quelqu’un ?

    La commu­ni­ca­tion démon­tée : On nous annonce 150 000 personnes à la Concorde. Photos à l’ap­pui, c’est entre 25 et 30 000 au maxi­mum, soit 5 fois moins.

    Oh, l’exa­gé­ra­tion il en va dans toutes les mani­fes­ta­tions et parfois le ratio entre la police et les orga­ni­sa­teurs est de plus de 5, mais il est toujours appré­ciable de pouvoir faire une petite compa­rai­son avec la réalité et démon­ter les montages photos.

     

  • Coup de filet anti-isla­miste : la colère d’une famille humi­liée

    La vie des gens, leurs droits, leur liberté, sont utili­sés dans de simples visées élec­to­ra­listes.  La commu­ni­ca­tion du gouver­ne­ment passe au dessus des liber­tés civiles. Et comme on ne casse pas d’ome­lette sans casser d’oeuf, tant pis pour les musul­mans en ques­tions. C’est leur faute aussi, ils n’avaient qu’à être chré­tiens ou juifs comme les français de chez nous. non ?

    Coup de filet anti-isla­miste : la colère d’une famille humi­liée. Si ça peut sembler n’être rien, c’est de la trahi­son pure et simple du rôle des auto­ri­tés et de l’État.

  • Réfé­ren­dum en Islande : seconde torgnole à la finance mondiale

    On peut le juger irres­pon­sable, même si le cas est loin d’être celui de la Grèce (il s’agit de la dette d’un établis­se­ment bancaire privé et pas celle de l’État), je ne peux m’em­pê­cher de repen­ser à chaque fois à la maxime « ils ne savaient pas que c’était impos­sible, ils l’ont fait ».

    Les pays pauvres sont complè­te­ment assujet­tis aux pays riches par la dette. Ces derniers sont complè­te­ment assujet­tis aux banques et orga­nismes de crédit, qui eux même sont finan­cés par de la monnaie virtuelle ou des aides des États.

    Au final tout le monde est écrasé par des inté­rêts et dettes à rembour­ser, sur une part fran­che­ment impor­tante du budget. Sans ces dettes nous aurions bien moins de problèmes. Au point où nous en sommes nous savons que nous n’en sorti­rons pas avant la prochaine révo­lu­tion : Il faudra plus de temps pour rembour­ser tota­le­ment les dettes que n’a d’an­cien­neté aucun de nos systèmes poli­tiques.

    Au final ils ne sont que quelques uns à en profi­ter. On peut les appe­ler les banquiers, mais le terme est impropre. Disons qu’ils sont les déten­teurs du capi­tal, souvent rentiers par héri­tage.

    Et si nous envi­sa­gions les solu­tions impos­sibles ? Elles sont proba­ble­ment une mauvaise idée, mais elles valent le coup d’être mises sur la table. Le risque n’est peu être pas si grand : Réfé­ren­dum en Islande : seconde torgnole à la finance mondiale