Le Blog de Thomas

Logiciels libres, Linux embarqué, et autres ...

Formation Linux embarqué à Toulouse

Concours de l'ICFP


En 2006 puis en 2007, j'avais un peu participé au concours de l'International Conference of Functional Programming (qui n'est pas obligatoirement réalisé avec des langages fonctionnels).

Cette année, le concours avait lieu ce WE, de vendredi 20:00:16 à lundi 20:00:16. Nous avons travaillé dessus à 4, mais seulement de vendredi 20:00:16 à environ 4h du matin, soit en gros huit heures de travail sur les 72h de concours. Forcément, le résultat est à la hauteur de notre modeste participation: l'équipe Toulibre++ termine 307ème sur 317 participants classés. Nous n'avons en effet soumis la résolution que pour 2 problèmes sur 16. D'ailleurs, une personne de notre équipe a résolu 2 autres problèmes après notre séance de travail, mais nous ne les avons pas soumis.

Même si le concours est terminé, une petite description du sujet vous donnera peut-être envie d'y jeter un œil. Avant la publication du sujet, la FAQ du site Web disait que des indices étaient déjà en ligne. Pourtant, en regardant de fond en comble le tout petit site Web du concours, je n'avais rien vu d'intéressant. Un seul détail paraissait étrange: le démarrage du concours à 13:00:16 CDT. Pourquoi pas à 13h pile ?

Ça s'est expliqué quand le sujet a été dévoilé : un shuttle s'est accroché à la station Mir le 29 juin 1995 à 13:00:16. Le sujet serait donc lié à l'espace. Et effectivement, l'objectif était de guider un satellite.

Le sujet se décomposait en 4 problèmes comportant chacun 4 scénarios similaires mais avec des données de départ différentes. Pour chaque problème était fourni un blob binaire, pour lequel il fallait écrire une petite machine virtuelle. Il était en effet écrit avec un jeu d'instruction assez particulier (pas de sauts par exemple, et une écriture en mémoire possible seulement à l'adresse de l'instruction), décrit dans le sujet. Cette machine virtuelle faisait donc tourner le code qui simulait le déplacement du satellite. Il fallait fournir des données en entrée (scénario utilisé, et vitesse du satellite en x et en y), et une exécution du binaire renvoyait des données en sortie (position courante du satellite, score actuel, essence restante, position à atteindre). À partir de ces données de sortie, il fallait recalculer des données d'entrée pour le prochain cycle, les injecter dans la machine virtuelle, puis relancer l'exécution du binaire.

Le développement de la machine virtuelle fût relativement simple, si ce n'est que nous avons perdu du temps sur une erreur du sujet, sur laquelle toutes les équipes ont buté (d'après ce que nous avons pu lire sur le canal IRC du concours). La description du jeu d'instruction comportait une erreur de décalage d'un bit, ce qui évidemment faussait complètement l'exécution. En bons bourrins que nous sommes, nous avons donc développé la chose en C (avec un soupçon de C++), car tout le monde ne connaissait pas le Python dans notre petite équipe. Comme quoi le «fonctionnel» dans le titre n'est pas vraiment important :-)

Une fois la machine virtuelle développée, il fallait s'attaquer aux problèmes en tant que tels. Ils relevaient finalement plus de la physique que de l'informatique pure. Dans le premier problème, le satellite que nous contrôlions était en orbite à une altitude donnée, et il fallait l'amener à une autre altitude. Évidemment, la ligne droite n'est pas la bonne solution car il n'y a pas assez d'essence pour cela. Il faut parcourir une trajectoire elliptique qui ne nécessite que deux impulsions : une impulsion pour sortir de la première orbite, puis une seconde impulsion pour se caler sur la deuxième orbite. Heureusement, ce principe était expliqué dans le sujet, et Wikipédia donnait plus d'informations à ce sujet.

Nous nous sommes amusés à générer un fichier avec toutes les positions du satellite pour tracer avec Gnuplot la trajectoire du satellite ainsi que les orbites de départ et d'arrivée. Ce fût fort utile pour mettre au point le bazar.

Le second problème, que nous n'avons pas abordé, était assez similaire, mais il ajoutait une contrainte sur l'orbite d'arrivée : il fallait arriver au même moment qu'un satellite gravitant sur cette orbite. En bref, il fallait bien calculer le moment de départ de l'orbite initiale.

Tout cela était bien amusant, j'espère pouvoir participer à nouveau l'an prochain, peut-être en prévoyant une participation plus intensive.

30/06/2009 - 09:18 - Technologie - 1 commentaire

3000 évènements référencés dans l'Agenda du Libre


L'Agenda du Libre a été lancé le 5 juin 2005, soit il y a un peu plus de quatre ans. Cet anniversaire est également marqué par le passage tout récent du cap des 3000 évènements référencés. Globalement, depuis la naissance de l'Agenda du Libre, on note une augmentation de la moyenne des évènements par mois : on était à une trentaine d'évènements par mois aux débuts de l'Agenda, on en est maintenant à 70-100 selon les mois. C'est sans doute lié au fait que l'Agenda du Libre est un peu plus connu, mais surtout que la communauté du Logiciel Libre organise de plus en plus d'évènements. Voir les statistiques pour les détails. Un jour, il faudrait faire de jolis graphiques avec tout ça.

Récemment, l'équipe de modération s'est agrandie, avec l'arrivée d'Olivier Fraysse, bien connu des services d'Ubuntu-fr et membre du conseil d'administration de l'April. Merci donc à Olivier pour sa participation, qui porte désormais à quatre le nombre de modérateurs actifs dans l'équipe de l'Agenda du Libre.

Au niveau technique, pas d'amélioration majeure ces derniers temps. À retenir coté utilisateur :

24/06/2009 - 09:47 - Libre - Aucun commentaire

Musique assistée par Ordinateur avec des Logiciels Libres, ce samedi à Toulouse


Ce samedi 13 juin à Toulouse a lieu un atelier sur la Musique Assistée par Ordinateur avec des Logiciels Libres. Si vous voulez découvrir ou approfondir des logiciels comme Ardour, Jack, Hydrogen, ZynAddSubfx, Rosegarden, la mise en place d'un système pour l'audio (avec noyau temps-réel), la connexion de vos périphériques audio et de vos instruments, c'est le bon moment.

Il reste encore quelques places disponibles pour cet atelier limité à 12 personnes. La présente édition de l'atelier, il y a quelques mois, avait été fortement appréciée.

Ça aura donc lieu ce samedi de 10h à 18h au Centre Culturel Bellegarde à Toulouse (17, rue Bellegarde, Métro Jeanne d'Arc).

Pour plus d'informations, voir cette page.

11/06/2009 - 22:34 - Libre - Aucun commentaire

Expert en Logiciels Libres, un nouveau métier en or d'après le Courrier Cadres


Récemment, l'APEC m'a envoyé trois numéros de Courrier Cadres. Globalement, je suis pas spécialement emballé par la publication, mais dans le dernier numéro qu'on m'a envoyé gratuitement, quelque chose m'a interpellé. Sur la une du journal, on peut lire « 50 nouveaux métiers en or, la crise les fait décoller, on peut s'y former à tout âge ».



Dans cet article, ils présentent des métiers avec des noms assez cocasses ou amusants. Dans la finance, avec « Gestionnaire de dette d'entreprise », ou« Sales trader », dans le « Green business » (comme ils disent) on a « l'Acheteur d'énergie », « l'Ingénieur en charge du recyclage des matières nucléaires usées », « le Gestionnaire de flux reverse logistic » ou « Consultant bilan carbone ». Dans les « Tendances émergentes », on a « Expert en social business », « Home-stager », « Consultant bilan retraire », etc.

Et dans la catégorie « Technologies de l'information », en 33ème place (bien que la liste ne semble pas être classement), on a « Expert des Logiciels Libres ». Le texte qui va avec : «Tombé dans la marmite de l'"open source", cet informaticien expert optimise les fonctionnalités des logiciels libres et en développe de nouveaux».



C'est quand même amusant. Quand j'étais en école d'ingé (2000-2004), je m'étais échiné à faire la promotion des Logiciels Libres auprès des futurs ingénieurs en informatique. À l'époque (et pourtant à ce moment-là les Logiciels Libres étaient déjà fortement présents), les promoteurs du Logiciel Libre étaient encore vus comme des urluberlus qu'on surnommait « les pingouins ». Non, vraiment, il y a que les trucs sérieux comme Windows Server ou Oracle qui fonctionnent, le Logiciel Libre c'est bon pour les bricoleurs du dimanche.

Maintenant, un magazine de cadre totalement généraliste comme le Courrier des Cadres annonce que le domaine des Logiciels Libres est un domaine où l'expertise est un métier en or. Les temps changent :-)

11/06/2009 - 20:30 - Libre - 6 commentaires

Formation Linux embarqué à Toulouse, avec une place gratuite


Ça y est, la date de la première Formation Linux embarqué à Toulouse est fixée, elle aura lieu du lundi 19 au vendredi 23 octobre 2009. Cette formation inter-entreprises est ouverte à tous. Je serai évidemment l'animateur de cette formation, qui aura lieu en langue française. N'hésitez pas à la faire connaître autour de vous !

Quelques éléments clés :

Free Electrons possède une grande expérience en formation Linux embarqué. Nous avons déjà donné des dizaines de formations partout dans le monde, pour des clients comme Freescale, Alstom, Micronas, Siemens, Marvell, Logiplus, EBV Elektronik, Orange, Nokia Siemens Networks, Asidua, Gamesa, Thales, ST Microelectronics, Motorola, Philipps, Atmel, etc. Nous mettons également publiquement en ligne les enquêtes de satisfaction proposées à tous les participants de toutes nos formations.

Pour plus d'informations :

08/06/2009 - 14:43 - Technologie - Aucun commentaire

Haute résolution sur écran externe avec carte Intel


Sur mon sympathique portable Dell Latitude D430, je dispose d'une carte graphique Intel, et donc probablement du meilleur support X.org possible. En particulier, je suis particulièrement satisfait du support xrandr : je donne de nombreuses formations et conférences, ce qui implique la nécessité de se connecter à de nombreux vidéo-projecteurs, et jusqu'ici aucun d'entre eux n'a résisté à xrandr. Pas besoin de rédémarrer le serveur X, tout se fait en direct. En tout cas, en mode clone, pas de soucis (je n'ai pas essayé les autres modes).

Par contre, jusqu'à maintenant, je n'avais pas réussi à utiliser convenablement mon écran 22" dont la résolution native est 1680x1050. xrandr ne me proposait que 1280x1024 comme plus haute résolution disponible, ce qui est peu satisfaisant. Ça fait un bon moment que j'avais connaissance du problème mais je n'avais jamais pris le temps de regarder ce qui clochait. Hier soir, après un peu de recherche Google, j'ai enfin trouvé la solution au problème... et elle a nécessité un truc que je n'avais pas fait depuis un looong moment : éditer le fichier de configuration de X.org (comme quoi les distributions GNU/Linux se sont notoirement améliorées au fil des années, car éditer le fichier de conf de X.org était monnaie courante il y a encore 5-7 ans de cela).

En fait, dans la section Screen, sous-section Display, il faut ajouter la ligne :
Virtual         1680 1050


Cette option est plutôt bien expliquée dans une page Wiki consacrée au support des portables Thinkpad sous Linux. Apparemment, lors de son lancement, le serveur X alloue une zone de mémoire permettant de stocker ce qui est affiché à l'écran, et calcule la taille de cette zone de mémoire en fonction de la plus haute résolution supportée par toutes les sorties connectées... au moment du lancement ! Donc si l'on connecte plus tard un écran externe ayant une résolution plus importante, on est dans l'impossibilité d'utiliser ce mode. Et effectivement, après l'ajout de la ligne Virtual et connexion (après le lancement de X !) de l'écran externe, xrandr annonce bien des résolutions supplémentaires, dont la tant attendue 1680x1050. Et le pire, c'est que ça marche. Merveilleux !

Quelques réflexions :

03/06/2009 - 09:59 - Technologie - 2 commentaires

Hack de DOM avec GreaseMonkey


Aujourd'hui, j'avais besoin d'éditer des pages dans un Wordpress. L'interface d'administration de la chose est plutôt agréable, mais un point me chagrinait : le formulaire servant à rédiger le contenu de la page est ridiculement petit (on doit voir 7-10 lignes maximum). Vraiment pas pratique pour rédiger une page un peu longue, on souhaite en général avoir un peu plus de contexte autour de ce que l'on est en train d'écrire.

Je fouille les options de Wordpress, je ne trouve rien. Je cherche un peu sur le Web, je ne trouve rien non plus de vraiment probant, ou alors il faut aller hacker le code de Wordpress à la main, ce qui n'était pas possible dans mon cas.

Du coup, je dégaine Firebug, je lui dis d'inspecter l'élément textarea qui sert de zone d'édition, et j'ajoute height: 300px dans les propriétés CSS de la chose. Et ça marche. Génial! Sauf qu'évidemment, dès que je recharge la page, cette bidouille disparaît, et il faut recommencer à zéro.

Je me souviens avoir lu plusieurs journaux sur LinuxFr.org (comme quoi mouler sur LinuxFr.org peut parfois s'avérer utile) qui parlaient d'un plug-in pour Firefox permettant d'écrire des scripts pour modifier à la volée des pages HTML. Après quelques recherches, je retrouve enfin le nom de ce fameux plugin: GreaseMonkey.

La documentation n'est pas particulièrement claire, en particulier pour débuter. Mais je suis tombé sur un exemple Hello World simple qui a permis de démarrer. En gros, c'est tout simple :
// ==UserScript==
// @name          Hello World
// @namespace     http://diveintogreasemonkey.org/download/
// @description   alert "Hello world!" on mypage.com
// @include       http://www.mypage.com
// ==/UserScript==

alert('Hello world!');


On sauvegarde ça dans un fichier dont le nom se termine par .user.js, et on l'ouvre avec Firefox, et paf, le plug-in GreaseMonkey nous propose de l'installer. Une fois ceci fait, dès qu'on va charger la page mypage.com, l'infâme boîte de dialogue Javascript s'affiche. Merveilleux. Il ne reste plus qu'à adapter l'exemple à notre problème, et ce sera très simple, puisqu'il suffira de remplacer la ligne de Javascript par :
document.getElementById('content').rows = 50;


Et hop, ça marche. Dès qu'on charge un site listé dans @include contenant un élément d'id "content" (ce qui est le cas de Wordpress), notre script va positionner le champ "rows" à 50.

Un petit détail: une fois le fichier .user.js installé, modifier ce fichier là ne sert à rien, car Firefox en garde une copie quelque part dans son ~/.mozila/firefox/. Il faut donc soit le réinstaller à chaque fois, soit aller dans les préférences de GreaseMonkey et utiliser le bouton Edit pour éditer un script déjà installé.

02/06/2009 - 22:36 - Technologie - 9 commentaires

À propos de Git



Qu'on le veuille ou non, Git, le système de gestion version initialement lancé par Linus Torvalds pour le développement du noyau, est aujourd'hui incontournable. De très nombreux projets y passent : le noyau évidemment, U-Boot (bootloader très populaire dans l'embarqué), Buildroot (projet auquel je contribue de temps à autre), Gnome et bien d'autres.

Sauf que Git, même quand on est familier de CVS ou SVN, ce n'est quand même pas facile à aborder. Des concepts nouveaux, des centaines de commandes aux noms un peu obscurs. Franchement, ce n'est pas facile. D'ailleurs, d'autres outils du même type comme Mercurial proposaient dès le départ une interface utilisateur plus conviviale et compréhensible que celle de Git, mais clairement, Git semble avoir gagné la bataille des outils de gestion de version distribuée. Est-ce dû à une véritable supériorité technique, ou à l'aura de son initiateur, Linus Torvalds ? Je serai tenté de dire que cette dernière raison a probablement eu une influence significative dans le succès de Git, mais je ne suis sans doute pas assez expert pour juger des finesses techniques respectives de Git et de Mercurial.

Sur Git, il y a maintenant pléthore de documentation. Le tutorial est un bon point de départ. Ces documentations sont faciles à trouver, mais d'autres le sont moins, et sont pourtant intéressantes :

01/06/2009 - 20:42 - Technologie - 2 commentaires

Hackable:1 sur mon OpenMoko


Aujourd'hui, j'ai enfin pris le temps de ressortir mon OpenMoko avec l'objectif principal de faire marcher le GPS. J'ai commencé à mettre Hackable:1, la distribution que je teste actuellement. Une nouvelle version est sortie récemment, elle apporte quelques polissages bienvenus. Le temps de démarrage est par contre toujours aussi long, sans doute parce que tout le bazar lancé par défaut sous Debian est un peu trop gourmand par rapport à ce qui est réellement nécessaire sur un OpenMoko. Par contre, niveau interface, ils sont toujours sur l'interface Gtk d'OM 2007.2 avec le gestionnaire Matchbox, et j'aime beaucoup. Beaucoup plus que le machin affreux qu'ils ont pondu pour OM 2008.X.

Coté GPS, j'ai réussi à obtenir un fix, visible soit avec gpspipe en ligne de commande, ou avec TangoGPS pour une interface graphique. Malheureusement, le fix met parfois une demi-heure à venir alors que je suis en extérieur... C'est un problème connu, mais un fix logiciel était censé le rendre plus acceptable, ce qui n'est pas vraiment le cas ici. Sur la liste francophone d'OpenMoko, ils discutent actuellement de l'envoi groupé de téléphones vers une entreprise en Allemagne qui pourrait appliquer le Buzz Fix (bourdonnement lors de la communication). Ça serait bien si ils pouvaient en même temps faire le correctif matériel pour le problème d'interférence entre le lecteur SD et le GPS.

Par contre, une fois le fix arrivé, TangoGPS est vraiment sympathique. Il télécharge tout seul les cartes OpenStreetMap. Je me suis baladé un peu dans le quartier. TangoGPS permet de démarrer l'enregistrement d'une trace et de le stopper très simplement. Puis un script Perl disponible sur le site de TangoGPS converti cette trace en un fichier GPX utilisable par JOSM pour uploader dans OpenStreetMap. Sympathique.

Coté Wifi, ils ont commencé le développement d'une petite application appelée wifig. Elle n'est pas dans les menus, il faut la lancer depuis le terminal. Cette application permet de lister les réseaux Wifi disponibles (ça marche !) puis de se connecter à l'un de ces réseaux. Là, par contre, j'ai eu moins de succès, puisque je n'ai pas réussi à me connecter au réseau Wifi WPA2 de la Freebox. Avec le FreeWifi, j'ai pu récupérer une adresse IP, mais je n'ai pas réussi à avoir la page de login pour donner mes identifiants FreeWifi. Une petite investigation s'imposera un de ces jours.

Je n'ai pas retesté la téléphonie, donc je ne peux rien dire là-dessus. Sur la précédente version d'Hackable:1, ça marchait bien.

Coté application, ils ont développé un petit browser Web basé sur Webkit, à l'interface simple et bien adaptée au petit écran de l'OpenMoko. Pas mal du tout.

Enfin coté développement, j'ai vu qu'ils proposaient maintenant une infrastructure pour cross-compiler les paquets Debian pour OpenMoko, plutôt que de faire du développement natif. Le tout basé sur Emdebian, et qui doit donc être fort sympathique. Il faudrait que je trouve le temps de tester tout ça.

01/06/2009 - 20:13 - Technologie - Aucun commentaire

Vidéos de la présentation sur X.org et d'autres présentations Toulibre


Ça y est, la vidéo de la fameuse présentation sur X.org donnée mercredi dernier par Matthieu Herrb est en ligne :

Ça fait également un moment que je n'ai pas parlé des vidéos des autres présentations Toulibre. Depuis ces derniers mois, nous avons donc publié des vidéos de conférence sur les thèmes suivants :









Vous retrouverez toutes ces vidéos, les précédentes et celles à venir sur la page Vidéos du site de Toulibre. Il me reste encore la vidéo d'une conférence sur Scribus à encoder et à mettre en ligne, ça viendra prochainement.

25/05/2009 - 17:41 - Libre - 1 commentaire

Superbe présentation sur X.org hier à Toulouse


Comme je l'avais annoncé, une présentation sur X.org a eu lieu hier à Toulouse dans le cadre de Toulibre. Elle était animé par Matthieu Herrb, développeur historique d'X.org et membre du Board of Directors du projet. Durant la présentation, Matthieu a même précisé qu'il avait développé le premier pilote pour joystick dans X.org (qui ne s'appelait évidemment pas X.org à l'époque). Le sujet a clairement intéressé du monde puisque 49 personnes précisément étaient présentes au début de la présentation et nous sommes montés à 55-60 personnes dans notre petite salle du Centre Culturel Bellegarde : des gens debouts, assis sur des tables, assis par terre...

La présentation a commencé par un rappel sur l'architecture client/serveur de X.org, puis s'est poursuivie par une très grande partie sur l'affichage. En partant de l'affichage 2D basique, Matthieu a ensuite présenté les différentes évolutions de l'accélération 2D puis de l'accélération 3D. De nombreux schémas venaient renforcer les explications sur le rôle des différents composants dans cette architecture. Des acronymes barbares comme GLX, DRI, GL, XAA, EXA et autres ont été discutés et expliqués de manière très didactique. Après cette longue partie sur l'affichage, Matthieu a attaqué la partie sur les périphériques d'entrée. Comme il le disait, quand on pense à X.org, on pense principalement à l'affichage, mais en effet, la gestion des périphériques d'entrée est aussi un problème assez complexe. Il a donc décrit le fonctionnement d'X.org sur le sujet et les récentes évolutions dans le domaine.

Malheureusement, la partie sur l'organisation du développement de X.org n'a pas pu se faire, puisque nous avions atteint l'heure limite de 23h fixée par notre convention avec le Centre Culturel Bellegarde. En effet, les très nombreuses questions ont fait prendre du retard dans le déroulement de la présentation, mais elles ont en même temps permis au public de mieux comprendre X.org. Au vu de la popularité du sujet, Matthieu semblait partant pour faire une deuxième présentation dans la continuité, peut-être à l'automne prochain.

En tout cas, les slides et la vidéo de cette conférence seront prochainement mis en ligne. Stay tuned!

21/05/2009 - 12:25 - Technologie - 4 commentaires

Retour de Slovénie... et des rencontres Logiciels Libres intéressantes à Toulouse


Après une semaine de formation Linux embarqué en Slovénie, me voilà de retour à Toulouse pour un mois. Après tant de déplacements, ça fait plaisir de se poser un peu et de reprendre du temps pour travailler sur Toulibre ou d'autres projets.

À propos de Toulibre, deux évènements très intéressants auront lieu prochainement.

Présentation X.org


Logo X.orgLe mercredi 20 mai à 20 heures, dans le cadre de la rencontre bi-mensuelle au Centre Culturel Bellegarde à Toulouse, nous aurons droit à une conférence technique sur X.org donnée par Matthieu Herrb. Matthieu Herrb est un développeur historique d'X.org et d'OpenBSD. En plus d'être le mainteneur d'X.org dans OpenBSD, il est également membre du Board of Directors du projet X.org. Nous avons donc affaire à un conférencier particulièrement expert dans le sujet. Sujet qui m'intéresse fortement, car je cherche à mieux comprendre le fonctionnement de la pile graphique de Linux, relativement complexe lorsque l'on s'intéresse à toutes les histoires d'accélération.

Comme l'annonce le site de Toulibre, il sera question dans un premier temps du modèle client / serveur, des toolkits graphiques, ainsi que des protocoles annexes (ICCM, netwm) et des serveurs spéciaux tels que Xnest, ainsi que de l'accès à distance par tunnels (SSH, LBX, NX, etc.). Puis la présentation se focalisera sur le fonctionnement de l'affichage et des entrées utilisateurs sous X.org. Côté affiage : aspect rendu graphique 2D (Render, XAA, EXA, UXA, etc.), 3D (DRI, DRI2, Gallium, etc.), compositing, transparence et autres effets, et gestion des modes graphiques (Xrandr, KMS, Shatter). Côté entrées, il sera question de XKB, Xinput et l'extension MPX (pointeurs multiples). Un éclairage sera donné en fin de présentation sur le mode de développement communautaire de X, la fondation X.org, les conférences importantes du domaine, et les moyens de participer au projet.

Entrée libre et gratuite, 17 rue de Bellegarde à Toulouse, métro Jeanne d'Arc.

Repas en présence de Frédéric Couchet, fondateur et délégué général de l'April


Le mercredi 27 mai, à l'occasion de la venue de Frédéric Couchet à Toulouse, nous organisons un repas en sa présence. Ce repas sera l'occasion de découvrir l'association April et de discuter directement avec le fondateur de l'association et actuel délégué général. Un moment privilégié pour comprendre les objectifs de l'association, ses actions et ses activités.

Pour ceux qui débarquent, l'April est l'association nationale de référence en matière de promotion et de défense des Logiciels Libres, voir notamment le rapport moral 2008 qui donne une excellente idée de l'étendue des actions de l'association. Elle compte maintenant quasiment 5000 adhérents, dont plusieurs centaines de personnes morales, qui vont de l'association d'utilisateurs de Logiciels Libres à de grandes entreprises comme Sun Microsystems, Thalès ou Google en passant par des collectivités territoriales comme la région Ile-de-France (voir les chiffres).

Pour s'inscrire: http://www.toulibre.org/InscriptionQjelt

18/05/2009 - 11:27 - Libre - 1 commentaire

SOS, la reprise... et arrivée en Slovénie


Après plusieurs années d'inactivités, David Decotigny et moi-même avons décidé de reprendre le travail autour du projet SOS. Pour ceux qui débarquent, SOS fait suite au projet KOS, le premier projet de développement un peu sérieux sur lequel j'ai travaillé. L'objectif de SOS est d'expliquer pas à pas comment construire un petit système d'exploitation, à la fois suffisamment simple pour être facile à comprendre et suffisamment proche d'un système comme Linux pour que les connaissances acquises permettent de mieux comprendre un noyau plus complexe comme Linux. SOS a donc donné lieu à la publication de douze articles dans GNU/Linux Magazine France entre juin 2004 et février 2006, qui sont disponibles en ligne sur le site du projet, avec le code source correspondant. En octobre 2007, un contributeur au projet, Anthoine Bourgeois a écrit le code et publié l'article correspondant à l'implémentation des systèmes de fichiers FAT. Mais depuis, plus d'activité sur le projet.

Pour relancer les choses, je viens de passer une semaine à travailler avec David sur les deux derniers sujets que nous avions prévu de couvrir initialement dans la série d'articles : l'implémentation d'un pilote de système de fichiers ext2 et l'implémentation d'une pile réseau minimale. Tout cela n'est pas encore terminé, mais a progressé, et surtout a donné envie de s'y remettre. Nous espérons pouvoir publier prochainement les articles correspondants.

Juste après cette riche semaine de travail sur SOS, me voilà arrivé depuis hier en Slovénie pour donner une formation Linux embarqué. Je suis plus précisément dans la ville de Portorož (prononcez Portoroch), une station balnéaire. Le nom de la ville veut dire « Port aux roses », mais d'après la page Wikipédia, certains la surnomment « Port aux bétons ». J'étais prévenu. Et effectivement, tout le littoral est bétonné, et la ville n'est qu'hôtels, casinos, restaurants, terrains de tennis et mini-golfs et port de plaisance avec gros bâteaux. Sauf que la saison touristique n'a pas encore vraiment commencé, et donc que tout est vide. Par contre, l'arrière-pays semble très vallonné et plus intéressant.

11/05/2009 - 20:39 - Actualité - Aucun commentaire

Se former à Linux embarqué, avec des places gratuites !


Quelques annonces concernant les prochaines formations organisées par Free Electrons, avec notamment des places gratuites à gagner pour les membres de la communauté !

Les prochaines sessions publiques de nos formations auront lieu aux dates suivantes :

Chaque formation coûte 1950 € par personne, avec une réduction de 20% pour les personnes venant de la même société ou pour les personnes en recherche d'emploi. Et pour chacune des deux formations à Vence, une place gratuite à gagner pour un membre de la communauté du Logiciel Libre qui souhaite se former à Linux embarqué, voir cette page pour les détails ! Même si la page indique que la date limite était le 12 avril pour la prochaine formation, il est encore possible de gagner cette place !

Chaque participant à la formation, y compris le gagnant de la place gratuite, repart avec un exemple de la carte de développement Calao USB-A9263 (processeur Atmel AT91SAM9263, 64 Mo de RAM, 256 Mo de Flash, USB host, USB device et connecteur d'extension pour cartes filles).

La formation Embedded Linux system development couvre tout ce qui est la création et l'intégration d'un système Linux embarqué : quels sont les différents composants d'un système Linux embarqué, comment les configurer, les compiler et les intégrer, comment réutiliser des bibliothèques et applications existantes, comment développer et mettre au point de nouvelles applications, etc. La seconde formation, Linux kernel and drivers development, se consacre intégralement au fonctionnement du noyau et au développement de pilotes de périphériques. L'agenda exact de ces deux formations est disponible, vous pouvez vous faire une idée par vous-même.

15/04/2009 - 16:39 - Technologie - 1 commentaire

Arrivée aux États-Unis


Me voilà arrivé depuis hier à San Francisco, pour assister à l'Embedded Linux Conference de lundi à mercredi, et pour y donner une conférence et animer une session de réflexion. À mon arrivée, je suis allé faire un tour du coté de la baie, pas très loin du Golden Gate Bridge.



Aujourd'hui, je vais profiter de la journée pour rencontrer au moins un membre de l'April résident à San Francisco, au cours d'une réunion du LUG local, le SF-LUG. Ensuite, je pense aller faire un tour du coté du Pacifique.

Concernant la conférence sur l'embarqué, j'y suis avec mon collègue Michael Opdenacker, et nous avons chacun une caméra. Si tout se passe bien, nous devrions donc pouvoir filmer 2 des 3 tracks de conférences qui se déroulent en parallèle, pour les mettre ensuite à disposition de tous, comme nous en avons l'habitude.

05/04/2009 - 18:08 - Actualité - Aucun commentaire

Solutions Linux 2009


Cette semaine, j'ai donc eu l'occasion de passer quelques jours à Solutions Linux. Je n'avais pu y participer l'an dernier en raison d'un déplacement pour le boulot, mais cet évènement auquel je vais régulièrement. En réalité, l'aspect salon en tant que tel ne m'intéresse pas réellement, c'est plutôt le fait que ce soit devenu un rendez-vous important de la communauté qui m'attire. Sur quelques jours, on peut rencontrer et discuter avec plein de gens qu'on ne voit que rarement, et c'est bien sympathique. Évidemment, la présence du village des associations est un élément important pour attirer la communauté.


Cette année, le salon se déroulait non pas au CNIT à la Défense comme c'était devenu la tradition depuis un moment, mais à Paris Expo à la Porte de Versailles (le CNIT est en travaux). Le lieu en lui-même n'appelle pas à des commentaires particuliers, sauf pour les conditions d'accueil des conférences. Elles étaient hébergées dans des petits boxs situés dans le grand hall du salon, ce qui veut dire que tout le bruit du salon perturbait les conférences, et que les différentes conférences se perturbaient également entre elles. Proposer de telles conditions d'accueil à un public qui s'est acquitté d'un pass conférence à plusieurs centaines d'Euros me semble un peu déplorable.

Session embarqué


Sébastien Dinot, responsable de session « Embarqué / Informatique Industrielle », m'a permis en tant qu'invité, d'assister aux différentes conférences. Le mardi matin était la matinée de cette thématique sur l'embarqué, qui m'intéressait évidemment au premier plan. Pas grand monde dans la salle, une petite dizaine de personnes tout au plus, en baisse significative par rapport à l'an dernier visiblement.

Sur OpenMoko


Conférence sur OpenMoko, donnée par Lucas Bonnet de Bearstech. Pas vraiment grand chose de neuf sous le soleil par rapport à la présentation donnée aux RMLLs à Mont-de-Marsan (voir vidéo et slides). La fragmentation de la communauté au niveau des différentes distributions ne semble pas s'être résorbée. Bearstech propose désormais une distribution Hackable:1 pour OpenMoko, basée sur Debian et reposant sur les fondations d'OM 2007.2, la distribution livrée d'origine avec le téléphone. Ces deux choix me semblent bons, car OM 2007.2 était une base sympathique, et je me demande toujours pourquoi ils sont repartis sur quelque chose de complètement différent pour OM 2008.x. Et évidemment, le fait que ce soit basé sur Debian rajoute de l'intérêt à la chose. Coté avenir du projet OpenMoko, Lucas Bonnet n'avait finalement pas beaucoup d'informations. Une nouvelle version serait en préparation, intégrant un appareil photo numérique/caméra et le support d'Edge (en plus de GSM/GPRS déjà supporté, mais toujours pas de 3G en raison de la difficulté de trouver des composants à tarifs et conditions acceptables). La présentation a également mis en avant le fait que l'OpenMoko n'est pas seulement un téléphone : c'est un device complètement bidouillable, ce qui permet de combiner toutes les fonctionnalités matérielles sans autre limite que l'imagination. Avec du Bluetooth, du Wiki, du GPS, du GSM/GPRS, du USB hôte et esclave, et un écran tactile, on peut imaginer bien des applications !

Personnellement, je possède un OpenMoko depuis août 2008, j'ai testé plusieurs distributions, mais aucune n'est réellement satisfaisante à ce jour, les problèmes d'echo lors de la communication étant rédhibitoires. J'ai récemment installé Hackable:1 (interwiki), mais n'ai pas encore eu le temps de le tester en communication, peut-être que le problème d'echo est résolu. J'aimerais bien passer un peu plus de temps à explorer les possibilités de ce sympathique appareil.


L'entrée du salon



Sur Linux embarqué


Christian Charrère, de CIO Informatique, a proposé une présentation très générale de Linux embarqué, des avantages, des différents composants, etc. Une présentation qui ressemble pas mal à ce que j'ai pu faire à Toulibre ou à l'UTBM, donc rien de vraiment nouveau pour moi, mais qui propose un très bon aperçu à ceux qui ne connaissent pas du tout le domaine.

Sur le temps réel avec Xenomai


La conférence suivante était donnée par David Chabal, de CS. Il avait donné une conférence similaire aux Rencontres Mondiales du Logiciel Libre à Mont-de-Marsan (vidéo disponible ici). Sauf erreur, je n'ai pas vraiment vu de nouveautés par rapport à la précédente édition. David y présente l'utilisation de Xenomai dans le cadre d'un simulateur de senseur radio-fréquence dans un environnement satellite. L'idée était donc de simuler un matériel spécifique en utilisant un PC banalisé. Des contraintes temps-réel assez importantes l'ont amené à considéré Xenomai. La présentation est intéressante, car elle est à la fois une présentation assez générale du fonctionnement de Xenomai et en même temps un retour d'expérience sur une utilisation concrète.

Par contre, un point sur lequel je serai éventuellement en désaccord avec David, c'est au sujet de son opinion sur le patch PREEMPT_RT maintenu par Ingo Molnar. Pour David, ce patch est trop gros (il annonce 60k lignes) et que cette quantité fait peur par rapport à Xenomai qui modifie moins le cœur du noyau. En terme de quantité stricte, c'est vrai, mais ce critère me semble insuffisant pour comparer les deux approches :

Autre détail (peu important pour son projet basé sur un PC, mais important pour d'autres développeurs embarqué), David a indiqué que PREEMPT_RT n'était disponible que sur x86, alors qu'en réalité il est disponible au moins sur ARM, MIPS et PowerPC?.


Dans le salon, coté entreprises



Sur la modélisation


La dernière conférence était donnée par Étienne Juliot de la société Obéo. La société travaille sur des outils de modélisation, de méta-modélisation et de génération de code autour d'Eclipse. Ils travaillent par exemple sur Acceleo, ou proposent des choses comme EMF Compare qui permet de faire de la comparaison de modèles. Le domaine du « Model Driven Engineering » n'est pas trop ma tasse de thé, donc je n'ai pas nécessairement saisi tous les tenants et aboutissants des solutions proposées. En tout cas, le projet Eclipse semble vraiment fédérer les projets d'outils de développement, et ça, c'est bien.

Autres conférences


Le mercredi matin, j'ai assisté à une conférence d'une personne de RedHat? sur GCC et GDB. Conférence vraiment intéressante, qui revenait sur l'historique de GCC depuis sa création, l'organisation du projet, les dernières évolutions, les différentes représentations internes du code au fur et à mesure des étapes de compilation, etc. Même chose pour GDB, avec des nouveautés vraiment intéressantes. Pour GDB 7.0 à venir, j'ai notamment noté :

Ensuite, conférence de Vincent Untz (Gnome, Novell) sur l'initiative Freedesktop. Il rappelle le principe de l'initiative, sa petite histoire, ainsi que quelques unes des spécifications Freedesktop. Intéressant.

Le mercredi après-midi, j'ai assisté à la conférence de mon cousin Jérôme qui portait sur la virtualisation. Virtualisation CPU/RAM, virtualisation du stockage, virtualisation du réseau, cloud computing. La salle était comble, visiblement le sujet est à la mode.

Globalement, j'ai été très agréablement surpris par la qualité des conférences. J'avais assisté il y a quelques années à des conférences Solutions Linux, et j'en avais gardé le souvenir de conférences commercialo-buzzo-marketing. Là, en tout cas pour les conférences que j'ai vu, on avait droit à des vraies conférences techniques intéressantes.


Dans le salon, coté village des associations



Le reste du salon


Pour le reste, j'ai passé mon temps à discuter avec d'anciens collègues, avec une personne de la société Tranquil IT Systems sur l'utilisation du Libre dans l'Éducation, avec Frédéric Lehobey de Proxience, avec tous les gens de l'April, avec mon frère qui était de passage, etc. C'est surtout cet aspect-là qui me fait venir à Solutions Linux

À l'Assemblée Nationale


L'examen du projet de loi Création et Internet (plus connu sous le nom de HADOPI) avait été judicieusement programmé en même temps que le salon Solutions Linux. Du coup, j'en ai profité pour rejoindre une centaine de personnes pour assister à la séance publique de nuit du mardi soir. Je suis resté de 21h30 à 23h30, mais la séance a semble-t-il duré jusqu'à 2h du matin. C'était vraiment intéressant de voir l'Assemblée Nationale en vrai, ça change des retransmissions vidéo. Au niveau des débats, malheureusement pas grand chose à dire : quelques députés de gauche courageux (Bloche, Billard et Paul principalement) qui défendent leurs amendements, démontrent l'ineptie du projet de loi, et de l'autre coté, une majorité godillot qui suit aveuglément l'avis du rapporteur et du gouvernement, à part le rebelle Lionel Tardy (qui sans doute risque gros pour sa prochaine investiture si il continue). En tout cas, les députés de la majorité sont sous bonne surveillance, le député Lefebvre, porte-flingue de Sarko, étant venu faire un tour dans la soirée pour s'assurer que tout se passe bien et que les troupes votent bien comme il faut.

Salon RTS


Au même endroit au même moment avait lieu le salon RTS Embedded Systems. J'y suis donc allé faire un tour avec mon frère (également intéressé puisqu'il travaille maintenant dans l'embarqué). Déjà, la différence de quantité de public par rapport à Solutions Linux se fait sentir : les allées sont désertes ou quasiment-désertes. En ce qui concerne les stands, il s'agit principalement de vendeurs de matériel type industriel : beaucoup de x86 sur carte PC104, des cartes durçies, des écrans et composants solides. Coté logiciel, présence de Windriver, Green Hills Software et d'une société (dont j'ai oublié le nom) partenaire de Montavista et distributeur des outils de développement Keil. En dehors de ça, pas grand grand chose, quasiment pas d'embarqué type « consumer electronic ».

05/04/2009 - 17:57 - Libre - 3 commentaires

Atelier KDE et présentation sur le framework Modèle/Vue de Qt


Hier avait lieu à Toulouse une édition de l'atelier KDE mensuel au Centre Culturel Bellegarde. La page de ces ateliers donne une description de l'esprit de ces derniers :

Les Ateliers KDE sont nés de l'envie commune à plusieurs amis de partager une passion : contribuer en communauté. Vous verrez, on peut contribuer à KDE tout en s'amusant et en passant un réel bon moment de convivialité et d'échange. Lors de ces ateliers, on travaille sur différentes choses, du plus simple au plus complexe. Cela peut-être de la correction de bugs, l'amélioration d'un programme, de la traduction, de la rédaction de documents (tutoriaux, documentations,...), la création d'un projet à part entière, ou encore travailler sur la promotion du projet KDE.

À mon arrivée vers 9h30, je retrouvé évidemment Kévin Ottens, ainsi que l'animateur du LUG Adella basé à Carcasonne, également développeur d'applications utilisant Qt. Kévin fait une séance de rattrapage sur son nouveau logiciel Zanshin, qui permet la gestion de TODO, qui est développé en utilisant le framework Akonadi (gestion des informations personnelles). Il décrit les fonctionnalités actuelles et à venir, ainsi que l'architecture générale du logiciel.

Suite à cela, je compile Zanshin et essaie de le faire marcher, non sans mal, car étant utilisateur d'XFCE et non de KDE, la plupart des dépendances n'étaient pas présentes (et notamment le serveur Akonadi). Une fois ceci fait, je poursuis mon apprentissage de la bibliothèque Qt entamé lors du précédent atelier KDE, en suivant le célèbre tutoriel Qt.

Dans le courant de l'après-midi, Kévin organise la présentation prévue : «Interview, le framework Modèle/Vue dont vous êtes le héro». Après une brève introduction en trois slides, toute la présentation est une sorte de jeu de rôle, où une personne joue le rôle du Modèle, une autre personne le rôle de la Vue et une dernière le rôle de Délégué (voir ici pour les explications). Cela permet de bien comprendre le rôle de chaque composant et l'état d'esprit de la bibliothèque Qt. En fin de jeu de rôle, les choses se complexifient en utilisant les modèles filtrants (proxy models), dont le rôle est également joué grandeur nature par des personnes du public. À la fois ludique et très intéressant.

Je termine l'après-midi en poursuivant le tutoriel de la bibliothèque Qt, j'approche de la fin. Définitivement, ces ateliers KDE sont intéressants en permettant de se focaliser pendant une journée sur l'apprentissage de nouvelles choses. J'apprécie.

29/03/2009 - 12:21 - Libre - Aucun commentaire

Prochaines conférences et déplacements


Après la tempête de déplacements autour du FOSDEM et un mois et demi plutôt calme, les déplacements reprennent fort au mois d'avril. J'aurai donc l'occasion d'aller :

24/03/2009 - 15:40 - Actualité - Aucun commentaire

Conférence sur « Les aspects juridiques du Logiciel Libre »


Ce mercredi 25 mars, dans le cadre de la désormais habituelle rencontre bi-mensuelle organisée par Toulibre, nous aurons une conférence un peu exceptionnelle. En effet, elle ne portera pas sur des aspects techniques ou sur l'utilisation des Logiciels Libres, mais sur «Les aspects juridiques du Logiciel Libre» et sera animée par deux juristes, Stanley Claisse et Nathalie Foutel.

Il sera notamment question dans une première partie des mécanismes du droit d'auteur et du droit des brevets, des grandes règles et mécanismes contractuels des licences de logiciels libres, des différentes manières de gérer le copyleft des licences et en particulier la gestion des droits quand un même projet multiplie les licences. Dans une deuxième partie, il sera question de l'extension possible de la philosophie des licences libres à la diffusion de biens (logiciels et matériels) développés par la recherche publique, de la valorisation de ces recherches, et de manière générale de l'intérêt de la diffusion sous licences libres pour les entrepreneurs, particuliers et établissements publics.

Stanley Claisse est juriste en nouvelles technologies. Il est l'auteur d'un mémoire sur la diffusion des films sur Internet. Nathalie Foutel est juriste et doctorante à l'ENAC et travaille sur les licences libres et la valorisation de la recherche dans le domaine aérien.

Il faudra donc que d'ici là je passe un peu de temps à rassembler toutes mes questions au sujet de la GPL, des licences libres et des brevets.

Ça aura lieu ce mercredi 25 mars à 20h au Centre Culturel Bellegarde à Toulouse. Et dès 19h, le public est invité à venir nous rencontrer : informations sur les Logiciels Libres, install-party, dépannage, discussions informelles, etc.

21/03/2009 - 09:21 - Libre - 2 commentaires

Journée « Les Logiciels Libres, un enjeu pour l'éducation »


Dans le cadre de Libre en Fête 2009, dimanche 22 mars toute la journée et en soirée à l'Utopia Tournefeuille à coté de Toulouse, une journée sur le thème « Les Logiciels Libres, un enjeu pour l'éducation » est organisée en partenariat avec les associations Toulibre, le GRAPE, et LinuxEdu. Le but de cette journée est de présenter des utilisations concrètes de logiciels et ressources libres dans le contexte éducatif (école/collège/lycée), et de parler des enjeux de l’emploi du libre dans l’éducation. Elle s’adresse aux enseignants, aux différents acteurs du monde éducatif, mais bien entendu également aux parents d’élèves, qui pourront découvrir et expérimenter le merveilleux monde des Logiciels Libres.

La journée se déroulera en trois temps :



19/03/2009 - 09:19 - Libre - 2 commentaires