De Brest à Dresde, en passant par Rennes

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

dimanche 21 décembre 2014

Les manifestations Pediga

Un nouvel OVNI politique est apparu en Allemagne ces derniers mois, et il vient de Dresde. Vu son contenu, l'origine n'est pas très surprenant. Sous le nom de “Patriotes européens contre l’islamisation de l’Occident” (en version allemande et raccourci, ça donne "Pediga"), des milliers de personnes défilent les lundi. Ils ne reprennent pas que le symbole du jour de manifestation, mais aussi certains slogans, comme "Wir sind das Volk".

Au delà de cette reprise des symboles de la lutte contre le communisme dans des manifestations qui ne semblent pas avoir grand chose à voir, ce mouvement a surpris tout le monde. Localement, après une légère surprise du "tiens, encore des manifs d'extrême droite", un mouvement des "antis" s'est rapidement fait entendre. Après une annulation de manifestation, ils sont revenus le 15 décembre. Leur nombre est clairement plus élevé que ce que l'extrême droite arrive habituellement à mobiliser, et comme ils ne viennent officiellement d'aucun parti, il est difficile de voir sur quoi ça peut déboucher. Voxeurop fait aujourd'hui le point sur ce qu'en pense la presse allemande.

lundi 1 septembre 2014

Et à la fin, c'est la CDU qui gagne

Hier, c'était jour d'élection en Saxe. La date était probablement très mal choisie, c'était tout comme en France le dernier jour des vacances. Ça n'a pas aidé la participation, qui chute en dessous des 50%. Sur les 3,3 millions d'électeurs, seuls 1,6 millions étaient présents (ou ont votés par la poste, moyen courant en Allemagne). D'après le Spiegel, c'est la deuxième plus mauvaise participation pour une élection régionale allemande.

Ces élections n'auront pas un grand impact national, la Saxe est une région très loin d'être représentative de la politique fédérale. C'est une terre de droite et d'extrême droite, ça se voit à la fois dans les résultats électoraux et dans les propositions des partis politiques. Le TAZ considère ainsi que la CDU et le FDP saxons sont les plus à droite d'Allemagne.

Cependant, cette élection pourrait représenter la fin définitive d'une époque et le début d'une autre. Commençons par la fin : les libéraux du FDP ne gouvernent plus aucun land allemand. Ils viennent de se faire sortir du parlement saxon (passant de 10 à 3,8% des voix). Ils étaient durant leur campagne en plein naufrage idéologique, promettant tout et son contraire. Voir le FDP demander plus d'enseignants a une saveur bien étrange, après cinq ans de participation à un gouvernement ayant fortement réduit le nombre de postes (avec manifestations à la clef).

L'argument de la baisse d'impôt, pourtant le plus classique, semblait avoir disparu. Et les photos des candidats bien habillés et portant des titres de doctorats étaient remplacées par ça :

Avec cette sortie du gouvernement saxon, le FDP n'existe plus dans les instances fédérales : ils perdent leur dernier relais au Bundesrat.

Les grands gagnants de la journée sont les anti-euros de l'AfD, qui entrent pour la première fois dans un parlement régional, avec presque 10% des voix. Ce n'était pas vraiment une surprise, ils avaient réalisés en Saxe leurs meilleurs scores lors des élections fédérales et européennes. Ils bénéficient d'une tête de liste populaire et capable apparemment de faire passer un message. Ou vont-ils chercher toutes ces voix ? D'après les sondeurs, en grande partie chez les électeurs de la CDU. De l'extrême gauche aussi (si si), ainsi que des libéraux (ce dernier est étonnamment pas si élevé que ça. Il y a eu un mouvement de voix du FDP vers la CDU, et de la CDU vers l'AfD). Enfin, ils récupèrent des voix des néo-nazis. Ces derniers disparaissent du parlement, avec 4,95% des voix. Il est clair que sans l'AfD, ils seraient encore là. Même si les mouvements étaient moins massifs que prévu, 800 voix seulement auraient permis aux néo-nazis de rester pour cinq ans de plus.

Pour les autres, c'est la stagnation. La CDU avec 39,4% des voix est très loin devant ses concurrents, et gouvernera bien évidemment durant les cinq ans à venir. Mais pour la Saxe, c'est peu. C'est encore moins qu'en 2009, qui était déjà une mauvaise année. La popularité de la tête de liste (que plus de 70% des saxons voulaient comme chef de gouvernement) n'aura pas suffit. Le transfert depuis le FDP compense les pertes vers l'AfD, mais pas plus.

Les seconds, Die Linke, sont relégués à 18,9% des voix. Ils étaient à 20,6% il y a cinq ans. L'émergence d'un parti populiste anti-euro aura fait de la concurrence, même s'il est à l'autre bout de l'échiquier politique.

Viennent enfin les deux partis qui peuvent entrer au gouvernement avec la CDU. Le plus probable, c'est le SPD, qui obtient 12,4% des voix. C'est un bon score (si si, bis), le meilleur depuis 1994. Il serait assez logique de reproduire la même coalition qu'au niveau fédéral, et probablement bien plus stable. L'alternative serait une alliance de la CDU avec les verts, qui obtiennent 5,7% des voix. Les deux partis se déclaraient prêts à gouverner ensemble durant la campagne, mais il est probable que l'hypothèse de coalition avec les Verts servira surtout de moyen de pression pour la CDU lors des négociations avec le SPD.

Au niveau des thèmes de campagne, trois choses revenaient. D'abord la sécurité. Tous les partis en parlaient, à l'exception peut-être des verts. J'ignore pourquoi. Le second fait suite aux inondations de 2013, les travaux de réparations sont encore loin d'être terminés dans certaines villes. La tête de liste de la CDU posait sur des affiches à côté de pompiers, pendant que Die Linke demandait une pension de retraite plus élevée pour les anciens pompiers volontaires.

Le dernier grand sujet abordé par les partis concernait le « gute Arbeit », un bon travail. Le thème du chômage n'était pas mentionné, celui d'une rémunération plus élevée était par contre bien présent. Dans un pays ou l'on propose de payer un orthophoniste diplômé à 8€ bruts de l'heure, ce n'est probablement pas très étonnant. Le thème du chômage rendait auparavant ces revendications inaudibles, mais il semble que cette période soit terminée. À voir si l'instauration du salaire minimum changera quelque chose.

Et pour la suite ? Le Brandenbourg et la Thuringe votent dans 15 jours. Ces régions sont très différentes, mais on y verra probablement les mêmes effets sur le bout de la droite : le FDP est menacé d'être expulsé du parlement, et l'AfD pourrait y rentrer. La Thuringe est particulièrement à surveiller : pour la première fois, le SPD n'exclut pas de gouverner avec Die Linke, même si Die Linke a plus de sièges qu'eux. Cela conduirait à élire un premier ministre de région provenant de Die Linke. Si le cas devait être possible à la sortie des urnes, le choix sera laissé aux militants du SPD (l'alternative étant une alliance avec la CDU).

mardi 22 juillet 2014

Petit retour sur le résultat des élections européennes

Les élections européennes c'était maintenant il y a bien longtemps, mais je propose un bref retour sur le résultat comparé des élections en Allemagne et en France. Pour rappel, les allemands pouvaient élire un député européen avec bien peu de suffrages. En France au contraire, le découpage en grandes régions et la méthode de calcul des sièges à la proportionnelle rend très difficile la vie des petits partis.

Pour l'Allemagne, le premier fait notable est la participation. 30 millions d'électeurs allemands étaient aux urnes (soit 48% de participation). C'est bien mieux que les années 2009 et 2004 (43%), mais aussi que 1999 (45%). De mon point de vue, il y a au moins deux raisons à ça. D'abord, la suppression de la barre des 5% motive l'électeur, il a la garantie que son vote sera utile. Ensuite, l'affichage des têtes de listes pour la présidence de la commission était un vrai débat en Allemagne. Le fait que le candidat des sociaux démocrates soit allemand y contribuait probablement.

Au delà de la participation, l'Allemagne est probablement le pays ayant envoyé le plus de partis au parlement. Grâce à la suppression de la barre, ce sont en effet pas moins de 14 partis qui seront représentés au parlement européen. Les arrondis sont très favorables aux plus petits partis. Ainsi, le parti représenté avec le moins de suffrages plafonnait à 0,63% des voix, soit 184 525 bulletins. À comparer avec le million de voix et les trois députés des libéraux.

Parmi ces petits partis, la presse française a très largement relayé l'élection du député néo-nazi. Ils auraient aussi pu noter le député de « Die Partei », un parti qui se veut humoristique. Ils ont prévenu qu'ils ne siégeraient pas, et que le principe sera de démissionner tous les mois pour faire tourner le salaire de député à l'ensemble de la liste. On a aussi le parti des familles, le parti de protection des animaux, les pirates, un petit parti écologiste, et les électeurs libres (qui est en réalité un parti de droite, implanté surtout en Bavière).

Sur les gros partis, pas de grosse surprises. Les libéraux sont une nouvelle fois KO à 3,3%. La CDU/CSU de Merkel recule, mais reste tout de même à 35% des voix. Et c'est surtout la CSU qui est en cause, ce qui est presque une bonne nouvelle pour Merkel. Le SPD se refait une santé en remontant à 27% des voix. Au total, la « grande coalition » au pouvoir aura donc obtenue 62% des voix. La seule nouveauté est la confirmation de la force des euros-sceptiques, avec 7% des voix. À voir s'ils parviennent à garder ce rôle de parti contestataire, qui change régulièrement en Allemagne. Ils pourraient être aidés par le calendrier : les élections régionales en Saxe sont en fin d'année, et la Saxe est un terreau fertile pour eux.

Et ensuite, ces députés, que sont-ils devenus ? Ils ont finalement un comportement très allemand... Si dans certains pays, il est difficile d'imaginer que plusieurs partis soient dans le même groupe au parlement, ça ne dérange personne en Allemagne. Le groupe des verts européens contient donc trois partis différents. L'extrême gauche en aura deux, tout comme les libéraux. Seuls deux députés n'ont pas rejoints de groupes (le néo-nazi, et l'humoriste).

Pour rire un peu, une petite évaluation des résultats en sièges avec le système allemand appliqué à la France. On a bien évidemment les perdants :

  • Front national : 20 sièges (contre 24)
  • UMP : 17 sièges (contre 20)
  • PS : 11 sièges (contre 13)

Les petits gagnants :

  • UDI/Modem : 8 sièges (contre 7)
  • Verts : 7 sièges (contre 6)
  • Front de gauche : 5 sièges (contre 4)

Les partis sans élus passeraient :

  • Debout la république : 3 sièges
  • Nouvelle donne : 2 sièges
  • Nous citoyens : 1 siège

jeudi 17 avril 2014

Une attaque d'extrème droite tous les deux jours à l'Est

Les nouveaux Länders, ou la partie de l'Allemagne qui était anciennement l'Allemagne de l'Est, comptent beaucoup d'extrémistes politiques. Cela se ressent à travers les résultats électoraux, notamment du NPD, un parti ouvertement néo-nazis. En 2013, ils atteignaient ainsi lors des élections fédérales plus de 10% dans une circonscription de Berlin, et plus de 5% dans la (magnifique mais parfois mal fréquentée) suisse saxonne, à côté de Dresde. Ils sont également dans deux parlements régionaux de l'Est, en Saxe et en Mecklembourg-Poméranie-Occidentale.

Ces résultats électoraux sont très fortement corrélés aux agressions d'extrême droite, que la police allemande regroupe tous les ans et dont ils publient les résultats. En 2013, 65% de ces agressions sont des blessures, ou des blessures graves, ou des tentatives de meurtres. La moitié sont des actes racistes, un bon tiers des agressions contre des adversaires politiques (pas forcément actifs politiquement, il suffit de ne pas être d'extrême droite pour être concerné), et le "reste" concerne des attaques homophobes, antisémites, contre les handicapés, et même les attaques motivées par le "darwinisme social".

Ces extrêmes sont particulièrement actifs en Saxe, et 2013 est une année noire avec une augmentation de 20% des cas recensés par la police. Dans le reste de l'Allemagne de l'Est, ça augmente partout sauf en Thuringe et en Brandenbourg. Berlin, c'est un peu comme la Saxe, et se distingue également négativement, avec 185 agressions en 2013.

L'Allemagne est donc très loin d'être épargnée par les extrêmes, avec des conséquences dramatiques. C'est en moyenne une agression tous les deux jours à l'Est. Il est à mon avis toujours bon de le rappeler, surtout quand on nous vend l'Allemagne comme un pays idéal avec une économie florissante, en oubliant un peu le reste. Plus d'informations sont disponibles pour les germanophones.

mardi 25 mars 2014

Un nouveau navigateur dans Weboob

Le navigateur (ou Browser) est dans Weboob une classe pour faciliter l'écriture de modules. Comme son nom l'indique, il est là pour contenir les fonctions habituelles d'un navigateur Web, évitant au module de devoir gérer les requêtes de bas niveau.

Browser1 est le navigateur historique, basé sur mechanize, et ajoutant des fonctionnalités propres à Weboob. Malheureusement, il est apparu au cours du temps que mechanize avait de nombreuses limitations, et que son architecture rendait certaines choses (comme la gestion des formulaires) très laborieuses.

Browser2 est le nom de code pour le remplacement de ce navigateur. C'est un projet qui dure depuis quelques versions de Weboob, mais est arrivé cette fois dans la branche de développement. Il est cette fois basé sur requests. Cette bibliothèque est plus bas niveau que mechanize, et de nombreuses fonctions sont donc cette fois directement intégrées dans Weboob. Et ça permet de simplifier beaucoup de choses.

Romain a déjà beaucoup écrit sur Browser2, mais je complète par mon opinion. J'ai récrit quelques modules avec, et on peut dire que c'est vraiment de grand changements. En effet, non seulement Browser2 est plus simple, mais l'ajout de fonctions pour simplifier l'extraction de données dans les pages est un vrai plaisir. Cela aurait certes pu être découplé de Browser2, mais le changement de navigateur était une bonne occasion pour remettre les choses à plat et profiter de l'expérience accumulée en écriture de modules.

J'aime donc beaucoup les filtres, un ensemble d'outils pour extraire les données d'une page Web. Ils sont construits d'une manière qui me rappelle un peu la programmation fonctionnelle, on applique des compositions de fonctions pour arriver au résultat désiré. Prenons l'exemple du module pour Poivy. Le code ressemble maintenant à ça :


class HistoryPage(LoggedPage, HTMLPage):
    @method
    class get_calls(ListElement):
        item_xpath = '//table/tbody/tr'
        class item(ItemElement):
            klass = Detail
            obj_datetime = Date(CleanText('td[1] | td[2]'))
            obj_price = CleanDecimal('td[7]', replace_dots=False, default=0)
            obj_currency = u'EUR'
            obj_label = Format(u"%s from %s to %s - %s",
                               CleanText('td[3]'), CleanText('td[4]'),
                               CleanText('td[5]'), CleanText('td[6]'))

Avec ce code, on itère automagiquement sur toutes les lignes de l'historique de la page. On signale par l'héritage de LoggedPage que l'on est certain que le login a réussi si on atteint cette page. Il est inutile de créer et de renvoyer l'objet Detail à chaque itération, la ligne klass suffit Et on parse vraiment très facilement les éléments. On transforme ainsi la septième colonne des lignes du tableau en décimal, c'est le prix de la ligne. On spécifie de ne pas remplacer les points (souvent utilisés comme séparateur pour les milliers en France), et le default=0 est une option magique pour dire que si ce n'est pas un décimal, c'est gratuit (cas des appels inclus dans le forfait). Il fallait autrement vérifier à la main le contenu et gérer si nécessaire les exceptions.

Les fonctions DateTime, Time et Date sont également assez magiques, transformant du texte pas toujours bien ordonné en un objet correspondant python. Par rapport au code précédent, c'est une division par deux du nombre de lignes. Et par beaucoup plus de la lisibilité. Les filtres définis sont très nombreux, permettant l'utilisation d'expression rationnelle, de formater des chaînes, de récupérer très facilement les attributs d'une balise html, etc. Comme ils se combinent, on applique ce dont on a besoin en une seule fois.
Il y a beaucoup d'autres fonctionnalités magie dans Browser2, dont notamment la pagination. Je n'avais jamais ajouté la pagination de l'historique au module poivy, car la pagination n'était pas toujours très pratique sur l'ancien navigateur. À présent, c'est fait en quelques lignes. En ajoutant à la classe get_calls ces quelques lignes :


    next_page = Link("//div[@class='date-navigator center']/span/a[contains(text(), 'Previous')]",
                     default=None)

On va donc chercher le lien vers la page suivante, et on rend un objet Link s'il faut itérer, None si on ne trouve rien. Le navigateur se charge ensuite d'aller sur les pages au fur et à mesure si c'est nécessaire.

En bilan chiffré, la partie navigateur et extraction des données du module Poivy est passé de 125 à 85 lignes (sans copyright, commentaires et lignes vides). En gagnant au passage à la fois en fonctionnalité et en lisibilité du code. Browser2 est vraiment une étape importante pour la simplicité des modules Weboob.

mercredi 26 février 2014

Un député européen avec moins d'un pourcent des voix

Si l'Europe fixe quelques règles pour les élections européennes, les détails sont gérés par les états. Ces détails changent totalement la nature du scrutin entre les pays, et le pourcentage de voix réellement nécessaire pour obtenir des députés. En France, le découpage « grandes régions » et les règles d'arrondis avantages très fortement les gros partis, et la limite des 5% n'est qu'une illusion. L'UMP avait ainsi obtenu 40% des sièges en 2009 avec seulement 28% des voix. Et Libertas avait gagné un siège, alors qu'ils obtenaient au niveau national moins de voix que le NPA qui repartait bredouille.

En Allemagne, la règle pour les européennes c'est la circonscription unique, et un arrondi plutôt en faveur des petits partis, à condition qu'ils dépassent les 5%. Cette limite des 5% est habituelle en Allemagne, et correspond à la même limite que pour les élections fédérales.

C'est cette limite que la cour constitutionelle vient de faire sauter pour les européennes. L'argument est le suivant : au parlement européen, il y a des dizaines de partis, provenant de tous les pays, et pourtant ça semble fonctionner correctement. La limite des 5% ne doit être présente que pour les scrutins dont la présence des petits partis pourrait empêcher d'obtenir une majorité stable au parlement. Dans les autres cas, la règle est que chaque voix doit avoir la même influence. Cette limite de 5% ne respecte donc pas la constitution allemande, rendant de fait caduque le vote de nombreux allemands.

Historiquement, la cour a déjà fait sauter une fois cette limite en 2011. Le Bundestag (dont seuls les partis dépassant les 5% sont membres...) avait donc réintroduit une limite, cette fois à 3%. Cette limite n'était toujours pas acceptable pour les petits partis, qui ont lancé un recours. Et ils ont gagnés. La cour a aujourd'hui de nouveau fait sauter cette limite de 3%, supprimant de fait toute limite pour obtenir un élu.

À noter que la cour était très loin d'être unanime, c'est avec la plus courte majorité de cinq juges contre trois que cette décision est passée.

Concrètement, cela risque d'augmenter fortement la diversité des élus européens allemands. L'Allemagne dispose de 99 députés européens, ce qui rabaisse la limite effective pour obtenir un élu à environ 1% des voix. Un calcul sur les résultats de 2009 rajouterait sept partis obtenant au moins un mandat, dont le parti de protection des animaux, le parti des retraités, les pirates, mais aussi les néo-nazis du NPD. On ne peut cependant évidemment pas prédire l'évolution du comportement des électeurs, qui savent désormais qu'ils peuvent voter pour un petit parti sans que leur vote ne soit "perdu".

jeudi 20 février 2014

Rapports de bugs tout simplement avec Weboob

Un des paradoxe du projet Weboob, c'est la création de ticket qui passe surtout par l'interface Web du gestionnaire de tickets Redmine. Bien entendu, il existe un module Redmine, bien pratique pour les développeurs. Mais pour les utilisateurs, configurer le module juste pour ouvrir un rapport de bug était un peu compliqué, alors que cela devrait être une action simple.
Cependant, tout était déjà presque là pour faire un système agréable. Nous avons le module capable de créer des tickets, et une application pour utiliser le module. Afin de pouvoir facilement importer/exporter des bugs, cette application a été améliorée dans la branche de développement pour être capable de lire un ticket à partir d'un pipe reçu. Concrètement, un simple cat ticket.txt | boobtracker post weboob suffit à envoyer un ticket. De la même façon, un bug peut-être transformé en format texte.
Améliorons encore l'idée. On veut fournir un service simple pour les utilisateurs afin d'ouvrir un bug. Un moyen standard de transférer du texte, c'est l'email. On peut donc un peu modifier la configuration de postfix pour y ajouter un truc comme ça dans le fichier master.cf
weboobreport     unix -        n       n       -       -       
pipeflags=FR user=toto
argv=/usr/local/bin/boobtracker post weboob

Et hop, à la réception d'un mail, on envoie un ticket sur le gestionnaire de tickets. C'est ainsi que les utilisateurs de Weboob peuvent désormais ouvrir des bugs très simplement en envoyant un mail à nomdumodule@issues.weboob.org. Cela évite également de publier les adresses mails des mainteneurs des paquets lors d'un crash, et évitera de perdre des rapports de bugs envoyés directement aux mainteneurs (qui peuvent avoir délaissés le projet depuis). Cette fonctionnalité sera mise en avant dans la prochaine version publiée.

mardi 15 octobre 2013

SSD m4 de Crucial : le bug de l'obsolescence programmée

J'ai la chance d'avoir un SSD dans mon ordinateur de travail, ce qui permet de gagner énormément de temps par rapport à un disque dur. Ça c'est pour la théorie, car j'ai perdu des heures la semaine dernière sur un bug assez curieux. Les symptômes étaient assez simples : le système perdait le contact avec le disque, rendant l'ordinateur totalement inutilisable et forçant un redémarrage électrique.

J'ai d'abord cru à un problème matériel, la connexion entre le disque et la carte mère n'étant pas très solide sur mon ordinateur portable. Un faux contact est vite arrivé (et s'était déjà produit), et j'ai ouvert et nettoyé tout ça. Sans changement. J'étais d'autant plus circonspect qu'un démarrage se déroulait toujours parfaitement bien, alors qu'un faux contact devrait se manifester dans toutes les situations.

J'ai donc ensuite songé à un problème logiciel, en constatant au passage que mon ordinateur plantait après 3600 secondes d'utilisation environ, soit une heure. Mais revenir sur un ancien noyau ne changeait rien, hormis que le système plantait encore plus violemment. Rien du côté de l'historique SMART, rien de clair dans les logs systèmes, aucun programme qui se lance une heure après le démarrage. J'ai testé beaucoup de choses.

Cette piste logicielle était pourtant la bonne, mais à un niveau en-dessous. Les SSD de Crucial sont en effet victimes d'un bug des 5184 heures. Il n'est pas précisé pourquoi 5184 heures (c'est 3 au cube multiplié par 2 puissance 6). Il est bien entendu impossible de savoir s'il s'agit de réelle incompétence, ou d'une volonté d'obsolescence programmée. Après tout, qui parmi le grand public va penser à aller chercher sur le site du constructeur les correctifs ? D'autant plus qu'aucun historique des versions n'est disponible, et que le site actuel du fabricant ne mentionne absolument pas ce bug ? Il faut fouiller les forums obscurs pour reconstruire l'historique des versions, et trouver l'annonce de la mise à jour 0309 (version qui suit la 0009, et précède la version 000F, histoire vraie...). Après avoir trouvé ça, il faut suivre la procédure de mise à jour qui est bien entendu surtout prévue pour un système WIndows. Quelle est donc la proportion de mise à jour par rapport au nombre de SSD vendus ?

C'est typique pour moi du risque de l'ajout d'intelligence dans les composants matériels. On se met à la merci du constructeur, qui fait ce qu'il veut dans son coin, avec du code complètement obscur. En allant chercher les annonces de chaque nouvelle version, c'est édifiant de voir des améliorations de performances et des corrections de bugs, pour un matériel qui lui ne change évidemment pas. Le genre de lignes d'historique que j'aimerai voir dans une nouvelle version du noyau Linux, pas sur le forum d'un fabricant de matériel. Jugez-vous même :

0309

  • Correct a condition where an incorrect response to a SMART counter will cause the m4 drive to become unresponsive after 5184 hours of Power-on time. The drive will recover after a power cycle, however, this failure will repeat once per hour after reaching this point. The condition will allow the end user to successfully update firmware, and poses no risk to user or system data stored on the drive.

000F

  • Improved compatibility with certain SAS expanders and peripheral RAID cards.
  • Improved throughput stability under extremely heavy workloads.
  • Improved data protection in the event of unexpected, asynchronous power loss.

010G

  • Improved Trim response time
  • Improved power-on-to-ready time (known as POR, or TTR for Time-to-ready)
  • Improved resume-time from low power modes, and improved reliability of warm reboot
  • Improved power consumption by disabling HIPM (Host Initiated Power Management)

040H

  • Improved robustness in the event of an unexpected power loss. Significantly reduces the incidence of long reboot times after an unexpected power loss.
  • Corrected minor status reporting error during SMART Drive Self Test execution (does not affect SMART attribute data).
  • Streamlined firmware update command for smoother operation in Windows 8.
  • Improved wear leveling algorithms to improve data throughput when foreground wear leveling is required.

070H

  • Resolved a power-up timing issue that could result in a drive hang, resulting in an inability to communicate with the host computer. The hang condition would typically occur during power-up or resume from Sleep or Hibernate. Most often, a new power cycle will clear the condition and allow normal operations to continue. The failure mode has only been observed in factory test. The failure mode is believed to have been contained to the factory. This fix is being implemented for all new builds, for all form factors, as a precautionary measure. The fix may be implemented in the field, as desired, to prevent occurrence of this boot-time failure. To date, no known field returns have been shown to be related to this issue. A failure of this type would typically be recoverable by a system reset.

jeudi 3 octobre 2013

Virtualbox, pas que des Virtualbugs

Virtualbox, c'est super. Une interface sympa pour créer plein de machines virtuelles, rapide pour créer un petit réseau de test.

Mais parfois, on tombe sur des trucs comme ça. Et on perd une demi-journée à se demander pourquoi TCP marchote, mais n'arrête pas d'envoyer des retransmissions. Pourquoi ça ne le fait que sur certains ordinateurs. Pourquoi ça ne le fait pas quand on a son propre module noyau qui tourne pour modifier les paquets. Ensuite par hasard on se rend compte que quand ça ne marche pas, les paquets subissent une modification de checksum sur un routeur virtualbox (mais, mais, pourquoi ?). Et ceci uniquement sur des paquets TCP en IPv6 transmettant des données (le SYN/ACK marce, UDP marche, IPv4 marche, etc).

Ensuite on se rend compte que l'autre routeur Virtualbox (celui qui marche et ne fait pas ça), il est en version 4.2. Celui qui ne marche pas utilise la version Debian 4.0.

Et après, on met à jour, et on lit le Changelog. Et on comprend tout à la ligne « Virtio-net: properly announce that the guest has to handle partial TCP checksums ». Enfin, presque.

Ce qui permet de rappeler qu'aujourd'hui, c'est le jour de l'Unité Allemande. La fête nationale, un jour férié.

lundi 23 septembre 2013

Élection en Hesse

Hier, il n'y avait pas que les élections fédérales. En Hesse, on est moins fier que la Bavière, et on autorise donc les élections conjointes pour éviter d'emmerder l'électeur à se déplacer deux fois. L'inconvénient, c'est qu'on entend bien entendu moins parler de vous.

Dans ce land de taille moyenne (6 millions d'habitants), la coalition sortante était à l'image du gouvernement fédéral : noire-jaune, c'est à dire une coalition de conservateurs et de libéraux. La Hesse est traditionnellement une terre libérale, ils ont toujours été élus où presque au parlement régional (une fois absents pour un an). Je ne peux guère vous parler des enjeux politiques locaux : je n'en sais rien. D'autant plus que la campagne était relativement inaudible sous la politique nationale.

Les objectifs étaient cependant pour les Verts et le SPD de former une coalition, et pour les libéraux et conservateurs de reconduire le gouvernement. La soirée électorale a été très confuse pour eux, les résultats finaux n'arrivant que très tard, et les sondages sortis des urnes se trompant. On a pu envisager que seuls trois partis seraient représentés, ils seront finalement cinq.

Commençons par la CDU. Ils ne profitent pas de l'effet Merkel, ou presque. Ils stagnent à 38,3% (+1,1), ce qui est certes déjà pas mal, mais loin d'être extraordinaire vu la soirée. De l'autre côté, le SPD fait par contre un carton. Ils partaient certes de très loin, mais ils remontent à 30,7% (+7). Encore un signe que le SPD, au moins dans les länders, va mieux. Ce sera cependant insuffisant pour les deux pour gouverner avec leurs alliés traditionnels. Les Verts font un petit 11,1% (-2,6), ce qui sera insuffisant pour prétendre à une majorité avec le SPD. Les libéraux eux étaient donnés sortant toute la soirée, jusqu'à 2h du matin en réalité. Ils accrochent un 5,03% des voix, ce qui a peut-être sauvé la nuit de quelques personnes. Pas terrible pour une terre libérale, mais ils restent.

Et Die Linke, avec ses 5,2%, empêche une nouvelle fois les coalitions "classiques" de se mettre en place. Il reste donc soit l'alliance de toutes les gauches, la grande coalition, ou la coalition entre conservateurs et verts. Il serait logique qu'ils suivent le modèle fédéral, mais c'est loin d'être garanti.

En tout cas, si le FDP sauve sa peau, il perd un nouveau gouvernement régional. Après la Bavière, et bien d'autres, il ne reste au pouvoir que dans un seul land : la Saxe. Les élections, c'est l'an prochain... Et autre chose, cela permet de rappeler que quoi qu'il arrive, Merkel est de fait déjà sous une forme de cohabitation. Le Bundesrat est de toute façon plutôt à gauche, et une majorité passe au minimum par le SPD, et plus probablement également par les verts.

Merkel, le rouleau compresseur

Le résultat des élections d'hier est sans appel : Merkel est la grande gagnante arithmétique du scrutin. La CDU/CSU obtient un score de 41,5% des voix, et regagne 6 millions de voix par rapport à 2009 (pour un nombre de votants équivalent, la participation n'a finalement presque pas bougé). L'effet « chancelière » est incontestable, les conservateurs regagnent des voix en Bavière par rapport à la semaine dernière, et même en Hesse ou le scrutin était simultané la CDU fait mieux au niveau fédéral qu'au niveau régional. Imaginez un peu, un chef de gouvernement de droite depuis huit ans, et dont pourtant plus de 50% des électeurs de Die Linke (l'équivalent du front de gauche) sont satisfaits de son travail...

À un moment de la soirée, les sondeurs ont même vu une possibilité de majorité absolue pour Merkel, une situation qui aurait été une première depuis 50 ans. Cette idée n'a peut-être vécue qu'une demi-heure, mais l'impact psychologique est probablement très important. La CDU aurait pu gagner seule. Les électeurs de la CDU ayant tentés de sauver les libéraux doivent s'en mordre les doigts jusqu'au sang : le vote stratégique a été un désastre pour la droite.

En effet, derrière Merkel, les libéraux s'effondrent. Moins certes que les télévisions l'annonçaient en début de soirée, ils arrivent à 4,8% au niveau fédéral et dépassent tout juste les 5% en Hesse (jusqu'à 2h du matin, ils étaient donnés en dessous des 5% en Hesse). C'est un désastre pour eux, ils étaient à 15% en 2009. Ils perdent 100 députés et les moyens qui vont avec, et se retrouvent sans visibilité médiatique. Par exemple, ils n'étaient pas invités sur les plateaux de télévisions hier, car seuls les « partis parlementaires » sont invités... Humiliation à mon sens inutile pour un parti qui a encore des ministres pour quelques semaines. Et humiliation encore plus ridicule en fin de soirée, où les présentateurs avaient perdus un peu de leur assurance sur la disparition du FDP. Ils auraient eu l'air fin s'ils avaient dépassés de justesse les 5%.

Sans les libéraux, Merkel n'a donc pas de majorité naturelle, ce qui va peut-être la contrarier. La gauche est même majoritaire au parlement, avec Die Linke, Die Grünen, et le SPD. Ils ne formeront pas de coalition entre eux, mais c'est tout de même à noter. Je me demande qui des Verts ou du SPD va tenter une coalition avec Merkel. Cela fait deux fois que gouverner avec Merkel est l'équivalent d'un baiser de la mort (le SPD ne s'en est pas encore remis, le FDP est en état de mort cérébrale), il faudra être courageux pour tenter un troisième essai.

Pour les résultats en détails, le SPD remonte un peu à 25,7% (+2,7). C'est un semi-échec, l'objectif avoué était d'arriver à 30. En comparaison des autres partis, c'est cependant un excellent résultat.

Pour les Verts, c'était une mauvaise soirée. Ils descendent à 8,4% (-2,3). Pour un parti ayant fleurté avec les 25% après Fukushima, et se trouvant encore à 15% en début de campagne, c'est la douche froide. La fin de campagne était catastrophique, et cela se ressent d'ailleurs dans les votes par correspondance à Dresde, bien meilleurs pour eux que les votes à l'urne (on peut voter plusieurs semaines en avance par courrier en Allemagne). Je ne sais pas si les résultats dresdois sont comparables au reste du pays pour cette différence urne/courrier, mais si c'est le cas, ils auront de quoi avoir des regrets.

Die Linke était au contraire à la fête, malgré son net recul. Avec 8,6% des voix (-3,3), ils deviennent la troisième force politique du pays, joli pied de nez aux verts. Les pirates par contre ne bougent pas beaucoup, à 2,2% des voix. Très loin de ce qu'ils pouvaient espérer...

Pour terminer, l'autre grand gagnant de la soirée est le parti anti-euro fondé il y a six mois, l'AfD. Avec 4,7% des voix, ils frôlent l'entrée au parlement. Dans l'Est, ils dépassent les libéraux presque partout, et sont au-dessus des 5% dans toutes les régions. C'est un signe à un an des élections régionales dans les länders de l'Est, ils pourraient rentrer en force dans les parlements régionaux en remplacement des libéraux. Par contre, ils ont clairement mordus sur les voix de l'extrême droite, pas seulement sur les partis contestataires anti-Europe. Leur score en Saxe n'est pas forcément une surprise, surtout là ou les néo-nazis font traditionnellement des bons scores. À voir ce qu'ils vont devenir, il ne sera pas facile de garder un discours « propre » en façade et des soutiens plus extrêmes. Ça pourrait paradoxalement être une chance pour les libéraux, si cela permettait de se débarrasser de leurs membres les plus à droite et retrouver un positionnement centriste qui a fait leur succès dans l'histoire.

En conclusion, la droite était clairement majoritaire en voix hier. Mais du point de vue de la dispersion, ils ne pouvaient pas faire pire. Le FDP et l'AfD frôlent les 5%, mais ces voix sont perdues. Avec 0,3% des voix en plus ou en moins pour le FDP, Merkel aurait eu la majorité (seule ou avec les libéraux). Un simple problème de répartition... Cela donne une majorité des voix à la gauche en parlement, mais sans le soutien politique suffisant pour que le SDP et les Verts prennent le risque de s'allier avec Die Linke.

dimanche 22 septembre 2013

Du système de vote allemand

Les allemands votent aujourd'hui. Et il est amusant de voir des journalistes tenter d'expliquer le système de vote. La palme de l'incompétence revient cette année à Libération, avec cet article surréaliste. L'animation du Figaro n'est pas trop mal, mais souffre du même tort que celui du Monde, on sent bien qu'ils ont pris l'article vieux de quatre ans et ont tenté de rajouter un truc à la fin sur le nouveau mode de scrutin.

Reprenons donc. Depuis la réforme du scrutin, seule la seconde voix (la proportionnelle) fera le rapport de force au parlement. S'il y avait que trois partis, ayant chacun 33% des secondes voix, ils auraient chacun 33% des sièges, même si un des partis remportait 100% des premières voix. Et ainsi de suite dans des systèmes plus complexes : x% des secondes voix des partis ayant dépassé les 5% implique x% des sièges.

Alors, à quoi sert encore cette première voix ? Pas à grand chose. À choisir les députés qui seront élus parmi les grands partis (un élu directement fera un élu de moins élu sur la liste), et à garantir la présence d'un élu dans chacune des 299 circonscriptions. Point. Ce que vous pouvez lire dans l'article du Monde sur les stratégies de voix différentes pour obtenir plus de sièges sur une coalition était vrai avant, mais plus maintenant.

Pour aller dans le détail, le système de calcul de ces sièges est cependant très vraiment très complexe, et relativement amusant. Mais n'intéresse pas grand monde hormis les candidats. Comme les élus directs sont toujours élus, il y a un mécanisme de compensation du nombre de sièges pour les autres partis si un parti obtient trop de mandats. Il est donc impossible de savoir le nombre de députés qui sortira des élections allemandes. Un minimum de 598 est certain, mais ensuite certains calculs laissent penser qu'ils pourraient être jusqu'à 800 (il faudrait alors pousser les murs, ils étaient 621 aux dernières élections). Si vous êtes en fin de liste d'un parti, vous aurez probablement envie que ce soit plus proche de 800 que de 621...

Autre effet amusant, si un parti gagne des mandats directs, il peut du coup perdre des sièges (ainsi que tout les autres partis certes, comme déjà dit le rapport de force ne change pas). Voici par exemple une simulation sur les élections de 2009 :

(source : spektrum.de))

À gauche, le nombre de sièges qu'aurait obtenu le SPD au total avec le nouveau mode de scrutin. En bas, le nombre de mandats directs obtenus en plus ou en moins par rapport aux résultats réels. En perdant 7 circonscriptions, ils auraient eu 170 sièges. En gagnant 9 circonscriptions supplémentaires, 157 sièges. Ça laisse imaginer les variations que cela peut donner au nombre total des députés, car les autres partis gagnent/perdent aussi des sièges dans le même mouvement. Donc, si vous êtes allemands, que vous voulez diminuer le nombre de députés : votez SPD en première voix... Au contraire, un bon moyen de faire exploser le nombre de députés est de voter CSU en Bavière en première voix et pas en seconde.

mercredi 18 septembre 2013

La bavière a voté

C'est avec un peu de latence qu'arrive cet article. La Bavière votait donc dimanche dernier, et à une semaine des élections fédérales, on peut parler d'un match nul en terme d'impact.

Comme prévu, la CSU fait un score énorme et obtient 47,7% des voix. Celui lui assure la majorité absolue, qu'elle a normalement presque toujours (la législature précédente était un séisme vu qu'ils ne l'avaient pas...). C'est une semi-bonne nouvelle pour Merkel. Son allié est en excellente forme, et les électeurs conservateurs semblent capables de se mobiliser. Malheureusement, ça risque de rendre la CSU encore plus remuante au niveau fédéral. Et si Merkel a recentré la CDU (parti qu'elle a également mis complètement au pas), il en est pas de même de la CSU qui n'a de compte à rendre qu'aux électeurs de Bavière, et peut donc être très énervant pour un gouvernement d'Allemagne. Certains journaux parlent « d'opposition à l'intérieur du gouvernement » pour la CSU.

Le second « vainqueur » du scrutin est le SPD. Avec un gain de 2 point de pourcentage des voix, ils peuvent être heureux, malgré un score pas flamboyant de 20,6%. C'est la première fois depuis très longtemps que le SPD ne perd pas des voix en Bavière, et ils ont fait mieux que les sondages prédisaient. Bref, ils sont presque heureux. Surtout en comparaison des autres partis.

En effet, derrière, c'est l'hécatombe. Les libéraux du FDP font un score misérable de 3% (contre 8% en 2008). Ils sortent du parlement régional, et ont maintenant très peur de sortir également du parlement fédéral. Mauvaise journée, ils passent du coup en mode « tous les coups sont permis », j'y reviendrai.

Pour les Verts, ils chutent de 9,4 à 8,6% des voix. C'est la confirmation que les Verts n'arrivent pas à convaincre dans cette campagne. Ils étaient auparavant bien positionnés, mais ils ne font que chuter depuis le mois d'août. Je ne sais pas d'où ça vient exactement, mais ils sont en tout cas le parti qui a le plus fluctué.

Pour les « électeurs libres », un parti populiste régional de droite anti-euro, c'est pas la joie non plus (je dis régional car ils n'ont jamais percés ailleurs, mais ils tentent de s'implanter partout en théorie). Ils passent de plus de 10% à 9%.

Enfin, dans l'opposition non parlementaire, Die Linke passe de 4,3% à 2,1%. Les Pirates obtiennent 2%. Et plein d'autres petits partis accumulent tout de même beaucoup de voix. En prenant tous les partis non représentés au parlement, on obtient tout de même 14% des voix. C'est beaucoup pour l'Allemagne, je pense que ça ressemble à un record pour la Bavière. J'y vois un signe d'insatisfaction envers les « gros » partis.

Donc au global, Merkel est semi-heureuse de la victoire de la CSU. La défaite des libéraux semble diminuer les chances de reconduire une coalition avec eux au niveau fédéral. Pour le SPD, la mauvaise santé des Verts efface doucement leurs derniers espoirs de construire un gouvernement avec eux. Je crois que pas grand monde au niveau fédéral ne peut se satisfaire de ce résultat bavarois.

Après, les conséquences. Le FDP a confirmation qu'ils luttent pour leur survie politique. Et pour ses dirigeants, ils luttent pour leurs sièges de députés, même s'ils sont têtes de listes. Ils sont donc prêts à tout, et arrivent au niveau zéro de la campagne électorale. On voit ainsi des affiches « évitez une coalition rouge-rouge-verte », dont tout le monde sait bien qu'elle est totalement improbable. C'est déjà prendre ses électeurs pour des cons. Cependant, le pompon arrive sur la même affiche en rajoutant « la seconde voix pour le FDP ». En effet, les allemands ont deux voix, une pour le candidat élu directement dans la circonscription et une pour la part proportionnelle. Le message implicite est donc de voter CDU avec la première, et FDP avec la seconde, pour optimiser l'utilisation des voix. Ça marchait un peu avant. Le code électoral a cependant été douloureusement réformé, et seule la seconde voix est désormais utile pour le rapport de force entre les partis. La première ne sert qu'à choisir qui sera élu dans les grands partis. Une voix de la CDU pour le FDP ne fait dont qu'affaiblir la CDU, mais n'augmentera pas les chances de former une coalition avec le FDP, ne changeant pas le rapport de force global droite/gauche. C'est donc prendre des gens pour des abrutis, en espérant que la réforme du code électoral ne connaisse pas une trop grande publicité (et ça peut marcher, beaucoup d'allemands ne comprennent pas du tout comment ça marche...).

Cette stratégie énerve profondément la CDU, qui n'a pas envie de perdre des voix (étonnamment). S'il n'y a qu'un transfert de voix de la CDU vers le FDP, ça ne suffira pas pour obtenir une majorité, il faut que le FDP arrive à convaincre son électorat habituel. On verra cependant dimanche si la stratégie du FDP était bonne, au moins pour sauver leurs fesses...

mercredi 4 septembre 2013

Ça bougerait presque

J'ai suivi le débat entre Merkel et Steinbrück dimanche dernier, entouré d'un petit groupe d'amis allemands. On était très loin de la foire d'empoigne que j'ai pu voir sur des débats en France. En effet, les candidats ne sont pas censés se parler directement... Leurs seuls interlocuteurs sont les journalistes, même s'ils font parfois des exceptions à la règle pour se répondre directement. Les interactions restent cependant très limitées.

Le défaut de la méthode, c'est que les candidats ont parfois très envie de répondre à côté de la question. Mais c'est aux journalistes de recadrer en théorie si ça va trop loin. Ils ont beaucoup parlé de la Grèce, ainsi que de l'introduction de l'équivalent d'un SMIC en Allemagne, et de la surveillance généralisée par la NSA. Rien de neuf pour quelqu'un s'informant un peu sur la vie politique, mais les 90 minutes étaient probablement un bon résumé de la campagne.

En bref, le sentiment général à la fin était que Steinbrück était bien meilleur que prévu. Même si les attentes étaient loin d'être folles, il a fait jeu égal avec Merkel (c'est à la fois l'opinion « en direct » de mon groupe absolument pas représentatif et des sondages). Mieux, d'après les sondages, il aurait réussi une performance auprès du groupe des votants qui n'ont pas encore pris de décision. Ceux qui sont finalement a priori les plus importants, le débat n'est pas là pour retourner quelqu'un de déterminer.

Tout ça permet de relancer un peu la campagne. On s'ennuie moins. Le SPD fait semblant d'y croire, et il semblerait que les militants soient remotivés. De l'autre côté, Merkel a ressorti l'épouvantail Die Linke. L'idée est de mobiliser l'électorat de droite, en faisant croire qu'une coalition entre l'extrême gauche, le SPD et les Verts est possible. Elle avait déjà tentée ce refrain en 2008, ce qui Steinbrück lui a d'ailleurs fait remarquer en 2008. Cette coalition est pour moi (et pas que moi), complètement improbable. En voici les raisons :

  • Le SPD est contre. Si à l'Est il est possible de faire des coalitions avec Die Linke (uniquement si le SPD est le premier parti, il est hors de question de faire élire un ministre-président Die Linke), les factions du SPD en ex-allemagne de l'ouest ne veulent pas en entendre parler. Steinbrück a très bien expliqué lors du débat pourquoi il y était opposé.
  • Die Linke est contre. Coopérer avec le SPD, ce serait probablement se saborder. Leurs demandes sont trop éloignées du programme du SPD pour espérer arriver à un compromis.
  • Si par miracle ces deux premiers partis s'entendaient, les Grünen ne veulent pas entendre parler de faire partie d'une telle coalition. Les Grünen, c'est aussi « Bündnis 90 », des opposants au régime communiste en ex-allemagne de l'Est. Personne ne peut imaginer sérieusement que ces gens là puissent travailler avec Die Linke, qui est (hélas encore) rempli de nostalgiques de la période.

Pourtant, ça doit probablement marcher, si Merkel et les libéraux tentent d'en faire un thème de campagne... C'est un peu triste cependant d'en être réduit à ça pour mobiliser son électorat (dont beaucoup se satisferaient d'une grande coalition, comme je l'ai déjà dit).

Ce soir, c'était le débat pour les élections régionales en Bavière du 15 septembre. Je suis curieux de voir l'influence de ces élections sur les élections fédérales.

mardi 3 septembre 2013

Weboob dans Linux Pratique

Weboob fait la une du magazine Linux Pratique (même si ce n'est pas précisé, c'est bien de ça dont parle l'encart Web). À l'intérieur, 6 pages parlant du logiciel, ainsi qu'une mention dans l'édito.

Hormis une étape bizarre dans la description de l'installation, le contenu est bon. On regrettera cependant que l'auteur n'ait pas pris contact avec les développeurs, on aurait peut-être pu aider (ou au moins ne pas le découvrir par hasard).

samedi 31 août 2013

La non-campagne allemande

Alors que certains journaux européens attendent parfois beaucoup des élections allemandes, on ne peut pas dire que la campagne mobilise les foules dans le pays en question. L'été a ainsi été très calme, avec seulement de temps en temps quelques réactions au scandale PRISM et de l'intense coopération des services secrets allemands avec la NSA. Scandale qui semble n'avoir favorisé personne, les deux grands partis étant mouillés jusqu'au cou dans ce problème.

Ensuite, de toute façon, Merkel ne veut pas faire campagne. Sa popularité est tellement élevée que la CDU ne fait campagne que sur son nom. C'est d'autant plus simple que le candidat SPD est très impopulaire. En cas de vote direct à la chancellerie, il serait écrasé encore plus qu'il ne risque de l'être le 22 septembre. Donc, on se fait chier... Pas de débat sur les programmes, parfois quelques attaques sur l'Europe qui réveillent un peu. Mais de même que pour PRISM, ce débat est loin d'être assez clivant pour réveiller la population (Merkel cache le coût réel du sauvetage à la Grèce, mais a beau jeu de répondre que l'entrée de la Grèce dans l'euro était une erreur et de la responsabilité du SPD, ça vole très haut). On peut espérer que le débat télévisé de ce week-end changera quelque chose, mais je n'y crois pas trop.

En attendant, un rapide état des lieux des différents partis présents.

Les deux grosses écuries

Les chanceliers allemands ne proviennent depuis 1949 que de deux partis, la CDU et le SPD. Ce sont les deux « Volkspartei », avec environ 500 000 adhérents chacun. Ils amasseront encore à eux deux une grande majorité des votes des allemands, et ceci même si le SPD a perdu de sa superbe depuis 2009 (et n'a pas l'air d'être en état de complètement se relever).

La différence de programme entre les deux partis n'est pas énorme. Merkel a largement recentrée la CDU, qui a tendance à récupérer les idées populaires du SPD. Ainsi, on a même vu la CDU dire être capable d'accepter un salaire minimum en Allemagne. C'est complètement nouveau, et signe des temps. Il y a globalement deux partis sociaux-démocrates en Allemagne, qui n'excluent d'ailleurs pas de gouverner ensemble si nécessaire. Du côté des sondages, la CDU tourne actuellement autour de 39 à 41% (pour 33,8% en 2009), pendant que le SPD plafonne entre 22 et 26% (23% en 2009, mais un score « normal » devrait être au minimum de 35%). La CDU ne dort cependant pas totalement tranquille, car les sondages ont tendance à être au dessus de ses résultats réels.

Ceux qui seront au Bundestag

Pour entrer au Bundestag, il faut dépasser la barrière des 5%. Deux autres partis sont certains de dépasser cette limite : Die Grünen (verts), et Die Linke (parti de gauche et ex-communiste). Les verts flottent actuellement entre 10 et 15%, ce qui est déjà un très bon résultat pour eux (10,7% en 2009). Ils sont cependant très loin des vagues vertes de 2011 à la suite de la catastrophe de Fukushima, qui les avaient notamment propulsés à la tête d'un Land. Si le programme reste bien évidemment écologiste, il est également très social et « de gauche », avec des augmentations d'impôts pour financer de nouvelles prestations sociales. S'il était à un moment envisagé que la CDU s'allie aux verts à partir de 2013, leur programme et les déclarations des dirigeants sont relativement claires : ce sera non. Ils devraient être pour la première fois la troisième force politique du pays, contre cinquième en 2009.

Pour Die Linke, on peut s'attendre à une légère chute après le record de 2009 ou ils frôlaient les 12%. Oskar Lafontaine n'est plus là pour mobiliser les foules, et les critiques sur la finance portent peut-être moins maintenant. Ils seront cependant sans soucis qualifiés avec pour le moment entre 7 et 9% d'intention de vote. Leur fond de commerce reste à l'Est, ou ils peuvent dépasser 30% des voix. J'ai d'ailleurs parfois été un peu surpris par certaines affiches de campagne, ou ils jouent clairement sur la notion d'Allemagne de l'Est.

L'énigme du scrutin

Les libéraux sont pour le moment la vraie question du scrutin. S'ils dépassent les 5%, Merkel devrait pouvoir reconduire la coalition avec eux. Dans le cas contraire, une grande coalition avec le SPD est le plus probable. Si les allemands devaient voter pour une coalition, une majorité souhaite une grande coalition (ce qui est assez nouveau comme idée). Les libéraux sont très très impopulaires, même parmi les partisans de Merkel. Ils étaient tout proche des 15% en 2009, et se battent désormais pour la survie au dessus des 5%. Les derniers sondages sont un peu plus encourageants car ils dépassent à chaque fois les 5%, après avoir été très longtemps en dessous.

Je ne sais pas trop ce que Merkel attend vraiment d'eux. Reconduire une coalition avec un partenaire dont le nombre de voix a été divisé par trois ne sera pas simple politiquement, même s'ils restent au parlement. Surtout qu'il se dégage une légère odeur nauséabonde de leur campagne, j'ai entendu des allemands être choqués de la proximité de leur campagne avec celle des néo-nazis.

Les petits

Il y a beaucoup de petits partis, on totalise plus de 30 partis dans la course (les plus petits n'étant pas candidats partout). Deux sont probablement notables : Alternative für Deutschland, et les Pirates. Pour le premier, ce sont des déçus des conservateurs et des libéraux, qui veulent sortir de l'Euro. Un parti plus à droite que la CDU, mais qui se veut respectable. Je n'aime pas leurs idées, mais je suis content qu'ils existent pour le débat public. La droite de la CDU vaut mieux que les néo-nazis, surtout avec le recentrage opéré par Merkel. Ils plafonnent pour le moment à 3%, il faut voir s'ils arriveront à convaincre suffisamment de libéraux qu'il est temps de retourner sa veste.

Pour les pirates, ont très loin de l'enthousiasme des dernières années. Après beaucoup de querelles internes, leur image est dramatique dans l'opinion. Curieusement, ils ont été incapables de profiter du scandale PRISM. Le problème de la surveillance et de la protection des citoyens face à l'état est pourtant leur cœur politique. Ils sont actuellement entre 2 et 3%, voir même ils ne sont plus sondés (ils n'apparaissent plus dans les résultats des deux derniers sondages). Il va être difficile pour eux de remonter la pente en moins d'un mois.

La blague bavaroise

La Bavière devait renouveler son parlement régional à l'automne 2013. Ils auraient pu organiser le vote le même jour que les élections fédérales, mais ça aurait été se priver d'une exposition médiatique très importante. Ils ont donc choisi la semaine précédente, les électeurs devront se déplacer deux fois.

On est très loin d'un « premier tour » des élections, car la Bavière est très à droite et il n'y a pas de surprises à attendre de ce côté là. Le résultat sera catastrophique pour le SPD, excellent pour la CSU (la branche conservatrice bavaroise). Ils resteront cependant très intéressants pour caler les sondages sur des résultats réels. Les résultats des verts/libéraux/pirates sera donc instructif, et modifiera peut-être le résultat final. Du fait de la barrière des 5%, un parti qui arrive à prouver qu'il peut le faire peut avoir un appel d'air de voix (les allemands n'aiment pas voter dans le vent). Au contraire, ne pas dépasser les 5% sera une très mauvaise nouvelle pour les libéraux et les pirates.

vendredi 19 juillet 2013

J'ai découvert git-annex

C'est en lisant d'un œil discret le Planet Debian que j'ai entendu parler du logiciel git-annex. En version courte, l'idée de ce logiciel est de pouvoir synchroniser/partager/déplacer géographiquement/sauvegarder des fichiers, en utilisant git en arrière plan pour stocker l'état et la localisation des différents fichiers (d'où le nom, c'est vu comme un plugin de git). Les fichiers en eux-mêmes, potentiellement très lourds, sont stockés à l'extérieur du dépôt git.

Quand on le dit comme ça, c'est clairement pas gagné pour le commun des utilisateurs. De base, git-annex est fait pour être utilisé massivement avec de la ligne de commande. C'est déjà pas mal du tout, j'ai synchronisé ainsi quelques dossiers sur différents PC, et j'en suis très satisfait (c'est bien mieux qu'Unison pour mon usage). Dans ce que j'aime beaucoup, il y a la possibilité de voir ou est stocké un fichier et de demander qu'il existe au moins X copies. On peut également définir des niveaux de confiance pour les copies, et bien entendu automatiser le tout. Et il gère très bien les dépôts déconnectés/indisponibles. Pas forcément simple à comprendre au premier coup d'œil, mais très puissant et bien pensé.

Cependant, le meilleur reste à venir. Le développeur du logiciel a obtenu l'an dernier suffisamment d'argent pour travailler à temps plein sur le projet, à travers un projet kickstarter. Cela lui a permis de développer un « assistant » graphique qui s'occupe de toutes les tâches de synchronisation en arrière plan. Pour l'utilisateur, il suffit d'une étape de configuration pour que tout le reste soit complètement transparent (on met les fichiers dans un dossier, on supprime, on vit sa vie en gros, et ça se réplique partout). On a déjà quelque chose pour synchroniser avec un disque de sauvegarde, ou bien entre deux ordinateurs sur le réseau local, ainsi qu'entre plusieurs serveurs pouvant parler en SSH.

Ensuite, on a en bonus la synchronisation par « le nuage », qui permet de synchroniser des dossiers entre des équipements distants et de partager des fichiers avec des amis. J'ai été bluffé par la simplicité. Le système de synchronisation utilise le protocole XMPP. Il suffit de configurer son identifiant XMPP et son mot de passe (en bonus : il insiste bien sur le fait que cela marche aussi avec un compte GMail...), et c'est presque parti. Il faut un serveur « tampon » dans les nuages, pour sauvegarder ce qui doit être synchronisé entre les ordinateurs. Ça tombe bien, git-annex permet d'utiliser un nombre relativement important de plugin (Amazon, rsync.net, un serveur perso avec un SSH, etc). Ce serveur tampon n'a pas forcément besoin d'être énorme, puisque seuls les fichiers à synchroniser sont par défauts stockés (une fois que tout les ordinateurs sont synchronisés, le tampon du serveur est effacé). En bonus, tout est bien évidemment chiffré le temps de passer sur le serveur « dans le nuage ».

On peut aussi utiliser le serveur « tampon » comme un serveur de sauvegarde ou d'archivage. L'interface graphique propose de base de nombreux profils selon ce qu'on veut faire. On peut aussi passer en mode manuel pour ne télécharger que les fichiers que l'on souhaite (très pratique par exemple sur un équipement avec peu de disque. On peut demander les fichiers nécessaires à la demande). L'auteur a d'ailleurs publié plusieurs vidéos de démonstrations, par exemple sur la première approche de l'assistant.

Pour partager avec des amis, c'est peu envahissant. L'assistant détecte la présence de git-annex automatiquement dans la liste des contacts jabber. Cela oblige cependant d'avoir une ressource XMPP connectée, heureusement configurée en indisponible et avec une priorité négative (les messages normaux ne lui seront donc pas adressés). Aucun message n'est d'ailleurs envoyé par git-annex, tout passe par l'assistant. Cette ressource connectée mais indisponible ne me semble pas très gênante à l'usage.

Pour le serveur tampon, je me suis laissé avoir par les arguments marketings. Je pensais au départ utiliser mon serveur habituel, mais il manque parfois d'espace disque. C'est là que j'ai vu que rsync.net proposait une offre pour les utilisateurs de git-annex, en proposant 50Go d'espace disque pour 60$ l'année. C'est trois fois moins cher que leurs tarifs habituels. Leur argument est que les utilisateurs de git-annex demandent beaucoup moins de service de support technique que les autres, ils peuvent donc faire un prix. On verra l'an prochain si c'était vraiment utile. Comme les fichiers synchronisés sont chiffrés, j'ai pas de remords à les laisser là-bas. Et vu la simplicité de git-annex, migrer vers un autre serveur tampon sera trivial si c'est pertinent.

Pour ma part, je pense m'en servir pour :

  • Synchroniser certains fichiers entre le travail et la maison ;
  • Partager des documents avec ma famille plus facilement qu'auparavant (et potentiellement avec des amis) ;
  • Gérer la réplication des sauvegardes. Grâce à l'affichage de la localisation des fichiers, c'est vraiment très pratique.

J'ai été suffisamment convaincu pour faire un modeste don au développeur, qui souhaite travailler un an supplémentaire sur le projet. À noter qu'il ne demande que 1000$ par mois de travail, ce qui est ridiculement bas pour quelqu'un avec ses compétences. Après un fignolage de l'application Android, il prévoit de développer le logiciel pour Windows. Ce serait une bonne nouvelle pour le côté « partage avec les amis ».

P.S. : attention par contre à prendre la toute dernière version. L'assistant a connu de très nombreuses corrections de bugs, qui sinon peuvent être très déconcertants.

jeudi 18 avril 2013

Résoudre les problèmes de mémoire sur les cartes mv643xx_eth

Les cartes réseaux mv643xx_eth c'est ce qui équipe des équipements comme les GuruPlug, les DreamPlugs, probablement les SheevaPlugs et d'autres équipements du même genre.

Malheureusement, ces cartes ont un problème de pilote dans le noyau Debian Wheezy. Le problème se déclare lors d'utilisation de paquets encapsulés (IPSec, GRE, 6to4, et plein d'autres trucs) avec un peu de charge réseau (1,5Mb/s suffit chez moi à poser des soucis). On obtient dans ce cas là une belle trace kernel commençant environ par :

swapper: page allocation failure: order:8, mode:0x20

Hormis ça, le reste semble marcher. On a de la perte de paquets (logique, celui qui déclenche la trace est détruit). Une analyse plus fine montre quand même que le Kernel prend une mémoire folle (plus de 80Mo de RAM pour un simple flux IPSec), et que le débit n'est idéal alors que la bande passante n'est pas saturé et le processeur loin surchargé... J'avais déjà enquêté sur le problème en août, mais je n'avais pas trouvé de solution. Le Kernel semblait allouer des pages contiguës énormes pour un simple paquet (on peut monter jusqu'à un order:10 si on défragmente la mémoire avant), sans aucun lien avec les ressources normalement nécessaires. J'avais tout de même réussi à isoler ce commit, mais par manque de temps et de piste j'avais abandonné (et j'avais configuré mon tunnel IPSec pour utiliser un autre serveur). Les joies d'utiliser du matériel un peu exotique, pour des utilisations très exotiques.

J'ai trouvé aujourd'hui un peu par hasard la solution, ici. Et il y a même le patch qui va bien. J'ai testé ce patch en l'appliquant sur mv643xx_eth.c uniquement, dans l'objectif de recompiler que le module. Et ça a marché :) Plus d'erreurs mémoire, un débit logique, plus d'utilisation incompréhensible de la RAM, tout va pour le mieux.

Et grand merci à Cyril pour son soutien pendant mes recherches en août. Et pour avoir résolu un autre problème très emmerdant sur un autre ordinateur.

lundi 4 mars 2013

Mais il est ou le soleil ?

J'ai été en février 5 jours à Dresde, et les deux fois où j'ai pu voir le soleil c'était dans l'avion à l'aller et au retour, on était suffisamment haut pour sortir des couches nuageuses (oui, il y avait deux couches).

Ça n'aurait servi à rien de rester plus longtemps. Il n'y a eu que 21 heures de soleil pendant tout le mois de février là-bas, dont 8 pour la seule journée du 6 février. Entre le 12 février, le soleil n'a pointé son nez que quinze minutes le 22 février.

Des fois je me dis qu'il est bon d'être ailleurs en hiver. Et pourtant, ça avait un avantage non négligeable : il n'a pas fait très froid, les nuages ça maintient au chaud.

Note : faut pas croire que c'est tout le temps comme ça, c'est le record du mois de février le plus pourri au niveau ensoleillement depuis au moins 1945 (environ 4 fois moins que la moyenne).

mardi 22 janvier 2013

De la petite majorité, des mandats complémentaires, du système de vote...

Je vous ai parlé de la très courte majorité en Basse-Saxe du SPD et des verts. Et bien des gens que j'aime bien, qui s'amusent toujours à décortiquer les règles de scrutins et les sondages, ont calculé comment l'élection aurait pu basculer.

C'est encore le coup des mandats supplémentaires qui est en cause, avec une légère variante car le droit de Basse-Saxe introduit la notion de mandats de compensation (comme la plupart des régions, le niveau fédéral ne le fait pas). En théorie donc, pour chaque mandat supplémentaire obtenu, un mandat est redistribué aux autres partis. Avec les règles d'arrondis, ça peut faire des choses "amusantes". Par exemple, si la CDU avait gagné un siège direct de plus, c'est le FDP qui aurait remporté le mandat complémentaire, et hop majorité pour la droite. Encore un autre de plus, et la droite/gauche arrive exactement à l'équilibre. Sachant que deux circonscriptions se sont jouées respectivement à 336 et 406 voix, ça laisse rêveur.

Autre calcul, les voix "d'emprunt". C'est ce dont je parlais dans le précédent billet, des conservateurs qui votent libéral pour obtenir une coalition de droite. Le calcul confirme ce qu'on savait déjà : c'est une bonne idée de le faire. Avec 2000 voix d'emprunt supplémentaire entre les conservateurs et les libéraux, la droite aurait la majorité (car ça augmente de fait les mandats complémentaires. Sauf que les libéraux obtiennent une partie de ces mandats, renforçant la différence droite/gauche).

Les conservateurs avaient pas mal fait campagne sur ce mécanisme. Il paraît que c'est promis, ils ne recommenceront pas, et aux élections fédérales ce sera du chacun pour soit. Je me permet d'en douter. Ce serait en tout cas très bête pour des électeurs souhaitant une coalition rouge/verte ou jaune/noir de ne pas profiter des failles du scrutin. En votant différemment entre la première et la seconde voix, on augmente l'impact de son vote, surtout pour les scrutins serrés. Le site en question promet de publier les meilleures stratégies de vote selon les circonscriptions et ce que l'on souhaite provoquer pour les élections fédérales, je suis curieux de voir ça.

- page 1 de 9