Syndiquer le contenu
Mis à jour : il y a 5 heures 5 min

TeX et traitement de données par flot e02 : les Iteratees

17 janvier, 2016 - 18:53

Dans cet épisode de la série TeX et traitement de données par flot, abordons le mécanisme utilisé dans ToolXiT pour implémenter le traitement de données par flot. Un peu de code sera présenté en deuxième partie, après une introduction à la solution technique retenue. Cet épisode met en place les outils nécessaires pour permettre de plonger dans ToolXiT lui-même dans les épisodes suivants.

Comme cet épisode reprend du vocabulaire et des concepts introduits dans l’épisode précédent, il est plus que recommandé de le lire avant de continuer plus avant.

Sommaire Résumé de l’épisode précédent

Lors du premier épisode de cette série j’avais abordé les bases pour lire du TeX.
Si vous ne l’avez pas lu ou oublié, les choses à retenir pour la suite sont les suivantes :

  • TeX transforme une séquence de caractères en commandes de composition de document ;
  • lire du TeX se fait au fil de l’eau et pas en bloc ;
  • certaines commandes TeX sont interprétées à la volée et peuvent modifier la manière dont le reste est lu.

À ce point de notre voyage dans cette série, il est temps de passer au point suivant : le traitement de données par flot.

Les besoins

Afin d’implémenter complètement un analyseur de TeX, plusieurs outils sont indispensables. Premièrement, le comportement de l’analyseur peut changer au cours de l’analyse de l’entrée. Il apparait donc évident que cet analyseur possède un état interne qui peut être lu et mis à jour.
Ensuite, les caractères doivent être transformés en tokens, puis ces tokens transformés en commandes. Ceci met en avant le côté traitement de flot de données et transformation de flot d’un certain type en flot d’un autre type.
De plus, certaines commandes TeX sont développées, ce qui requiert la possibilité de remplacer une séquence de tokens par de nouveaux tokens. Il est donc nécessaire de pouvoir ajouter en tête d’un flot d’entrée de nouveaux éléments.

Ce sont les besoins de base que nous souhaitons couvrir. Regardons maintenant une solution pour les couvrir.

Iteratees Mékeskecé ?

Maintenant que les besoins sont un peu plus clairement énoncés, parlons de l’outil choisi. Nous verrons ensuite en quoi il répond aux besoins point par point.

Les Iteratees nous viennent tout droit des langages fonctionnels et sont conçus pour décrire des traitements incrémentaux effectués sur une entrée fournie sous forme de séquence (par exemple une séquence de caractères ou d’octets). Ils sont particulièrement utilisés en Haskell pour lequel plusieurs implémentations existent et aussi en Scala notamment au sein du framework Play.
Globalement un Iteratee un objet qui effectue un calcul correspondant à un pas sur un morceau de séquence en entrée. Ce calcul fournit une nouvelle valeur à partir de ce morceau. Il est bien sûr possible que le calcul n’ait pas eu besoin de tout le morceau pour effectuer son calcul, auquel cas, le reste est retourné avec la valeur calculée. De même si plus d’entrée est nécessaire pour effectuer le calcul, l’Iteratee se met en attente de plus d’information pour continuer.

L’idée est vraiment là, on effectue un pas en avant, en consommant ce dont on a besoin et en laissant le reste pour le pas suivant.

Un autre point important à comprendre sur les Iteratees est qu’ils décrivent le calcul à effectuer sur une entrée séquentielle, mais à aucun moment ils n’ont besoin de savoir ce qu’est cette entrée. Les Iteratees sont en quelque sorte nourris depuis l’extérieur, et n’ont aucune connaissance de la manière dont cela est fait.

Les Iteratees sont aussi sans mémoire à priori et ne peuvent pas revenir en arrière sur leur entrée. Cette propriété est intéressante et permet de limiter la taille prise en mémoire car il n’est pas nécessaire de stocker un nombre arbitraire d’éléments de l’entrée pour faire du backtracking.

Si un Iteratee ne sait pas quoi faire d’une entrée il le signale en retournant une valeur d’erreur.

Ces propriétés les rendent particulièrement intéressants dans le traitement de flots de données et le streaming car ils produisent des valeurs au fil de l’eau dès qu’assez de données sont disponibles en entrée. Ça tombe rudement bien vu la nature des données TeX que l’on souhaite traiter dans cette série. Il apparait aussi qu’il est aisé de les combiner afin de produire une séquence de calculs transformant une séquence de valeurs en entrée en une séquence de valeurs en sortie.

Un exemple concret d’Iteratee que l’on peut prendre est le décodage de caractères encodés en UTF-8 en caractères Unicode. Dans cet encodage un caractère est stocké sur un nombre variable d’octets (entre 1 et 4) et un Iteratee s’occupant de l’encodage consommerait en entrée un groupe de un à quatre octets d’une séquence et produirait en sortie un unique caractère unicode. En appliquant de manière répétée cet Iteratee sur une séquence d’octets, nous obtenons une séquence de caractères unicode décodés. Tadam !

Une implémentation

Résumons donc ce que nous venons de dire sur ces mystérieux objets. Un Iteratee :

  • mange des morceaux de séquence ;
  • attend d’avoir eu tous les morceaux dont il a besoin pour effectuer son calcul ;
  • produit une valeur ou une erreur à partir de ces morceaux ;
  • laisse aux autres ce qu’il n’a pas mangé.

Qu’il est bien élevé, n’est-ce pas ?

Si maintenant nous souhaitons implémenter tout ça en Scala (ce qui est mon cas), il nous faut plusieurs types :

  • Un type pour décrire une entrée séquentielle ;
  • Un type de Iteratee qui indique au choix :
    • qu’il en a fini avec l’entrée et retourne donc la valeur calculée et les morceaux d’entrée non consommés,
    • qu’il aimerait bien en avoir plus pour continuer,
    • qu’il ne sait pas quoi faire de cette entrée et retourne donc ce qu’il n’a pas consommé avec une erreur.

L’implémentation complète et à jour est disponible sur GitHub sous licence Apache 2.0.

Pour le type d’entrée, il est assez simple et ne comporte que deux cas : l’entrée est épuisée, des données sont disponibles.

sealed trait Input[+Elt] case object Eoi extends Input[Nothing] final case class Chunk[Elt](elts: List[Elt]) extends Input[Elt]

De la même manière, un Iteratee est décrit de la manière suivante :

sealed abstract class Iteratee[In, +Out] final case class Done[In, Out](v: Out, remaining: Input[In]) extends Iteratee[In, Out] case class Error[In](t: Throwable, remaining: Input[In]) extends Iteratee[In, Nothing] case class Cont[In, Out](k: Input[In] => Iteratee[In, Out]) extends Iteratee[In, Out]
  • Le constructeur Done est un Iteratee qui a fini son calcul et permet de fournir la valeur résultant du calcul ainsi que l’entrée non consommée ;
  • le constructeur Error est un Iteratee qui indique une erreur de traitement ;
  • le constructeur Cont est un Iteratee qui indique qu’il a besoin de plus de données pour continuer, avec la fonction décrivant la fin du calcul (appelée continuation).

Ces trois constructeurs représentent les cas de base, mais à eux seuls ils sont assez limités. Le véritable intérêt serait de pouvoir les combiner pour exprimer des calculs plus complexes à partir de calculs plus simples.

Par exemple si nous utilisions les Iteratees pour écrire un analyseur lexical qui accepte en entrée des expressions arithmétiques simples. Si nous supposons que l’on possède déjà un Iteratee qui retourne un entier à partir d’une séquence de caractères, nommé integer pour l’exemple, et un autre qui retourne le premier caractère d’une séquence de caractère, nommé char. Nous avons donc à disposition ceci :

val integer: Iteratee[Char, Int] = ??? val char: Iteratee[Char, Char] = ???

Il serait agréable de pouvoir exprimer la chose suivante : si mon entrée consiste en un entier, suivi du caractère + puis d’un autre entier, alors je les consomme et retourne la somme des deux entiers.

Fort heureusement, ce genre de chose s’exprime plutôt bien avec les Iteratees. Nous ne l’avons pas encore dit jusqu’ici mais un Iteratee est une monade et nous pouvons donc définir l’opérateur de composition >>= que nous nommerons flatMap afin de profiter du sucre syntaxique de Scala.

Qu’est donc cet opérateur de composition ? Cet opérateur s’applique à un Iteratee et prend en paramètre une fonction qui, si on lui donne en entrée le résultat calculé par l’Iteratee auquel il s’applique, retourne un nouvel Iteratee ayant le même type d’entrée et un type de sortie quelconque.

Pfiou !

Traduisons cela dans notre exemple. Tout d’abord il faut ajouter l’opérateur flatMap au type Iteratee, ce qui nous donne :

sealed abstract class Iteratee[In, +Out] { def flatMap[Out1](f: Out => Iteratee[In, Out1]): Iteratee[In, Out1] = ??? }

Le but de cette dépêche n’étant pas de décrire toute l’implémentation, je renvoie le lecteur curieux au code et aux différents liens sur le sujet pour l’implémentation de l’opérateur.

Le calcul décrit plus haut peut maintenant s’exprimer en terme de flatMap :

integer.flatMap { i1 => char.flatMap { c => if(c == '+') integer.flatMap { i2 => Done(i1 + i2, Eoi) } else Error(new Exception("+ expected", Eoi) } }

En utilisant le sucre syntaxique de Scala et en ajoutant des opérateurs permettant de filtrer le résultat, la même chose peut s’écrire de la manière suivante :

for { i1 <- integer '+' <- char i2 <- integer } yield i1 + i2

Cette notation est entièrement équivalente à la première mais permet de mettre en avant le côté séquentiel du calcul. Le résultat est un Iteratee qui prend des caractères en sortie et retourne un entier. Cet Iteratee est la composition de deux Iteratee plus simples et permet d’exprimer de manière très déclarative le calcul à effectuer sur le flot d’entrée.

Les compagnons indispensables

Souvenez vous, au début de cette section j’ai mentionné le fait qu’un Iteratee consommait une entrée fournie depuis l’extérieur, sans s’occuper du comment. Il nous faut donc un moyen d’alimenter un Iteratee avec une entrée. Ce moyen existe et s’appelle l’Enumerator.

Un Enumerator produit un flot d’entrée et le passe à un Iteratee. Il continue ainsi jusqu’à ce que :

  • soit l’Iteratee dit qu’il en a fini (Done ou Error) ;
  • soit l’entrée est épuisée.

Une fois que l’application de l’Iteratee s’arrête, l’Enumerator retourne le dernier Iteratee reçu. Ainsi un Enumerator peut se définir par le type simple suivant :

type Enumerator[In, Out] = Iteratee[In, Out] => Iteratee[In, Out]

Un exemple simple est l’Enumerator qui énumère les éléments d’une liste, que l’on peut définir ainsi :

def enumList[T, U](l: List[T]): Enumerator[T, U] = { it: Iteratee[T, U] => it match { case Cont(k) => l match { case x :: xs => enumList(xs)(k(Chunk(List(x)))) case Nil => k(Eoi) } case _ => it } }

Nous avons désormais les Iteratees qui décrivent la transformation de données d’entrée en une valeur, les Enumerators qui produisent les données d’entrée et nourrissent un Iteratee. Il nous manque encore un élément crucial : l’exécuteur du calcul pour en avoir le résultat. Dans cet article, un exécuteur est une simple méthode nommée run qui applique l’Enumeratee à un Iteratee et qui transforme le résultat soit en valeur soit en exception.

def run[In, Out](enum: Enumerator[In, Out], it: Iteratee[In, Out]): Out = enum(it) match { case Done(v, _) => v case Error(t, _) => throw t case Cont(_) => throw new Exception("Not enough data") }

Nous pouvons maintenant utiliser tous ces outils pour faire calculer la somme des entiers fournis en entrée via un Iteratee nommé sum.

val sum: Iteratee[Int, Int] = Cont { case Chunk(l) => sum.flatMap(s => Done(s + l.sum, Eoi)) case Eoi => Done(0, Eoi) } run(enumList(List(1, 2, 3, 4)), sum) // returns 10 as expected

Tout ça pour ça. C’est vrai que sur cet exemple ça parait un peu complexe pour pas grand chose, mais imaginons maintenant que les entiers ne viennent pas d’une liste connue à l’avance mais qu’ils soient envoyés par paquet sur le réseau. Chaque Chunk dans ce cas contiendrait les entiers d’un paquet reçu. Sans modifier notre Iteratee sum d’une seule virgule, le même calcul est effectué. Ce mécanisme permet donc une réelle indépendance du calcul par rapport à la source des données nécessaires pour le réaliser.

Comme autre raison à l’utilisation de ce mécanisme, il est temps d’introduire le dernier compagnon de bataille : l’Enumeratee. Moitié Iteratee moitié Enumerator il permet de transformer un flot d’un type dans un flot d’un autre type, à la fois consommateur et producteur.

type Enumeratee[EltOuter, EltInner, Out] = Iteratee[EltInner, Out] => Iteratee[EltOuter, Iteratee[EltInner, Out]]

Cet objet parait plutôt complexe mais a une utilité non négligeable. Pour comprendre son utilisation, reprenons notre exemple d’Iteratee qui convertit des octets en caractères unicode. Sa signature ressemblerait à celle-ci :

val utf8decoder: Iterate[Byte, Char]

Si maintenant nous disposons d’un Iteratee qui, étant donnée une suite de caractères, retourne les mots. Sa signature est :

val word: Iteratee[Char, String]

Si nous souhaitons composer ces deux Iteratees pour transformer un flot d’octets en flots de mots, nous obtenons un Iteratee qui retourne des mots et qui opère sur les caractères, eux-mêmes produits par un Iteratee interne qui transforme des octets en caractères. Pour ce faire nous pouvons définir un opérateur sequence_stream qui séquence deux Iteratees, le second consommant le résultat du premier.

def sequence_stream[EltOuter, EltInner, Out](it: Iteratee[EltOuter, EltInner]): Enumeratee[EltOuter, EltInner, Out] = ??? val words: Enumeratee[Byte, Char, String] = sequence_stream(utf8decoder)(word)

words transforme donc un flot d’octets en flot de mots.

Les Iteratees au service de ToolXiT

Nous y voilà ! Parlons maintenant de ToolXiT.

Dans la première partie de cette dépêche, nous avons défini des besoins, issus de la discussion du précédent épisode. Si je vous ai parlé d’Iteratee et consort dans la section précédente, vous devez vous douter que c’est parce qu’ils vont être utiles à ToolXiT.
Le but est, rappelons le, de lire un fichier TeX et de le transformer en suite de commandes TeX pour composer un document. Couvrons nous tous nos besoins avec ces outils ?

Lire du TeX nécessite un état interne contenant tout un tas de valeurs. Nous reviendrons sur cet état dans un prochain épisode, pour le moment, nous savons juste qu’il existe et qu’il nous permet d’accéder aux données qui nous intéressent ici en lecture comme en écriture.

La première étape identifiée transforme des caractères en tokens via ce que nous avons appelé les yeux dans la dépêche précédente. La seconde étape prend en entrée des tokens et produit des commandes. Pour produire ces commandes, certaines séquences de tokens peuvent être déroulées en une nouvelle séquence de tokens dans la bouche. Par exemple nous pouvons l’écrire ainsi avec les Iteratees :

val eyes: Iteratee[Char, Token] val mouth: Iteratee[Token, Command] val toolxitCore: Enumeratee[Char, Token, Command] = sequence_stream(eyes)(mouth)

Le déroulement de macros requiert de pouvoir ajouter des tokens en tête de l’entrée, ce qui peut s’exprimer comme un Iteratee qui ne consomme rien et laisse en entrée un morceau avec de nouveaux tokens en tête. Une implémentation possible est :

def pushback(el: Elt): Iteratee[Elt, Unit] = Cont { case Chunk(l) => Done((), Chunk(el :: l)) case _ => Done((), Chunk(List(el))) }

Nos besoins semblent donc bien couverts. Tant mieux, sinon tout le chemin parcouru aurait été inutile.

Les yeux

Le but à atteindre dans un premier temps, est d’exprimer la transformation de suite de caractères en suite de tokens. Ce processus est décrit dans les chapitres 7 et 8 du TeXbook. ToolXiT fait abstraction de l’encodage des caractères dans le flot initial en utilisant les fonction d’entrée/sortie de la bibliothèque standard de Scala et opère donc au plus bas niveau sur des flots de caractères, et pas d’octets.

L’entrée est d’abord pré-traitée pour remplacer des séquences de caractères du style ^^A par leur valeur pour TeX comme décrit dans le chapitre 8. Puis à partir de ces caractères, sont créés des tokens selon les catégories courantes de ces caractères dans l’environnement. Suivant la catégorie, selon les règles du chapitre 7, les tokens sont créés. L’interface de ces yeux est donc la suivante (en version simplifiée pour la clarté de l’exposé) :

class TeXEyes(env: TeXEnvironment) { val tokenize: Iteratee[Char, Token] } La bouche

Une fois les tokens obtenus, la bouche s’occupe de les dérouler au besoin et d’en faire des commandes. Beaucoup de travail est fait dans cette phase notamment la mise à plat des macros. Des modifications sont apportées à l’environnement, comme par exemple le changement de catégories de certains caractères, de nouvelles définitions de macros. Plusieurs commandes sont interprétées directement par la bouche et ce qui en sort est soit un simple caractère à ajouter au document, soit une séquence de contrôle que la bouche ne comprend pas. Son interface simplifiée est :

class TeXMouth(val env: TeXEnvironment) { val command: Iteratee[Token, Command] } L’estomac

La suite de l’histoire représente l’estomac et se charge de traiter les commandes qui lui parviennent d’une manière ou d’une autre. Si l’on souhaite réimplémenter totalement TeX, ces commandes sont à interpréter comme décrit dans le TeXbook. Il est aussi possible de vouloir générer du HTML, faire d’autres analyses sur l’entrée, les possibilités sont ouvertes.

Le but de ToolXiT est d’arriver à ce point afin de donner la séquence de commandes que TeX obtiendrait à partir d’une entrée qu’elle soit issue d’un fichier ou un de streaming sur Internet.

Conclusion

Cet article est encore très généraliste et introduit un concept qui peut être utilisé à d’autre fins. Par exemple il peut être utilisé pour analyser un flux JSON, déchiffrer par bloc, etc. L’implémentation des Iteratees telle que décrite dans cet article est volontairement simplifiée par rapport à la définition complètement générique que l’on peut trouver, notamment en Haskell. Cette simplification est due au fait que le but est de l’utiliser dans ToolXiT et pas comme bibliothèque générique, le besoin est donc bien circonscrit.

Si vous souhaitez voir des exemples d’Iteratees de base qui servent à en construire d’autres par combinaison, la classe Iteratees contient tout un tas de définitions simples.

Dans la suite de cette série nous entrerons plus dans les détails de ToolXiT lui même, maintenant que nous avons couvert des aspects plus généraux. En attendant je vous dis à la prochaine fois.

Télécharger ce contenu au format Epub

Lire les commentaires

Sortie de Xen Orchestra 4.12, solution web pour XenServer

17 janvier, 2016 - 15:53

Plus d'un an après la dernière dépêche sur la sortie de Xen Orchestra 3.6, voici une présentation de la toute nouvelle 4.12 !

Pour rappel, Xen Orchestra (XO) est une solution web de gestion d'infrastructure Xen, plus précisément sur la toolstack XAPI, embarquée dans XenServer.

Ce logiciel est libre (aGPLv3) et possède aussi une version installée et pre-configurée dans une machine virtuelle, vendue avec du support.

Introduction

Historiquement, XO a été conçu comme un outil web d'administration de machines virtuelles. Avec le temps, de nouvelles fonctionnalités ont permis de nouveaux usages, comme nous allons le voir ici.

Les grands axes développés récemment concernent principalement la sauvegarde, la réplication ainsi que le support de CloudInit.

Sauvegarde

La version 4.12 permet d'obtenir des fonctionnalités inédites sur XenServer : la sauvegarde incrémentale continue ainsi que la réplication. Le tout sans installer le moindre programme sur vos hyperviseurs (ni vos machines virtuelles !), juste en utilisant l'API de XenServer.

Sauvegarde incrémentale continue

Les utilisateurs de produits de sauvegarde de machines virtuelles connaissent probablement le Forever Forward Incremental Backup. Il s'agit du même principe : la première sauvegarde exporte les disques en entier, puis uniquement la différence par la suite. Mais en plus, quand la rétention maximale est atteinte, le fichier de différence le plus ancien est fusionné avec le fichier entier. Ainsi, il n'est plus jamais nécessaire de refaire un export complet !

Illustrons donc avec un schéma. Ici nous avons une rétention de 7 et une sauvegarde tous les jours :

Maintenant que nous arrivons à la 8 ème sauvegarde, nous allons fusionner le plus ancien des fichiers de différence :

Puis il est supprimé :

Réplication

Il s'agit ici de réplication au niveau de l'hyperviseur et non du stockage. L'avantage est qu'il est possible de répliquer sur n'importe quel autre stockage existant d'une machine sous XenServer. Qu'il soit local ou distant.

Ici aussi, après la première copie, c'est uniquement le différentiel qui sera envoyé. Pour résumer :

L'avantage est que vous réduisez le temps de reprise en cas d'accident sur le site A (puisque la machine est déjà prête à démarrer sur le site B !) ainsi que la durée de perte de données, si vous répliquez toutes les 10 minutes par exemple.

Vers le Cloud

L'orientation générale de Xen Orchestra tend de facto vers le Cloud, avec des fonctionnalités comme la délégation de ressources à des utilisateurs (machines virtuelles par exemple). La gestion des ACL en fait partie, proposant des connecteurs LDAP, SAML, ou encore GitHub et Google. La partie la plus récente est le support (pour l'instant simplifié) de CloudInit.

CloudInit

CloudInit est un logiciel qui s'installe dans votre machine virtuelle, et qui permet, au démarrage, de récupérer des informations venant d'une fournisseur de Cloud, comme Amazon, RackSpace, ou encore OpenStack etc.

C'est grâce à cela que l'on peut :

  • passer une clef SSH à la création d'une machine virtuelle
  • passer un nom d'hôte
  • agrandir la partition root
  • et plein d'autres choses

La seule condition est d'avoir un template compatible (un template Debian est disponible ici, un autre CentOS là).

Pour l'instant avec Xen Orchestra, si vos templates le permettent, vous pouvez d'ores et déjà passer votre clef SSH à la création de la machine virtuelle :

Aussi, le nom de votre machine virtuelle sera récupéré par CloudInit pour configurer directement le hostname. Enfin, nous supportons l'agrandissement du disque système (si votre disque root fait 4 GiB, vous pouvez l'agrandir, et au première démarrage, le système de fichier aura fait le travail).

Le gros avantage de cette méthode et de pouvoir fournir une machine disponible en moins de 30 secondes, entre le temps de création et l'accès en SSH !

À venir

La roadmap de Xen Orchestra est plutôt chargée, ce qui est bon signe ;)

La priorité à court terme ira à la fonctionnalité de self-service avec quotas, permettant de délimiter un véritable périmètre d'utilisation de machines virtuelles à des tiers.

Combiné à CloudInit, on peut imaginer déléguer facilement la création de machines virtuelles avec gestion des clefs SSH à une équipe de développeurs, sans risque de déborder sur des ressources en production par exemple.

L'autre objectif est une réécriture complète de l'interface web : après plus d'un an d'expérience et de retour utilisateurs, il est temps de factoriser et simplifier son utilisation.

Tester XO

Pour tester Xen Orchestra, il vous faut déjà une machine sous XenServer (sinon il n'y a pas d'intéret, puisque Xen Orchestra se connecte à l'API de XenServer).

Ensuite, deux solutions :

La première option est la plus rapide, mais rien ne vous empêche de commencer à tester via XOA puis ensuite d'installer les sources à côté !

Télécharger ce contenu au format Epub

Lire les commentaires

Agenda du Libre pour la semaine 3 de l'année 2016

17 janvier, 2016 - 11:29

Calendrier web, regroupant des évènements liés au Libre (logiciel, salon, atelier, install party, conférence) en France, annoncés par leurs organisateurs. Voici un récapitulatif de la semaine à venir. Le détail de chacun de ces 24 événements est en seconde partie de dépêche.

Sommaire Agenda du Libre pour la semaine 3 de l'année 2016 [Kunheim] Formation Linux - Le lundi 18 janvier 2016 de 18h00 à 22h00.

Tous les lundis à partir de 18h00 jusqu'à 22h00 venez découvrir ou vous former sur Linux et les logiciels libres.
Ces séances de formation ont lieu à la salle "Kegreiss" au 56 rue principale - Kuhneim - face à la mairie - cette salle est accessible aux personnes à mobilité réduite.
Nous vous attendons nombreux. Le Team Linux

[Saint-Martin-de-Londres] Réunion de préparation Opération Libre - Le lundi 18 janvier 2016 de 18h30 à 23h00.

La réunion de jeudi se déroulera à l’espace de co-working Le Relais à Saint-Martin-de-Londres, elle à pour but d’organiser un rendez-vous des Garrigues « Opération Libre »
En janvier 2016, le Collectif des Garrigues et Montpel’libre souhaitent organiser, dans le cadre des rendez-vous des Garrigues, 48 heures d’Opération Libre sur la commune de Saint-Martin-de-Londres.
Opération Libre, c’est 48 heures d’animation participative pour collecter et libérer les informations et outils d’une commune, avec les habitants, des associations et contributeurs.

[Villeurbanne] Lundi 3.0 - Le lundi 18 janvier 2016 de 19h00 à 22h00.

Le CCO de Villeurbanne vous invite à son nouveau rendez-vous mensuel d’open-atelier, les Lundis 3.0
Venez participer à une soirée informelle de rencontre entre makers, curieux, geeks, habitants, artistes, …
Ces rendez-vous sont l’occasion d’apprendre et d’explorer ensemble des pratiques liées au numérique.

[Sèvres] Journée Logiciel Libre dans l'administration - Le mardi 19 janvier 2016 de 09h30 à 16h30.

Sous le pilotage du SGMAP/DINSIC, la Journée Logiciel Libre 2016 des communautés interministérielles du Logiciel Libre est organisée cette année par le Ministère de l’éducation nationale, de l’enseignement supérieur et de la recherche.
Elle se tiendra le
Mardi 19 janvier 2016 à partir de 9h30

[Castelnau-le-Lez] Section GNU/Linux - Le mardi 19 janvier 2016 de 10h00 à 12h00.

Rendez-vous hebdomadaire, tous les mardis, salle 38 de la mjc (hors vacances scolaires).
L’équipe de Montpel’libre vous propose une permanence de dépannages pour vous aider à vous familiariser avec votre système GNU/Linux au quotidien.
Le contenu de l’atelier s’adapte aux problèmes des personnes présentes et permet ainsi d’adapter l’acquisition de nouvelles compétences au rythme de chacun.

[Castelnau-le-Lez] Atelier de développement et programmation - Le mardi 19 janvier 2016 de 10h00 à 12h00.

Rendez-vous hebdomadaire, tous les mardis, salle 40 de la mjc (fermé pendant les vacances).
Cet atelier de développement est essentiellement axé sur les langages du Web : html, css (même si ce ne sont pas des langages à proprement parler) javascript et PHP, possibilité aussi d’utiliser Ajax, Jquery, Sqlite et MySql.
Notre équipe vous attend pour répondre à vos questions et satisfaire votre curiosité.

[Montpellier] Cartopartie participative accessibilité des personnes à mobilité réduite - Le mardi 19 janvier 2016 de 13h00 à 14h00.

Nous vous donnons rendez-vous au Lycée Nevers de Montpellier lundi 4 et mercredi 6 janvier 2016 pour cette nouvelle action citoyenne et solidaire, pour participer à ces deux cartoparties sur le thème de l’accessibilité des commerces et ERP par les personnes à mobilité réduite, que nous présenterons dans le cadre de l’Éducation Morale et Citoyenne. Lors de cette journée, nous relèverons les données essentielles aux déplacements des personnes à mobilité réduite.
Outre le relevé de points d’intérêts, grâce à notre réseau important de partenaires, nous serons également en mesure de vous indiquer les démarches à suivre pour entreprendre des travaux afin de rendre votre commerce accessible, s’il ne l’est pas déjà, nous pourrons également vous orienter vers nos experts pour établir votre agenda d’accessibilité programmée qui permet de se mettre en conformité et surtout d’ouvrir à tous son établissement.
Nos nombreux partenaires nous soutiendront encore une fois, pour cette nouvelle journée, en nous apportant leurs expertises. Ils contribuent ainsi à donner plus de pertinence à nos relevés, il s’agit entre autre de 3GRT, 3Liz, Access’Cible, Annonces Vertes, APF34, APRIL, Autour.com, Cowork’in Montpellier, Divergence FM, French Tech, Groupe OSM Montpellier, Hactions, Handicap34, La Fabrique, Languedoc Accessibilité, Maison des Biens Communs, Mandarine, Mohicans, Modulaweb, Montpellier (ville), Montpellier Territoire Numérique, OSM France et la Pharmacie Saint-Paul.

[Paris] Vie privée et internet - Le mardi 19 janvier 2016 de 19h00 à 21h00.

REPRENEZ LE CONTRÔLE DE VOTRE VIE PRIVÉE SUR INTERNET
L’explosion des usages d’internet rend son utilisation indispensable dans notre vie professionnelle et personnelle, les avantages sont légions mais il existe aussi des risques notamment vis à vis du respect de la vie privée mis à mal par les réseaux sociaux, les moteurs de recherche et la publicité.
Pour lutter contre ces risques Silex Labs vous propose une Conférence / Atelier pour vous aider à reprendre le contrôle de votre Vie Privée sur Internet.

[Grenoble] SnowCamp - Du mercredi 20 janvier 2016 à 08h30 au samedi 23 janvier 2016 à 18h30.

Dans l'esprit des conférences qui fleurissent un peu partout en France (Mix-IT à Lyon, Breizhcamp à Rennes, Soft-Shake à Genève, RivieraDev à Nice, Bdx.io à Bordeaux, …), celui-ci réunira 250 développeurs et développeuses autour de l'innovation et du développement (Web, Mobile, Java, Cloud, IoT, … ) durant une conférence sur deux jours les 21 et 22 Janvier à Grenoble, suivie d’une “unconference” au ski le 23.
Cette conférence technique cible les développeurs et les chercheurs, en les mélangeant pour laisser émerger l'innovation. Durant la session plénière, nous aurons des présentations éclair (de 5 minutes) au cours desquelles chercheurs, ingénieurs et doctorants présenteront leurs sujets de recherche.
Depuis les débuts de l’électricité, Grenoble a toujours été un vivier d’innovation et d’excellence : des laboratoires et des industries de pointe y sont installés, elle a été classée 5e ville la plus innovante au monde par le magazine Forbes et est maintenant labellisée “French Tech”. Ici, l'innovation technique a trouvé ses racines dans les montagnes environnantes. C'est pourquoi le SnowCamp proposera suite à la conférence une journée "unconference" en altitude, sur les pistes de ski, lors de laquelle les participants pourront continuer à échanger de façon plus informelle et détendue, dans un cadre exceptionnel propice à la créativité.

[Toulouse] Rencontre Logiciels Libres - Le mercredi 20 janvier 2016 de 19h30 à 22h30.

L'association Toulibre organise une rencontre autour des Logiciels Libres le mercredi 20 janvier, de 19h30 à 22h30 au Centre Culturel Bellegarde, 17 rue Bellegarde à Toulouse.
Pendant toute la soirée, venez poser vos questions au sujet du Logiciel Libre et trouver de l'aide pour installer ou utiliser des Logiciels Libres sur votre ordinateur.
Pour cela, vous pouvez si besoin apporter votre ordinateur, un accès Internet est disponible sur place.

[Mauguio] Infolibres - Le jeudi 21 janvier 2016 de 17h00 à 19h00.

Rendez-vous salle de formation informatique de la médiathèque.
L’équipe de Montpel’libre vous propose une permanence de dépannages pour vous aider à apprivoiser votre système GNU/Linux au quotidien. Le contenu de l’atelier s’adapte aux problèmes des personnes présentes.
Vous pourrez y aborder entre autre :

[Martigues] Le traitement de l’image : Gimp - Le jeudi 21 janvier 2016 de 18h00 à 19h30.

L’association ULLM (les Utillisateurs de Logiciels Libres du Pays Martégal) en collaboration avec ECM vous présente le programme de ses ateliers du première trimètre 2016.
Le jeudi 21 janvier de 18h00 à 19h30
Le traitement de la photo avec Gimp.

[Paris] Soirée de Contribution au Libre - Le jeudi 21 janvier 2016 de 19h30 à 23h00.

Parinux propose aux utilisateurs de logiciels libres de se réunir régulièrement afin de contribuer à des projets libres. En effet, un logiciel libre est souvent porté par une communauté de bénévoles et dépend d'eux pour que le logiciel évolue.
Nous nous réunissons donc tous les jeudis soirs dans un environnement propice au travail (pas de facebook, pas de télé, pas de jeux vidéos, pas de zombies)).
Vous aurez très probablement besoin d'un ordinateur portable, mais électricité et réseau fournis.

[Lunel] Permanences « À la carte » Logiciels Libres & GNU/Linux - Le vendredi 22 janvier 2016 de 11h00 à 12h00.

L’intérêt de cette présence est d’avoir une information autour des postes Linux que nous avons installé à la médiathèque pour expliquer ce qu’est GNU/Linux et introduire les ateliers que nous animons à la médiathèque.
Une question sur l’informatique avec un environnement GNU/Linux ou sur tablette ?
Une aide sur les logiciels libres ?

[Montpellier] Permanence Les logiciels libres parlons-en ! - Le vendredi 22 janvier 2016 de 17h00 à 19h00.

Le Faubourg Marché, qu’est-ce que c’est ?
Le Faubourg Marché est une permanence partagée qui permet aux associations d’accueillir ensemble, les publics de ces associations une fois par semaine, le vendredi entre 17h00 et 19h00 (ou au delà sous réserve d’accord préalable), au 19, rue du Faubourg de Nîmes, 34000 Montpellier.
Si vous avez un peu de temps le vendredi soir, voici une occupation qui me semble très intéressante et si vous êtes intéressés par la promotion des logiciels libres, des biens communs, de l’accessibilité, de l’économie sociale et solidaire, de l’innovation sociale et numérique, de l’éducation populaire, ou encore du développement durable.

[Lille] Atélili «Install Party + Bidouille libre» - Le vendredi 22 janvier 2016 de 18h30 à 21h00.

Atélili (Ateliers d'informatique libre) redémarre pour cette nouvelle année avec un septième atelier !
L'association CLX, avec le soutien de l'association Chtinux, vous propose une install party pour les personnes qui souhaitent migrer vers les logiciels libres, ou apprendre à réparer leur distribution Linux.
En parallèle, si des personnes sont déjà au point sur ces questions et souhaitent découvrir ou partager des questions plus pointues (par exemple sur des thèmes déjà présentés aux atélilis), vous êtes les bienvenus.

[Parthenay] install party GEBULL - Le samedi 23 janvier 2016 de 09h00 à 12h00.

L'association Gebull organise une install party sur Parthenay, le but étant d'aider ceux qui le veulent à installer un système GNU/Linux sur leurs ordinateurs ou simplement en apprendre plus sur le logiciel libre.
Pour les installations, pensez à réserver via le formulaire de contact du site: http://gebull.org/contactez-nous/

[Limoges] Install Party Alternatives87 - Le samedi 23 janvier 2016 de 09h00 à 13h00.

Petits déjeuners du Libre – Install Party #1
Alternatives87 vous propose, dans le cadre des Petits Déjeuners du Libre, une Install Party, le Samedi 23 janvier de 9h à 13h dans les locaux du Fablab LCube à Limoges, en accès libre.
Si vous avez envie d’essayer un système d’exploitation entièrement libre, mais que vous n’avez pas encore osé franchir le pas, c’est le moment ! Nous vous aiderons à installer un système GNU/Linux en parallèle (ou à la place) de votre système d’exploitation actuel. Nous vous donnerons également les bases nécessaires pour bien démarrer avec de tels systèmes.

[La Riche] Ubuntu Party - Le samedi 23 janvier 2016 de 10h00 à 18h00.

Tout au long de la journée de 10h à 18h
 Les stands des associations Ubuntu-fr, Mozilla Firefox, La quadrature du net, l’APRIL, La ruche aux savoirs, le Fun Lab de Tours, l’Adeti et découverte d’Ubuntu sur des ordinateurs en libre accès / salle polyvalente Installation Ubuntu (fin : 17h00) - Installation des distributions ubuntu Unity et Mate / salle équateur Jeux à destination des plus jeunes, distribution Edubuntu / salle Eclair ludothèque
Aussi des ateliers: « Traitement de l’image sous ubuntu », « Modélisation 3D avec Blender », « Carte mondiale libre Open Street Map, une alternative à Google Maps », « Découverte du Raspery Pi et de l’Arduino (domotique, robotique…) »

[Illkirch-Graffenstaden] Contribuer à Vikidia - Le samedi 23 janvier 2016 de 14h00 à 17h00.

L@ppli (animations multimédia) inaugure sa nouvelle saison à la médiathèque Sud d’Illkirch-Graffenstaden :
Samedi 23 janvier / 14h-17h
Parents & enfants sur le Web : contribuer à l’encyclopédie enfants Vikidia

[Rouen] Journée mensuelle du Logiciel Libre - Le samedi 23 janvier 2016 de 14h00 à 18h00.

Le samedi 23 Janvier 2016, nous organisons notre Journée Mensuelle du Logiciel Libre à la Maison St Sever à Rouen (Centre Commercial St Sever, 10-12 rue Saint-Julien 76100 Rouen) de 14h00 à 18h00. Rouen, Haute-Normandie.
Nous distribuerons gracieusement des DVDs openSUSE 32/64 Bits à nos visiteurs dans la limite du stock disponible.
Si vous avez une clé USB de 8 GO ou plus, veuillez nous l’apporter, nous la chargerons de goodies.

[Rennes] Atelier graphisme - Le samedi 23 janvier 2016 de 14h00 à 18h00.

L'association Actux organise un atelier graphisme, le samedi 23 janvier de 14h à 18h, au 18 Square de la Rance à Rennes.
Le thème sera la sexualité fantasmagorique des mascottes de projets, ou bien (au choix des artistes) une affiche à plusieurs mains pour le prochain événement Actux.Si vous avez d'autres excellentes idées, elle sont les bienvenues ;)
Chaque participant sera libre de choisir le logiciel avec lequel il dessine. Que vous soyez adepte d'Inkscape, GIMP, MyPaint, Krita ou autres logiciels de graphisme, vous êtes encouragés à venir ajouter votre touche au projt. Rien n'interdit de venir avec ses crayons et de dessiner sur papier.

[Caen] Libre Samedi GIMP - Le samedi 23 janvier 2016 de 14h00 à 17h00.

Le Libre Samedi CaLviX du 23 janvier 2016 aura pour thème “GIMP II : Réalisation d'une affiche”. Il se déroulera de 14h à 17h à Tandem.
Cet atelier est le second d’une série sur GIMP (GNU Image Manipulation Program), un logiciel de dessin matriciel libre et gratuit que l’on ne présente plus.
Lors de cette séance, Alain animera la réalisation d’une affiche, présentant ainsi de manière concrète les techniques, outils et filtres avancés.

[Martigues] Les samedis du Libre - Le samedi 23 janvier 2016 de 14h30 à 17h30.

L’association ULLM (les Utillisateurs de Logiciels Libres du Pays Martégal) en collaboration avec ECM vous présente le programme des samedis du libre du première trimètre 2016.
Le samedi 23 janvier de 14h30 à17h30
La bibliobox :

Télécharger ce contenu au format Epub

Lire les commentaires

Appel à contributions : 17èmes Journées du Logiciel Libre (JDLL) à Lyon Les 2 et 3 avril 2016

16 janvier, 2016 - 19:03
JDLL 2016 - Appel à contributions : Créativité, Citoyenneté, Diversité

Créativité, Citoyenneté, Diversité : Le logiciel libre, du code, mais pas que !

Fort du succès des précédentes éditions, nous avons le plaisir d'annoncer la 17e édition des Journées du Logiciel Libre (JDLL) ces 2 et 3 avril 2016 à Lyon. Le comité d'organisation des JDLL, la Maison Pour Tous, Salle des Rancy et l'Association Lyonnaise pour le Développement de l'Informatique Libre (ALDIL) vous proposent un temps de partage où tous les publics, curieux, amateurs et passionnés, se rencontrent.
Vous êtes libriste et utilisatrice⋅teur, développeuse⋅eur, créatrice⋅teur, joueuse⋅eur, bricoleuse⋅eur, artiste ? Vous souhaitez faire découvrir et partager vos plaisirs et petits bonheurs numériques ? Alors ce message vous concerne !

Thème(-s) 2016

Le thème de cette année est : "Créativité, Citoyenneté, Diversité : le logiciel libre, du code, mais pas que !"
Sur le week-end, nous vous proposons d'intervenir pour échanger sur les domaines suivants :

  • Diversité (diversité du numérique libre, diversité des publics) et accessibilité
  • Engagement (parce que parler politique aux JDLL, c'est possible !)
  • Biens communs et Open Data
  • Reconditionnement, recyclage, éviter l'obsolescence programmée (ou pas)
Participation, mode d'emploi :

Profitez de cet événement pour découvrir et échanger avec de nombreux participants. L'année précédente, grâce à vous, les JDLL ont accueilli plus de 1800 personnes sur les deux journées. Intéressés pour nous aider à réitérer l'exploit ? Les JdLL reçoivent des publics variés, n'hésitez pas faire des propositions pour les enfants, les adultes, les seniors, les associations, les entreprises, les collectivités territoriales, les novices comme les experts (et les licornes).

Participer aux JDLL c'est facile et ouvert à tous ! Nous faisons appel à vous pour alimenter le programme avec vos projets, connaissances, expériences et engagements.

Nous vous proposons 5 types de contributions :

  1. Stand au sein du village associatif
  2. Conférence de 20 ou 40 minutes suivie d’un échange (débats, tables rondes)
  3. Atelier de 45 minutes ou 1h15
  4. Démonstrations et présentations (logiciels, projets libres, DIY…)
  5. Animations ouvertes

Vous pouvez combiner plusieurs types de contributions, n'hésitez pas à être nombreux pour assurer la présence de votre collectif sur toutes les activités (par exemple une démo, une conférence suivie d’un atelier, un stand).
Faites nous parvenir vos propositions de participation via le formulaire. Les propositions sont à envoyer jusqu’au 4 février 2016, afin de nous permettre de préparer au mieux le planning. Un message de confirmation vous sera envoyé.

Partage et informations complémentaires

Et bien sûr, n’hésitez pas à partager cet appel auprès de vos canaux respectifs :-)

Les outils de communication (bannières, logos…) sont à votre disposition pour participer à la promotion de l’événement : http://www.jdll.org/pratique/medias/

Pour obtenir plus d'informations, vous pouvez vous rendre sur le site des Journées du Logiciel Libre : http://jdll.org/

N'oubliez pas que nous sommes disponibles pour toute question : jdll@jdll.org

Dans l'attente de vos réponses, et bien sûr, librement,

Le comité d'organisation des JDLL 2016.

Télécharger ce contenu au format Epub

Lire les commentaires

Pydza : jeu libre cherche âme seule

16 janvier, 2016 - 00:25

Pydza est un jeu 2D (2 dimensions) libre de plateforme de type Mario. Pydza est développé en Python avec Pygame. Doté de graphismes soignés, il est de plus multi-plateformes et multilingue. Au gré de votre aventure, vous parcourez un monde peuplé d’ingrédients de pizza, écrasant des tomates sur pattes et attrapant des parts de pizza (source Framasoft).
Ce jeu a été développé dans le cadre d'un projet tutoré de première année de DUT Informatique, à l'IUT d'Orsay, université Paris-Sud (Paris XI) en 2006. Les auteurs sont : Rémy Coutable, Alban Feron et Margueritte Pierre-Elie aidés de leur professeur M. Éric Petitjean.
Le jeu n'a plus d'activité depuis 2008 et le site officiel a disparu. Il ne reste que la première version sur sourceforge. Nous voici donc, encore devant un jeu libre abandonné. Mais comme nous disposons des codes sources (du moins jusqu'à la version 1.15) il peut être repris par qui en a envie.

NdM: les sources de la version 2.2 (aussi appelée 0.2.2) ont été retrouvées.

L'association LanPower met à disposition sur son site une version 2.2 de 2008 avec installeur créé par l'association à partir du fichier zip récupéré avant la fermeture du site officiel. La licence est la GPLV3. Cependant, le jeu n'est pas totalement libre au sens strict du terme puisque les musiques de Steve Allen sont sous licence CC by-nc-sa 3.0 (on notera de plus la présence de MSVCR71 pour la version Windows).

Télécharger ce contenu au format Epub

Lire les commentaires

Sondages sur les serveurs web Netcraft et SecuritySpace de décembre 2015

15 janvier, 2016 - 18:46

Netcraft est un site web connu pour sa réalisation de sondages sur le logiciel utilisé par les serveurs web sur Internet, ainsi que pour la détection (et l'historique) de ces mêmes logiciels sur requête de ses visiteurs.

Chaque mois, Netcraft publie le résultat de son sondage. Le sondage du mois de décembre est donc disponible, et la deuxième partie de dépêche vous propose un commentaire de ce sondage.

Security Space publie aussi un sondage chaque mois sur les serveurs web (qui aurait besoin d'un peu de toilettage ceci dit).

Sondage Netcraft

Il faut d'abord noter que ce sondage de "popularité des serveurs web" ne peut être considéré comme exhaustif, mais avec un panel de plus de 901 millions de noms d'hôtes sondés il peut être considéré comme raisonnablement représentatif.

Sans surprise, Apache HTTP Server reste le serveur web le plus utilisé du sondage (50% des sites actifs, 37% des sites en général), talonné par Nginx (16% des sites actifs, 17% en général). Microsoft IIS ferme le podium avec presque 10% d'utilisation active (27% des sites en général). Tendanciellement, Nginx est plutôt en croissance tandis qu'Apache HTTP Server et IIS sont plutôt en décroissance.

Alors quoi, rien n'a changé depuis juillet 2012 ? Est-ce que ce classement a encore de l'intérêt ? En fait, au-delà de la progression de Nginx, on peut souligner que le total des serveurs non-mentionnés dépasse celui qui ferme le podium : il y a donc une certaine variété de serveurs web utilisés.

Au final, il est dommage que Netcraft se contente d'afficher seulement certains grands noms, même lorsqu'ils ne signifient plus rien, comme Sun.

Sondage Security Space

Security Space donne un peu plus d'infos sur les serveurs HTTPS rencontrés (nom plus précis et parfois version utilisée pour ceux qui l'annoncent).

On peut aussi :

  • observer que 27% des serveurs annoncent encore du SSLv3 (pourtant obsolète depuis 2014 avec la faille POODLE et enterré en juin 2015 par la RFC 7568) ;
  • noter la présence persistante de Flash sur 6% des sites et la disparition des applets et webstart Java à 0,11% ;
  • constater le fait que 39% des sites visités utilisent des cookies (quasi systématiquement pour toutes les URL du site, et pour tout un sous-domaine dans 12,7% des cas) ;
  • apprendre que seulement 8% des sites utilisent de la répartition de charge DNS en ayant plusieurs IP ;
  • signaler que les serveurs de courriel associés aux domaines web visités sont Exim (53%) et Postfix (32%), tous deux en hausse ;
  • s'émerveiller que les 4 plus grosses autorités de certification contrôlent plus de 63% des certificats recensés ;
  • épiloguer sur le fait qu'Apache HTTP Server tourne principalement sur CentOS, Debian, Ubuntu, voire parfois Red Hat ou FreeBSD.
Télécharger ce contenu au format Epub

Lire les commentaires

PacketFence 5.6 est disponible

14 janvier, 2016 - 22:53

Inverse a annoncé le 13 janvier 2016 la sortie de la version 5.6 de PacketFence, une solution de conformité réseau (NAC) entièrement libre (GPL v2), supportée et reconnue. PacketFence dispose de nombreuses fonctionnalités, comme un portail captif pour l'enregistrement ou la remédiation, une gestion centralisée des réseaux filaire et sans fil, la prise en charge du 802.1X, l'isolation niveau 2 des composantes problématiques, l'intégration au détecteur d'intrusions Snort et au détecteur de vulnérabilités Nessus. Cette solution peut être utilisée pour sécuriser efficacement aussi bien des réseaux de petite taille que de très grands réseaux hétérogènes.

La version 5.6 de PacketFence apporte de nombreuses améliorations telles qu'un module d'audit RADIUS permettant la traçabilité des événements sur le réseau, le regroupement des commutateurs pour leur appliquer une configuration commune, ou encore les filtres DHCP permettant d'effecteur des actions basées sur les empreintes numériques d'un appareil.

PacketFence possède un grand nombre de fonctionnalités. Parmi celles-ci, on retrouve :

  • l'enregistrement des composantes réseau grâce à un puissant portail captif ;
  • le blocage automatique, si souhaité, des appareils indésirables tels les Apple iPod, Sony PlayStation, bornes sans fil et plus encore ;
  • l'enrayement de la propagation de vers et virus informatiques ;
  • le freinage des attaques sur vos serveurs ou diverses composantes réseaux ;
  • la vérification de la conformité des postes présents sur le réseau (logiciels installés, configurations particulières, etc.) ;
  • la gestion simple et efficace des invités se connectant sur votre réseau ;
  • des sources d'authentification variées, incluant Facebook et Google.

PacketFence est une solution non-intrusive qui fonctionne avec une multitude d'équipements réseaux (filaire ou sans fil) tels ceux de 3Com, AeroHIVE, Allied Telesis, Aruba, BelAir/Ericsson, Brocade, Cisco, Dell/Force10, Enterasys, ExtremeNetworks, Extricom, Hewlett-Packard/H3C, Huawei, Intel, Juniper Networks/Trapeze, LG-Ericsson US, Meru Networks, Motorola, Netgear, Nortel/Avaya, Ruckus, Xirrus et plus encore.

Télécharger ce contenu au format Epub

Lire les commentaires

3ème édition d’AgoraCMS – Vendredi 1er avril 2016 - Paris - Ouverture de l’appel à communications

14 janvier, 2016 - 12:32

Présent depuis 3 ans dans l’agenda des événements du numérique, AgoraCMS est un événement professionnel indépendant consacré aux outils de gestion de contenus (CMS). En complément des nombreux événements techniques, AgoraCMS se positionne comme un événement résolument tourné vers les décideurs : chefs de projet, DSI, directions de communication et autres profils moins techniques.

Rassemblant les différents acteurs de la profession au cours d’une journée complète de conférences, ateliers, tables rondes et démos, orientés vers les CMS et le monde numérique, AgoraCMS est la vitrine du dynamisme français dans cet univers complexe et le reflet de l’expertise des sociétés partenaires.

L'évènement prévoit plus de 350 participants.

Ouverture de l’appel à communications

Au programme, de nombreux retours d'expériences, tables rondes, conférences pratiques et ateliers seront proposés pour optimiser la gestion de contenus dans les entreprises.
Avec comme thématique phare « les CMS dans un contexte métier », les conférences et tables rondes auront toutes pour objectif de présenter les outils et méthodes qui existent pour accroître l'efficacité et la qualité des projets numériques.

Événement s’adressant aussi bien aux DSI, aux chefs de projets techniques, qu’aux directions de la communication et chefs de projets Web, le programme des conférences a la particularité de couvrir un large spectre de problématiques :

  • choisir son outil de gestion de contenu Web (CMS) et l'utilisation d'un CMS dans un contexte métier ;
  • développer son trafic et améliorer ses taux de conversions ;
  • les tendances 2016 du marketing Web appliquées aux CMS ;
  • la mobilité avec un CMS : applications, responsive Web, sites mobiles ;
  • UX et ergonomie utilisateur ;
  • l'intégration du CMS dans le SI ;
  • améliorer la performance et la sécurité de ses applications Web ;
  • les méthodes de développement.

De nombreux retours d’expériences viendront compléter les présentations.

Pour soumettre votre sujet de conférence, enregistrez directement votre proposition sur : http://www.agoracms.com/appel-a-communication

Attention : la date limite de rendu des sujets est fixée au 12 février 2016 à minuit !

Le comité de programme
  • Cyril PIERRE de GEYER, Directeur des Executive MBA à l'Epitech, ISG+EPITA et Directeur de l'organisme de formation chez Openska ;
  • Marine SOROKO, Directrice Associée de Core-Techs ;
  • Nicolas SILBERMAN - CTO et cofondateur de ThankYouMotion ;
  • Frédéric AATZ, Directeur de la Stratégie Interopérabilité & Open Source chez Microsoft ;
  • Maxime TOPOLOV, co-fondateur et CTO d'Adyax ;
  • Christophe CARNET, Directeur de projets et Responsable Qualité, RSSI chez AlterWay ;
  • Frédéric HOVART, Directeur Commercial de GLOBALIS ;
  • Christophe VILLENEUVE, Consultant IT et Community Manager chez Neuros.
Informations complémentaires Date et lieu

AgoraCMS se tient à la Maison des Associations de Solidarité (MAS) à Paris dans le 13ème arrondissement, le vendredi 1er avril 2016 de 9h à 18h.

MAS PARIS - 10/18 rue des Terres au Curé - 75013 PARIS

Accès

L'entrée est gratuite, mais l'évènement réservé aux professionnels.
L'inscription est obligatoire, et s'effectue sur le site d'AgoraCMS.

Télécharger ce contenu au format Epub

Lire les commentaires

Le retour de la Méthode R.A.C.H.E

13 janvier, 2016 - 19:57

Il y a plus de 10 ans maintenant, en lisant le journal d'un certain mmh, je découvrais la Méthode R.A.C.H.E de l’International Institute of La RACHE. Il ne s'est pas passé une année depuis sans qu'un collègue ou moi-même y fasse allusion face à un projet à l'issue incertaine. Malheureusement, le domaine n'a pas été renouvelé en 2013 par le propriétaire, et un site parking plein de liens moisis y a pris place.

Malgré la déception, j'ai finalement réussi à racheter le domaine et à le remettre en route…

Le site actuel

Le site est maintenant hébergé sur une page GitHub, peut être forké et est ouvert à toutes les contributions.

Le but de cette réouverture est de faire perdurer cette note d'humour et de continuer à rire des métiers de l'informatique.

Je n'ai aucune idée de l’identité de l'auteur originel de cette page ni de la licence qu'il aurait souhaité pour ce contenu.

Le contenu déposé sur GitHub est par défaut sous licence CC-BY-4.0.

Contribuer au site web la-rache.com Installation de l'environnement de travail
  • forkez le projet : https://github.com/la-rache/la-rache.com ;
  • clonez votre fork : git clone https://github.com/<votre_user_github>/la-rache.com.git ;
  • allez dans le répertoire de travail : cd la-rache.com ;
  • installez NPM apt-get install npm ;
  • installez les dépendances : npm install.
Modification des sources
  • éditez le début de page et le pied de page dans src/parts ;
  • éditez les corps des pages dans src/*.html ;
  • éditez les images dans src/img ;
  • éditez les css dans src/css ;
  • éditez les js dans src/js.
Génération du code HTML
  • ./node_modules/grunt-cli/bin/grunt.
Visualisation du code
  • Ouvrez build/index.html avec votre navigateur préféré.
Partage de vos modifications
  • si vous avez ajouté de nouveaux fichiers : git add <fichier> ;
  • commentez vos modifications : git commit -am "<votre commentaire sur vos modifications" ;
  • poussez les dans votre repo git push ;
  • depuis votre espace GitHub, faites un merge request.
Télécharger ce contenu au format Epub

Lire les commentaires

Revue de presse de l'April pour la semaine 1 de l'année 2016

12 janvier, 2016 - 02:37

La revue de presse de l'April est régulièrement éditée par les membres de l'association. Elle couvre l'actualité de la presse en ligne, liée au logiciel libre. Il s'agit donc d'une sélection d'articles de presse et non de prises de position de l'association de promotion et de défense du logiciel libre.

Sommaire

[Le Point] Brighelli - L'école vendue (pas cher) à Microsoft

Par Jean-Paul Brighelli, le vendredi 8 janvier 2016. Extrait:

Sans le moindre appel d'offres, Microsoft vient de s'offrir 850 000 enseignants et plus de 12 millions d'élèves. "Une affaire!" juge Brighelli.

Lien vers l'article original: http://www.lepoint.fr/invites-du-point/jean-paul-brighelli/brighelli-l-ecole-vendue-pas-cher-a-microsoft-08-01-2016-2008088_1886.php

Voir aussi:

[Le Monde.fr] Le gouvernement néerlandais défend le chiffrement des données

Par Morgane Tual, le jeudi 7 janvier 2016. Extrait:

A contre-courant, le ministre de la sécurité et de la justice affirme, dans un texte officiel, que le chiffrement protège les citoyens, les entreprises et le gouvernement.

Lien vers l'article original: http://www.lemonde.fr/pixels/article/2016/01/07/le-gouvernement-neerlandais-defend-le-chiffrement-des-donnees_4842993_4408996.html

[ZDNet France] Linux et l'open source ont gagné, acceptez-le

Par Steven J. Vaughan-Nichols, le lundi 4 janvier 2016. Extrait:

2015 a été l'année durant laquelle Linux et le logiciel Open Source ont pris le pouvoir dans le monde de l'IT. Mais de nombreux fans du logiciel open source et propriétaires n'en ont toujours pas pris conscience.

Lien vers l'article original: http://www.zdnet.fr/actualites/linux-et-l-open-source-ont-gagne-acceptez-le-39830530.htm

[Techniques de l'Ingénieur] Coup de pouce de l’État en faveur de l’Open Source

Par la rédaction, le vendredi 8 janvier 2016. Extrait:

Quelques semaines après sa validation, les administrations peuvent consulter la version 2016 du socle interministériel des logiciels libres (SILL) afin de découvrir et utiliser les quelque 100 logiciels Open Source recommandés par l’État.

Lien vers l'article original: http://www.techniques-ingenieur.fr/actualite/articles/coup-de-pouce-de-letat-en-faveur-de-lopen-source-31088

Et aussi:

Voir aussi:

[Nouvelles de France Portail] Libertés numériques: sortir de l’idéologie totalitaire dominante et avoir une vrai volonté politique

Par Barbara Mazières, le jeudi 7 janvier 2016. Extrait:

Les mesures que souhaite prendre le ministère de l’Intérieur soi-disant pour la sécurité sur internet sont, une nouvelle fois, des mesures contraires à la défense de nos liberté : coupure obligatoire de tout réseau Wi-Fi ouvert (mesure abandonnée pour l’instant? mais il faut rester vigilant), menace et censure des sites, blocage des réseaux d’anonymisation et fourniture des clés de chiffrement des messageries font partie des pistes soumises à arbitrage.

Lien vers l'article original: http://www.ndf.fr/poing-de-vue/07-01-2016/78030

[L'Atelier] «Les villes ne se rendent pas compte du potentiel du citoyen-entrepreneur»

Par Aurore Geraud, le mercredi 6 janvier 2016. Extrait:

Rencontre avec le chercheur américain Boyd Cohen, sur sa vision de l'évolution du profil de l'entrepreneur à l'origine de la smart city de demain.

Lien vers l'article original: http://www.atelier.net/trends/articles/villes-ne-se-rendent-compte-potentiel-citoyen-entrepreneur_439456

Télécharger ce contenu au format Epub

Lire les commentaires