tag:linuxfr.org,2005:/users/palm123LinuxFr.org : les contenus de palm1232023-01-09T22:55:40+01:00/favicon.pngtag:linuxfr.org,2005:News/410632022-11-22T11:54:48+01:002022-11-22T11:54:48+01:00Apprendre en s'amusantLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p>Cette dépêche est inspirée d'une discussion sur Twitter lancée par B0rk alias Julia Evans, une éditrice de "zine" sur diverses technologies informatiques.</p>
<p><a href="https://twitter.com/b0rk/status/1535704366304337921">https://twitter.com/b0rk/status/1535704366304337921</a></p>
</div><ul><li>lien nᵒ 1 : <a title="https://www.codingame.com/" hreflang="en" href="https://linuxfr.org/redirect/110646">setup your coding game</a></li><li>lien nᵒ 2 : <a title="https://en.m.wikipedia.org/wiki/Human_Resource_Machine" hreflang="en" href="https://linuxfr.org/redirect/110650">Human resource machine</a></li><li>lien nᵒ 3 : <a title="https://mastery.games/" hreflang="en" href="https://linuxfr.org/redirect/110655">using Figma and JavaScript to play</a></li><li>lien nᵒ 4 : <a title="https://ohmygit.org/" hreflang="en" href="https://linuxfr.org/redirect/110657">An open source game about learning Git!</a></li><li>lien nᵒ 5 : <a title="https://www.gnu.org/software/gnurobots/" hreflang="en" href="https://linuxfr.org/redirect/110784">GNU Robots learn Scheme by playing with a robot</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li>
<a href="#toc-introduction">Introduction</a><ul>
<li><a href="#toc-design">Design</a></li>
<li><a href="#toc-apprentissage-du-javascript">Apprentissage du JavaScript</a></li>
<li><a href="#toc-d%C3%A9velopper-en-python">Développer en Python</a></li>
<li><a href="#toc-apprentissage-du-css">Apprentissage du CSS</a></li>
<li><a href="#toc-utiliser-le-langage-sql">Utiliser le langage SQL</a></li>
<li><a href="#toc-git">Git</a></li>
<li><a href="#toc-regex">Regex</a></li>
<li><a href="#toc-lalgorithme-de-recherche-a">L'algorithme de recherche A*</a></li>
<li><a href="#toc-f">F#</a></li>
<li><a href="#toc-ruby">Ruby</a></li>
<li><a href="#toc-commandes-linux">Commandes Linux</a></li>
<li><a href="#toc-autres-sites">Autres sites</a></li>
<li><a href="#toc-%C3%89diteur">Éditeur</a></li>
<li><a href="#toc-s%C3%A9curit%C3%A9">Sécurité</a></li>
<li><a href="#toc-powershell">Powershell</a></li>
</ul>
</li>
</ul>
<h2 id="toc-introduction">Introduction</h2>
<p>Outre le fait d'écrire des livres ou de petits manuels informatiques, Julia Evans est très active sur le réseau social Twitter. En parcourant ses nombreux tweets et réponses, on peut trouver celui-ci : <a href="https://twitter.com/robcobbable/status/1535709368519274496">https://twitter.com/robcobbable/status/1535709368519274496</a></p>
<p>Ce tweet renvoie vers le site <a href="https://csed.substack.com/p/the-best-online-interactive-learning?s=r">https://csed.substack.com/p/the-best-online-interactive-learning?s=r</a> qui liste de nombreux liens sur diverses technologies IT.</p>
<h3 id="toc-design">Design</h3>
<ul>
<li>Game for building design intuition by choosing the better of two side-by-side designs.
<a href="https://csed.substack.com/p/the-best-online-interactive-learning?s=r">https://csed.substack.com/p/the-best-online-interactive-learning?s=r</a>
</li>
<li>Web design en 4 minutes
<a href="https://jgthms.com/web-design-in-4-minutes/">https://jgthms.com/web-design-in-4-minutes/</a>
</li>
<li>Cinq différents jeux de design : <a href="https://method.ac/">https://method.ac/</a>
</li>
<li>Pour faire l'expérience des difficultés de navigation sur le Web que rencontrent certaines personnes handicapées, <a href="https://games.de.torontomu.ca/amaze/">Accessibility Maze</a> est un jeu ludique, amusant, facile à jouer.</li>
</ul>
<h3 id="toc-apprentissage-du-javascript">Apprentissage du JavaScript</h3>
<ul>
<li>JavaScript en 14 minutes
<a href="https://jgthms.com/javascript-in-14-minutes">https://jgthms.com/javascript-in-14-minutes</a>
</li>
<li>Vidéos et terrain de jeu pour explorer la boucle d’événements en JavaScript.
<a href="http://latentflip.com/loupe/">http://latentflip.com/loupe/</a>
</li>
<li>In-browser abstract syntax tree parser and visualizer.
<a href="https://astexplorer.net/">https://astexplorer.net/</a>
</li>
<li>Gérer <a href="https://play.elevatorsaga.com/">un ascenseur</a> en javascript. Allez-vous relever le challenge de transporter les personnes d'un étage à un autre ?</li>
<li>Bienvenue à <a href="https://grasshopper.app/">Grasshopper</a>, l'application de codage en JavaScript pour les débutants. Il est actuellement disponible gratuitement sur Desktop et Android. Grasshopper est un programme "Code with Google".</li>
</ul>
<h3 id="toc-développer-en-python">Développer en Python</h3>
<ul>
<li>
<a href="http://rur-ple.sourceforge.net/">RUR-PLE</a>, un programme à télécharger et à installer, nécessite <a href="http://wxpython.org/">wxpython</a> pour fonctionner.<br>
</li>
<li>Un jeu qui mêle connaissance des fonctions de Python et d'un jeu de logique : <a href="http://www.pythonchallenge.com/">The Python Challenge</a>. Spoil alerte sur le <em>warming up</em> (1er challenge), le nom de page suivante se trouve en calculant 2 exposant 38 (cf. image présentée à l'écran). Le nombre résultant donnera le nom de la page HTML…</li>
</ul>
<h3 id="toc-apprentissage-du-css">Apprentissage du CSS</h3>
<ul>
<li>Déjà cité dans d'autres dépêches : <a href="https://flukeout.github.io/">CSS Diner</a>
</li>
<li>Apprendre les <a href="https://fr.learnlayout.com/">layouts</a> CSS.</li>
<li>Aider les <a href="https://flexboxfroggy.com/#fr">grenouilles</a> à se rendre sur leurs nénuphars via des CSS, site disponible en français.</li>
<li>Sur le thème des chevaliers, un autre <a href="https://knightsoftheflexboxtable.com/">jeu</a> (en anglais) sur les positionnements d'objets en CSS.</li>
<li>Toujours sur les <em>layouts</em> CSS, ce <a href="https://geddski.teachable.com/p/flexbox-zombies">jeu</a>-ci propose l'expérimentation des <em>layouts</em> CSS avec des zombies.</li>
<li>Layouts CSS, grid, positionnement avec les CSS, testez et apprenez via <a href="https://gridcritters.com/">gridcritters</a>.</li>
</ul>
<h3 id="toc-utiliser-le-langage-sql">Utiliser le langage SQL</h3>
<ul>
<li>Apprendre le SQL
<a href="http://sqlbolt.com/">http://sqlbolt.com/</a>
</li>
<li>Devenir un dieu du SQL
<a href="https://sql-playground.wizardzines.com/">https://sql-playground.wizardzines.com/</a>
</li>
<li>Il y a eu un meurtre à SQL City ! Comme au <a href="https://fr.wikipedia.org/wiki/Cluedo">cluedo</a>, découvrez l’assassin et au passage, <a href="https://mystery.knightlab.com/">apprendre le SQL</a> :-)<br>
</li>
</ul>
<h3 id="toc-git">Git</h3>
<ul>
<li>Une visite guidée qui permet de découvrir les principes fondamentaux de Git.
<a href="https://gitimmersion.com/">https://gitimmersion.com/</a>
</li>
<li>girliemac a un GitHub avec des explications sur de nombreux domaines, on peut aussi découvrir de <a href="https://github.com/girliemac/a-picture-is-worth-a-1000-words">manière illustrée</a>, le fonctionnement de Git (miauw),</li>
<li>"Oh Shit, Git!?!", des cas concrets de choses à faire avec Git
<a href="https://ohshitgit.com/">https://ohshitgit.com/</a>
</li>
<li>Disponible en français, explorez les commandes Git pour la <a href="https://learngitbranching.js.org/?locale=fr_FR">gestion des branches</a> d'un repository.</li>
</ul>
<h3 id="toc-regex">Regex</h3>
<ul>
<li>Apprendre les Regex
<a href="https://regexone.com/">https://regexone.com/</a>
</li>
<li>Maitriser les Regex
<a href="https://regexr.com/">https://regexr.com/</a>
</li>
<li>Exercer vos connaissance en regex avec <a href="https://alf.nu/RegexGolf?world=regex&level=r00">regex golf</a>.</li>
<li>Jouer aux <a href="https://regexcrossword.com/">mots croisés</a> en regex.
<img src="//img.linuxfr.org/img/68747470733a2f2f726567657863726f7373776f72642e636f6d2f696d672f686f77746f706c61792f6578322e706e67/ex2.png" alt="Exemple" title="Source : https://regexcrossword.com/img/howtoplay/ex2.png">
</li>
</ul>
<h3 id="toc-lalgorithme-de-recherche-a">L'algorithme de recherche A*</h3>
<ul>
<li>
<a href="https://fr.wikipedia.org/wiki/Algorithme_A*">L’algorithme A*</a> est un algorithme de recherche de chemin dans un graphe entre un nœud initial et un nœud final. Il utilise une évaluation heuristique sur chaque nœud pour estimer le meilleur chemin y passant.
Voici une <a href="https://www.redblobgames.com/pathfinding/a-star/introduction.html">présentation pédagogique et interactive de cet algorithme</a>.</li>
</ul>
<h3 id="toc-f">F#</h3>
<ul>
<li>Une façon simple, amusante et interactive d'<a href="https://github.com/ChrisMarinos/FSharpKoans">apprendre le langage F#</a> par le biais de tests. En lançant le jeu basé sur des <a href="https://fr.wikipedia.org/wiki/K%C5%8Dan_(bouddhisme)">koans</a>, la première fois une erreur d’exécution et une trace de pile indiquant où l’erreur s’est produite s’affichent. Votre objectif est de faire disparaître l’erreur. Au fur et à mesure que vous corrigez chaque erreur, vous devriez apprendre quelque chose sur le langage F# et la programmation fonctionnelle en général.</li>
</ul>
<h3 id="toc-ruby">Ruby</h3>
<ul>
<li>Sur le même principe de la recherche de l’illumination par les koans, l’objectif est ici d’<a href="https://github.com/edgecase/ruby_koans">apprendre le langage Ruby</a>, sa syntaxe, sa structure et certaines fonctions et bibliothèques courantes. On y développe également sa culture en basant les koans sur des tests. Les tests sont essentiels dans notre quête pour apprendre et faire de grandes choses avec Ruby.</li>
</ul>
<h3 id="toc-commandes-linux">Commandes Linux</h3>
<ul>
<li>Explication visuelle et textuelle des commandes du shell. Collez une commande dans l'outil, et il vous explique comment elle fonctionne : <a href="https://explainshell.com/">https://explainshell.com/</a>
</li>
<li>Via diverses missions que le programme <a href="https://github.com/phyver/GameShell">GameShell</a> va vous proposer, vous allez apprendre les commandes sh/bash de base. </li>
<li>Un meurtre a eu lieu à Terminal City, la police de Terminal City (TCPD - Terminal City Police Departement), à besoin de ton aide. Parcourez les instructions et trouvez le meurtrier: <a href="https://github.com/veltman/clmystery">The commande line murder mystery</a>. Lien pour télécharger le fichier zip avec les instructions du jeu : <a href="https://github.com/veltman/clmystery/archive/master.zip">ici</a><br>
</li>
</ul>
<h3 id="toc-autres-sites">Autres sites</h3>
<ul>
<li>JavaScript, TypeScript, regex, SQL and JavaScript Array Methods
<a href="https://www.executeprogram.com/">https://www.executeprogram.com/</a>
</li>
<li>Ce site permet d'écrire du code en Java, Python, … et de voir, suivre de manière interactive l'exécution du code écrit.
<a href="https://pythontutor.com/">https://pythontutor.com/</a>
</li>
<li>
<a href="https://store.steampowered.com/app/1444480/Turing_Complete/">Turing Complete</a> est un jeu payant disponible sur la plateforme steam. Ce jeu vous permet de construire un ordinateur à partir de rien et de le programmer. </li>
<li>
<a href="https://en.wikipedia.org/wiki/RobotWar">RobotWar</a> est un jeu de programmation écrit par Silas Warner. L'activité principale du jeu consiste à écrire un programme informatique qui fait fonctionner un robot (simulation). C'est un jeu écrit à l'origine pour des ordinateurs <a href="https://en.m.wikipedia.org/wiki/PLATO_system">PLATO</a> ou <a href="https://en.m.wikipedia.org/wiki/Apple_II_family">Apple II</a>. Néanmoins, il existe une version jouable sur internet via l'<a href="https://en.m.wikipedia.org/wiki/Internet_Archive">Internet Archive</a> - Lien vers le jeux: <a href="https://archive.org/details/wozaday_Robotwar">RobotWar</a>
</li>
<li>
<a href="https://colobot.info/">Colobot</a>: C'est un jeu de stratégie à télécharger où vous devez programmer votre unité avec le langage Cbot (langage similaire au C++ et au Java).</li>
<li>Apprendre la gestion des <em>deadlocks</em>, des concurrences : <a href="https://deadlockempire.github.io/">The Deadlock Empire</a>
</li>
<li>Jeu pédagogique sur la logique. Ce jeu était écrit à l'origine pour Windows 3.x, maintenant une version en ligne est disponible <a href="https://playclassic.games/games/educational-windows-games-online/logical-journey-of-the-zoombinis/">ici</a>.<br>
</li>
</ul>
<h3 id="toc-Éditeur">Éditeur</h3>
<ul>
<li>Découvrez l'éditeur VIM et ses fonctionnalités en jouant l'<a href="https://vim-adventures.com/">aventurier</a>. </li>
</ul>
<h3 id="toc-sécurité">Sécurité</h3>
<ul>
<li>Un site proposant <a href="https://overthewire.org/wargames/">des terrains d’entraînement</a> sur les bases de la sécurité informatique, voire l'étude d'attaques informatiques. Ce n'est pas un jeu en ligne… Pas recommandé pour tout le monde.</li>
</ul>
<h3 id="toc-powershell">Powershell</h3>
<ul>
<li><a href="https://github.com/vexx32/PSKoans/">Apprendre le Powershell</a></li>
</ul>
</div><div><a href="https://linuxfr.org/news/apprendre-en-s-amusant.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/127976/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/apprendre-en-s-amusant#comments">ouvrir dans le navigateur</a>
</p>
palm123Startrek1701vmagninJulien Jorgeeastwind☯Yves BourguignonBenoît SibaudJonahttps://linuxfr.org/nodes/127976/comments.atomtag:linuxfr.org,2005:News/405852022-09-22T21:07:47+02:002022-09-23T07:37:08+02:00Quitter une fonction exécutive pour retourner à la technique ? L'exemple du PDG de HashicorpLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p>En juillet 2021, le PDG et cofondateur de <a href="https://www.hashicorp.com">Hashicorp</a>, <a href="http://mitchellh.com">Mitchell Hashimoto</a>, annonce abandonner ses fonctions exécutives et va contribuer au code.</p>
<p>Hashicorp est une société californienne cotée au Nasdaq et basée à San Francisco.<br>
Elle est spécialisée dans les outils d'automatisation, de développement et de déploiement à grande échelle.</p>
</div><ul><li>lien nᵒ 1 : <a title="https://twitter.com/mitchellh/status/1418315344800669698?s=19" hreflang="en" href="https://linuxfr.org/redirect/108888">Le message de Mitchell Hashimoto sur Twitter</a></li><li>lien nᵒ 2 : <a title="https://www.hashicorp.com/blog/mitchell-s-new-role-at-hashicorp" hreflang="en" href="https://linuxfr.org/redirect/108902">L’annonce sur le blog d’HashiCorp</a></li><li>lien nᵒ 3 : <a title="https://ir.hashicorp.com/" hreflang="en" href="https://linuxfr.org/redirect/110574">Titre Hashicorp côté au Nasdaq</a></li><li>lien nᵒ 4 : <a title="https://twitter.com/HashiCorp/status/1526941528345784320" hreflang="en" href="https://linuxfr.org/redirect/110575">HashiConf Europe 20-22 juin Amsterdam</a></li></ul><div><p>En France, une personne faisant de la technique (développeur, <a href="https://fr.m.wikipedia.org/wiki/Administrateur_de_base_de_donn%C3%A9es">DBA</a>, ingénieur système, ingénieur réseau…) si elle veut progresser en salaire, doit souvent devenir manager (donc s'éloigner de la technique). Ce qui peut être vu comme problématique pour la technique (perte de compétences, moins d'experts, etc.) mais aussi pour le management (être bon en technique ne veut pas dire être bon en management, en relations humaines / gestion d'équipe ou en stratégie / planification / organisation).</p>
<p>Aux États-Unis, il est assez courant de proposer deux chemins de carrière, chacun avec de multiples promotions : soit manager, soit contributeur individuel. On peut <a href="http://urbanairship.github.io/techladder/eng.html">retrouver ainsi</a> les rôles successifs : <em>associate engineer, engineer, senior engineer, lead engineer, principal engineer, distinguished engineer</em>. Ce dernier titre étant par exemple celui de Guido van Rossum, créateur de Python, chez Microsoft.</p>
<p>Ici un cofondateur décide de revenir à la technique pour faire ce qu'il aime (à voir s'il atteint son <a href="https://fr.wikipedia.org/wiki/Ikigai">ikigai</a>, l'intersection entre ce qu'il aime, ce qu'il sait faire, ce dont le monde a besoin et ce pourquoi quelqu'un est prêt à le payer).</p>
<p>Le message de Mitchell Hashimoto sur Twitter :</p>
<blockquote>
<p>I've decided to become a full-time individual contributor at HashiCorp and will no longer be an exec. This is something we've planned for years and I'm so happy HashiCorp is in a place to allow it to happen. Do what you love, not what others expect! ❤️ <a href="https://www.hashicorp.com/blog/mitchell-s-new-role-at-hashicorp">https://www.hashicorp.com/blog/mitchell-s-new-role-at-hashicorp</a></p>
</blockquote>
<p>Traduction rapide : « <em>J'ai décidé de devenir contributeur à temps plein à Hashicorp et ne serai plus un cadre exécutif. C'est quelque chose que nous avons prévu depuis des années et je suis tellement heureux qu'Hashicorp soit en capacité de me le permettre. Faîtes ce que vous aimez, pas ce que les autres attendent ! ❤️</em> »</p>
<h2 id="toc-cv-de-hashimoto">CV de Hashimoto</h2>
<p>Il développe en 2010, pendant ses études à l’université de Washington, avec John Bender le logiciel <a href="https://fr.wikipedia.org/wiki/Vagrant">Vagrant</a>, un logiciel libre pour la création et la configuration des environnements de développement virtuels. Il termine ses études en 2011 avec un B.S. (équivalent étasunien d'un diplôme de niveau licence) en informatique pour entrer chez CitrusByte en tant que développeur Web. </p>
<p>En 2012, il rejoint Kiip en tant qu’ingénieur d’exploitation. Il est chargé de la conception et de la construction de l’infrastructure. Il est responsable de la surveillance, de l'évolutivité et de la fiabilité de l'ensemble du site Web.</p>
<p>Il fonde HashiCorp avec Armon Dadgar en 2012. Il en est le PDG jusqu’en 2016. Pendant cette période, HashiCorp passe d’une entreprise avec un seul employé à une petite structure qui emploie plus de quarante personnes. Son chiffre d’affaire à la fin de la période atteint les sept chiffres.</p>
<p>En 2016, changement de fonction, il devient CTO (<em>Chief Technical Officer</em>, Directeur technique) de HashiCorp. L’entreprise a continué à se développer pour, aujourd’hui, employer près de 1500 personnes et elle a plus de 1700 entreprises clientes dont près de 30 % font partie du cercle des 500 premières entreprises américaine.</p>
<p>Hashimoto est bilingue anglais et japonais et développe en Python.<br>
<a href="http://www.linkedin.com/in/mitchellh">www.linkedin.com/in/mitchellh</a></p>
<p>Hashicorp développe divers logiciels :</p>
<ul>
<li>Vagrant (création et la configuration des environnements de développement, licence MIT),</li>
<li>Packer (création d'images de machine identique ou de conteneur pour de multiples plates-formes à partir d’une configuration de la source unique, MPL)</li>
<li>Terraform (code comme infrastructure, MPL)</li>
<li>Consul (découverte de services, MPL)</li>
<li>Vault (stockage/gestion de secrets, MPL)</li>
<li>Nomad (ordonnanceur pour grappes de serveurs, MPL)</li>
<li>Serf (orchestration/gestion, MPL)</li>
<li>Boundary (contrôle d'accès, MPL)</li>
<li>Waypoint (boîte à outils pour construire et déployer, MPL).</li>
</ul>
</div><div><a href="https://linuxfr.org/news/quitter-une-fonction-executive-pour-retourner-a-la-technique-l-exemple-du-pdg-de-hashicorp.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/124957/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/quitter-une-fonction-executive-pour-retourner-a-la-technique-l-exemple-du-pdg-de-hashicorp#comments">ouvrir dans le navigateur</a>
</p>
palm123Patrick TrauquesèguesBenoît SibaudYsabeau 🧶 🧦pulkomandyAnonymeGauthier MonserandFrancoisA30alkinoJulien JorgetisaacbbooctanePierre Jarillonbobble bubblePapeyCyrille PontvieuxFlorent Zarahttps://linuxfr.org/nodes/124957/comments.atomtag:linuxfr.org,2005:News/391822020-08-27T15:53:17+02:002020-09-01T09:37:44+02:00Bogues de logiciel et bogues de management : 737 Max et autres catastrophesLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p>Tout le monde sait ce qu’est un bogue sur un logiciel, mais un bogue au niveau management, cela existe aussi. Les conséquences peuvent être catastrophiques. Commençons par le Boeing 737 Max.</p>
<p>Le Boeing 737 Max est la dernière évolution du premier 737 sorti en 1967. Comme certaines caractéristiques ont été sensiblement modifiées, les concepteurs de l’avion ont décidé que le logiciel rattraperait les problèmes de stabilité. Par souci d’économie et pour concurrencer Airbus, Boeing a décidé d’aller vite, trop vite, en négligeant les principes fondamentaux du développement aéronautique qui ont permis à l’avion d’être le moyen de transport le plus sûr de tous.</p>
<p>Cette dépêche retrace également d’autres catastrophes, révélant les problèmes dans le processus de décision qui, bien souvent, éloigne les décideurs des alertes émises par du personnel compétent. Dans bien des organisations, les subordonnés sont incités à minimiser ce qui dérange la direction.</p>
</div><ul><li>lien nᵒ 1 : <a title="https://spectrum.ieee.org/aerospace/aviation/how-the-boeing-737-max-disaster-looks-to-a-software-developer" hreflang="en" href="https://linuxfr.org/redirect/103942">Le Boeing 737 Max et le logiciel</a></li><li>lien nᵒ 2 : <a title="http://esamultimedia.esa.int/docs/esa-x-1819eng.pdf" hreflang="en" href="https://linuxfr.org/redirect/103953">Rapport d’enquête du vol 501 d’Ariane 5</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#toc-boeing-737max">Boeing 737 Max</a></li>
<li>
<a href="#toc-ariane5-vol501-volinaugural">Ariane 5 vol 501 (vol inaugural)</a><ul>
<li><a href="#toc-code-source-ada-du-bo%C3%AEtier">Code source Ada du boîtier</a></li>
<li><a href="#toc-variable-biais-vertical-bv">Variable <strong>B</strong>iais <strong>V</strong>ertical <code>BV</code></a></li>
<li><a href="#toc-variable-biais-horizontal-bh">Variable <strong>B</strong>iais <strong>H</strong>orizontal <code>BH</code></a></li>
<li><a href="#toc-enqu%C3%AAtes">Enquêtes</a></li>
</ul>
</li>
<li><a href="#toc-challenger-sts-51-l">Challenger STS-51-L</a></li>
<li>
<a href="#toc-columbia-sts-107">Columbia STS-107</a><ul>
<li><a href="#toc-r%C3%A9f%C3%A9rences">Références</a></li>
</ul>
</li>
<li><a href="#toc-le-vasa">Le Vasa</a></li>
<li><a href="#toc-autres-catastrophes-similaires">Autres catastrophes similaires</a></li>
<li><a href="#toc-anneau-de-fer-martel%C3%A9">Anneau de fer martelé</a></li>
<li><a href="#toc-le-guide-de-terrain-pour-comprendre-lerreurhumaine">Le Guide de terrain pour comprendre « l’erreur humaine »</a></li>
<li><a href="#toc-voir-aussi-dautres-bogues">Voir aussi d’autres bogues</a></li>
<li><a href="#toc-et-dans-votre-organisation">Et dans votre organisation ?</a></li>
</ul>
<h2 id="toc-boeing-737max">Boeing 737 Max</h2>
<p>L’avion en est à sa sixième version. Il a été rallongé et équipé de réacteurs plus lourds et surtout plus gros, qui, s’ils avaient été mis au même endroit, auraient raclé le sol. Comme on ne pouvait pas allonger le train d’atterrissage, il a fallu réaliser de nouveaux mâts de réacteur pour avancer et relever les moteurs. Le centrage, le centre de poussée et l’aérodynamique de l’avion ont été de ce fait sérieusement modifiés, ce qui change notablement son comportement en vol. L’avion a tendance à cabrer. Pour corriger cela un capteur d’assiette a été ajouté à l’avion, et un logiciel devait renvoyer le nez de l’avion vers le sol pour compenser. </p>
<p>Le logiciel était censé corriger le problème de conception. Ce logiciel était un pis‑aller qui a été mal étudié. Il est anormal qu’un système de commandes de vol électriques doive avoir besoin d’être désactivé.</p>
<p>La bonne démarche eut été de modifier les points d’ancrage des ailes, voire de les redessiner, tout comme le plan de dérive. En fait, c’était un nouvel avion qu’il fallait créer et qualifier. Or, Boeing voulait rattraper son retard sur l’<a href="https://fr.wikipedia.org/wiki/Airbus_A320#A320neo_(A319,_A320_et_A321)" title="New Engine Option">A320neo</a> qui se vendait bien. Et l’une des raisons était l’absence de formation supplémentaire pour les pilotes.</p>
<p>Pour compléter le tableau, Boeing n’a utilisé qu’un seul capteur d’incidence (pas de redondance). L’existence même du logiciel a été cachée aux pilotes, ainsi que le moyen de le désactiver en cas de problème, pour éviter de devoir faire une formation longue à ce nouvel avion et faire croire qu’il se pilotait exactement comme un 737 classique. Le but était d’avoir les mêmes avantages que l’A320neo.</p>
<p><em>Business Insider</em> rapporte que lors d’une réunion plénière, un responsable <a href="https://www.businessinsider.fr/le-logiciel-du-boeing-737-max-aurait-ete-concu-par-des-interimaires-sous-payes/">avait déclaré</a> que « les ingénieurs expérimentés n’étaient plus nécessaires dans l’entreprise » et qu’après l’incident, un porte‑parole a déclaré que « la sécurité était toujours au centre des préoccupations ».</p>
<p>Bilan : 346 morts, deux avions perdus, déjà un milliard de dollars de perte.</p>
<p>Boeing <a href="https://www.businessinsider.fr/boeing-est-maintenant-oblige-de-garer-ses-737-max-inutilises-sur-le-parking-des-employes/">serait obligé de garer ses avions</a> cloués au sol sur le parking de ses employés.</p>
<p><em><a href="https://www.nytimes.com/2019/07/27/business/boeing-737-max-faa.html">The Roots of Boeing’s 737 Max Crisis: A Regulator Relaxes Its Oversight</a></em>.</p>
<p><em><a href="https://boingboing.net/2019/12/02/razor-sharp-metal-shavings.html">Veteran Boeing manager was transferred to 787 production; based on he saw there, he won’t fly in a Dreamliner and begs his family not to</a></em>.</p>
<p><a href="https://embarque.developpez.com/actu/296371/Le-cauchemar-du-737-MAX-ne-cesse-de-s-aggraver-un-rapport-accablant-des-enqueteurs-de-la-Chambre-US-montre-la-pire-defaillance-de-securite-dans-l-avion-cloue-au-sol-a-cause-des-problemes-logiciels/">Le cauchemar du 737 Max ne cesse de s’aggraver</a>.</p>
<h2 id="toc-ariane5-vol501-volinaugural">Ariane 5 vol 501 (vol inaugural)</h2>
<p>La conception de la fusée Ariane 5 s’est basée sur des éléments d’Ariane 4, dont le boîtier des mesures de navigation (centrale inertielle). Notons qu’Ariane 4 était le lanceur réputé le plus fiable de son époque avec 97 % de succès sur quinze ans de service (116 lancements).</p>
<p>Afin de valider l’ensemble complet d’un système, l’Aérospatiale avait l’habitude de réaliser des « chaînes sur table », c’est‑à‑dire un montage en laboratoire de tous les équipements de la fusée reliés à des simulateurs de stimuli. Dans le cas d’Ariane 5, l’Aérospatiale l’avait budgétisé à 800 000 francs. Mais le CNES pensait que l’Aérospatiale voulait réaliser ces « chaînes sur table » uniquement pour avoir plus de rentrées financières. Pourtant, ce n’était pas un test optionnel, l’Aérospatiale avait bien cette pratique sur tous ses projets spatiaux. Donc, pour faire des économies, le CNES a décidé la réutilisation de certains éléments d’Ariane 4, la calibration d’Ariane 4 et l’absence des « chaînes sur table ».</p>
<p>Le résultat a été l’explosion de la fusée après quarante secondes de vol (vidéos <a href="https://www.youtube.com/watch?v=fCnO-UYF3co" title="La vidéo du vol inaugural Ariane 5 le 4 juin 1996">1</a> et <a href="https://www.youtube.com/watch?v=PK_yguLapgA">2</a>). Heureusement, le <a href="https://fr.wikipedia.org/wiki/Vol_501_d%27Ariane_5">vol 501 d’Ariane 5</a> n’a pas fait de victimes, mais a entraîné un retard de plus d’un an sur le programme. L’économie des « chaînes sur table » de 800 000 francs, a coûté mille fois plus, 800 millions de francs !</p>
<p>Et effectivement, les « chaînes sur table » effectuées par la suite ont montré la parfaite reproductibilité du phénomène. L’accélération d’Ariane 5 étant cinq fois plus élevée que celle d’Ariane 4, la valeur <em>accélération</em> est copiée dans un registre trop petit, ce qui provoque une interruption logicielle « <em>integer overflow</em> ». Le pire, c’est que cette valeur n’était pas utile dans le cadre d’Ariane 5 !</p>
<blockquote>
<p><em>4, 3, 2, unité, feu… allumage… décollage.</em></p>
</blockquote>
<p>Dès la phase d’accélération, les deux boîtiers issus d’Ariane 4 connaissent tous les deux l’interruption logicielle « <em>integer overflow</em> ». Et par conséquent, le gestionnaire d’interruption par défaut effectue un <em>autotest</em>, c’est‑à‑dire qu’il vérifie le bus de données en envoyant alternativement des <code>0x5555</code> et des <code>0xAAAA</code>. Le modèle interne simulé fonctionne bien, quant à lui, mais le système de vote à la majorité donne raison aux deux boîtiers issues d’Ariane 4.</p>
<blockquote>
<p><em>Tous les paramètres propulsifs sont normaux et la trajectoire est normale</em>.</p>
</blockquote>
<p>Le pilotage automatique prend les commandes à la trente‑septième seconde, il pense que les données qui circulent sur le bus sont des données valides de navigation et procède à une correction extrême de la trajectoire. Ce braquage brutal exerce une pression aérodynamique très élevée. Une partie de la structure de la fusée se désolidarise, ce qui déclenche son auto‑destruction. </p>
<p>Notons que ces boîtiers sont utiles pour réaliser des mesures quelques secondes avant le décollage, mais après le décollage, ils ne sont plus d’aucune utilité. Ces boîtiers sont pourtant restés actifs pendant le décollage car c’était une exigence d’Ariane 4. Leur désactivation était prévue 40 secondes après le décollage, soit quelques secondes après le braquage de la fusée. Depuis, il y a une vraie chasse au code mort (le code inutile) dans les logiciels embarqués critiques.</p>
<h3 id="toc-code-source-ada-du-boîtier">Code source Ada du boîtier</h3>
<p><img src="//img.linuxfr.org/img/687474703a2f2f6f6c696272652e6769746875622e696f2f4772656174546970732f756e69742d746573742f6275672d417269616e652d3530315f62792d4a65616e4a6163717565734c6576792d494e5249412d323031302e6a7067/bug-Ariane-501_by-JeanJacquesLevy-INRIA-2010.jpg" alt="Scan du code source Ada du SRI (Système de Référence Inertielle)" title="Scan du code source Ada du SRI (Système de Référence Inertielle) | Source : http://olibre.github.io/GreatTips/unit-test/bug-Ariane-501_by-JeanJacquesLevy-INRIA-2010.jpg"></p>
<h3 id="toc-variable-biais-vertical-bv">Variable <strong>B</strong>iais <strong>V</strong>ertical <code>BV</code>
</h3>
<p>Nous avons bien le test des bornes -32768..32767 avant copie dans le registre 16 bits :</p>
<pre><code class="ada"><span class="n">L_M_BV_32</span> <span class="p">:=</span> <span class="n">TBD</span><span class="p">.</span><span class="n">T_ENTIER_32S</span> <span class="p">((</span><span class="mf">1.0</span><span class="o">/</span><span class="n">C_M_LSB_BV</span><span class="p">)</span> <span class="o">*</span>
<span class="n">G_M_INFO_DERIVE</span><span class="p">(</span><span class="n">T_ALG</span><span class="p">.</span><span class="n">E_BV</span><span class="p">));</span>
<span class="kr">if</span> <span class="n">L_M_BV_32</span> <span class="o">></span> <span class="mi">32767</span> <span class="kr">then</span>
<span class="n">P_M_DERIVE</span><span class="p">(</span><span class="n">T_ALG</span><span class="p">.</span><span class="n">E_BV</span><span class="p">)</span> <span class="p">:=</span> <span class="mh">16#7FFF#</span><span class="p">;</span>
<span class="kr">elsif</span> <span class="n">L_M_BV_32</span> <span class="o"><</span> <span class="o">-</span><span class="mi">32768</span> <span class="kr">then</span>
<span class="n">P_M_DERIVE</span><span class="p">(</span><span class="n">T_ALG</span><span class="p">.</span><span class="n">E_BV</span><span class="p">)</span> <span class="p">:=</span> <span class="mh">16#8000#</span><span class="p">;</span>
<span class="kr">else</span>
<span class="n">P_M_DERIVE</span><span class="p">(</span><span class="n">T_ALG</span><span class="p">.</span><span class="n">E_BV</span><span class="p">)</span> <span class="p">:=</span> <span class="n">UC_16S_EN_16NS</span><span class="p">(</span><span class="n">TDB</span><span class="p">.</span><span class="n">T_ENTIER_16S</span><span class="p">(</span><span class="n">L_M_BV_32</span><span class="p">));</span>
<span class="kr">end</span> <span class="kr">if</span><span class="p">;</span></code></pre>
<h3 id="toc-variable-biais-horizontal-bh">Variable <strong>B</strong>iais <strong>H</strong>orizontal <code>BH</code>
</h3>
<p>La valeur est copiée directement dans le registre 16 bits sans protection. Le <a href="http://www.astrosurf.com/luxorion/astronautique-accident-ariane-v501.htm">rapport d’enquête</a> indique que certaines variables n’étaient pas protégées pour éviter que la charge du processeur dépasse les 80 %. Aucune information n’a été trouvée pour justifier de protéger telle variable plutôt qu’une autre.</p>
<pre><code class="ada"><span class="n">P_M_DERIVE</span><span class="p">(</span><span class="n">T_ALG</span><span class="p">.</span><span class="n">E_BH</span><span class="p">)</span> <span class="p">:=</span> <span class="n">UC_16S_EN_16NS</span> <span class="p">(</span><span class="n">TDB</span><span class="p">.</span><span class="n">T_ENTIER_16S</span>
<span class="p">((</span><span class="mf">1.0</span><span class="o">/</span><span class="n">C_M_LSB_BH</span><span class="p">)</span> <span class="o">*</span>
<span class="n">G_M_INFO_DERIVE</span><span class="p">(</span><span class="n">T_ALG</span><span class="p">.</span><span class="n">E_BH</span><span class="p">)));</span></code></pre>
<h3 id="toc-enquêtes">Enquêtes</h3>
<p>Un contributeur de <em>LinuxFr.org</em> qui travaillait au projet Ariane 5, nous indique que seulement quelques heures après l’échec du lancement, les équipes d’Aérospatiale avaient déjà repéré des signaux d’erreur en ASCII qui circulaient sur le bus de données et que le pilotage automatique avait pris cela pour des données numériques valides.</p>
<p>Le CNES met immédiatement en place une commission d’enquête qui donne ses conclusions un mois après. Le <a href="http://deschamp.free.fr/exinria/divers/ariane_501.html">rapport officiel</a> démontre que les concepteurs du calculateur de la trajectoire ont volontairement exclu la spécificité d’Ariane 5. Lire aussi <a href="http://www.math.umn.edu/%7Earnold/disasters/ariane5rep.html">cette version anglaise</a> et cette <a href="http://www.rvs.uni-bielefeld.de/publications/Reports/ariane.html">autre version anglaise</a>.</p>
<p>Cette commission d’enquête officielle est composée d’ingénieurs en logiciel, et conclut à un problème logiciel. Deux autres enquêtes indépendantes remettent davantage en cause les erreurs de gestion du programme (le lien vers le <a href="http://cmpe.emu.edu.tr/chefranov/Cmps201-fall2011/Notes/Ariane5failure.pdf">PDF</a> est cassé). Gérard Le Lann (INRIA) conclut à un <a href="https://hal.inria.fr/inria-00073613/document">problème d’intégration système</a>. Jacques‑Louis Lions parle d’<a href="https://zoo.cs.yale.edu/classes/cs422/2010/bib/lions96ariane5.pdf">erreur de spécification et de conception logicielles</a>. Quant à Mark Dowson, il insiste sur l’<a href="https://www.deepdyve.com/lp/association-for-computing-machinery/the-ariane-5-software-failure-jZY4texaSd">environnement de travail</a> comme étant les racines de l’échec :</p>
<ol>
<li>carriérisme des managers et aspirations politiques de leurs décisions ;</li>
<li>pressions sur les budgets ;</li>
<li>pressions sur les délais ;</li>
<li>culture du « pas cassé, pas corrigé » (<em>If it’s not broken don’t fix it</em>).</li>
</ol>
<p>Alors, le problème d’Ariane 5 était‑il un bogue logiciel comme en conclut la commission d’enquête officielle, ou alors un bogue managérial ? Dans tous les cas, aucun manager n’a été inquiété. En revanche, les développeurs, eux, ont <a href="https://fr.wiktionary.org/wiki/avoir_du_pain_sur_la_planche#Locution_verbale">eu du pain sur la planche</a>.</p>
<h2 id="toc-challenger-sts-51-l">Challenger STS-51-L</h2>
<p>L’<a href="https://fr.wikipedia.org/wiki/accident%20de%20la%20navette%20spatiale%20Challenger" title="Définition Wikipédia">accident de la navette spatiale Challenger</a> a aussi pour origine la volonté de faire des économies sur le délai et le budget. Les personnes prenant ces décisions ont tendance à ignorer les alertes des ingénieur·e·s et physicien·ne·s car n’apprécient pas être remises en cause. C’est malheureusement un comportement humain répandu, qui devient un défaut fatal quand on a un poste de grande responsabilité.</p>
<p>L’accident a eu lieu 73 secondes après le décollage, entraînant la mort de l’équipage dont une institutrice qui devait donner un cours depuis l’espace et devenir la première « passagère de l’espace », tout un symbole. La médiatisation de ce coup de communication rendit le drame plus insoutenable car 48 % des élèves américains de neuf à treize ans regardaient le décollage depuis leur école.</p>
<p>L’équipage a probablement survécu à la désintégration du vaisseau et serait dans ce cas décédé lors de l’impact de la cabine avec la mer. La navette spatiale américaine avait été conçue sans système de sauvetage au décollage, en se fondant sur l’hypothèse que la navette spatiale devait abaisser le risque couru par les astronautes au même niveau que celui des passagers des avions. </p>
<p>L’accident a entraîné la mort de sept personnes, la perte du vaisseau, et une interruption de trente‑deux mois du programme de la navette.</p>
<p>En complément : la vidéo de Stardust « <a href="https://www.youtube.com/watch?v=59n4bMjL_xc">La destruction de la navette <em>Challenger</em></a> » (durée : 14 minutes).</p>
<h2 id="toc-columbia-sts-107">Columbia STS-107</h2>
<p>Le 1ᵉʳ février 2003, après quinze jours passés en orbite basse, <a href="https://fr.wikipedia.org/wiki/Accident_de_la_navette_spatiale_Columbia">la navette spatiale américaine <em>Columbia</em> se désintègre lors de sa rentrée dans l’atmosphère terrestre</a>.</p>
<p>En août 2003, dans son rapport final, la Commission d’enquête sur l’accident de <em>Columbia</em> détermine que la cause directe de l’accident fut l’impact sur l’aile gauche de la navette d’un morceau de mousse isolante qui s’était détaché du réservoir externe lors du décollage. Le bouclier thermique de la navette étant endommagé, le vaisseau fut détruit lors de la rentrée atmosphérique en retour de mission.</p>
<p>Mais les causes de l’accident sont aussi d’ordre organisationnel. Ce problème de débris de mousse isolante était déjà connu des ingénieurs, mais les missions ont continué parce que les impacts étaient considérés comme inévitables et sans solution (« S’il n’y a pas de solution, c’est qu’il n’y a pas de problème. » — Jacques Rouxel <em>in</em> <em>Les shadoks</em>).</p>
<p>Aussi, après le décollage, plusieurs responsables veulent obtenir des images de la navette pour étudier les dégâts potentiellement provoqués par l’impact, mais se voient refuser leurs demandes pour des raisons de délais ou de budget. Ils se voient également reprocher d’avoir contourné la hiérarchie et de ne pas respecter la bureaucratie de la NASA.</p>
<p>Résultat : sept morts supplémentaires, une navette supplémentaire détruite, interruption du programme de la navette pendant vingt‑neuf mois, et suspension de la construction de l’ISS.</p>
<h3 id="toc-références">Références</h3>
<ul>
<li>
<a href="http://www.securiteaerienne.com/columbia-sts-107-chronique-dune-catastrophe-annoncee/">Columbia STS-107 – Chronique d’une catastrophe annoncée</a> ;</li>
<li>vidéo de Stardust « <a href="https://www.youtube.com/watch?v=Nelzv2NJqqQ">La destruction de la navette Columbia</a> » (durée : 13 minutes).</li>
</ul>
<h2 id="toc-le-vasa">Le Vasa</h2>
<p>Cet énorme vaisseau, le <em><a href="https://fr.wikipedia.org/wiki/Vasa" title="Définition Wikipédia">Vasa</a></em>, a sombré en 1628 lors de sa sortie inaugurale après seulement 1 600 m de navigation. On ne pouvait pas incriminer le logiciel à l’époque et même si, près de quatre siècles plus tard, la perception d’une construction bâclée et d’un chantier désorganisé sont à l’origine du <a href="https://fr.wikipedia.org/wiki/Syndrome_de_Vasa">syndrome de Vasa</a>.</p>
<p>Les responsabilités sont difficiles à cerner et semblent diluées tout au long de la construction. Beaucoup d’éléments semblent concourir à l’aboutissement d’un bateau instable :</p>
<ul>
<li>les demandes de modifications faites par le roi de Suède pendant la construction, notamment les 72 canons qui étaient trop nombreux pour tenir sur un seul pont ;</li>
<li>les changements de direction de la construction navale ;</li>
<li>les délais et les questions économiques du fait de la perte de dix navires en une seule tempête ;</li>
<li>les tests de navigabilité négligés.</li>
</ul>
<p>Résultat : trente à cinquante personnes périrent avec le navire et, par ailleurs, ce naufrage du <em>Vasa</em> fut un véritable désastre financier pour le petit État suédois.</p>
<h2 id="toc-autres-catastrophes-similaires">Autres catastrophes similaires</h2>
<ul>
<li>mauvaises décisions lors de la construction du dirigeable britannique <a href="https://www.airships.net/blog/british-airship-r101-crashes-killing-48-day-1930/">R101</a> qui s’écrase à 80 km au nord de Paris ;</li>
<li>volonté des dirigeants d’arriver en avance et <a href="https://fr.wikipedia.org/wiki/Titanic">naufrage du <em>Titanic</em></a> ;</li>
<li>déni d’erreur du commandant de bord et mauvaise procédures de secours lors du <a href="https://fr.wikipedia.org/wiki/Naufrage_du_Sewol">naufrage du <em>Sewol</em></a>.</li>
</ul>
<h2 id="toc-anneau-de-fer-martelé">Anneau de fer martelé</h2>
<p>L’histoire commence avec l’ambitieuse construction du <a href="https://fr.wikipedia.org/wiki/pont%20de%20Qu%C3%A9bec" title="Définition Wikipédia">pont de Québec</a> en 1903 : le plus long pont de type porte‑à‑faux au monde. La construction débute sous la direction d’un ingénieur originaire des États‑Unis (<a href="https://fr.wikipedia.org/wiki/Theodore%20Cooper" title="Définition Wikipédia">Theodore Cooper</a>). À cause d’erreurs de calcul, le poids réel du pont excède sa capacité portante. Des problèmes furent remarqués par les ingénieurs canadiens, mais la direction ne tient pas compte de la gravité de la situation. En 1907, un ingénieur responsable demande l’arrêt complet des travaux, mais les travaux continuèrent. Deux jours après, 20 000 tonnes d’acier croulent dans le fleuve, et soixante‑seize travailleurs (sur cent) sont tués. À marée basse, la ferraille provenant de cet effondrement est visible sur la rive du fleuve. Le pont connaît un second effondrement en 1916, provoquant treize décès. L’année suivante, le pont est enfin achevé.</p>
<p>Suite à ces incidents, en 1922, l’ingénieur <a href="https://en.wikipedia.org/wiki/H._E._T._Haultain">Haultain</a> propose un rite d’engagement solennel qui oblige les ingénieurs à un comportement professionnel exemplaire. La même année, la Société des Sept Gardiens est créée et procède à sa première cérémonie en 1925 en remettant un <a href="https://fr.wikipedia.org/wiki/Anneau_de_fer_martel%C3%A9">anneau de fer martelé</a> à chaque ingénieur. Si l’ingénieur abandonne son serment, il doit rendre l’anneau.</p>
<h2 id="toc-le-guide-de-terrain-pour-comprendre-lerreurhumaine">Le Guide de terrain pour comprendre « l’erreur humaine »</h2>
<p>Pour aller plus loin, le livre <em><a href="https://www.oreilly.com/library/view/the-field-guide/9781317031833/">The Field Guide to Understanding “Human Error”</a></em>, troisième édition par Sidney Dekker (CRC Press, novembre 2017, ISBN 9781317031833).</p>
<h2 id="toc-voir-aussi-dautres-bogues">Voir aussi d’autres bogues</h2>
<ul>
<li>1980 — Le système <a href="https://fr.wikipedia.org/wiki/Commandement_de_la_d%C3%A9fense_a%C3%A9rospatiale_de_l%E2%80%99Am%C3%A9rique_du_Nord" title="commandement de la défense aérospatiale de l’Amérique du Nord">NORAD</a> déclenche, à deux reprises, à trois jours d’intervalle, une <a href="https://en.wikipedia.org/wiki/North_American_Aerospace_Defense_Command#False_alarms">fausse alerte</a> d’attaque nucléaire, et, à chaque fois, les bombardiers chargés de bombes nucléaires décollent pour la contre‑attaque. En fait, le logiciel ne gérait pas la défaillance électrique.</li>
<li>1983 — Un satellite soviétique déclenche une fausse alerte d’une attaque de missiles, mais heureusement, l’officier russe n’y croit pas.</li>
<li>1983 — Le <a href="https://fr.wikipedia.org/wiki/Vancouver%20Stock%20Exchange" title="Définition Wikipédia">Vancouver Stock Exchange</a> corrige son index de <a href="https://en.wikipedia.org/wiki/Vancouver_Stock_Exchange#Rounding_errors_on_its_Index_price">525 à 1099 à cause d’une erreur d’arrondi</a> passée inaperçue pendant quelques années.</li>
<li>1985 — La NASA <a href="https://earthobservatory.nasa.gov/Features/RemoteSensingAtmosphere/remote_sensing5.php">ne détecte aucun trou d’ozone</a> pendant sept ans car les grandes variations dans les mesures ne sont pas prises en compte.</li>
<li>1993 — Bogue du Pentium sur les nombres flottants.</li>
<li>1998 — Désintégration de <a href="https://fr.wikipedia.org/wiki/Mars_Climate_Orbiter#Perte_de_la_sonde_(23_septembre_1999)">Mars Climate Orbiter</a> car une fonction utilise l’unité <a href="https://fr.wikipedia.org/wiki/Livre-force">livre‑force</a> (<a href="https://fr.wikipedia.org/wiki/Unit%C3%A9s_de_mesure_anglo-saxonnes">système anglo‑saxon</a>) au lieu du <a href="https://fr.wikipedia.org/wiki/Newton_(unit%C3%A9)">newton</a>. Pourtant, les projets de la NASA sont censés utiliser le <a href="https://fr.wikipedia.org/wiki/Syst%C3%A8me_m%C3%A9trique">système métrique</a>.</li>
<li>2010 — Toyota rappelle un million de véhicules mais ce n’est pas la mécanique qui est en cause, plutôt le <a href="//linuxfr.org/news/encore-un-exemple-de-code-spaghetti-toyota">code spaghetti bourré de négligences</a>.</li>
<li>2012 — <a href="https://fr.wikipedia.org/wiki/Knight%20Capital%20Group" title="Définition Wikipédia">Knight Capital Group</a> met en production un automate de <em>trading</em> haute fréquence qui exécute, par erreur, un code de test faisant perdre à l’entreprise 440 millions de dollars en 45 minutes, soit 90 millions de plus que son capital, plongeant son cours de bourse de 75 %. Pour l’anecdote, KCG a réussi à renaître de ses cendres en levant 400 millions (4 jours après), puis revend ses logiciels <em>KCG Hotspot</em> à BATS pour 365 millions (2015), enfin <em>KCG Holdings</em> est valorisé à 1,4 milliard (2017) lors du rachat par Virtu Financial !</li>
<li>2014 — Apple a dans son code source <a href="https://en.wikipedia.org/wiki/Unreachable_code#goto_fail_bug">deux lignes successives « <code>goto fail</code> »</a> ce qui a conduit à l’ajout de l’option <a href="https://developers.redhat.com/blog/2016/02/26/gcc-6-wmisleading-indentation-vs-goto-fail/"><code>-W misleading-indentation</code></a> à <a href="//linuxfr.org/news/sortie-de-gcc-6#nouvelles-informations-sur-les-erreurs-et-alertes-%C3%A0-la-compilation">GCC 6</a> (lire aussi le <a href="//linuxfr.org/users/flagos/journaux/apple-le-ssl-les-goto-et-les-accolades">journal</a>).</li>
<li>2015 — Valve Steam dont son script d’installation pouvait effacer tout le <code>$HOME</code> sous GNU/Linux.</li>
</ul>
<h2 id="toc-et-dans-votre-organisation">Et dans votre organisation ?</h2>
<p>Reconnaissez‑vous des aspects de vos projets ? Partagez vos propres expériences dans les commentaires.</p>
</div><div><a href="https://linuxfr.org/news/bogues-de-logiciel-et-bogues-de-management-737-max-et-autres-catastrophes.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/117008/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/bogues-de-logiciel-et-bogues-de-management-737-max-et-autres-catastrophes#comments">ouvrir dans le navigateur</a>
</p>
palm123OliverThomas DebessePierre JarillonNicolas BoulayDavy DefaudYves BourguignonSnarkAnonymeKerroBenoît SibaudpapapPierre TramalYsabeau 🧶 🧦StormZeroHeurewindu.2b_seb_BlackknightMarcomatteliBAudFabrice MoussetTintinLhttps://linuxfr.org/nodes/117008/comments.atomtag:linuxfr.org,2005:News/373252016-05-26T18:02:04+02:002016-06-04T18:39:48+02:00Son et lumière à l’hôtelLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p>Deux histoires d'informatique à l'hôtel traduites en français :</p>
<ol>
<li>c'est celle d'un étudiant, Gökberk Yaltıraklı, qui « aime coder, écouter de la musique et voyager » et qui nous raconte sur son blog une enquête menée lors d'un séjour à l'hôtel. Son site est <a href="http://gkbrk.com/">http://gkbrk.com/</a> et nous le remercions de nous autoriser à reproduire son article traduit.</li>
<li>c'est celle d'un autre voyageur, Matthew Garrett, qui nous raconte ses découvertes dans un hôtel qui n'a, a priori, pas fini sa mutation technologique… Et nous le remercions de nous autoriser à reproduire son article traduit.</li>
</ol></div><ul><li>lien nᵒ 1 : <a title="http://wiki.gkbrk.com/Hotel_Music.html" hreflang="en" href="https://linuxfr.org/redirect/97259">Quel est ce flux en UDP sur le port 2046 ?</a></li><li>lien nᵒ 2 : <a title="https://mjg59.dreamwidth.org/40505.html" hreflang="en" href="https://linuxfr.org/redirect/97260">Jouer avec les lumières de sa chambre d'hôtel, ou des autres chambres...</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li>
<a href="#du-son-pour-tout-le-monde">Du son pour tout le monde</a><ul>
<li><a href="#faire-de-la-r%C3%A9tro-ing%C3%A9nierie-sur-un-myst%C3%A9rieux-flux-udp-%C3%A0-lh%C3%B4tel">Faire de la rétro-ingénierie sur un mystérieux flux UDP à l'hôtel</a></li>
<li><a href="#r%C3%A9cup%C3%A9ration-des-donn%C3%A9es">Récupération des données</a></li>
<li><a href="#les-paquets-pour-laudio-sont-tellement-mal-foutus">Les paquets pour l'audio sont tellement mal foutus</a></li>
<li><a href="#r%C3%A9v%C3%A9lation-et-grosse-d%C3%A9ception">Révélation et grosse déception</a></li>
</ul>
</li>
<li><a href="#de-la-lumi%C3%A8re-pour-les-autres">De la lumière pour les autres</a></li>
</ul><p><img src="//img.linuxfr.org/img/68747470733a2f2f75706c6f61642e77696b696d656469612e6f72672f77696b6970656469612f636f6d6d6f6e732f362f36332f5374616e646172645f5477696e2e6a7067/Standard_Twin.jpg" alt="Chambre d'hotel avec TV, licence CC by" title="Source : https://upload.wikimedia.org/wikipedia/commons/6/63/Standard_Twin.jpg"></p>
<h2 id="du-son-pour-tout-le-monde">Du son pour tout le monde</h2>
<h3 id="faire-de-la-rétro-ingénierie-sur-un-mystérieux-flux-udp-à-lhôtel">Faire de la rétro-ingénierie sur un mystérieux flux UDP à l'hôtel</h3>
<p>Salut tout le monde. Je me suis retrouvé à l'hôtel pendant quelques temps. Un de ces hôtels modernes avec smart TV et autres objets connectés. Je suis curieux, je lance <a href="https://fr.wikipedia.org/wiki/Wireshark" title="Définition Wikipédia">Wireshark</a>, comme tout bidouilleur ferait.<br>
J'ai été très surpris de voir un énorme trafic UDP sur le port 2046. J'ai regardé, mais les résultats étaient inhabituels. Ce port n'est pas dans les <a href="http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml">ports standards</a>, donc je dois trouver tout seul.</p>
<p>Je suspecte d'abord un flux pour la télévision, mais la taille de paquet est trop faible, même pour une seule trame vidéo.</p>
<h3 id="récupération-des-données">Récupération des données</h3>
<p>Les paquets UDP ne sont pas envoyés à mon IP et je ne fais pas d'<a href="https://fr.wikipedia.org/wiki/ARP_poisoning">ARP spoofing</a>, donc ces paquets sont envoyés à tout le monde. En y regardant de plus près, je vois que ces paquets sont du type Multicast. Ça signifie que ces paquets sont envoyés une fois et reçus simultanément par tous les équipements connectés. Je note aussi que ces paquets sont de longueur identique (634 octets).</p>
<p>Je décide d'écrire un script en Python pour collecter et analyser ces données. Tout d'abord, voici le code que j'ai utilisé pour collecter les paquets de type Multicast. Dans le code qui suit, 234.0.0.2 est l'adresse IP obtenue dans Wireshark.</p>
<pre><code class="python"><span class="kn">import</span> <span class="nn">socket</span>
<span class="kn">import</span> <span class="nn">struct</span>
<span class="n">s</span> <span class="o">=</span> <span class="n">socket</span><span class="o">.</span><span class="n">socket</span><span class="p">(</span><span class="n">socket</span><span class="o">.</span><span class="n">AF_INET</span><span class="p">,</span> <span class="n">socket</span><span class="o">.</span><span class="n">SOCK_DGRAM</span><span class="p">,</span> <span class="n">socket</span><span class="o">.</span><span class="n">IPPROTO_UDP</span><span class="p">)</span>
<span class="n">s</span><span class="o">.</span><span class="n">setsockopt</span><span class="p">(</span><span class="n">socket</span><span class="o">.</span><span class="n">SOL_SOCKET</span><span class="p">,</span> <span class="n">socket</span><span class="o">.</span><span class="n">SO_REUSEADDR</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
<span class="n">s</span><span class="o">.</span><span class="n">bind</span><span class="p">((</span><span class="s">''</span><span class="p">,</span> <span class="mi">2046</span><span class="p">))</span>
<span class="n">mreq</span> <span class="o">=</span> <span class="n">struct</span><span class="o">.</span><span class="n">pack</span><span class="p">(</span><span class="s">"4sl"</span><span class="p">,</span> <span class="n">socket</span><span class="o">.</span><span class="n">inet_aton</span><span class="p">(</span><span class="s">"234.0.0.2"</span><span class="p">),</span> <span class="n">socket</span><span class="o">.</span><span class="n">INADDR_ANY</span><span class="p">)</span>
<span class="n">s</span><span class="o">.</span><span class="n">setsockopt</span><span class="p">(</span><span class="n">socket</span><span class="o">.</span><span class="n">IPPROTO_IP</span><span class="p">,</span> <span class="n">socket</span><span class="o">.</span><span class="n">IP_ADD_MEMBERSHIP</span><span class="p">,</span> <span class="n">mreq</span><span class="p">)</span>
<span class="k">while</span> <span class="bp">True</span><span class="p">:</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">s</span><span class="o">.</span><span class="n">recv</span><span class="p">(</span><span class="mi">2048</span><span class="p">)</span>
<span class="k">print</span><span class="p">(</span><span class="n">data</span><span class="p">)</span></code></pre>
<p>En plus de tout cela, j'ai aussi utilisé <a href="https://docs.python.org/2/library/binascii.html">binascii</a> pour tout convertir en hexadécimal afin de rendre la lecture des octets plus facile. Après avoir vu des milliers de ces paquets défiler en console, je remarque que les (plus ou moins) 15 premiers caractères sont identiques. Ces octets indiquent sans doute le protocole et le <em>packet/command ID</em> mais je reçois toujours le même donc je suis bloqué. </p>
<h3 id="les-paquets-pour-laudio-sont-tellement-mal-foutus">Les paquets pour l'audio sont tellement mal foutus</h3>
<p>Cela m'a aussi pris un temps fou pour remarquer la chaîne <code>LAME3.91UUUUUUU</code> à la fin des paquets. Je soupçonne des données audio, du type MPEG compressé, mais un paquet sauvegardé en tant que test.mp3 ne peut être joué dans mplayer, et l'utilitaire <code>file</code> identifie ce fichier test.mp3 comme étant de type data.<br>
Il y a évidemment des données dans ce paquet, et l'utilitaire file devrait reconnaître des données MPEG audio, donc je décide d'écrire un autre script Python pour sauvegarder les paquets de données avec des décalages.<br>
De cette manière, il va sauvegarder le fichier test1 en sautant 1 octet du paquet, test2 en sautant 2 octets et ainsi de suite.<br>
Voici le code utilisé et le résultat.</p>
<pre><code class="python"><span class="n">data</span> <span class="o">=</span> <span class="n">s</span><span class="o">.</span><span class="n">recv</span><span class="p">(</span><span class="mi">2048</span><span class="p">)</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">25</span><span class="p">):</span>
<span class="nb">open</span><span class="p">(</span><span class="s">"test{}"</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">i</span><span class="p">),</span> <span class="s">"wb+"</span><span class="p">)</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="n">i</span><span class="p">:])</span></code></pre>
<p>Après cela, je lance <code>file test*</code> et voilà ! Nous savons maintenant qu'il faut sauter 8 octets pour aller aux données de type MPEG Audio.</p>
<pre><code class="python"><span class="err">$</span> <span class="nb">file</span> <span class="n">test</span><span class="o">*</span>
<span class="n">test0</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test1</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">16624417</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="n">test10</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">763093498</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="n">test11</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">1093499874</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="n">test12</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test13</span><span class="p">:</span> <span class="n">TTComp</span> <span class="n">archive</span><span class="p">,</span> <span class="n">binary</span><span class="p">,</span> <span class="mi">4</span><span class="n">K</span> <span class="n">dictionary</span>
<span class="n">test14</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test15</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test16</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">1939734368</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="n">test17</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">1198759424</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="n">test18</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">256340894</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="n">test19</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">839862132</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="n">test2</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">67173804</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="n">test20</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test21</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test22</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test23</span><span class="p">:</span> <span class="n">DOS</span> <span class="n">executable</span> <span class="p">(</span><span class="n">COM</span><span class="p">,</span> <span class="mh">0x8C</span><span class="o">-</span><span class="n">variant</span><span class="p">)</span>
<span class="n">test24</span><span class="p">:</span> <span class="n">COM</span> <span class="n">executable</span> <span class="k">for</span> <span class="n">DOS</span>
<span class="n">test3</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">1325662462</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="n">test4</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test5</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test6</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test7</span><span class="p">:</span> <span class="n">data</span>
<span class="n">test8</span><span class="p">:</span> <span class="n">MPEG</span> <span class="n">ADTS</span><span class="p">,</span> <span class="n">layer</span> <span class="n">III</span><span class="p">,</span> <span class="n">v1</span><span class="p">,</span> <span class="mi">192</span> <span class="n">kbps</span><span class="p">,</span> <span class="mf">44.1</span> <span class="n">kHz</span><span class="p">,</span> <span class="n">JntStereo</span>
<span class="n">test9</span><span class="p">:</span> <span class="n">UNIF</span> <span class="n">v</span><span class="o">-</span><span class="mi">2078407168</span> <span class="n">format</span> <span class="n">NES</span> <span class="n">ROM</span> <span class="n">image</span>
<span class="sb">`̀`</span><span class="err">`</span>
<span class="n">Maintenant</span><span class="p">,</span> <span class="n">tout</span> <span class="n">ce</span> <span class="n">qu</span><span class="s">'il nous faut, c'</span><span class="n">est</span> <span class="n">lire</span> <span class="n">les</span> <span class="n">paquets</span> <span class="n">en</span> <span class="n">continu</span><span class="p">,</span> <span class="n">sauter</span> <span class="n">les</span> <span class="mi">8</span> <span class="n">premiers</span> <span class="n">octets</span><span class="p">,</span> <span class="err">é</span><span class="n">crire</span> <span class="n">le</span> <span class="n">reste</span> <span class="n">dans</span> <span class="n">un</span> <span class="n">fichier</span> <span class="n">et</span> <span class="n">il</span> <span class="n">devrait</span> <span class="n">pouvoir</span> <span class="err">ê</span><span class="n">tre</span> <span class="n">lu</span><span class="o">.</span>
<span class="sb">``</span><span class="err">`</span><span class="n">python</span>
<span class="k">while</span> <span class="bp">True</span><span class="p">:</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">s</span><span class="o">.</span><span class="n">recv</span><span class="p">(</span><span class="mi">2048</span><span class="p">)</span>
<span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">buffer</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="mi">8</span><span class="p">:])</span></code></pre>
<p>Mais quel est ce son ? Est-ce un bug sournoisement placé qui m'écoute ? Est-ce quelque chose en lien avec les téléviseurs évolués dans ma chambre ? Quelque chose en rapport avec les systèmes hôteliers ? Un seul moyen de le savoir.</p>
<pre><code class="bash"><span class="nv">$ </span>python3 listen_2046.py > test.mp3
* <span class="nb">wait </span>a little to get a recording *
^C</code></pre>
<pre><code class="bash"><span class="nv">$ </span>mplayer test.mp3
MPlayer <span class="o">(</span>C<span class="o">)</span> 2000-2016 MPlayer Team
<span class="m">224</span> audio <span class="p">&</span> <span class="m">451</span> video codecs
Playing test.mp3.
libavformat version 57.25.100 <span class="o">(</span>external<span class="o">)</span>
Audio only file format detected.
<span class="o">=====</span>
Starting playback...
A: 3.9 <span class="o">(</span>03.8<span class="o">)</span> of 13.0 <span class="o">(</span>13.0<span class="o">)</span> 0.7%</code></pre>
<h3 id="révélation-et-grosse-déception">Révélation et grosse déception</h3>
<p>Quoi ? Je ne peux pas croire que j'ai passé tout ce temps pour ça ? Juste de la <a href="https://fr.wikipedia.org/wiki/Muzak">musique d'ascenseur</a> jouée dans les couloirs et autour des ascenseurs de l'hôtel. Bon, au moins je peux l'écouter depuis ma chambre maintenant :-)</p>
<hr><h2 id="de-la-lumière-pour-les-autres">De la lumière pour les autres</h2>
<p>Je suis à Londres pour la conférence <a href="http://kubernetes.io/">Kubernetes</a> et mon hôtel a décidé que les interrupteurs (pour allumer et éteindre la lumière) sont démodés, et les a remplacé par des tablettes sous Android.</p>
<p><img src="//img.linuxfr.org/img/68747470733a2f2f7062732e7477696d672e636f6d2f6d656469612f43644a4f536a4a5845414169624e782e6a7067/CdJOSjJXEAAibNx.jpg" alt="tablette" title="Source : https://pbs.twimg.com/media/CdJOSjJXEAAibNx.jpg"></p>
<p>Une tablette est encastrée dans le mur, mais les deux à côté du lit avaient des chouettes câbles Ethernet dans le mur.</p>
<p>Je réussis à emprunter 2 adaptateurs USB Ethernet, crée un bridge transparent<br><code>brctl addbr br0; brctl addif br0 enp0s20f0u1; brctl addif br0 enp0s20f0u2; ifconfig br0 up</code><br>
et je branche mon portable entre la tablette et le mur.<br><code>tcpdump -i br0</code> montre du trafic, et wireshark a montré que c'est du <a href="https://fr.wikipedia.org/wiki/Modbus">Modbus</a> over TCP. Modbus est un protocole assez trivial, entre autres choses, il n'a pas de mécanisme d'authentification. tcpdump montre que le trafic est envoyé à 172.16.207.14, et <a href="https://pymodbus.readthedocs.io/en/latest/">pymodbus</a> me permet d'allumer ou éteindre les lumières, la TV, et même mes rideaux. Quel pied !</p>
<p>Et alors je remarque un truc. Mon numéro de chambre est 714, mon adresse IP est 172.16.20 <strong>7.14</strong> . Ils n'auraient pas osé ?</p>
<p>Oui, évidemment, ils ont osé.</p>
<p>C'est aussi mauvais que possible, une fois la passerelle trouvée, je peux accéder au système de contrôle de chaque étage, et interroger chaque chambre pour voir si les lumières sont allumées ou pas, ce qui sous-entend fortement que je peux aussi les contrôler.<br>
Jesus Molina a parlé de ce genre de choses <a href="https://www.defcon.org/images/defcon-22/dc-22-presentations/Molina/DEFCON-22-Jesus-Molina-Learn-how-to-control-every-room-WP.pdf">il y a deux ans</a>, ce n'est pas un cas isolé, les hôtels sont en train de déployer ce genre de système sans la moindre sécurité, et la probabilité que quelqu'un envoie un flux constant de « allumez la lumière » et « ouvrez les rideaux » à 3 heures du matin est élevée.</p>
<p>Tout cela est voué à l'échec</p>
<p>(Note : J'avais prétendu que je ne pouvais accéder qu'aux équipements de mon étage, mais en fait chaque étage est sur une zone de diffusion séparée, et je dois juste définir une autre passerelle pour accéder aux autres étages.) </p>
<p>(Autre note : je fais exprès de ne pas nommer l'hôtel. Ils ont été réceptifs à mon retour et ont promis de régler le problème.)<br>
Dans les commentaires, une personne demande s'il est possible d'allumer le <em>pay-per-view</em> sur la TV des autres chambres. Nous n'avons pas de réponse.</p></div><div><a href="https://linuxfr.org/news/son-et-lumiere-a-l-hotel.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/109048/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/son-et-lumiere-a-l-hotel#comments">ouvrir dans le navigateur</a>
</p>
palm123Yves BourguignonBAudNÿcoBenoît SibaudM5oulFlorent Zaraʭ ☯ https://linuxfr.org/nodes/109048/comments.atomtag:linuxfr.org,2005:Diary/361252015-09-27T11:55:03+02:002015-09-27T11:55:03+02:00[HS] Marguerite, le filmLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<p>Bonjour</p>
<p>Cela faisait un bail que j'avais pas vu un film qui ne me fasse pas du tout regretter mes quelques Euros !<br>
Le film en question, Marguerite, avec Catherine Frot, est une libre adaptation d'une histoire vraie, celle de <a href="http://www.allocine.fr/article/fichearticle_gen_carticle=18645833.html">Florence Foster-Jenkins</a>, une femme fortunée, pensant avoir une belle voix, faisant des récitals (privés), puis montant sur scène à l'Opéra.</p>
<p><a href="http://www.allocine.fr/video/player_gen_cmedia=19555484&cfilm=235197.html">la bande-annonce</a></p>
<p>Apparemment, les personnes chantant faux ne s'entendent pas/ne le remarquent pas, et son entourage ne le lui disait pas.</p>
<p>Je n'ai pas vu passer les deux heures du film, si vous voulez voir un film original, allez-y !</p><div><a href="https://linuxfr.org/users/palm123/journaux/hs-marguerite-le-film.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/106880/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/hs-marguerite-le-film#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/106880/comments.atomtag:linuxfr.org,2005:Diary/341952013-08-09T08:01:52+02:002013-08-09T08:02:14+02:00[HS] Madagascar en 2013Licence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Disclaimer : 2 semaines passées à Madagascar en juillet/août 2013 ne font pas de moi un spécialiste du pays, loin de là.<br>
J'ai vu 10% du pays, avec mes yeux de vaza (étranger)</p>
<ul>
<li><p>les lémuriens<br>
On va à Madagascar voir les lémuriens. J'en ai vu de plusieurs espèces, nocturnes, diurnes. L'inspiration de l'auteur du Marsupilami vient de là je pense.<br>
Ils pèsent en général entre un et deux kilos, trois pour le plus gros. Je n'ai pas vu le plus petit lémurien du monde, le microcèbe<br><a href="http://fr.wikipedia.org/wiki/Microcebus">http://fr.wikipedia.org/wiki/Microcebus</a><br>
J'en ai vu sauter d'arbre en arbre à 30 m de hauteur, je n'ai pas pris de photos car ça n'aurait rien rendu avec mon appareil photo.</p></li>
<li><p>les caméléons<br>
Oui, ils prennent la couleur de leur environnement, et sans un guide, je les aurai tous loupés !<br>
Ils sont costauds, car ils se hissent sur une branche à la force des bras !<br>
Je suis toujours surpris qu'un animal aussi lent (comme la salamandre également) puisse survivre</p></li>
<li><p>les Tsingy<br>
Des formations géologiques étonnantes<br>
Mes photos ne rendant pas bien, recherchez sur Google images<br>
tsingy madagascar ankarana<br>
et <br>
tsingy rouges diego-suarez madagascar</p></li>
<li><p>le parc automobile français d'il y a 30 ans<br>
la Renault 4 est la voiture star, le taxi de référence (1000 Arias la course), mais il y a des Renault 6, Renault 12, Renault 11, de nombreuses Peugeot 404 bâchées.<br>
La Renault 4 est un pseudo 4x4, car il suffit de quelques personnes pour la soulever et la poser après une difficulté !<br>
A Diego et Nosy Be, les touc-toucs (tricycles de marque Piaggo ou Bajaj) ont tué le marché (500 Arias la course)</p></li>
<li><p>300 000 n'est pas un multiple de 5000<br>
Pourtant je le pensais. Les distributeurs de billets proposent de retirer 100 000, 150 000 Arias, ou de choisir son montant.<br>
J'ai pensé, 300 000 Arias, ça fait autour de 100 Euros, je retire. Message du distributeur<br>
"choisissez un multiple de 5 000".<br>
J'ai choisi 150 000, ce qui fait un bon nombre de billet de 5 000 Arias. <br>
Des fois les distributeurs ont des billets de 10 000 Arias, mais pas toujours.<br>
Un distributeur ne peut pas donner en une seule fois un nombre trop élevé de billet je suppose.<br>
Bizarre cette sensation d'être plein aux as avec plein de billets dans le porte-monnaie.</p></li>
<li><p>la pétanque, le foot et le rugby, les sports les plus populaires !</p></li>
<li><p>dans le zébu tout est bon. Le zébu coûte moins cher que le poulet, on en fait aussi des chaussures de marque l'Aigle d'Or, très appréciées.</p></li>
<li><p>le koba se vend à Tana, et ça cale bien :-)<br><a href="http://www.madagascar-id.com/recettes-malgaches/le-koba">http://www.madagascar-id.com/recettes-malgaches/le-koba</a></p></li>
<li><p>le yaourt au lait de zébu à la vanille est un régal, à manger au bord des routes.</p></li>
<li><p>le katrafay donne une huile essentielle qui rappelle l'odeur du bois de réglisse, très agréable dans le bain !<br>
Je l'ai aussi acheté sous cette forme<br><a href="http://vegemedica.fr/rubriques/katrafay.html">http://vegemedica.fr/rubriques/katrafay.html</a></p></li>
</ul><p>Un mystère : Madagascar, 250 000 touristes par an, la Thailande 25 millions.</p><div><a href="https://linuxfr.org/users/palm123/journaux/hs-madagascar-en-2013.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/99313/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/hs-madagascar-en-2013#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/99313/comments.atomtag:linuxfr.org,2005:Diary/341302013-07-17T19:52:00+02:002013-07-17T19:52:00+02:00une mise en demeure de la part de TF1, pour l'auteur de CaptvtyLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Captvty est un très bon soft sous Windows (oui je sais, ce n'est pas la même chose que Linux ou *BSD)</p>
<p>Un bon résumé a été fait par Korben<br><a href="http://korben.info/captvty-tf1.html">http://korben.info/captvty-tf1.html</a><br>
en gros</p>
<p>Les raisons invoquées par e-TF1 sont :</p>
<pre><code>Le contournement de mesures techniques de protection pour décrypter (sic!) les flux -> FAUX, TF1 n'utilise pas de DRM.
La mise à disposition d'une application qui permet de commettre une infraction -> La copie privée serait une infraction aux yeux de TF1 ?
De tromperie du consommateur en déclarant que cet outil est légal -> Jusqu'à présent il n'y a rien qui prouve que c'est illégal, bien au contraire...
</code></pre>
<p>S'en suivent quelques mentions de milliers d'euros d'amende et de peines de prison, une indication que l'affaire a été portée en justice ainsi qu'une mise en demeure à l'encontre d'OVH pour fermer le site.</p>
<p>Et la réponse de l'auteur de Captvty<br><a href="http://lehollandaisvolant.net/files/tf1-ovh-captvtyfr_20130717.pdf">http://lehollandaisvolant.net/files/tf1-ovh-captvtyfr_20130717.pdf</a><br>
En gros il leur dit d'aller se faire voir, et j'aime bien son<br>
"rappelez-vous que la dénonciation calomnieuse est punie par la loi".</p>
<p>Bon sinon Captvty est hébergé chez OVH, qui a le vent en poupe actuellement (lu dans un tweet de Oles, l'un des fondateurs<br>
"This is becoming an increasingly frequent pattern at Silicon Valley meetups (tonight was #HBase's): "- Are you on #EC2? - No, we're on #OVH")<br>
on va voir si OVH soutient Captvty ou les laisse tomber </p>
<p>Je trouve triste cette tendance à judiciariser des grosses boites. Et elles jouent sur du velours, elles menacent un type seul, de plusieurs milliers d'Euros d'amende, alors que si elles sont déboutées, elles ne risquent rien.</p>
<p>Finalement, ça va peut-être se finir, comme lu sur un commentairede Korben, par la mise à disposition du code sur Github… </p><div><a href="https://linuxfr.org/users/palm123/journaux/une-mise-en-demeure-de-la-part-de-tf1-pour-l-auteur-de-captvty.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/99119/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/une-mise-en-demeure-de-la-part-de-tf1-pour-l-auteur-de-captvty#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/99119/comments.atomtag:linuxfr.org,2005:Diary/340292013-06-21T09:28:24+02:002013-06-21T09:28:24+02:00[HS] L'homme bionique est arrivé !Licence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Et puis on est vendredi :-)</p>
<p>Il y a eu ces derniers temps différents cas de triche aux échecs.<br />
Les plus basiques avec des téléphones portables ou mini PC cachés sur le joueur, qui passe son temps à aller aux toilettes pour regarder quoi jouer. Ca finit par se remarquer. <br />
Il y a eu aussi les joueurs qui envoyaient des SMS à un complice qui renvoyait un SMS vaguement codé (case de départ et d'arrivée, le jeune GMI français Sébastien Feller a été condamné pour cela<br /><a href="http://fr.wikipedia.org/wiki/S%C3%A9bastien_Feller">http://fr.wikipedia.org/wiki/S%C3%A9bastien_Feller</a><br />
). <br />
Puis des cas plus sophistiqués, avec des oreillettes : un complice regarde la partie, et dicte le "bon" coup à jouer au joueur. Cela ne résiste pas à une fouille basique. Et cela ne marche plus si la partie n'est plus retransmise sur Internet.</p>
<p>Un rappel sur les classements aux échecs, pour situer<br />
- 1800 Elo -> joueur de club<br />
- 2400 Maître International <br />
- 2500 à 2600 Grand Maître International <br />
- les meilleurs comme le numéro un mondial Magnus Carlsen sont à plus de 2800 Elo)<br />
Une catégorie c'est 200 points, et en général, si 2 joueurs valent vraiment leur classement, il est très rare que le joueur le plus faible gagne.<br /><br />
Evidemment,un jeune joueur en pleine ascension ne vaut pas son classement, un Kasparov à 15 ans faisait plein de perfs car son classement 6 mois plus tard avait pris 150 ou 200 points.</p>
<p>Depuis quelque temps, un jeune joueur bulgare, Borislav Ivanov, "faiblement" classé autour de 2300 Elo (pour les tournois avec seulement des pros c'est faible) s'est mis à tout gagner. Il enlève son tee-shirt et vide ses poches volontiers. Il ne quitte pas son échiquier de toute la partie.<br />
Mais il ne joue pas comme un joueur d'échecs. Même le meilleur joueur mondial joue quelques coups faibles dans une partie de 40 coups.<br />
Mais pas Borislav Ivanov. D'abord il utilise toujours 7 secondes pour jouer son coup. Toute personne ayant un peu joué sait que certains coups sont immédiats (si mon adversaire prend ma Dame avec sa Dame, à moins d'avoir un coup intermédiaire génial, le seul coup candidat est de prendre sa Dame), et d'autres réclament un réflexion bien plus longue.<br />
Ensuite il joue des coups qui sont bons, mais pas "pratique", pas de joueur normal.<br />
Valeri Lilov a analysé un certain nombre de ses parties.<br /><a href="http://www.youtube.com/watch?v=Jr0J8SPENjM">http://www.youtube.com/watch?v=Jr0J8SPENjM</a> <br />
Par exemple, dans une partie où il a un pion isolé à la sortie de l'ouverture (son pion d ne peut être soutenu ni par son pion c, ni par son pion e, qui ont été échangés), il devrait éviter les échanges de pièces (le pion isolé est une faiblesse en finale, et un atout en milieu de partie), mais il les provoque, car c'est tactiquement justifié.<br />
et il y a eu des articles sur Chessbase<br /><a href="http://www.chessbase.com/Home/TabId/211/PostId/4010210/rombaldoni-he-never-calculated-moves-200613.aspx">http://www.chessbase.com/Home/TabId/211/PostId/4010210/rombaldoni-he-never-calculated-moves-200613.aspx</a><br />
, en particulier<br /><a href="http://www.chessbase.com/Home/TabId/211/PostId/4009997/the-show-goes-on-ivanov-in-kustendil-160613.aspx">http://www.chessbase.com/Home/TabId/211/PostId/4009997/the-show-goes-on-ivanov-in-kustendil-160613.aspx</a><br />
Si vous regardez la position tout en bas, comme ils indiquent, le coup évident pour les noirs est Tc1.<br />
Cela correspond au proverbe échiquéen<br />
"le pion passé « est un criminel si dangereux qu'il ne suffit pas de la placer sous surveillance policière5 » mais qu'il est indispensable de « le mettre en prison »<br /><a href="http://fr.wikipedia.org/wiki/Pion_pass%C3%A9">http://fr.wikipedia.org/wiki/Pion_pass%C3%A9</a><br />
Et là, Borislav Ivanov joue Fc4, un coup aberrant (le fou arrête de surveiller la case de promotion c8 du pîon blanc). Des astuces tactiques justifient ce coup, mais ce n'est pas un coup logique.</p>
<p>par contre de temps en temps Ivanov joue à un niveau de 1900, et donc perd des parties. <br />
Il est possible que 1900 soit son vrai niveau, et que son classement de 2300 soit lié à la mise en place de sa méthode de triche.</p>
<p>Ah et le plus important, il joue systématiquement le coup sélectionné par les meilleurs logiciels d'échecs, Houdini en particulier.<br /><a href="http://en.chessbase.com/home/TabId/211/PostId/4008591">http://en.chessbase.com/home/TabId/211/PostId/4008591</a></p>
<p>Donc on peut supposer que Borislav Ivanov a un puce sous la peau, dans une dent…</p>
<p>Comment reçoit-il les coups à jouer, cela reste un mystère.</p><div><a href="https://linuxfr.org/users/palm123/journaux/hs-l-homme-bionique-est-arrive.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/98776/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/hs-l-homme-bionique-est-arrive#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/98776/comments.atomtag:linuxfr.org,2005:Diary/339582013-05-31T19:36:28+02:002013-05-31T19:36:28+02:00primaire UMP à Paris : le vote électronique est "ultra-sécurisé"Licence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Pour ceux qui ne s'intéressent pas qu'à Linkeo dans l'actualité, l'UMP organise une primaire pour désigner son candidat à la mairie de Paris. Comme ils sont modernes à l'UMP, ils utilisent le vote électronique.<br />
Et voilà que des esprits chagrins contestent ce type de vote.</p>
<p><a href="http://www.lemonde.fr/politique/article/2013/05/31/primaire-ump-la-fraude-mode-d-emploi_3421624_823448.html">http://www.lemonde.fr/politique/article/2013/05/31/primaire-ump-la-fraude-mode-d-emploi_3421624_823448.html</a> <br />
Je cite ces paroles rassurantes<br />
"Dans un entretien au Parisien, vendredi, Antoine Rufenacht, ancien maire UMP du Havre et chargé du bon déroulement de la primaire, affirme que "le vote électronique rend la fraude quasiment impossible". Selon lui, "toutes les précautions juridiques ont été prises" et l'accord de la CNIL, qui est "très sourcilleuse", est "demandé sur toutes les opérations".</p>
<p>Sur France Bleu 107,1, Philippe Goujon a, lui aussi, assuré que la primaire UMP est un système "ultra-sécurisé", "contrôlé" et "validé" par la CNIL, un huissier de justice et deux experts indépendants. "Le système est ultra-sécurisé. Le problème n'est pas tant celui de l'insuffisante sécurité du vote que celui de sa sécurité excessive qui va peut-être le rendre un peu compliqué", a-t-il insisté."</p>
<p>le lien metronews "Comment frauder"<br /><a href="http://www.metronews.fr/paris/municipales-a-paris-comment-frauder-a-la-primaire-de-l-ump/mmeD!jk3goaowk8DkQ/">www.metronews.fr/paris/municipales-a-paris-comment-frauder-a-la-primaire-de-l-ump/mmeD!jk3goaowk8DkQ/</a></p>
<p>le Nouvel Obs a voté en fraudant<br /><a href="http://tempsreel.nouvelobs.com/elections-municipales-2014/20130531.OBS1467/comment-j-ai-fraude-a-la-primaire-ump-de-paris.html">http://tempsreel.nouvelobs.com/elections-municipales-2014/20130531.OBS1467/comment-j-ai-fraude-a-la-primaire-ump-de-paris.html</a></p>
<p>Et maintenant des candidats demandent un retour au (ringard) vote papier<br /><a href="http://www.lemonde.fr/politique/article/2013/05/31/primaire-ump-pierre-yves-bournazel-demande-l-arret-du-scrutin_3421942_823448.html">http://www.lemonde.fr/politique/article/2013/05/31/primaire-ump-pierre-yves-bournazel-demande-l-arret-du-scrutin_3421942_823448.html</a></p>
<p>:-)</p><div><a href="https://linuxfr.org/users/palm123/journaux/primaire-ump-a-paris-le-vote-electronique-est-ultra-securise.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/98500/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/primaire-ump-a-paris-le-vote-electronique-est-ultra-securise#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/98500/comments.atomtag:linuxfr.org,2005:Diary/338622013-05-02T08:24:40+02:002013-05-02T08:24:40+02:00Dell, le degré zéro du service client.Licence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Ma vie</p>
<p>J'ai acheté fin 2011 un Alienware M18X pour mon fils de 16 ans, pour jouer principalement. Il est maintenant en 1ère année dans une école, et en a besoin pour ses études.<br />
Ce PC est tombé en panne jeudi 18 avril. Heureusement il bénéficie d'une garantie Premium, un technicien vient réparer sur place.<br />
Vendredi 19 avril, je passe mon appel.<br />
Mon fils a pas mal déblayé le terrain:</p>
<ul><li>quand on démarre le PC, au boot, il émet 8 bips, puis attente et ça recommence.</li>
<li>si on boote en gardant appuyé sur F7 pour utiliser une autre carte graphique, on a un message "I/O GFX", puis 3 bips rapides puis 8 bips.</li>
<li>si on branche un écran externe en HDMI, on obtient les mêmes résultats.</li>
</ul><p>Dell m'annonce que finalement, comme cela peut être la carte mère, ou le câble, ou autre chose, il faut passer prendre le PC. Rendez-vous est pris pour le lundi 22 avril, entre 9 h et 18 h.<br />
Je reste donc chez moi, et personne ne passe.<br />
Le mardi 23 matin, j'appelle, et on m'explique qu'il y a eu une incompréhension avec le transporteur, et il passera en fait ce jour, entre 9 h et 18 h.<br />
Devenu méfiant, j'appelle Dell vers 16h, "le transporteur passera vers 17 h 30". Personne ne passe.<br />
Mercredi 24 matin, Dell me garantit que le transporteur passera ce jour. Personne ne passe. <br />
Le mercredi soir, une personne de Dell me propose qu'un autre transporteur passe vendredi. Le jeudi je ne peux absolument pas être à la maison, et le vendredi seulement de 12 h à 18 h.<br />
Le jeudi 25 je reçois un coup de fil d'un robot me demandant de taper 1 pour un passage d'un transporteur le vendredi de 9 h à 18 h, et 2 pour un transporteur le lundi de 9 h à 18 h.<br /><br />
J'appelle Dell pour confirmer que le transporteur passera entre 12 et 18 h, et pas entre 9 h et 18 h. Il rappelle un peu plus tard pour me confirmer la tranche horaire 12 h - 18 h.</p>
<p>Le vendredi 26 personne ne passe.<br />
Une personne de Dell, consumer L&D coach si j'en crois son email me contacte et me propose qu'un technicien vienne sur place mardi, de 9 h à 18 h.<br />
Finalement ce n'est pas possible, et un transporteur passera prendre mon PC mardi 30 avril.<br />
Lundi 29 avril à 13 h 16 un transporteur m'appelle pour collecter le PC, mais évidemment je ne suis pas chez moi.<br />
Mardi 20 avril personne ne passe.</p>
<p>A la décharge de Dell, j'habite un endroit mal desservi et peu indiqué sur les cartes : Paris.</p>
<p>Moi qui aime les anecdotes sur les dysfonctionnements en entreprise, je suis servi :</p>
<ul><li>la sous-traitance pour évacuer un problème. Dell sous-traite la collecte des PC en panne à 2 transporteurs, TNT (dans mon cas) et UPS. Le discours de Dell est en gros "on sous-traite à des mauvais".
Je trouve cela inacceptable. Dell sous-traite la collecte des PC au transporteur de son choix, mais Dell est responsable de la (non) qualité de la prestation. Le fait de sous-traiter n'évacue pas la responsabilité de Dell.</li>
<li>le syndrome du "j'ai envoyé un mail, j'ai fait tout ce que je pouvais". Dell écrit au transporteur pour demander des explications. Mais le destinataire du mail l'a-t-il lu ? Il a répondu ?</li>
<li>Dell ne peut joindre directement le transporteur. J'ai essayé d'expliquer à Dell qu'il existait des téléphones portables, qui permettent d'envoyer des SMS, des emails, d'y répondre, et même de téléphoner et joindre directement son interlocuteur.
Mais "ce n'est pas comme cela que cela fonctionne" on m'a répondu.
Il existe aussi la géolocalisation, pour savoir où est passé le transporteur, en temps réel, mais Dell ne connaît pas cela.</li>
</ul><p>J'ai demandé un PC bas de gamme, à 300 ou 400 Euros, en attendant que le PC Alienware haut de gamme soit réparé, en comparant avec les assurances auto, qui mettent un véhicule à disposition quand une réparation dure longtemps. Mais c'est "inenvisageable", dixit Dell !</p>
<p>Maintenant que va-t-il se passer ? Je ne sais pas, mais je ne pourrai pas rester de 9 h à 18 h chez moi.</p><div><a href="https://linuxfr.org/users/palm123/journaux/dell-le-degre-zero-du-service-client.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/98173/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/dell-le-degre-zero-du-service-client#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/98173/comments.atomtag:linuxfr.org,2005:Diary/335162012-12-31T11:54:10+01:002012-12-31T11:54:10+01:00Samsung quitterait Android pour aller vers TizenLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Ave</p>
<p>La rumeur qui court : Samsung quitterait Android pour aller vers Tizen pour son Galaxy S4<br />
Une source<br /><a href="http://www.silicon.fr/samsung-inviterait-tizen-sur-le-galaxy-s4-82244.html">http://www.silicon.fr/samsung-inviterait-tizen-sur-le-galaxy-s4-82244.html</a></p>
<p>Il y a une certaine logique, se mettre à l'abri des procès sur le viol de brevets, éviter de payer comme certains constructeurs quelques $ par téléphone vendu sous Android<br /><a href="http://www.frandroid.com/actualites-generales/71874_microsoft-recoit-5-pour-chaque-telephone-htc-sous-android-vendu/">http://www.frandroid.com/actualites-generales/71874_microsoft-recoit-5-pour-chaque-telephone-htc-sous-android-vendu/</a></p>
<p>Quelques liens sur Tizen, pour ceux qui veulent se rafraîchir la mémoire<br /><a href="https://www.tizen.org/">https://www.tizen.org/</a><br /><a href="http://fr.wikipedia.org/wiki/Tizen">http://fr.wikipedia.org/wiki/Tizen</a></p><div><a href="https://linuxfr.org/users/palm123/journaux/samsung-quitterait-android-pour-aller-vers-tizen.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/96908/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/samsung-quitterait-android-pour-aller-vers-tizen#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/96908/comments.atomtag:linuxfr.org,2005:Diary/330122012-08-23T13:08:54+02:002012-08-23T13:08:54+02:00Un Ipad dans la liste des fournitures scolairesLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Je relaie un twitter de Ploum, sur cet article de La Libre Belgique</p>
<p>
<a href="http://www.lalibre.be/actu/belgique/article/756579/un-ipad-dans-la-liste-de-fournitures-scolaires.html">http://www.lalibre.be/actu/belgique/article/756579/un-ipad-dans-la-liste-de-fournitures-scolaires.html</a>
</p>
<p>Ca me laisse perplexe. Pas d'appel d'offres pour ce genre de décision ? et puis un Ipad, c'est entre 400 et 600 Euros je pense, c'est considérable pour un budget rentrée.<br />
Quels cours réclament un Ipad ?</p><div><a href="https://linuxfr.org/users/palm123/journaux/un-ipad-dans-la-liste-des-fournitures-scolaires.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/95290/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/un-ipad-dans-la-liste-des-fournitures-scolaires#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/95290/comments.atomtag:linuxfr.org,2005:Diary/328972012-07-29T16:28:22+02:002012-07-29T16:28:22+02:00livre numérique des éditions eniLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Ave</p>
<p>J'ai acheté hier un livre numérique des éditions eni, le livre sur Python de Sébastien Chazallet.</p>
<p>Je suis très déçu (pas par le livre), mon idée était de le mettre sur mon téléphone Android pour pouvoir le consulter offline en vacances dans des endroits sans Internet.</p>
<p>Visiblement ce n'est pas possible. Le livre n'est pas disponible au format HTML ou PDF ou autre.<br />
Ca me semblait tellement évident que je pouvais copier un livre que j'avais acheté que je n'ai pas vérifié. C'est de ma faute, c'est écrit en clair<br /><a href="http://www.editions-eni.fr/livres/vos-livres-numeriques/.46eff8ef60b5d1ea7f9414511e993fdf.html">http://www.editions-eni.fr/livres/vos-livres-numeriques/.46eff8ef60b5d1ea7f9414511e993fdf.html</a></p>
<p>Visiblement je peux exporter au format PDF page par page, ça va être long.<br />
Il y a mon nom sur chaque page (ce qui ne me gêne pas).</p>
<p>Je peux aussi me tromper, et peut-être que je peux récupérer ce livre (mais je n'ai pas trouvé comment faire).</p>
<p>Conclusion : vérifiez bien avant d'acheter un livre au format numérique.</p><div><a href="https://linuxfr.org/users/palm123/journaux/livre-numerique-des-editions-eni.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/94997/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/livre-numerique-des-editions-eni#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/94997/comments.atomtag:linuxfr.org,2005:Diary/328532012-07-20T12:15:37+02:002012-07-20T12:15:37+02:00GM fait revenir son informatique en interne.Licence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>Bonjour</p>
<p>Je n'ai pas d'avis sur la pertinence (ou pas) de cette décision, ce qui me fait rire, c'est que la raison évoquée est celle en général donnée pour externaliser son informatique, à savoir <br />
"ce rapatriement doit avant tout permettre à GM de tirer un meilleur parti de son IT en accélérant ses processus"<br />
donc être plus réactif !</p>
<p>Un lien<br /><a href="http://www.lemondeinformatique.fr/actualites/lire-l-ancien-dsi-de-hp-reinternalise-l-it-de-general-motors-49758.html">http://www.lemondeinformatique.fr/actualites/lire-l-ancien-dsi-de-hp-reinternalise-l-it-de-general-motors-49758.html</a></p><div><a href="https://linuxfr.org/users/palm123/journaux/gm-fait-revenir-son-informatique-en-interne.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/94895/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/gm-fait-revenir-son-informatique-en-interne#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/94895/comments.atomtag:linuxfr.org,2005:Diary/328192012-07-11T08:36:12+02:002012-07-11T08:36:12+02:00Samba : de la 3G gratuite, contre de la pub à regarder, et des cookies.Licence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<p>A l'heure où martin Bouygues écrit aux députés pour qu'Orange ne renouvelle pas son accord d'itinérance avec Free<br /><a href="http://www.lesechos.fr/entreprises-secteurs/tech-medias/actu/0202165881667-martin-bouygues-ecrit-aux-deputes-pour-qu-ils-incitent-free-a-investir-342696.php">http://www.lesechos.fr/entreprises-secteurs/tech-medias/actu/0202165881667-martin-bouygues-ecrit-aux-deputes-pour-qu-ils-incitent-free-a-investir-342696.php</a><br />
chez nos amis anglais, quelqu'un propose de la 3G gratuite, à condition de regarder des pubs.<br />
Il faut regarder 2 minutes 30 secondes de pubs par jour et vous obtenez 517 M de 3G<br />
Pas de porno, ni de contenus protégés.</p>
<p>Quelques liens<br /><a href="http://www.bbc.com/news/technology-18693200">http://www.bbc.com/news/technology-18693200</a></p>
<p>
<a href="http://www.ubergizmo.com/2012/07/samba-brings-ad-supported-3g-data-uk/">http://www.ubergizmo.com/2012/07/samba-brings-ad-supported-3g-data-uk/</a>
</p>
<p>
<a href="http://crave.cnet.co.uk/mobiles/free-3g-data-if-you-watch-ads-from-new-network-samba-50008511/">http://crave.cnet.co.uk/mobiles/free-3g-data-if-you-watch-ads-from-new-network-samba-50008511/</a>
</p><div><a href="https://linuxfr.org/users/palm123/journaux/samba-de-la-3g-gratuite-contre-de-la-pub-a-regarder-et-des-cookies.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/94802/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/palm123/journaux/samba-de-la-3g-gratuite-contre-de-la-pub-a-regarder-et-des-cookies#comments">ouvrir dans le navigateur</a>
</p>
palm123https://linuxfr.org/nodes/94802/comments.atom