Depuis maintenant quelques années Eclipse réalise une sortie simultanée courant juin. La publication de 2009 : "Galileo" viens tout juste d'être rendue publique.
Galileo c'est plus d'une trentaine de projets qui collaborent durant un an pour livrer leur version majeure de manière simultanée, Galileo couvre ainsi de nombreux domaines qui vont de l'embarqué, aux applications web JEE et PHP, en passant par le "business reporting", la modélisation, le développement C, l'accessibilité, la gestion des données ou encore la collaboration.
Jython supporte maintenant Python 2.5
Le 8 juin dernier, la version 2.5.0 de Jython a été publiée. Pour rappel, c'est un interprète Python écrit en Java. Cette nouvelle version supporte désormais les fonctionnalités de Python 2.5 (version de Python sortie en 2006, voir les nouveautés de Python 2.5).
Le développement de Jython s'était essoufflé fin 2004 avec le départ du développeur le plus actif, Samuele Pedroni, qui s'est consacré à PyPy (implémentation de Python, écrite en Python). Jython était alors figé sur Python 2.2. En mars 2008, le projet est relancé par SUN (éditeur du langage Java) qui embauche Ted Leung et Frank Wierzbicki pour développer Jython. Jython 2.5 est le fruit de ce travail.
La 2e partie de cette dépêche contient d'autres brèves Python : vidéos de Pycon FR, Python 3.1, compilateur à la volée PyPy et EuroPython.
Le développement de Jython s'était essoufflé fin 2004 avec le départ du développeur le plus actif, Samuele Pedroni, qui s'est consacré à PyPy (implémentation de Python, écrite en Python). Jython était alors figé sur Python 2.2. En mars 2008, le projet est relancé par SUN (éditeur du langage Java) qui embauche Ted Leung et Frank Wierzbicki pour développer Jython. Jython 2.5 est le fruit de ce travail.
La 2e partie de cette dépêche contient d'autres brèves Python : vidéos de Pycon FR, Python 3.1, compilateur à la volée PyPy et EuroPython.
ext3 est mort ? Vive ext4 !
Depuis de nombreuses années (introduit dans Linux 2.4.15 en novembre 2001, pour être précis), le système de fichiers par défaut de la plupart des distributions GNU/Linux était l'ext3.
Cependant, les équipements modernes tels que les unités de stockage en masse commencent à en atteindre les limites: la gestion des données par blocs n'est plus adaptée à la taille des fichiers qui sont utilisés maintenant.
En effet, les volumes de données à traiter augmentent en permanence et dans ce contexte, le vieillissant système de fichiers ext3 commence à montrer ses limites:
taille maximum du système de fichiers de 16 To fixée par un nombre de blocs codé sur 32 bits et des blocs de données de 4KB.
Le développement de ext4 a donc débuté en novembre 2006. Deux changements fondamentaux ont été apportés par rapport à ext3:
Cependant, les équipements modernes tels que les unités de stockage en masse commencent à en atteindre les limites: la gestion des données par blocs n'est plus adaptée à la taille des fichiers qui sont utilisés maintenant.
En effet, les volumes de données à traiter augmentent en permanence et dans ce contexte, le vieillissant système de fichiers ext3 commence à montrer ses limites:
taille maximum du système de fichiers de 16 To fixée par un nombre de blocs codé sur 32 bits et des blocs de données de 4KB.
Le développement de ext4 a donc débuté en novembre 2006. Deux changements fondamentaux ont été apportés par rapport à ext3:
- Le nombre de blocs a été augmenté, passant de 32 à 48 bits ;
- L'adressage indirect de bloc (i.e: les blocs représentant un fichier sont enregistrés comme une liste de blocs uniques) a été remplacé par des "extents" (i.e: des plages de blocs).
Yahoo libère son Hadoop
Yahoo! a annoncé la mise en ligne du code source de sa version du framework Apache Hadoop. Apache Hadoop est un logiciel open source, développé en Java, utilisé pour des applications intensives en manipulation de données sur de vastes clusters.
Hadoop réalise deux tâches essentielles:
Ce code est celui utilisé par Yahoo! sur de très nombreux systèmes.
Le code source, hébergé chez GitHub, est sous license Apache 2.0.
Yahoo! n'offre aucun support pour Hadoop.
Hadoop réalise deux tâches essentielles:
- Map/Reduce : ce concept prend une application et la divise en plusieurs fragments qui peuvent chacun être exécutés séparément sur un noeud du cluster ;
- HDFS : il s'agit d'un système de fichier distribué qui enregistre les données à travers les noeuds du clusters tout en optimisant la bande passante
Ce code est celui utilisé par Yahoo! sur de très nombreux systèmes.
Le code source, hébergé chez GitHub, est sous license Apache 2.0.
Yahoo! n'offre aucun support pour Hadoop.
Google lance Page Speed
Page Speed se présente sous la forme d'une extension, sous licence Apache, pour Firefox et Firebug. À la manière de l'extension YSlow, Page Speed propose d'aider les webmasters et développeurs à optimiser la vitesse de rendu de leurs pages web en proposant une analyse de leur chargement.
La documentation disponible sur le site du projet est de très bonne facture, notamment la page intitulée "Web Performance Best Practices".
Le code source est disponible sous licence Apache 2.0.
L'extension se compose de deux onglets visibles sous Firebug qui analysent la performance en fonction des critères établis dans une liste et suggèrent des optimisations, ou qui permettent de monitorer l'activité de chargement et d'interprétation des éléments composant la page (images, javascript, cache, requêtes DNS...).
Les évaluations sont notées selon quatre niveaux :
La documentation disponible sur le site du projet est de très bonne facture, notamment la page intitulée "Web Performance Best Practices".
Le code source est disponible sous licence Apache 2.0.
L'extension se compose de deux onglets visibles sous Firebug qui analysent la performance en fonction des critères établis dans une liste et suggèrent des optimisations, ou qui permettent de monitorer l'activité de chargement et d'interprétation des éléments composant la page (images, javascript, cache, requêtes DNS...).
Les évaluations sont notées selon quatre niveaux :
- Haute priorité ;
- Priorité moyenne ;
- Correct ;
- Message d'information.
Appel à Projets "Web 2.0": une opportunité pour le logiciel libre
Le gouvernement a lancé il y a une semaine un appel à projet sur les thèmes du "web 2.0" et du "serious gaming", avec un budget de 30 millions d’Euros.
Il s’agit de sujets qui s’insèrent parfaitement dans les thématiques du Pôle de Compétitivité System@tic, avec un avantage intéressant donné au logiciel libre, puisque parmi les critères de sélection, on trouve :
De plus, on peut remarquer que le thème du “web innovant” (web 2.0 et 3.0) entre complètement dans les thématiques prioritaires du Groupe Thématique sur le Logiciel Libre, puisque celui-ci a reçu pour mission de traiter des domaines comme :
Cet appel à projet se fait selon un calendrier très serré (il reste juste un mois pour rendre les dossier).
Si vous avez des idées de projets qui entrent dans le cadre défini dans l’appel à projet, et dans le mesure où les projets collaboratifs ont l’air d’être privilégiés, System@tic organise une séance d’émergence de projets vendredi prochain à Paris.
Cette séance est ouverte aux acteurs qui sont susceptibles de participer à l’appel à projet.
Il s’agit de sujets qui s’insèrent parfaitement dans les thématiques du Pôle de Compétitivité System@tic, avec un avantage intéressant donné au logiciel libre, puisque parmi les critères de sélection, on trouve :
- l’ouverture de l’application ou du service notamment par le biais d'APIs,
- respect des standards existants,
- ou [la] diffusion du code en open source, pour garantir une diffusion aussi large que possible.
De plus, on peut remarquer que le thème du “web innovant” (web 2.0 et 3.0) entre complètement dans les thématiques prioritaires du Groupe Thématique sur le Logiciel Libre, puisque celui-ci a reçu pour mission de traiter des domaines comme :
- les CMS,
- l’ensemble des outils bureautiques, y compris les outils linguistiques les composant,
- le “bureau sémantique”,
- les outils pour l’infrastructure collaborative distribuée, comme le Web 2.0, les réseaux sociaux et peer to peer
Cet appel à projet se fait selon un calendrier très serré (il reste juste un mois pour rendre les dossier).
Si vous avez des idées de projets qui entrent dans le cadre défini dans l’appel à projet, et dans le mesure où les projets collaboratifs ont l’air d’être privilégiés, System@tic organise une séance d’émergence de projets vendredi prochain à Paris.
Cette séance est ouverte aux acteurs qui sont susceptibles de participer à l’appel à projet.
Embedded Linux Conference à Grenoble - Appel à contributions
Connaissez l'Embedded Linux Conference? Il s'agit de la conférence la plus importante pour la communauté de Linux embarqué. Elle a lieu deux fois par an, en Californie au printemps, et en Europe en automne. Elle attire des contributeurs parmi les plus connus dans la communauté du noyau Linux et de l'embarqué. Cette année, nous avons la chance d'accueillir cette conférence en France, à Grenoble les 15 et 16 octobre prochains.
Si vous travaillez déjà sur Linux embarqué, ne manquez pas cette occasion de partager votre expérience et de la confronter à celle d'autres membres de la communauté. Vous avez jusqu'au 15 juin pour proposer une présentation, ou une session informelle (BOF). Les démos seront aussi les bienvenues. Venez nombreux en tout cas. Après les RMLL en juillet, ce sera aussi une excellente occasion pour rassembler développeurs et utilisateurs de Linux embarqué en France, et de montrer au monde entier que nous ne faisons pas que des fromages et du vin dans l'hexagone...
Si vous travaillez déjà sur Linux embarqué, ne manquez pas cette occasion de partager votre expérience et de la confronter à celle d'autres membres de la communauté. Vous avez jusqu'au 15 juin pour proposer une présentation, ou une session informelle (BOF). Les démos seront aussi les bienvenues. Venez nombreux en tout cas. Après les RMLL en juillet, ce sera aussi une excellente occasion pour rassembler développeurs et utilisateurs de Linux embarqué en France, et de montrer au monde entier que nous ne faisons pas que des fromages et du vin dans l'hexagone...
Concours de design FullCSS
Le FullCSSContest est un concours dont le but est la création du design d'une page web sans utilisation d'images ni de JavaScript et respectant les normes du W3C.
Le design devra être sous licence libre (Open Source et sous licence GPL), vous ne devez pas utiliser d'image, et dans la mesure du possible respecter les recommandations du W3C. La note attribuée à votre design (un jury est en cours de constitution) sera faite sur plusieurs critères :
Les inscriptions seront closes le 15 juin 2009, et les résultats seront publiés le 30 juin 2009.
Le design devra être sous licence libre (Open Source et sous licence GPL), vous ne devez pas utiliser d'image, et dans la mesure du possible respecter les recommandations du W3C. La note attribuée à votre design (un jury est en cours de constitution) sera faite sur plusieurs critères :
- Artistique
- Ergonomie
- Originalité
- Respect des règles du W3C
- Maîtrise du CSS
Les inscriptions seront closes le 15 juin 2009, et les résultats seront publiés le 30 juin 2009.
xbindkeys : appel à mainteneur.
Il y a bientôt huit ans, xbindkeys sortait en version 1.0.
Pour rappel, xbindkeys permet d'associer une action ou un script à une touche ou un clic de bouton de souris.
À l'époque, j'avais écrit ce petit bout de code parce que je cherchais un gestionnaire de fenêtres qui me convenait et plutôt que de refaire à chaque fois l'association des touches du clavier, xbindkeys me permettait de garder les mêmes associations de touches avec différents gestionnaires de fenêtres. Il permettait également de faire ces associations avec les gestionnaires qui ne le permettaient pas.
Il a d'abord été écrit entièrement en C puis le besoin s'est fait sentir de pouvoir le modifier sans toucher au code en C ni appeler des scripts externes et un contributeur (Marcello Mathias Herreshoff) a rajouté la possibilité de le configurer en Scheme.
Au fil du temps, je me suis rendu compte que je refaisais un gestionnaire de fenêtres en rajoutant tout un tas de petits programmes appelés depuis xbindkeys (comme movemouse, xstickwin...) et quitte à faire quelque chose, je me suis lancé dans l'écriture d'un gestionnaire de fenêtres qui me convenait écrit, de manière homogène, en Common Lisp (clfswm).
Depuis, je n'utilise plus xbindkeys mais certains semblent continuer à s'en servir (voir l'annonce d'Uzbl par exemple).
Je continue à corriger les éventuels bugs, mais si quelqu'un veux reprendre le flambeau et créer un site plus moderne avec un wiki par exemple, une mailing-liste et utiliser un gestionnaire de versions, n'hésitez pas a me contacter. Dans tous les cas je continue à suivre xbindkeys mais - je le crains - d'un oeil de plus en plus distant.
Voilà, si vous avez envie de donner une nouvelle jeunesse à xbindkeys, ce sera avec plaisir que je passerai le flambeau.
Pour rappel, xbindkeys permet d'associer une action ou un script à une touche ou un clic de bouton de souris.
À l'époque, j'avais écrit ce petit bout de code parce que je cherchais un gestionnaire de fenêtres qui me convenait et plutôt que de refaire à chaque fois l'association des touches du clavier, xbindkeys me permettait de garder les mêmes associations de touches avec différents gestionnaires de fenêtres. Il permettait également de faire ces associations avec les gestionnaires qui ne le permettaient pas.
Il a d'abord été écrit entièrement en C puis le besoin s'est fait sentir de pouvoir le modifier sans toucher au code en C ni appeler des scripts externes et un contributeur (Marcello Mathias Herreshoff) a rajouté la possibilité de le configurer en Scheme.
Au fil du temps, je me suis rendu compte que je refaisais un gestionnaire de fenêtres en rajoutant tout un tas de petits programmes appelés depuis xbindkeys (comme movemouse, xstickwin...) et quitte à faire quelque chose, je me suis lancé dans l'écriture d'un gestionnaire de fenêtres qui me convenait écrit, de manière homogène, en Common Lisp (clfswm).
Depuis, je n'utilise plus xbindkeys mais certains semblent continuer à s'en servir (voir l'annonce d'Uzbl par exemple).
Je continue à corriger les éventuels bugs, mais si quelqu'un veux reprendre le flambeau et créer un site plus moderne avec un wiki par exemple, une mailing-liste et utiliser un gestionnaire de versions, n'hésitez pas a me contacter. Dans tous les cas je continue à suivre xbindkeys mais - je le crains - d'un oeil de plus en plus distant.
Voilà, si vous avez envie de donner une nouvelle jeunesse à xbindkeys, ce sera avec plaisir que je passerai le flambeau.
Debian remplace la glibc par eglibc
Les mainteneurs Debian de la bibliothèque standard C ont décidé de passer de la GNU libc (glibc) à eglibc. La migration est déjà effective dans Debian Sid. La « libc » est un élément essentiel dans une distribution étant donné que l'intégralité des applications l'utilise. La décision de migrer a été mûrement réfléchie et découle de plusieurs raisons : relations difficiles avec les développeurs de la glibc, prise en charge incomplète de l'ARM dans la glibc, branche stable non maintenue, etc.
Le projet eglibc a été lancé en août 2006 par Codesourcery et est aujourd'hui soutenu par un consortium (Freescale, MIPS technologies, MontaVista, Wind River). Ce n'est pas à proprement parler un « fork » de la glibc, c'est une collection de patchs visant l'embarqué. Il permet notamment de désactiver certains composants, les locales par exemple, pour diminuer l'empreinte mémoire. La compilation croisée est également améliorée, point important pour l'embarqué. La bibliothèque eglibc est aussi compatible avec d'autres shells que le très classique Bash.
Le projet vise une compatibilité binaire avec la glibc, et pour cela l'arborescence des sources est régulièrement synchronisée. La distribution Linux OpenWrt supporte déjà eglibc (en plus d'uClibc).
Le projet eglibc a été lancé en août 2006 par Codesourcery et est aujourd'hui soutenu par un consortium (Freescale, MIPS technologies, MontaVista, Wind River). Ce n'est pas à proprement parler un « fork » de la glibc, c'est une collection de patchs visant l'embarqué. Il permet notamment de désactiver certains composants, les locales par exemple, pour diminuer l'empreinte mémoire. La compilation croisée est également améliorée, point important pour l'embarqué. La bibliothèque eglibc est aussi compatible avec d'autres shells que le très classique Bash.
Le projet vise une compatibilité binaire avec la glibc, et pour cela l'arborescence des sources est régulièrement synchronisée. La distribution Linux OpenWrt supporte déjà eglibc (en plus d'uClibc).
Veille technologique sur le web
Développeur d'applications web communautaires pour af83, je collectionne plus ou moins régulièrement les liens sur tout ce qui pourrait intéresser mes collègues développeurs. Ainsi, de temps à autres, je publie une liste de liens sur notre blog.
Ma dernière sélection (voir la suite de la dépêche) traite des langages, du moteur de recherche Google, de Ruby et Rails, de Javascript, du profileur (analyseur de performances) et de performances, d'infrastructure web, de PDF, etc.
NdM : merci de nous dire dans les commentaires si vous trouvez ces liens utiles ou non sur LinuxFr.org, si vous souhaitez voir plus souvent de telles compilations de liens, si vous êtes un développeur toujours à la recherche des dernières outils, langages, bibliothèques, etc.
Ma dernière sélection (voir la suite de la dépêche) traite des langages, du moteur de recherche Google, de Ruby et Rails, de Javascript, du profileur (analyseur de performances) et de performances, d'infrastructure web, de PDF, etc.
NdM : merci de nous dire dans les commentaires si vous trouvez ces liens utiles ou non sur LinuxFr.org, si vous souhaitez voir plus souvent de telles compilations de liens, si vous êtes un développeur toujours à la recherche des dernières outils, langages, bibliothèques, etc.
Parchive : les prémices d'une norme
Les utilisateurs des newsgroups binaires connaissent certainement l'utilitaire « parchive » (format PAR) permettant la reconstruction des parties manquantes d'un fichier téléchargé en plusieurs parties. Les membres du projet sont actuellement en train de tester différentes améliorations en vue de produire le format PAR3 dans le cadre d'une normalisation ISO/IEC.
Pour ceux qui n'en ont jamais entendu parler, il s'agit d'un projet ayant pour but de définir et mettre en œuvre un format de fichier servant de correcteur d'erreur à un ensemble de fichiers lors de son échange. L'utilisation principale et la plus connue est le transfert de fichier par l'intermédiaire des newsgroups (alt.binaries.*).
L'ensemble des travaux sur une éventuelle norme sont disponibles sur la liste de diffusion parchive-devel.
Pour ceux qui n'en ont jamais entendu parler, il s'agit d'un projet ayant pour but de définir et mettre en œuvre un format de fichier servant de correcteur d'erreur à un ensemble de fichiers lors de son échange. L'utilisation principale et la plus connue est le transfert de fichier par l'intermédiaire des newsgroups (alt.binaries.*).
L'ensemble des travaux sur une éventuelle norme sont disponibles sur la liste de diffusion parchive-devel.
Le projet Unladen Swallow vise à accélérer Python d'un facteur 5
Des ingénieurs de Google ont lancé un projet, Unladen Swallow, qui vise à accélérer Python d'un facteur cinq au moins. L'idée est de créer un compilateur à la volée (JIT) basé sur LLVM pour remplacer la machine virtuelle de l'interpréteur Python.
Au passage, plusieurs améliorations sont envisagées, dont un nouveau ramasse-miettes et la possibilité de s'affranchir du Global Interpreter Lock (GIL). Le GIL est un verrou qui assure que les objets Python se comportent de manière thread-safe (ils ne le sont pas intrinsèquement), mais qui pénalise les programmes multithreadés.
Au passage, plusieurs améliorations sont envisagées, dont un nouveau ramasse-miettes et la possibilité de s'affranchir du Global Interpreter Lock (GIL). Le GIL est un verrou qui assure que les objets Python se comportent de manière thread-safe (ils ne le sont pas intrinsèquement), mais qui pénalise les programmes multithreadés.
nftables, successeur d'iptables
Patrick Mac Hardy, chef du projet Netfilter, travaille depuis l'été 2008 à une ré-écriture d'iptables sous un nouveau nom : nftables. Or, depuis le 18 mars dernier, nftables est officiellement disponible en version alpha. C'est le moment d'en refaire le tour.
NdM : Un grand merci à switcher pour son journal dont est tiré la dépêche.
NdM : Un grand merci à switcher pour son journal dont est tiré la dépêche.
MINIX 3 - Google Summer of Code
MINIX 3 est un très petit système modulaire multiserveur qui vise une grande fiabilité, une tolérance aux erreurs et l'auto-guérison. Le code qui tourne en mode noyau fait approximativement 5000 lignes de code seulement.
Le reste est exécuté en tant que processus utilisateurs, en majorité des processus pour chaque pilote de périphérique et serveur.
Si un pilote plante, il est automatiquement remplacé par une nouvelle copie, sans l'intervention de l'utilisateur (ni même qu'il le sache) et sans affecter les programmes actuellement exécutés.
Il y a peu d'autres systèmes qui peuvent résister à des erreurs fatales dans des composants de système critique de manière continue.
Le but des systèmes fiables sera achevé quand :
NdM : Cette dépêche est une traduction en français de la page MINIX sur le Google Summer of Code 2009.
Le reste est exécuté en tant que processus utilisateurs, en majorité des processus pour chaque pilote de périphérique et serveur.
Si un pilote plante, il est automatiquement remplacé par une nouvelle copie, sans l'intervention de l'utilisateur (ni même qu'il le sache) et sans affecter les programmes actuellement exécutés.
Il y a peu d'autres systèmes qui peuvent résister à des erreurs fatales dans des composants de système critique de manière continue.
Le but des systèmes fiables sera achevé quand :
- aucun ordinateur n'aura de bouton RESET
et
- aucun utilisateur n'aura connu de plantage ni même ne connaîtra quelqu'un dans son entourage ayant expérimenté ce désagrément.
NdM : Cette dépêche est une traduction en français de la page MINIX sur le Google Summer of Code 2009.