31 mai 2012 - Journée de lancement du réseau

La première journée de rencontres et d'échanges organisée par le réseau LoOPS aura lieu le jeudi 31 mai 2012, au LAL, sur le campus d'Orsay.

Vous pouvez télécharger une affiche A4 pour nous aider à diffuser l'information sur cette journée.

Inscriptions

L'inscription est gratuite mais obligatoire pour nous permettre de préparer au mieux cette journée.

Pour vous inscrire, merci de remplir ce formulaire

Programme

Cette journée sera placée sous le thème du développement collaboratif et mêlera des retours d'expériences, des ateliers et des présentations de pratiques et d'outils.

 
9h00
Accueil
9h15
Présentation du réseau et de la journée
Exposés pléniers
10h30
Développement de Scikit-learn (Gaël Varoquaux, INRIA)
11h00
Pause
11h20
Présentation de l'atelier coding-dojo (Christian Poli, INRIA)
 
Présentation de l'atelier Go (Sébastien Binet, LAL)
 
Présentation de l'atelier C++ (Joël Falcou, LRI)
11h50
Clojure: pour qui, pour quoi ? (Charles Loomis, LAL)
 
12h20
Déjeuner
Ateliers parallèles
 
16h00
Table ronde: retours sur la journée, questions, suite du réseau
17h00
Fin de la journée

Détails des exposés et ateliers

Splendeurs et servitudes du développement open-source collaboratif

Le logiciel de control-command d'accélérateurs de particules Tango est passé du statut de projet local à l'ESRF à un projet open source multi-institutions internationales. Cette présentation fera un petit panorama des avantages d'un tel mode de développement de logiciel, mais aussi et surtout sur les pièges qui attendent les futurs candidats tentés par cette approche.

Méthodes agiles sur le terrain: SCRUM dans le projet StratusLab

The StratusLab project was a two year, European project that developed a complete, open-source cloud distribution, suitable for creating both private and public clouds. A unique feature of the project was its adoption of agile software engineering methodologies, in particular Scrum. Scrum structures the development process into a series of short (~3 weeks) iterations called sprints. Each sprint starts with a planning meeting and ends with a demonstration of developed functionality. During the sprint, developers remain in contact through daily “stand-up” meetings, limited to 15 minutes. The project adapted the standard Scrum procedures to meet the challenges of operating in an academic environment with a development team distributed throughout five European countries. This presentation describes our experience with Scrum and plans to extend our toolset to support a complete DevOps platform.

Développement de Scikit-learn

Le scikit-learn est un projet d'apprentissage statistique en Python relativement jeune: le développement n'a réellement commencé que début 2010. En quelques années, le projet a connu un essor fantastique: une cinquantaine de développeurs a fait des contributions non triviales, 28 ayant contribué dans les derniers 4 mois, avec un cumul de 44 000 lignes de code.

Le partage du développement et du sentiment de propriété du code est un facteur central au succès d'un projet libre. Comparé à des projets en apparence similaire que j'ai menés, le scikit-learn a un développement beaucoup plus dynamique et communautaire. Dans cette présentation, je discuterai les raisons techniques et sociales qui me semblent expliquer ce dynamisme, notamment: choix des objectifs du projet, technologies utilisées, relations humaines dans la communauté, outils de gestion de projet, marketing.

Clojure: pour qui, pour quoi ?

Clojure, de la filiation LISP, est une des voies prometteuses de mise en œuvre d'un multithreading efficace, un des enjeux de cette décennie. Après une introduction au langage, et un retour d'expérience sur la formation et la conférence de la semaine dernière à Londres, on se posera la question d'avancer vers un club de "French Clojurians".

Atelier Coding dojo

Par analogie avec le dojo où se pratiquent les arts martiaux, notamment les entraînements, un coding-dojo est une réunion de développeurs pour pratiquer le développement logiciel, échanger des conseils, des expériences. Des sessions sont organisées autour d'exercices: katas, résolution de problèmes à plusieurs, ...

Le but est de pratiquer ensemble pour progresser ensemble, de montrer ses pratiques, regarder celles des autres, échanger, ... Cette activité s'inscrit dans un mouvement plus global revendiquant l'aspect artisanal du développement logiciel (http://manifesto.softwarecraftsmanship.org/).

L'atelier sera une ession de randori. Dans cet exercice, un participant commence à coder une solution au problème posé, toujours en expliquant ce qu'il fait. Il a à côté de lui un co-pilote. Au bout de 5 ou 7 minutes, le co-pilote prend la place du pilote et un autre participant prend la place du co-pilote. La solution au problème est donc implémentée collectivement.résolution collaborative d'un problème, chaque développeur restant 5 à 7 minutes au clavier.

Pas besoin d'apporter de machine.

Intervenant: André Fonseca (INRIA Saclay).

Atelier Go: programmation concurrente

Go est un nouveau langage de programmation Open Source, adapté à la programmation concurrente.

Le but de cet atelier est d'introduire le modèle de programmation concurrente CSP (Communicating sequential processes) dont Go s'inspire et les concepts fondamentaux sur lesquels il repose (goroutines, channels).

Les autres briques de bases (types, slices, maps), les idiomes du langage (duck-typing et interfaces) et quelques modules de la bibliothèque standard seront également abordés au cours de l'élaboration d'un mini-serveur web et d'un mini-load-balancer.

Les participants à cet atelier doivent apporter leur machine (macosx (64b), linux (32/64), windows (64b)) avec Go-1.0.1 installé, soit depuis les binaires, soit depuis les sources (pour ce mode d'installation, il faut un environnement complet de développement (make,gcc,hg)).

Pré-requis:

Intervenant: Sébastien Binet (LAL).

Atelier C++ 2011

C++ est un langage à la fois puissant et déroutant. Le but de cet atelier est de mettre en avant un jeu de bonnes pratiques du développement d'applications et de bibliothèques à la fois en C++ dit "classique" (gestion des ressources et des erreurs, conteneurs et algorithmes) et en utilisant les nouveautés issues de la nouvelle norme d'août 2011 (inférence de type automatique, lambda fonction, multithreading, gestion avancée de la mémoire).

Les participants à cet atelier doivent apporter leur machine avec G++ >= 4.6 OU Visual Studio >= 10 OU CLANG 3.1 et connaître les bases de C++.

Intervenant: Joël Falcou (LRI).

blog comments powered by Disqus