forked from reseau-loops/reseau-loops.github.com
-
Notifications
You must be signed in to change notification settings - Fork 0
/
journee_2012_05_31.html
257 lines (243 loc) · 10.6 KB
/
journee_2012_05_31.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
---
layout: default
no_sidebar: true
title: 31 mai 2012 - Journée de lancement du réseau
navbar-events: active
---
<p>
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 <a href="http://www.lal.in2p3.fr/spip.php?rubrique257">LAL</a>,
sur le campus d'Orsay.
</p>
<p>
Vous pouvez télécharger une <a href="affiche_journee_2012_05_31.pdf">affiche A4</a>
pour nous aider à diffuser l'information sur cette journée.
</p>
<h2>Inscriptions</h2>
<p>
L'inscription est <b>gratuite mais obligatoire</b> pour nous permettre
de préparer au mieux cette journée.
</p>
<p>
Pour vous inscrire, merci de remplir
<a href="http://indico2.lal.in2p3.fr/indico/confRegistrationFormDisplay.py/display?confId=1844">ce formulaire</a>
</p>
<!--
'écrire à <tt>loops-cp AT groupes.renater.fr</tt> en indiquant:
<ul>
<li>Vos nom et prénom,</li>
<li>Votre affectation (établissement, laboratoire, ...),</li>
<li>L'atelier auquel vous souhaitez participer, à titre purement indicatif pour nous ; vous
pourrez toujours changer d'avis le moment venu,</li>
<li>Si vous avez la possibilité de manger sur place dans l'un des restaurants (CESFO, ...) ;
pour ceux qui ne peuvent pas, nous organiserons des achats groupés de sandwiches.</li>
</ul>
-->
<h2>Programme</h2>
<!--<div class="alert alert-warning">
Ce programme n'est pas encore définitif.
</div>-->
<p>
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.
</p>
<div class="row prog-section">
<div class="span2"> </div>
<div class="span10">
<div class="row">
<div class="span1 time">9h00</div>
<div class="span9">Accueil</div>
</div>
<div class="row">
<div class="span1 time">9h15</div>
<div class="span9">Présentation du réseau et de la journée</div>
</div>
</div>
</div>
<div class="row prog-section">
<div class="span2">Exposés pléniers</div>
<div class="span10">
<div class="row">
<div class="span1 time">9h30</div>
<div class="span9"><a href="#tango">Splendeurs et servitudes du développement open-source collaboratif</a> (Alain Buteau, Soleil)</div>
</div>
<div class="row">
<div class="span1 time">10h00</div>
<div class="span9"><a href="#scrum">Méthodes agiles sur le terrain: SCRUM dans le projet StratusLab</a> (Charles Loomis, LAL)</div>
</div>
<div class="row">
<div class="span1 time">10h30</div>
<div class="span9"><a href="#sklearn">Développement de Scikit-learn</a> (Gaël Varoquaux, INRIA)</div>
</div>
<div class="row">
<div class="span1 time">11h00</div>
<div class="span9"><i>Pause</i></div>
</div>
<div class="row">
<div class="span1 time">11h20</div>
<div class="span9">Présentation de l'atelier coding-dojo (Christian Poli, INRIA)</div>
</div>
<div class="row">
<div class="span1 time"> </div>
<div class="span9">Présentation de l'atelier Go (Sébastien Binet, LAL)</div>
</div>
<div class="row">
<div class="span1 time"> </div>
<div class="span9">Présentation de l'atelier C++ (Joël Falcou, LRI)</div>
</div>
<div class="row">
<div class="span1 time">11h50</div>
<div class="span9"><a href="#clojure">Clojure: pour qui, pour quoi ?</a> (Charles Loomis, LAL)</div>
</div>
</div>
</div>
<div class="row prog-section">
<div class="span2"> </div>
<div class="span1 time">12h20</div>
<div class="span9">Déjeuner</div>
</div>
<div class="row prog-section">
<div class="span2">Ateliers parallèles</div>
<div class="span10">
<div class="row">
<div class="span1 time">14h00</div>
<div class="span2 prog-parallel"><a href="#dojo">Session coding dojo</a></div>
<div class="span1 prog-vert-sep"> </div>
<div class="span2 prog-parallel"><a href="#go">Atelier Go</a></div>
<div class="span1 prog-vert-sep"> </div>
<div class="span2 prog-parallel"><a href="#cpp">Atelier C++ 2011</a></div>
</div>
</div>
</div>
<div class="row ">
<div class="span2"> </div>
<div class="span10">
<div class="row">
<div class="span1 time">16h00</div>
<div class="span9">Table ronde: retours sur la journée, questions, suite du réseau</div>
</div>
<div class="row">
<div class="span1 time">17h00</div>
<div class="span9">Fin de la journée</div>
</div>
</div>
</div>
<h3>Détails des exposés et ateliers</h3>
<h4 id="tango">Splendeurs et servitudes du développement open-source collaboratif</h4>
<p>
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.
</p>
<h4 id="scrum">Méthodes agiles sur le terrain: SCRUM dans le projet StratusLab</h4>
<p>
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.
</p>
<h4 id="sklearn">Développement de Scikit-learn</h4>
<p>
Le <a href="http://scikit-learn.org">scikit-learn</a>
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.
</p>
<p>
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.
</p>
<h4 id="clojure">Clojure: pour qui, pour quoi ?</h4>
<p>
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".
</p>
<h4 id="dojo">Atelier Coding dojo</h4>
<p>
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, ...
</p>
<p>
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
(<a href="http://manifesto.softwarecraftsmanship.org/">http://manifesto.softwarecraftsmanship.org/</a>).
</p>
<p>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.
</p>
<p>Pas besoin d'apporter de machine.</p>
<p>
Intervenant: André Fonseca (INRIA Saclay).
</p>
<h4 id="go">Atelier Go: programmation concurrente</h4>
<p>
Go est un nouveau langage de programmation Open Source, adapté à la
programmation concurrente.
</p>
<p>
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).
</p>
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.
</p>
<p>
Les participants à cet atelier doivent <strong>apporter leur machine</strong>
(macosx (64b), linux (32/64), windows (64b)) avec
Go-1.0.1 <a href="http://golang.org/doc/install">installé</a>,
soit depuis les <a href="http://code.google.com/p/go/downloads/list">binaires</a>,
soit depuis les <a href="http://golang.org/doc/install/source">sources</a>
(pour ce mode d'installation, il faut un environnement complet de
développement (make,gcc,hg)).
</p>
<p>Pré-requis:
</p>
<ul>
<li>(bases de) programmation orientée objets,</li>
<li>intérêt pour la programmation concurrente pour les futures machines
multi-coeurs/many-coeurs.</li>
</ul>
<p>
Intervenant: Sébastien Binet (LAL).
</p>
<h4 id="cpp">Atelier C++ 2011</h4>
<p>
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).
</p>
<p>Les participants à cet atelier doivent <strong>apporter leur machine</strong> avec
G++ >= 4.6 OU Visual Studio >= 10 OU CLANG 3.1 et connaître
les bases de C++.
</p>
<p>
Intervenant: Joël Falcou (LRI).
</p>