99s

Loic

http://twitter.com/benoitc

Erlang Solutions

Subscribe to our Erlang Factory newsletter to receive the latest updates and news

Concierge pour Code: le rêve de personne, la tâche de chacun

Fred Hebert
Fred Hebert

AdGear Technologies Inc.
Alors que la vaste majorité des programmeurs et ingénieurs logiciels préfère passer le plus clair de son temps à développer de nouvelles idées, la vie d'un projet est en moyenne composée de 70% à 80% de maintenance.

Généralement, le plus clair du temps de maintenance est passé dans le code, à tenter de comprendre comment le système fonctionne, et à essayer de s'en former une image mentale qui peut ensuite permettre de le modifier.

Erlang et OTP peuvent permettre de limiter l'effort requis pour comprendre et modifier un système. Divers aspects de la plateforme Erlang/OTP sont présentés avec les avantages attendus pour aider à la maintenance logicielle.

Objectifs de la présentation: Cette présentation vise à identifier la nature de la maintenance logicielle, puis cherche à établir comment utiliser Erlang pour s'assurer que les tâches de maintien quotidiennes ne deviennent pas une maison des horreurs, déprimante et épuisante, mais une activité pratiquement aussi motivante que l'écriture d'applications nouvelles.

Public visé: Les programmeurs de niveau débutant à intermédiaire, avec une expérience Erlang similaire. La présentation est de relativement haut niveau et une idée générale des principes de la plateforme est recommandée. 


Construire une plateforme de données decentralisées en Erlang

Benoît Chesneau
Benoît Chesneau

Le projet refuge (http://refuge.io) veut fournir à tous une plateforme
de données decentralisées opensource permettant d'échanger ces données,
de les manipuler et les lier de differentes manières. Les principaux
axes du projest sont:

- la création d'un système génerique permettant d'échanger tous types
  de données
- permettre l'utilisation de cette plateforme au sein de votre projet
  (example novacut (http://www.novacut.com/) utilisant les videos dans
refuge ou une un framework permettant d'uiliser des applis HTML5...) ou
l'embarquer sur differentes plateformes (IOS, Android, raspberry, ...)
- faciliter la création de réseaux de type small world (organisation des
  noeuds de données, hubs, addressage (mdns, upnp ...) .

Au cours de cette présentation nous montrerons comment nous utilisons
Erlang pour construire cette platforme, les modifications que nous avons
apportées à Apache CouchDB ainsi que l'architecture utilisée pour la
découverte et les échanges de données. Par ailleurs une démonstration de
l'usage de la plateforme sera effectué.

Objectifs de la présentation:
L'objectif de cette présentation est de montrer les differents aspects d'Erlang que nous utilisons pour construire cette plateforme (OTP, Distribution sur plusieurs cores/machines, facilité pour écrire des protocoles ...) . Comment nous avons avons modifié Apache CouchDB pour le rendre plus facilement extensible et l'intégrer dans refuge. Elle présentera en outre les différents projets opensource utilisés et developpés pour l'occasion (mochicow, hackney, cowboy_revproxy ...)


Erlang appliqué au centre de contacts de Bouygues Telecom

Philippe Pinchon
Philippe Pinchon

Bouygues Telecom
Fréderic Scibetta
Fréderic Scibetta

Bouygues Telecom
Cyril Valliez
Cyril Valliez

Bouygues Telecom
Comment optimiser les évolutions en production sans rupture de service.
Intéressé pour comprendre les apports d’Erlang/Open Telecom Plateform sur la mise à jour en production sans interruption de service, Bouygues Telecom présente un retour d’expérience d’une réalisation effectuée entièrement en Erlang/OTP avec Yaws.
 
Plan :
o   Contexte du projet (Technologies et contraintes, attentes d’Erlang, préparation du projet, contexte, équipe, formation, organisation)
o   Présentation du système mis en place (architecture, interfaces, fonctionnement)
o   Outils de tests et particularités Erlang (Harnais, Mnesia, rechargements à chaud)
o   Retours d’expérience (points positifs / négatifs, suites…)


HA Erlang depuis les tranchées

Fabrice Nourisson
Fabrice Nourisson

Extreme Forge
Dominic Williams
Dominic Williams

Extreme Forge
Erlang est un langage simple spécialement créé pour développer des systèmes robustes et à haute disponibilité (High Availability).
Durant les 6 années de travail sur des systèmes de télécommunications, nous avons appris sur le tas qu'il existe quelques pièges.
Nous présenterons les problèmes les plus courants, les règles de codage et les modèles de conception que nous avons mis en place pour répondre aux problématiques de la table des atoms, la gestion de la mémoire, le "garbage collector", les files de messages, les contrôles de flux, la configuration et les mises à jour à chaud du code.

Objectifs de la présentation: Informer les développeurs de systèmes Erlang à haute disponibilité sur les pièges courants et les leçons apprises, et fournir des règles de codage et des idiomes de conception pour les éviter.

Un développeur averti en vaut deux.

Public visé: Les développeurs et les architectes, les aspirants experts Erlang, en particulier de systèmes à haute disponibilité.



Introduction à Riak

Dominic Williams
Dominic Williams

Extreme Forge
Riak est une base de données NoSQL scalable écrite en Erlang et utilisable en HTTP, Erlang et de nombreux autres langages. Cette introduction décrit l'architecture de Riak, offre un petit tutoriel de prise en main et présente des retours d'expérience.


OTP, le middleware pour réaliser des architectures concurrentes et distribuées

Francesco Cesarini
Francesco Cesarini

Erlang Solutions Ltd.
Bien qu'Erlang soit un language de programmation très puissant pour réaliser des systèmes distribués résistant aux pannes suivant des contraintes de haute disponibilité, ces systèmes complexes nécessitent un middleware sous la forme de librairies réutilisables, d'outils de gestion de release, debugging et maintenance adaptés au design d'une architecture concurrente.

Dans cette présentation, Francesco introduira les blocs de construction qui forment OTP, le middleware defacto qui accompagne la distribution Erlang/OTP. Il expliquera les principes de OTP et les directives qu'ils définissent pour permettre aux développeurs de structurer leurs systèmes de manière à permettre leur expansion tout en restant résistant aux pannes, et ce sans avoir à réinventer la roue.

Objectifs de la présentation: Introduction d'un framework très puissant qui permet de réduire les erreurs et d'aider les développeurs à atteindre qualité et résistance aux pannes sans occasionner de délais dans la réalisation des projets.

Public visé: Débutants Erlang ainsi qu'ingénieurs et architectes qui implémentent des systèmes serveurs.
Bien qu'Erlang soit un language de programmation très puissant pour réaliser des systèmes distribués résistant aux pannes suivant des contraintes de haute disponibilité, ces systèmes complexes nécessitent un middleware sous la forme de librairies réutilisables, d'outils de gestion de release, debugging et maintenance adaptés au design d'une architecture concurrente.

Dans cette présentation, Francesco introduira les blocs de construction qui forment OTP, le middleware defacto qui accompagne la distribution Erlang/OTP. Il expliquera les principes de OTP et les directives qu'ils définissent pour permettre aux développeurs de structurer leurs systèmes de manière à permettre leur expansion tout en restant résistant aux pannes, et ce sans avoir à réinventer la roue.

Objectifs de la présentation: Introduction d'un framework très puissant qui permet de réduire les erreurs et d'aider les développeurs à atteindre qualité et résistance aux pannes sans occasionner de délais dans la réalisation des projets.

Public visé: Débutants Erlang ainsi qu'ingénieurs et architectes qui implémentent des systèmes serveurs.
Bien qu'Erlang soit un language de programmation très puissant pour réaliser des systèmes distribués résistant aux pannes suivant des contraintes de haute disponibilité, ces systèmes complexes nécessitent un middleware sous la forme de librairies réutilisables, d'outils de gestion de release, debugging et maintenance adaptés au design d'une architecture concurrente.

Dans cette présentation, Francesco introduira les blocs de construction qui forment OTP, le middleware defacto qui accompagne la distribution Erlang/OTP. Il expliquera les principes de OTP et les directives qu'ils définissent pour permettre aux développeurs de structurer leurs systèmes de manière à permettre leur expansion tout en restant résistant aux pannes, et ce sans avoir à réinventer la roue.

Objectifs de la présentation: Introduction d'un framework très puissant qui permet de réduire les erreurs et d'aider les développeurs à atteindre qualité et résistance aux pannes sans occasionner de délais dans la réalisation des projets.

Public visé: Débutants Erlang ainsi qu'ingénieurs et architectes qui implémentent des systèmes serveurs.


Tests Web fonctionnels chez Corporama

Nicolas Thauvin
Nicolas Thauvin

Corporama
http://corporama.com est un agrégateur de données web temps réel implémenté avec Yaws/Erlang. Il dépend d'un certain nombre de contenus externes à récupérer en temps réel et à adapter en fonction de l'offre commerciale des clients.

Pour valider le comportement du site et détecter les régressions, il a été développé un système de tests distribués utilisant Selenium pour prendre le contrôle de plusieurs navigateurs web allant tester un build du site.  
Cette présentation a pour but de:
  - passer en revue les raisons de ce développement
  - rentrer (un peu) dans les détails de son implémentation pour introduire les subtilités des tests par navigateurs
  - détailler les principes que l'on peut réutiliser dans le cadre d'un autre projet web
  - en faire le retour d'expérience

Public visé:
Développeurs/Testeurs à la recherche d'approches pour tester un site web.  
Les concepts évoqués étant assez généraux, des bases en Erlang suffisent.


Un webchat avec Cowboy en 45 minutes

Loïc Hoguin
Loïc Hoguin

Nine Nines
L'un des principaux avantages de Cowboy est que ce serveur permet de créer des applications très réactives grâce en partie à la technologie Websocket. Cette démo vous montrera les étapes à suivre pour réaliser une mini application de chat grâce à Cowboy et à Websocket.

Objectifs de la présentation: Apprendre à utiliser Cowboy et à écrire des handlers HTTP et Websocket. Observer la facilité avec laquelle on peut arriver à une application dynamique fonctionnelle en partant de zéro.

Public visé: Ouvert à tous les niveaux. Préférable d'avoir des bases Erlang mais pas indispensable.


Why Erlang is that it is (and what it is...)

Robert Virding
Robert Virding

Erlang Solutions