Posts Tagged ‘Libre’

Perl 6, 10 ans déjà…

Monday, August 2nd, 2010

Le 1er août 2000, 361 RFCs (Requests For Change), fruits d’un gros travail communautaire, étaient soumises à Larry Wall pour qu’il en synthétise la “substantifique mœlle”, qu’il nomma les Apocalypses.

Hier nous étions le 1er août 2010. Une décennie entière s’est écoulée, et faire un point (un bilan ?) semble plus que nécessaire. En dehors de son horrible logo nommé Camelia, que reste-t-il de Perl 6 ?

Alors que l’ancien interpréteur Perl était aussi la définition du langage, ce dernier n’ayant pas de spécifications différenciées de son implémentation, Perl 6 est lui un ensemble de spécifications, appelées Synopsys.

Tout compilateur, interpréteur ou machine virtuelle respectant ces spécifications, est Perl 6. Ainsi Pugs, écrit en Haskell, apparaît en 2005 comme une première implémentation complète de Perl 6.

Pugs profite de toute la puissance de ce superbe langage fonctionnel qu’est Haskell, qui a permis d’obtenir cette implémentation de Perl 6 utilisable pour des démonstrations, mais pâtit de sa contrepartie, une lenteur (difficile pour un compilateur d’optimiser quand tout est lazy-évalué) non compatible avec une utilisation réelle.

Il existe en fait une implémentation “officielle” de Perl 6. Elle se nomme Rakudo, et vient de sortir, il y a trois jours, sa première version pour les early adopters de Perl 6, Rakudo Star.

On comprend bien la volonté, pour les dix ans du projet, de montrer qu’il se passe quelque chose et que le projet n’est pas mort. Ce qui me gène dans l’annonce, ce n’est pas qu’il y ait encore des bugs, ou que ce soit plus lent que ça ne devrait, mais bien que there are some advanced pieces of the Perl 6 language specification that aren’t implemented yet. On est en fait encore très loin du compte, comme le montre le graphique suivant, sur l’évolution du nombre de tests réussis par Rakudo.

Le problème est en fait encore plus grave que cela, puisque les spécifications qui ne sont pas implémentées sont justement celles qui posent un problème d’implémentation. Il semblerait que la volonté de faire de Perl 6 “le langage parfait”, ait amené à une complexité très importante de sa syntaxe et de sa sémantique, et que sa réalisation pose de réelles difficultés.

Guido van Rossum a lui toujours fait attention à limiter Python à une grammaire qui lui permette d’avoir un parseur LL(1), et ce choix plus défensif ne semble finalement pas préjudiciable en pratique.

Pendant ce temps là les autres langages de programmation, et l’informatique toute entière, ont beaucoup progressé. Les améliorations fantasmées il y a dix ans sont-elles depuis longtemps dépassées par la concurrence ou au contraire justifient-elles toujours Perl 6 ?

De la même manière qu’une grande réflexion a eu lieu pour définir ce que pourrait être la syntaxe et la sémantique de Perl 6, une énorme réflexion s’est portée sur l’environnement d’exécution des programmes, et les choix d’implémentation.

Ainsi, la manière historique d’être multiplateforme, celle de Perl 5, était d’être écrit en C. Partout où un compilateur C fonctionnait, on pouvait compiler Perl et l’utiliser. La manière moderne de résoudre ce problème est de compiler du bytecode pour une machine virtuelle, et c’est à cette dernière qu’est déléguée la problématique réelle du support des différentes plateformes, c’est-à-dire en pratique être écrite en C ;-) .

La majorité des langages modernes ont fait ce choix, ayant chacun une machine virtuelle écrite pour lui, ainsi Java fonctionne sur la JVM de Sun et C# sur la CLI de Microsoft. Mais écrire une machine virtuelle complète et multiplateforme est un énorme travail, c’est pourquoi des langages comme Groovy ou Scala ont simplement choisi d’utiliser directement la JVM.

Perl 6 aurait donc pu utiliser la JVM, mais Java étant un langage statique, la JVM qui a été conçue pour lui ne semble pas être le meilleur choix pour un langage dynamique. On constatera cependant que Jython et JRuby sont deux réimplémentations parfaitement fonctionnelles de Python et Ruby, deux langages de programmation tout aussi dynamiques que Perl 6.

C’est ainsi que la décision a été prise d’écrire, en partant de rien, une nouvelle machine virtuelle plus adaptée, qui fut nommée Parrot. Parrot m’a toujours intéressé d’un point de vue technique, car c’est une machine virtuelle à registres, alors que toutes les autres machines virtuelles, à l’exception de Dalvik qui est utilisée par Android pour le Java, sont à pile (CPython, Perl 5, JVM de Sun, CLI, etc.).

Cependant, la vitesse fantasmée il y a dix ans d’une machine virtuelle à registres immature, peut-elle tenir la comparaison avec des machines virtuelles à pile parfaitement maîtrisées et optimisées depuis ? Comment ne pas penser au fameux débat noyau monolithique contre micro-noyau ? Parrot et Hurd, même combat ?

Cette situation qui dure a causé beaucoup de tort au langage Perl, qui était le premier langage libre largement diffusé et utilisé pour faire des scripts CGI. Il a été évincé du web “à l’ancienne” par PHP, et du web moderne par les frameworks comme Ruby on Rails et Django, écrits respectivement en Ruby et en Python.

Et cela ne risque pas de s’améliorer, car pour que des personnes utilisent vraiment Perl 6 pour développer des programmes, il faudra non seulement un Rakudo complet, mais aussi que les bindings pour les bibliothèques de programmation soient portés…

En terme de moyens, le développement de Perl 6 a bénéficié entre autres d’un don 200 000 $ de la part de Ian Hague, et le très brillant Patrick Michaud est salarié pour s’y consacrer à plein temps.

Mais le gros problème c’est que les choix technologiques, aussi intéressants soient-ils, sont si complexes qu’ils ont bloqué l’émergence d’une communauté de développeurs qui auraient donné une toute autre dynamique au projet.

Alors Perl 6 est-il mort avant même d’être né ?

C’est un question très dure, à propos d’un projet emblématique du logiciel libre et très intéressant techniquement, mais nous nous devons d’essayer d’apprendre de nos erreurs. Alors n’oubliez jamais : Keep it Simple, Stupid et release early, release often.

Apple, la honte !

Tuesday, July 27th, 2010

Un point rapide sur ce qu’il est convenu d’appeler “l’Antennagate”, en référence au scandale du Watergate qui obligea le président des États-Unis Richard Nixon à démissionner en 1974.

Apple a fourni d’excellents et très innovants smartphones appelés iPhone. La dernière version, l’iPhone 4, a un gros problème : l’antenne externe positionnée en bas à gauche, à l’endroit où l’on pose ses doigts quand on tient le téléphone, est mal isolée, et la réception se retrouve donc exécrable à partir du moment où l’on prend l’iPhone en main pour téléphoner.

Ceci ne serait pas impardonnable si Apple ne s’était lancé dans une incroyable entreprise de lavage de cerveau planétaire.

Toutes les dénégations en sept étapes :

  1. Les vrai-faux mails de Steve Jobs, insultants à l’encontre des personnes ne sachant pas tenir correctement leur téléphone.
  2. Le 3 juillet, une lettre d’enfumage en règle.
  3. Le 15 juillet, une update iOS 4.0.1 (anciennement iPhone OS), avec pour seule modification de résoudre le problème, en changeant l’algorithme de calcul du nombre de barres représentant la qualité du signal reçu. Près de 600 Mo !!!! juste pour afficher n-2 barres de réception (pour Apple ils ont pondu un algorithme incroyable, Knuth en rigole encore).
  4. Le 16 juillet, un Keynote avec Steve Jobs himself pour amuser la galerie.
  5. Une liste de délation des concurrents censés être aussi mauvais qu’Apple.
  6. La révélation des salles de test (les photos sont belles, avec un vrai côté science-fiction) et des 100 Millions de dollars investis pour tester les antennes de l’iPhone en fonctionnement.
  7. La distribution gratuite d’un “bumper“, une coque de protection, permettant d’empêcher un dysfonctionnement qui n’existe pourtant pas selon Apple.

Apple, capable d’excellentes choses en design et en ergonomie, mais aussi en ingénierie logicielle, se révèle ici totalement incapable de reconnaître une erreur, pourtant évidente et constatée par tous. Elle a choisi de faire disparaître les symptômes, de manière ridicule, en transformant l’iPhone en détecteur de relais GSM hyper-précis, par une update logicielle minable même pour une SSII française (et dans ma bouche ce n’est pas peu dire !).

De plus le problème était en fait connu par Apple, qui pour la première fois commercialise elle-même des bumpers de protection pour l’iPhone. Apple a simplement refusé de changer son modéle, malgré son important défaut, car elle sait que de toute manière des millions de pigeons achèteront son iPhone, même si téléphoner avec devient une gageure.

Des millions de personnes qui adhèrent aux mensonges du grand maître Steve Jobs, le suivant tel, au mieux, le gourou d’un secte, au pire, les fanatiques d’un état fasciste.

Se battre pour le logiciel libre c’était aussi se battre contre Micro$oft. Il faut bien comprendre maintenant qu’Apple, qui dépasse ce dernier en terme de capitalisation boursière depuis la fin mai 2010, est aujourd’hui un adversaire au moins aussi important à combattre.

La Free Software Foundation l’a compris depuis longtemps, qui mène depuis 2006 la campagne DefectiveByDesign.org. Oui nous avons tous dit plein de mal de cet horrible Windows, qui était techniquement nul, buggé, plein de virus et de backdoors des agences de renseignement gouvernementales. Il est tant de ne plus faire aucune concession à Apple et ses iBidules (iPhone, iPad, etc.). Nous avons une alternative beaucoup plus évidente qu’à l’époque où nous devions comparer des distributions GNU/Linux encore très jeunes à Windows, nous avons Android et webOS qui sont au moins aussi bien qu’iOS, et sur certains points nettement supérieurs.

L’avenir de l’informatique se joue aujourd’hui, faisons tout pour que la Liberté l’emporte sur le pouvoir Séparé.

Droit du libre

Monday, April 19th, 2010

J’ai repris mes études cette année, en Master 2 de Droit. Les logiciels libres que je défends ont été produits par le travail commun de nombreuses personnes partageant une même éthique. Une éthique basée sur un concept novateur, puissant et transformateur socialement, un concept juridique et non informatique : le Copyleft.

C’est pourquoi je pense que ce Master de Droit est au moins aussi important pour l’Avenir que mon Master d’Informatique. Les logiciels sous licences libres, mais aussi les créations sous licences Creatives Commons devront immanquablement se faire respecter devant les tribunaux face aux attaques de ceux qui ne voient pas leurs intérêts dans une société plus juste, de partage et de coopération.

Je suis en stage depuis maintenant deux mois chez Hugot Avocats, le cabinet à l’origine de l’assignation de Free pour non respect de la licence GNU GPL. Pour pouvoir travailler dans ce cabinet, j’ai logiquement dû signer un NDA, les avocats étant tenus par leur déontologie au secret professionnel. C’est assez cocasse car maintenant que j’ai tant de choses à dire, je n’ai plus le droit d’en parler :-) .

Certains articles trop spécialisés, ou abordant des thématiques différentes (prélèvements ADN, liberté d’expression, etc.) seront rédigés directement sur un blog spécifique dédié au droit. J’espère que les géants Eben Moglen et Lawrence Lessig me laisseront me hisser sur leurs épaules…

Debian Installer : ça bouge !

Wednesday, April 14th, 2010

J’étais tranquillement et innocemment en train d’essayer (enfin !!) d’avancer sur LiNoX, ma fabuleuse distribution GNU/Linux graphique n’utilisant pas X11 (un de mes meilleurs vapoware :-) ), quand au hasard de mes lectures je tombais sur la page du wiki Debian consacrée à la partie graphique du debian installer (ci-après nommé g-i) qui mentionnait:

“It used to be a common misconception that the graphical installer is X11 based: it is based on DirectFB and GTK+.”

Une évidence bien sûr, c’est d’ailleurs pour ça que le g-i est génial et que je veux l’utiliser pour mon LiNoX !! Mais suivait une update qui m’a semblée irréelle :

“Update: That’s true until Lenny (included), but a switch to X11 has been performed during February/March 2010; later daily builds and upcoming releases should be X11-based accordingly.”

Ce fut pour moi comme un grand retour dans le passé… souvenons-nous : Debian avec son excellent installeur, mais qui ne fonctionnait qu’en mode texte. Ubuntu qui arrive et qui du point de vue “user-friendly” se retrouve en retrait des autres distributions Linux, comme Fedora, Mandrake et openSUSE,  utilisant des installeurs graphiques avec X11.

Il fallait faire quelque chose, mais l’évidence était qu’il fallait que cela soit meilleur que ce qui existait déjà. Pour remplacer les installeurs basés sur X11 qui la plupart du temps n’arrivaient pas à se lancer correctement, en plus d’être d’incroyables machines à gaz, deux choix techniques étaient envisageables :

  1. Faire un Live CD qui permet de démarrer et tester son système, et lui adjoindre un installeur graphique qui soit une simple application pour le X11 d’un système complet déjà configuré
  2. Faire fonctionner la backend DirectFB pour GTK+, de manière à avoir un installeur qui ne nécessite pas X11, et qui soit une simple version graphique et légère de l’installeur texte

Ubuntu a suivi la première voie, et la majorité des distributions visant le desktop, même si comme Fedora elles avaient déjà un installeur grapique X11, lui ont emboité le pas. Debian a logiquement et courageusement choisi la seconde voie et a développé ce g-i que je considère toujours comme un bijou du génie logiciel.

Oui mais voilà le 31 janvier 2010, patatra, un article de Josselin Mouette intitulé “Please save the graphical installer” explique les difficultés actuelles du g-i : les deux “Dieux” de la programmation qui faisaient fonctionner la backend DirectFB de GTK+ (Attilio Fiandrotti et Sven Neumann) ont actuellement d’autres choses à faire de leur vie (ces variations dans la disponibilité et l’investissement des programmeurs est un classique du monde du logiciel libre), mais GTK+ change de version et la backend DirectFB ne suivant pas, le g-i va finir par craquer !!

Cette incroyable régression que constituerait la disparition du g-i, vous pouvez déjà “l’expérimenter” sur les CDs d’installation de Debian testing depuis l’annonce du 21 février : “It is also important to note that we have disabled the Graphical Installer, and as consequence the speakup drivers, for this release due a breakage in the DirectFB backend of the GTK+ library.”.

Aucun nouveau “Dieu” de la programmation DirectFB n’a semble-t-il fait son apparition, mais il restait heureusement un dernier recours : la possibilité d’utiliser une autre backend de GTK+, massivement utilisée sur tous les Unix et dotée de nombreux excellents programmeurs… la backend X11. La X Strike Force a instantanément répondu à l’appel de détresse de Josselin et même si tout n’est pas rose, c’est aujourd’hui semble-t-il la seule option technique viable.

Ce qui me pose un problème, c’est que si la décision semble depuis le 8 février clairement et définitivement prise, j’aimerais bien comprendre par qui et selon quel processus démocratique. Il me semble que pour un choix si important pour Debian et son avenir, il n’y a tout simplement pas eu de débat, et le vote a dû m’échapper…

MeeGo, l’alliance des perdants ?

Tuesday, February 16th, 2010

Confrontés à la déferlante des produits Google basés sur Linux incarnée par la percée d’Android, principal challenger de l’iPhone, et la dynamique autour de Chrome OS, leurs concurrents respectifs, que sont le Maemo de Nokia et le Moblin d’Intel, avaient bien du mal à percer.

Ils ont donc décidé d’unir leurs efforts et de fournir une plateforme technologique commune : MeeGo, annoncée ce 15 février au Mobile World Congress de Barcelone et qui sera hébergée par la Linux Foundation. Que résulte-t-il de la fusion ? Une standardisation autour de Qt, alors que le meilleur de Moblin était le travail fait avec Clutter basé sur GTK+, et l’utilisation du système de packaging RPM, alors que le meilleur de Maemo était d’être basé sur Debian…

On m’avait reproché d’être trop dur avec la plateforme Maemo dans mon article sur les smartphones, mais force est de constater qu’aujourd’hui elle n’existe plus et que bien malheureux le développeur qui s’est investi successivement dans les technos Maemo 5 puis Maemo 6. Maintenant ce sera MeeGo… ou pas.

Smartphones Linux : le point du dev

Friday, January 15th, 2010

Un petit point sur le hardware et le software disponibles pour un développeur libre qui voudrait utiliser un smartphone et développer dessus.

Il existe trois plateformes basées sur Linux (je n’écris volontairement pas GNU/Linux car si Android utilise bien le noyau Linux, il n’utilise pas pour autant les outils GNU) :

Maemo :

Maemo est censé, chez Nokia, remplacer Symbian qui est dépassé technologiquement pour les nouveaux usages mobiles. Après avoir été expérimenté (trop) longuement (depuis 2005 !) sur les tablettes N770, N800 et N810, il est enfin disponible sur un téléphone : le N900, depuis novembre 2009.

Or, si le N900 est disponible, il utilise la plateforme Maemo 5 qui va disparaitre et aucun smartphone n’est disponible sous Maemo 6. Je ne lancerai donc pas une énième fois le troll GTK (Maemo 5) vs Qt (Maemo 6) qui n’a juste pas lieu d’être : Maemo n’est pas dans la course. Et à la vitesse où va cette course, il ne parviendra peut-être jamais à y rentrer.

Je ne m’étendrai pas sur Maemo car je veux à la fois développer des applications  que je puisse  tester,  et que d’autres puissent utiliser, et il faut pour cela pouvoir se procurer un smartphone adapté, et ne pas m’investir dans une plateforme en fin de vie. De plus, le fait que Maemo utilise Xorg le rend techniquement contestable, tant la complexité et la lourdeur inhérentes à X11 sont malvenues sur un smartphone.

Android :

Du côté d’Android c’est une toute autre histoire. Des smartphones sont disponibles depuis octobre 2008 aux États-Unis et mars 2009 en France. Au niveau commercial c’est déjà une grande réussite : Android est la plateforme qui progresse le plus et s’est imposé en un an comme le principal (le seul ?) challenger de l’iPhone (voir les statistiques d’AdMob pour plus de détails).

D’un point de vue technique, Android fournit un SDK basé sur le langage de programmation Java. Cependant, il ne repose pas sur la JVM de Sun, mais sur Dalvik, une machine virtuelle à registres (comme Parrot) spécialement développée pour les contraintes hardware (mémoire faible, processeur peu puissant…) de l’embarqué. Dalvik est à ma connaissance la seule machine virtuelle à registres qui soit un succès industriel, face à la masse des machines virtuelles à pile (JVM de Sun, CLR de Microsoft…).

Mais que peut-on faire si on ne veut pas programmer en Java ? Les développeurs ont souvent un langage de programmation favori, qu’ils ont peu ou pas envie d’abandonner ; dans mon cas c’est PythonOn pense alors naturellement aux implémentations des langages écrites en Java, Jython pour Python ; mais si elles fonctionnent sur la JVM de Sun, ce n’est pas forcément le cas pas sur Dalvik ! Heureusement, Google a pensé à nous avec ASE, l’Android Scripting Environment, qui permet d’utiliser l’ensemble des API Android à partir de différents langages interprétés, et le choix est vraiment grand : Python, Lua, Perl, Ruby, JavaScript, BeanShell et même shell !!

Tous les langages ne sont pas égaux devant ASE. Les langages natifs, c’est-à-dire écrits en Java, comme Ruby basé sur JRuby, JavaScript basé sur Rhino ou encore BeanShell, peuvent théoriquement accéder directement aux API Java natives, alors que les langages “cross-compilés”, comme Python (basé sur CPython) ou Lua qui sont écrits en C, ne peuvent procéder que par des appels JSON RPC. C’est cependant cette dernière méthode qui semble conseillée quel que soit le langage utilisé.

Je suis donc maintenant motivé pour me lancer dans l’aventure Android, d’autant que Google vient d’anoncer, lors d’une conférence de presse le 5 janvier, le lancement de son premier smartphone : le Nexus One fabriqué par HTC. C’est tout simplement une “bête de course” du point de vue hardware : processeur à 1 Ghz, 512 Mo de RAM et un écran 3,7″ d’une résolution de 480*800 (pour rappel l’iPhone 3GS fonctionne à 600 Mhz avec 256 Mo de RAM et un écran 3,5″ en 320*480) !!! La disponibilité du Nexus One en France est prévue pour le mois de mars.

J’hésite cependant encore avec le Motorola Milestone, qui a lui l’avantage d’être déjà disponible et de posséder un clavier physique, ce qui pourrait se révéler bien pratique pour des sessions d’administration de machines par SSH, avec le terminal en plein écran !

webOS :

Il y a un an, lors du CES de janvier 2009, Palm avait créé l’évènement avec l’annonce du Palm Pré et de son nouveau système d’exploitation : webOS. Les critiques avaient été très élogieuses et l’on a même pensé que l’on tenait là le principal concurrent de l’iPhone. En effet, webOS est le seul système alternatif  à proposer les mêmes facilités multitouch que l’iPhone (il semblerait que sur ce sujet, Palm et Apple se tiennent par la barbichette des brevets logiciels). La qualité et la simplicité de l’ergonomie étaient aussi tout à fait remarquables, et le design très “sexy”.

Le Palm Pré a été introduit au États-Unis le 6 juin, et les ventes ont été bonnes. Mais tout cela s’est un peu essouflé car Sprint, l’opérateur exclusif aux USA, est semble-t-il en perte de vitesse, et le Palm Pré n’a pas été commercialisé dans beaucoup d’autres pays : il n’est par exemple toujours pas disponible en France. Seule nouveauté depuis un an, l’introduction d’un nouveau modèle moins puissant visant l’entrée de gamme des smartphones, le Palm Pixi.

Et puis voilà à nouveau que, lors de la présentation du 7 janvier au CES, Palm fait des annonces tonitruantes ! D’abord l’arrivée de deux nouveaux modèles : le Palm Pré Plus et le Palm Pixi Plus, qui proposent de grandes améliorations matérielles. Le Palm Pré voit sa capacité de stockage et sa RAM doublées, à 16 Go et 512 Mo respectivement, tandis que le Palm Pixi n’est plus castré des possibilités Wi-Fi que l’on peut légitimement attendre d’un smartphone, fût-il d’entrée de gamme. Et ces deux modèles seront disponibles en France au début du second trimestre.

Ensuite, le programme pour développeur, qui permet de fournir ses applications via le App Catalog officiel de Palm (équivalent du célèbre App Store d’Apple) est maintenant ouvert à tous. Mais ce n’est pas tout, un programme spécial pour les développeurs Open Source existe, qui offre comme avantage d’économiser les 99$ de cotisation annuelle (en ce moment offerts à tous) et les 50$ par application soumises au App Catalog. De plus, Palm montre sa compréhension des logiciels libres, car l’on peut tout à fait commercialiser ses applications libres, et il n’y a aucune discrimination, comme pour les applications propriétaires c’est 70% du prix pour le développeur (comme sur l’App Store).

Développeur qui pourra désormais programmer de vrais jeux exploitant tout la puissance du la puce graphique, grâce à la mise à disposition d’un nouveau SDK spécialement destiné au jeux : le Plug-in Development Kit. Ce dernier est basé sur l’excellente et très utilisée librairie SDL, véritable standard des logiciels libres. Le PDK est censé être programmé en C ou en C++, mais il existe des bindings SDL pour un nombre de langage de programmation très impressionnant, et j’ai du mal à voir ce qui pourrait m’empêcher d’utiliser sous peu Pygame pour programmer des jeux en Python !

Pour ce qui est des applications plus classiques, Palm propose désormais un IDE fonctionnant dans votre navigateur web : Project Ares. On pourra saluer la cohérence technologique qui permet de faire aisément cela puisque l’ensemble du SDK Palm est construit à base  de technologies web, et espérer que cela permettra de faciliter l’accès à la programmation webOS au plus grand nombre.

Enfin, pour motiver les développeurs à se lancer et ainsi remplir son App Catalog, Palm propose le concours Hot Apps doté d’un million de dollars à partager entre les applications les plus téléchargées du 1er février au 31 mai.

Sur le front des smartphones Linux est là et bien là, en position de force, prêt à exterminer les systèmes d’exploitation privateurs de liberté Windows Mobile et BlackBerry OS et à mener le grand combat final contre l’iPhone !

Google Chrome OS

Thursday, November 19th, 2009

Aujourd’hui à 19 heures, heure de Paris, Google a enfin livré les informations techniques de son Google Chrome OS basé sur GNU/Linux.

chromeOS

Le système est, on n’en sera pas surpris, totalement orienté “Web”:

  • toutes les applications ChromeOS sont des Webapps, en fait l’interface de Chrome OS est principalement le navigateur web Chrome en plein écran.
  • toutes les données sont “in the cloud”, l’avantage étant que la défaillance ou la perte de son ordinateur n’a aucune incidence sur l’utilisateur, il lui suffit d’en prendre un autre et tout recommence de manière transparente ; par contre on est bien sûr en plein dans l’évolution vers une informatique “à la Big Brother”.

Le boot ultra-rapide est une spécificité importante : 7 secondes pour arriver à l’écran de login, puis 3 secondes supplémentaires pour l’accès au bureau fonctionnel.

Il semble qu’un grand travail ait été accompli sur les problématiques de sécurité, notamment sur le processus de boot et la stratégie des droits d’écriture de la partition racine.

Google Chrome OS ne permettra pas de base de faire fonctionner les applications Android : “tout est webapp”, et supportera les processeurs X86 et ARM.

Bien sûr comme c’est un logiciel libre, chacun peut décider de rajouter les fonctionnalités manquantes au code source !

L’annonce officielle sur le blog de Google.

Smartphones : la percée Linux !

Thursday, October 1st, 2009

AdMod vient de fournir ses derniers chiffres concernant les parts de marché des systèmes d’exploitation pour smartphones, et ils montrent un poussée formidable des différentes saveurs de Linux !

smartphonesos

Devant il reste le Symbian de Nokia, l’ancien leader presque monopolistique, qui continue sa rapide chute liée à son arriération technologique, pendant que l’iPhoneOS d’Apple est déjà si dominant qu’il ne croît plus tant que ça (l’iPod touch n’est pas pris en compte dans ces chiffres car il ne fait pas téléphone).

Linux perce donc par deux concurrents :

  • Android de Google qui passe de 2% à 7%, soit une multiplication par 3,5 de ses parts de marché, grâce entre autres à un HTC Dream 2ème du classement des smartphones.
  • webOS de Palm qui émerge quant à lui directement à 4% grâce au Palm Pre, 4ème au classement, qui n’est pourtant commercialisé qu’en Amérique du Nord !

Derrière c’est Windows Mobile qui s’écroule presque de moitié, et Palm OS qui rend logiquement son dernier souffle avec l’arrivée de webOS. Précisons de plus que Palm a annoncé abandonner totalement sa ligne de smartphones sous Windows Mobile pour se consacrer uniquement à webOS.

Cette déferlante Linux dans les smartphones n’est pas près de s’arrêter, et il y aura même un troisième concurrent puisque Nokia compte sur Maemo, tournant sur son tout nouveau N900 et basé sur Debian, pour succéder à son vieux Symbian !

Les trois plateformes de développement sont excellentes bien que très différentes. Chacun pourra y trouver son bonheur, entre choix technologique ou éthique, car certaines licences ne sont pas sans poser de problèmes… mais cela est une autre histoire (Carl si tu m’entends :-) ) !

Tornado !

Sunday, September 13th, 2009

Le 10 août 2009, Facebook, le plus largement utilisé des réseaux sociaux, a racheté pour une somme avoisinant les 50 millions de dollars FriendFeed, un site de microblogging fait par d’anciens de chez Google.

Cette information en tant que telle n’est pas si intéressante, mais elle prend beaucoup de force quand c’est Facebook, un gros producteur de technologies open source, qui rachète un site fait par d’anciens de chez Google et donc utilisant Python comme langage de programmation (oui, vous vous souvenez, le meilleur langage du Monde !!!).

Le résultat de tout cela est la libération de Tornado, un serveur d’application web asynchrone écrit en Python. Les performances anoncées semblent impressionantes, très supérieures à celles du standard actuel pour les applis python en production Apache+mod_wsgi, et donc aussi à ce que peut faire TwistedWeb, le seul autre serveur web python asynchrone.

J’ai été mis au courant par la mailing list django-developers où une annnonce à été faite par Bret Taylor, et j’ai pu trouver par la suite l’avis de Glyph Lefkowitz, le papa de Twisted, une des rares personne très compétentes dans le domaine complexe et globalement mal maitrisé de la programmation asynchrone, alors que Dustin Sallings a déjà forké Tornado de manière à ce qu’il utilise Twisted (oui, vous vous souvenez, le logiciel libre c’est trop génial, ça bouge à mille à l’heure, aucune entrave à la création !).

Un benchmark, et puis un autre, et encore un autre.

python-glpk

Thursday, August 13th, 2009

Le paquet python-glpk fournit un module qui permet d’utiliser la bibliothèque GNU de programmation linéaire GLPK tout en programmant en Python.

Le mainteneur actuel, Jan Alonzo, semblant ne plus s’en occuper, Sandro Tosi a fait une RFA (“Request for Adoption”) sur le paquet.

Python étant mon langage de programmation préféré, j’avais décidé de choisir des paquets dans ce langage pour commencer à m’investir sérieusement dans le projet Debian. De plus, j’ai été amené à utiliser GLPK lors de mon stage de Master, ce qui me donne une petite compétence supplémentaire pertinente.

J’ai donc logiquement décidé de relever le défi python-glpk !!! et j’en suis maintenant le “Owner”…il ne reste plus qu’à travailler :-)