Compte tenu de la proximité du Toulouse DevFest 2019, nous avons profité de cette soirée pour débriefer sur cet événement de façon ouverte par des prises de paroles volontaires.
Nous avons donc discuté de l’organisation avec les membres du staff présents sur place, des expériences et du ressenti de chacun ainsi que des présentations les plus marquantes et les plus appréciées par les uns et les autres.

Puis place au seul talk de la soirée : API Web Moderne avec GRPC!

Et comme c’est encore le début de la saison 2019, nous avions choisi d’organiser un Quiz de rentrée afin de faire gagner les quelques lots offerts par nos sponsors et partenaires au cours de l’année précédente.

Les participants ont donc pu choisir, par ordre de classement au résultat du quiz, le lot qui leur faisait le plus plaisir parmi :

Et en libre accès : de nombreux stickers (Eclipse Vert.x, Elastic, DigitalOcean, Github).

API Web Moderne avec GRPC - par Florian Bernard (@fbe64)

La plupart des projets logiciels utilisent ou exposent des Api Web. Ces APIs sont souvent bâties sur des standards (HTTP 1.X / JSON / XML …) qui n’ont pas évolué depuis plusieurs années.
Je vous propose de découvrir une approche plus moderne avec le framework GRPC conçu par Google.

Déroulement de la présentation :

  • Introduction et bref historique des technologies utilisées pour faire des Api distantes
  • Présentation du framework GRPC et ce qu’il y a sous le capot
  • Démo / live coding (client / serveur)

Référence CfP : https://github.com/ToulouseJug/call-for-paper/issues/35

Vidéo :

Pour attaquer cette nouvelle saison, un aperçu du Projet Loom par moi-même, et une présentation de Spring Cloud par un speaker bien connu du JUG.

Malheureusement, étant speaker lors de cette soirée, il m’a été impossible d’enregistrer ma présentation sur Loom, et la présentation sur Spring Cloud a été enregistrée sans micro-cravate sur la caméra n°2, d’où une qualité d’image et de son inférieures à d’habitude.

La concurrence sans s’emmêler les ficelles avec Project Loom - par Arnaud Bos (@abos)

Le domaine de la programmation concurrente utilise le champ lexical de la filature et nous met les nerfs en pelote avec des concepts qui s’entrelacent : fibers, threads, lightweight-threads, green threads, loom… Peut-être avez vous également entendu parler de coroutines ? Rassurez-vous, tout est lié.

Au fil de cette présentation (em)mêlée d’exemples de code, vous découvrirez le projet Loom qui a pour vocation d’apporter à la JVM des “mécanismes léger de concurrence”, ainsi que des API plus haut niveau pour broder dessus.

Nous aborderons ensemble l’origine de Loom et ses récents prototypes. Vous vous apercevrez que son maillage va au delà de “simples” primitives et peut nous amener jusqu’à révolutionner la concurrence sur la JVM.

Et en attendant la révolution, sans tirer trop sur la corde, vous verrez comment on peut juste utiliser Quasar.

Référence CfP : https://github.com/ToulouseJug/call-for-paper/issues/39

Microservices avec Spring Cloud - par Florian Beaufumé (@fbeaufume)

Une architecture en microservices apporte de nombreux bénéfices mais pose plusieurs difficultés à cause de la nature distribuée de l’application.

Pour nos applications Java ou Kotlin basées sur Spring Framework et Spring Boot, il existe des solutions apportées par les projets Spring Cloud. Elles ont l’avantage d’être neutres par rapport à l’orchestrateur ou au cloud utilisé.

A travers une majorité de slides, mais aussi quelques démonstrations, nous allons expliquer ces difficultés et montrer la mise en oeuvre étape par étape des solutions de Spring Cloud :

  • Centralisation de la configuration avec Spring Cloud Config
  • Automatisation et fiabilisation des communications entre services avec Spring Cloud Netflix
  • Exposition des services aux clients avec Spring Cloud Gateway
  • Corrélation des logs avec Spring Cloud Sleuth

Référence CfP : https://github.com/ToulouseJug/call-for-paper/issues/30

Vidéo :

Pour la dernière soirée de la saison 2018-2019 le thème était “de la programmation orientée object à la programmation fonctionnelle”, vaste programme.
Pour ce faire, une première vidéo où l’on revient aux sources et où l’on présente les grands concepts, suivi d’une présentation d’un cas concret pour lequel des concepts de programmation fonctionnelle peuvent nous aider.

La programmation fonctionnelle sans céder à la mode - par Frédéric Cabestre (@fcabestre)

Aujourd’hui, pour être à la mode, il faut parler de programmation fonctionnelle. Et de suite on convoque les mots en vogue: « Immutabilité », « Monade » ou « Catamorphisme ». Au mieux le message est brouillé, mal reçu. Au pire la salle se vide !

Ce que je vous propose c’est de repartir des principes de base, avec des idées bien arrêtées et peut-être parfois provocatrices. Comprendre, comme le disait John Hugues, « Why functionnal programming matters ». Cerner les quelques idées directrices de la programmation fonctionnelle et ce qu’elles apportent concrètement au quotidien. Voir comment et pourquoi d’autres concepts en découlent nécessairement…

Il sera peut-être finalement question de « Théorie des catégories » ! Mais il sera surtout question, en vrac, d’histoire et de mise en œuvre des langages, de typage, de performance, d’artisanat du logiciel, de « Design patterns », d’abstraction et, soyons fou, de réification.

En somme, je vais vous parler de programmation fonctionnelle en essayant de ne pas être à la mode !

Référence CfP : https://github.com/ToulouseJug/call-for-paper/issues/20

Vidéo :

De l’OOP à la FP : l’affaire de la validation - par Emmanuel Nhan (@nhanmanu)

On est tous tombé au moins une fois dans cette boucle en remplissant un formulaire web :

  • Remplir et cliquer sur envoyer,
  • Avoir en retour un champ en erreur,
  • Corriger la saisie et soumettre,
  • Avoir un autre champ en erreur,
  • Corriger la saisie et soumettre,

Même chose pour l’envoi d’une requête HTTP avec un body JSON qui peut être invalide à plusieurs endroits. Doit-on corriger chaque champ un à un à mesure que l’on découvre les erreurs ou existe-t-il un moyen d’avoir l’ensemble des erreurs dès la première requête ?

Dans ce talk, nous examinerons les moyens pour remonter toutes les erreurs dès la première validation en commençant par la solution la plus Java possible en utilisant la JSR 303 Bean Validation. Après avoir vu les avantages et inconvénients de cette approche, nous essayerons de construire un programme plus fonctionnel. Petit à petit nous ferons émerger des abstractions et nous déboucherons sur une version purement fonctionnelle de la résolution de ce problème.

Ce talk est fait pour les développeurs Java ou Kotlin qui veulent rendre leur code plus fonctionnel. Par conséquent, il nécessite une connaissance de Java et des bases de Kotlin ou Scala. Si vous connaissez déjà Scala et Cats, ne vous attendez pas à apprendre beaucoup.

Référence CfP : https://github.com/ToulouseJug/call-for-paper/issues/27

Vidéo :

Voici les vidéos de la soirée de mai où nous avons eu la chance de recevoir deux membres de l’équipe “core” de JHipster qui nous ont parlé de leur projet !

Nouveau matos !
Grace à nos sponsors, nous avons pu nous permettre de remettre un petit peu à jour notre matériel de captation. Un prochain article détaillera nos nouvelles acquisitions mais en attendant:
merci Ippon, merci MonkeyPatch ! 🥳

Présentation JHipster - par Hippolyte Durix (@hdurix)

JHipster est une plateforme de développement Open Source permettant de générer, développer et déployer des applications web : * Spring boot et Angular ou React ou depuis peu Vue.js * Dans une application monolithique * Ou suivant le pattern microservices

Offrant des dizaines d’options qui vous permettent de générer une application adaptée à vos besoins et vos envies, JHipster porte une attention toute particulière à l’expérience du développeur et à la qualité du code généré.

Vidéo :

Blueprint: Un JHipster à votre image - par Anthony Viard (@avdev4j)

Vous connaissez tous Sam ? Vous savez Sam est celui qui conduit et qui ne boit pas. Et bien figurez-vous que Sam est aussi celui qui ne code pas.

En effet Sam gère des équipes de développement qui prennent en charge le développement de projets web au sein d’une grande entreprise française.

Mais Sam doit évoluer dans un contexte contraignant tout en ayant pour objectif d’offrir à ses équipes de l’innovation et de l’efficacité autour d’un socle technique commun. Mais Sam ne sait pas comment faire…
Aujourd’hui il existe LA solution pour Sam : Le module Blueprint de JHipster.

Si JHipster peut lui permettre de générer rapidement des projets, le module Blueprint, lui, va lui permettre de redéfinir certaines étapes afin d’obtenir des applications à l’image de sa société.

Au travers d’une présentation et d’une démonstration du Blueprint nous allons aider Sam à se doter de son générateur d’application innovant et performant. Nous allons l’accompagner afin de gagner en cohérence technique, de proposer des outils ayant un sens pour ses équipes et de réduire son time to market.

Vidéo :

Les résultats du sondage Stack Overflow 2019 viennent d’être dévoilés, mais franchement vous avez mieux à faire, puisque les résultats du sondage Toulouse JUG 2019 sont arrivés !

ATTENTION Les graphiques présents dans cet article pourraient mal s’afficher sur certaines résolutions d’écrans, les appareils mobiles notamment.
N’ayant pas le courage de me battre avec le CSS, je vous conseille plutôt de changer d’écran si vous souhaitez consulter les graphiques de façon détaillée.

Après un démarrage en trombe à prés de 80 entrées dans les 3 premiers jours, les réponses se sont faites rares jusqu’à un petit sursaut lors de la dernière soirée d’avril qui nous a permis d’atteindre les 101 soumissions.
Le sondage ayant été communiqué pendant les soirée, sur Twitter et même sur le groupe Meetup qui compte plus de 1300 inscrits, on est en dessous des 8% de réponses, mais c’est cohérent avec le taux d’inscriptions par soirée.

C’est dommage pour les ≈1200 qui n’ont pas souhaité répondre…

La domination du grand nombre par le petit nombre, nous l’appelons tyrannie :
la domination du petit nombre par le grand nombre est tyrannie aussi, mais d’une nature moins intense.
- Herbert Spencer

Ou pas ? ¯\(ツ)

Cohortes, fréquentation et questions générales

Fréquentation

La majorité des votants déclare venir le plus souvent possible aux soirée du JUG.
La seconde réponse la plus exprimée, très proche en nombre de voix, concerne les personnes indiquant venir aux soirées lorsque le sujet les concerne directement : pour nous c’est un fait marquant qui signifie qu’il faut que les sujets que nous programmons restent le plus souvent possible au plus prés des considérations pratiques de notre travail de tous les jours.

JamaisParfois, quand Netflix est downQuand le sujet concerne directement monjobLe plus souvent possibleJe ne rate jamais une soirée39.6%32.7%15.8%

16% sont plus cyclothymiques, et prés de 11% déclarent de jamais venir.
Sur ce total de 27%, la raison principale évoquée (à quelques variantes prés) est l’indisponibilité ou des contraintes d’emploi du temps.

Le point positif pour le JUG, c’est qu’aucune de ces personne ne déclare ne pas/plus venir ou venir seulement “parfois” en raison des choix des sujet ou de la qualité des présentations. 🥳

Quelques réponses “inline” à des messages reçus :

  • “Car c’est le mardi” : et bien non pas toujours !
  • “J’ai très peu de notifications pour les rencontres du moins par mail…” :
    d’autres personnes, à d’autres questions, ont répondu avoir des difficultés à avoir les infos via la mailing-list. Je vous invite à vérifier les paramètres de vos boîtes de réception et filtres de SPAM, parce que les soirées y sont toujours annoncées, des rappels pour les inscriptions avant échéance aussi, et les liens vers les vidéos y sont postés également à posteriori.
  • “le lieu, et surtout vous n’êtes pas le seul meetup digne d’intérêt parfois les horaires et les dates rendent les choses impossibles : vous devriez les broadcaster” :
    en effet, l’offre de meetups sur Toulouse est large, et c’est une bonne chose, mais le JUG est une institution 😁.
    Concernant le lieu et le broadcast : on en reparle plus bas.

Cohortes

La répartition par age est très intéressante de notre point de vue puisque même si elle est très proche de ce à quoi nous nous attendions, elle contraste d’avec celle de Stack Overflow.

Toutes proportions gardées bien sûr, puisque le sondage SO a recueilli prés de 90.000 réponses, mais la comparaison est intéressante.

J’ai entre020406015 et 20 ans20 et 25 ans25 et 30 ans30 et 40 ans40 et 50 ans50 et 60 ans

En effet, nous avons au JUG une population plus âgée (toute proportion gardée, encore une fois) avec une majorité de personnes entre 30 et 40 ans là où ils ne représentent que 40% des votants chez SO.
Le nombre de votants SO de plus de 40 ans représente péniblement 12% du panel, là où nous atteignons prés de 25%.
À l’inverse, les 20-30 ans sont à peine plus représentés que les plus de 40 ans au JUG, alors qu’ils forment l’écrasante majorité des votants chez SO.

Fréquence des soirées

Selon la majorité des votants, une soirée par mois est un bon rythme. Cela nous conforte dans nos efforts de re-dynamisation du JUG en maintenant le cap actuel.

L’overdose : je préfèrerais une soirée partrimestreTrop : une soirée tous les deux mois ceserait suffisantLe bon rythme.Limite : j’aimerais plutôt toutes les 3semainesLa zone : j’aimerais plutôt deux soirées parmois19.8%68.8%

Que les personnes qui ont voté “Trop” ou * “Overdose” se rassurent, il leur est possible de ne pas venir ! 😂

Pour les personnes ayant voté “Limite” ou * “La zone”, merci pour vos encouragements, on augmentera peut-être la fréquence des soirées dans les mois à venir, mais pour le moment tout le monde est déjà pas mal occupé à garder cette vitesse de croisière.

Horaires

Ici encore, la majorité des votants déclare être satisfait des choix actuel des organisateurs. Si l’on ajoute à ceux-là les 21% qui arrivent avec le quart d’heure toulousain, qui est de mise dans notre contrée, et compte-tenu du fait que le début de soirée est consacré à l’introduction et éventuellement à un mot d’un sponsor, on obtient un score satisfaisant en l’état.

020406080Trop tôtLimite : on arrive avec le quart d’heur…ParfaitTrop tardBâtard : bouchons, gosses àcoucher, br…6 (5.9%)21 (20.8%)67 (66.3%)5 (5%)12 (11.9%)

Sessions tardives

L’idée de proposer des sessions tardives a germé suite à une discussion avec un des orga du Toulouse Rust Meetup.
Je ne sais plus trop pourquoi on en est arrivé à parler de ça, mais l’idée m’a semblé bonne pour permettre notamment aux parents de faire “le relais” avec leur moitié ou leur babysitter (ou leur “c’est compliqué”).

OuiNon70%30%

La grosse majorité des votants se propose donc en défaveur de sessions tardives.

L’a priori que j’avais en postant cette question est qu’il y aurait une corrélation forte entre personnes qui ne viennent que “parfois” ou jamais, en raison des horaires et les personnes intéressées par des sessions tardives.

Et bien par du tout. Sur les 5 personnes ayant répondu qu’il souhaiteraient des soirées tardives systématiquement (déjà je m’attendais à plus), seulement 2 déclarent ne venir que “parfois”, deux viennent “le plus souvent possible” et une “quand le sujet concerne son job”.

SystématiquementDe temps à autre12.5%87.5%

Et alors là, joie du sondeur : pour 30 personnes ayant répondu “Oui” aux sessions tardives, nous avons 40 réponses à la question “Si oui, quand ?” 🤣
Heureusement, les 10 boulets ont répondu “De temps à autre” et pas “Systématiquement” !

Note du relecteur qui est probablement un boulet: quand on a des réponses incohérentes dans un sondage, c’est que les questions sont mal posées !

Réponse de l’auteur au relecteur : en toute mauvaise fois, c’est impossible !

Le lieu actuel

Voici le genre de résultat qui me fait regretter d’avoir laissé la possibilité de botter en touche avec l’option “Pas d’avis”.

C’est :02040Trop proche du centre villeLe juste milieuPas assez proche du centre villePas d’avis

Difficile de déduire quoi que ce soit de ce graphique si ce n’est qu’il y a plus de personnes qui considèrent ce lieu comme trop loin, que de personnes qui le considèrent trop proche du centre ville. Un quart des sondés trouve l’emplacement adéquat ; quant à la majorité, qui n’a pas d’avis sur la question, dans quel(s) camp(s) se répartirait-elle si elle avait été forcée de prendre position ? Mystère.

On notera également que seulement 19% de sondés trouvent le lieu facile d’accès. 9% le trouvent difficile d’accès, et 69% le trouvent “c’est chiant mais ça se fait”. On a donc un boulevard devant nous pour chercher à améliorer la situation.

Par ailleurs, la majorité des gens déclare venir au JUG en voiture/moto (55%) et/ou en transports en commun (55%), quand 6% nous font savoir qu’ils se déplacent aussi à dos de poney.
On en déduit donc que dans l’éventualité d’une délocalisation du JUG, l’idéal serait un lieu proche d’un parking et des transports en commun (et d’une étable).
Merci de nous faciliter la tâche !

Suggestion trouvée dans les réponses : “à distance” -> On en reparle plus bas.

En contre-partie, 90% des votants trouvent le confort de la salle satisfaisant.

123450102030402 (2.3%)6 (7%)36 (41.9%)34 (39.5%)8 (9.3%)

Et deux personnes n’ont pas sû comment voter :

  • “ahem de 1 a 5 …. question 1 c’est le mieux ou bien c’est 5 ?”
  • “le confort 1 c’est bien ou c’est nul ?”

J’en déduis donc qu’elles n’ont jamais lu Télérama ni utilisé Google Reviews, Trip Advisor, Yelp, Netflix ou autre système de note à points 🤣.

Autres remarques :

  • “Par web conference ?” : Encore une fois, on en reparle plus bas.
  • “Porte toujours fermée avec tout un folklore pour entrer.” : mille fois oui, la porte a été mentionnée plusieurs fois, on est conscient de ce problème…

Changer de lieu

Encore une fois je me mords les doigts d’avoir laissé la possibilité de botter en touche avec la réponse D (≅”Pas d’avis”).

Changer de lieu ?010203040Oui par pitiéNon c’est très bienFaire un roulementLa réponse D

Dans l’échantillon des personnes ayant répondu “La réponse D”, la répartition entre “Top”, “Difficile d’accès” et “Un peu chiant mais ça se fait” est la même que sur le panel global.
Dans l’échantillon des personnes ayant répondu “Non c’est très bien” on retrouve une plus grande proportion de personnes ayant répondu “Top” mais toujours une majorité de “Un peu chiant mais ça se fait”.

En faisant l’échantillonnage inverse, on constate que :

  • Les personnes ayant répondu “Top” votent à peu près à 63% pour “Non c’est très bien” et 31% pour “La réponse D”.
  • Les personnes ayant répondu “Difficile d’accès” votent à peu près à 40% pour “Oui par pitié” et “La réponse D” et 20% “Faire un roulement”
  • Les personnes ayant répondu “Un peu chiant mais ça se fait” votent à peu près à 34% pour “Faire un roulement”, 42% pour “La réponse D”, 18% pour “Non c’est très bien” et 4% pour “Oui par pitié”.

Si quelqu’un arrive à déduire quoi que ce soit de ces résultats, qu’il/elle me le fasse savoir, j’ai atteint mes limites. J’ai l’intuition que ce lieu peut se résumer en un mot : “Meh”, il ne fait pas l’unanimité chez nos membres votants.
D’un autre côté trouver un lieu qui pourrait faire l’unanimité n’est pas du gateau.

Hypothétique nouveau lieu

Concernant la localisation, d’après ce que je lis, aucun consensus ne se dégage non plus.
Une majorité de votants préférerait un lieu dans le centre ville, et “le Sud” de façon générale récolte plus de suffrages.

Pour ce qui est des locaux, pas de grand gagnant non plus, les votes sont répartis de façon à ne pas nous aider à décider pour une typologie en particulier :

Plutôt0102030Un espace de coworkingLes locaux de boîtes accueillantesDans une autre école/fac

Dans les remarques sur un hypothétique futur lieu, HarryCow, IoT Valley et l’N7 ont été mentionnés.
Un petit rigolo a proposé la Salle des Illustres… Si cette personne a des contacts bien placés à la mairie, elle peut me contacter via Twitter !

Et enfin le récurrent “une teleconference?” : je n’ai pas vérifié si c’était la même personne à chaque fois, mais, encore une fois, on en parlera plus bas.

Le format

Formats courts

Les short-talks et conférences sont nettement en tête. Ça tombe bien, c’est déjà ce qu’on essaie de faire.
Arrivent derrière, dans un mouchoir de poche les lightning-talks, unconferences et les quiz.
Et entre les deux, les ateliers.

020406080100Lightning (<8mn)Short (<15mn)ConférenceUnconferenceAtelier/WorkshopQuizune 1ère partie courte et untruc plus …Kamoulox17 (16.8%)63 (62.4%)89 (88.1%)18 (17.8%)47 (46.5%)18 (17.8%)1 (1%)1 (1%)1 (1%)1 (1%)

La fréquence la plus sollicitée pour les lightning/short-talks est “De temps en temps”.

Quiz

Les quiz sur un format court (≃15mn) sont préférés à un format long (≃45mn) et un consensus se forme sur 1 soirée sur 2 ou tous les trimestres, et entre deux présentations (plutôt qu’avant/après).
Concrètement, je pense qu’on va tenter un petit 15mn tous les trimestres pour commencer, et on verra les retours que l’on a.

Les chiffres nous montrent également que la plupart de nos membres sont plutôt pour faire des quiz, et la moitié (un peu plus en fait) des personnes favorables préfère qu’il y ait un enjeu (cadeaux, goodies à gagner).

Conférences

Concernant les conférences, pas de consensus non plus.

Plutôt0204025mn30mn40mn45mn50mn1h1h302h

On a une jolie courbe de Bell et grosso-modo des conférences de 45mn ou 1h semblent satisfaire. Les présentations sur 30mn tirent leur épingle du jeu, quant aux formats plus longs, ils sont plutôt boudés.

Ateliers

92,3% des 91 votants préfèrent que le JUG se cantonne au domaine de l’IT au détriment du “WTF”. Tant pis pour l’ouverture des chakras.

Sondages

L’idée de sondages bien geeks semble intéresser la majorité des votants.

OuiNon15.7%84.3%

On va voir ce que l’on peut faire pour eux. Les autres n’auront qu’à ne pas répondre ¯\(ツ)

Les sujets

Le CfP via Github satisfait 73% des votants. 26% votants trouvent ça “Ok mais peut mieux faire” et deux personnes trouvent ça “Nul”, malheureusement personne dans ces deux catégories n’a proposé d’alternative, on va donc garder Github pour le moment.

En ce qui concerne les thématiques, niveaux et profil des speakers en revanche, cette catégorie permet de dégager des tendances plus marquées.

DébutantIntermédiaireConfirméMaintstreamNicheAcadémique02040JamaisRarementDe temps en tempsSouventIl existe autre chose ?!

(“Académique” ressemble trait pour trait à “Mainstream” et “Niche”, je ne me suis donc pas bagarré avec le CSS pour le faire apparaître ici… Ceci dit, 3 personnes ont voté “Académique”/“Il existe autre chose”, et quelque chose me dit que je connais les noms de ces joyeux lurons, et qu’ils se reconnaîtront également.)

On a donc une forte demande de tous les niveaux “De temps en temps” et une petite préférence pour avoir “Souvent” des présentations de niveaux intermédiaires ou confirmés.

À noter également un petit pic de “Jamais” et de “Rarement” pour les sujets de niveau débutant. Mais la tendance n’est pas très prononcée, et puisque le JUG symbolise surtout le partage nous allons continuer à varier les niveaux et prendre soin d’accueillir les débutants avec des sujets adaptés à leur niveau.

Côté profil des speakers, une seule tendance se dégage : que ce soit “Young blood”, “Usual suspects”, “Stars” ou “non-Stars”, les réponses sont peu ou prou “un peu de tout, de temps en temps”.

La dernière question de cette section “Speakers/Talks que j’aimerais voir au JUG” a bien évidemment donné lieu à toutes les folies, parmi les pépites (les bonnes idées je les garde pour moi) :

  • “Martin Fowler”
  • “Jake Wharton”
  • “Magit”

Et bien sûr le bon vieux troll velu : “Arnaud Bos”. Merci, merci, si je trouve le temps j’y penserai 😅

Communication

Cette partie du formulaire avait pour objectif de cerner les attentes des “followers” du JUG et les efforts à fournir par l’équipe pour s’assurer que les infos/news circulent bien jusqu’aux membre.

Tout d’abord les canaux de diffusion :

020406080FacebookTwitterMastodonNewsletter/Mailing listSlack des communautés TlseMeetupsmsgoogle groupYinks7 (6.9%)52 (51.5%)2 (2%)38 (37.6%)27 (26.7%)79 (78.2%)1 (1%)1 (1%)1 (1%)1 (1%)

En tête on retrouve sans trop de surprise le site Meetup et le compte Twitter, suivis par la mailing-list (Google Group) et le Slack “des communautés”.

Comme un relecteur attentif me l’a fait remarquer, l’absence de surprise est d’autant plus marquante que le biais de sélection est important : les personnes ayant répondu au sondage l’ont fait après en avoir été informé via ces mêmes canaux de communication…
Ces résultats ont donc peu de valeur si ce n’est de confirmer que la plupart des gens utilisant déjà ces moyens de communication les trouvent à leur goût.

Dans l’ensemble, les votants semblent plutôt satisfaits par la fréquence de communication du JUG, ni trop peu, ni trop de spam.

Enfin, l’utilisation de Meetup pour les inscriptions plaît à 85% des votants, et les 15% restants n’ont pas proposé d’alternative, on va donc s’en contenter également.

Captation

De ce côté, les avis sont assez tranchés :

Vidéos sur YoutubePhotos de l’événement020406080InutileIndispensablePas d’avis (Ouép/Meh)

Les vidéos sont importantes pour 72% des votants, mais les photos n’emballent pas les foules. Pourtant si la vidéo va rester un élément important de nos productions (je tiens par avance à m’excuser de la qualité des vidéo à venir de la soirée d’Avril…), j’aimerais faire un effort supplémentaire pour avoir des photos correctes des événements que nous organisons, car c’est important pour nous en terme de communication et je pense que cela peut avoir une forte valeur ajoutée pour trouver des sponsors.

Dans l’ensemble la qualité des vidéos semble satisfaire, mais un petit pourcentage la trouve insuffisante, et malheureusement, j’en fais partie !

Quelques réponses au passage :

  • “Lors des questions de fin de sa préz’, le/la speaker doit répéter la question avant d’y répondre (bah sinon on sait pas à quoi il répond)” :
    oui je suis d’accord, mais si le speaker n’y pense pas, je ne vais pas l’interrompre, priorité au public présent 😉
  • “Un petit mail sur le forum avec le lien serait le bienvenu” : c’est déjà le cas.

Délai de publication

Je dois l’avouer, cette question était en fait rhétorique…

Dans l’idéal0102030Le lendemain de la soirée1 semaine après la soiré2 semaines après la soiré

La réponse “Le lendemain de la soirée” était à la limite du troll, et désolé pour les 16 personnes qui l’ont sélectionnée : ça n’arrivera pas 😅

C’est trop de boulot d’organiser les soirées (de façon générale, pas besoin de rentrer dans les détails) pour en plus assurer la post-production dans la foulée : le lendemain, je me repose.

Les réponses “1 semaine après” et “2 semaines après” me semblent beaucoup plus raisonnables, et de toute façon, la bonne réponse était la colonne bleue : “Quand tu peux mon vieux”.
À tous ceux qui ont coché cette réponse, je vous aime.

Et enfin, la voici la voilà, l’Arlésienne des réponses que vous attendiez tous depuis le début !

Mais pourquoi diable ne fait-on pas de téléconférence ou de live-stream ?!

La réponse est liée aux points ci-dessus : trop de boulot. Et oui, certains ne s’en rendront pas compte, mais c’est le cas. Et ce n’est pas tout.
Lors de ma première soirée en tant qu’orga du JUG, en décembre, le live-stream via Youtube a merdé. Et oui. Bon, c’était ma faute, j’avais oublié de passer le stream de “privé” à “public” 😅

Mais quand le speaker, après la session de Q&A est venu me voir pour me dire que ce serait pas mal que je supprime certains passages de ses réponses de la vidéo, pour des raisons légales, et bien on était bien contents tous les deux que ça n’ait pas été diffusé en direct et que je puisse le faire en post-production.

Moralité, le live-stream c’est : de la logistique supplémentaire, du stress supplémentaire si ça ne marche pas, l’impossibilité de gérer le genre de cas mentionnés plus haut, et une plus-value très limitée.

Conclusion

Je zap la question sur les goodies parce que cet article est déjà bien trop long et que je me garde les résultats pour éventuellement faire des surprises pendant les prochaines soirées.

Quelques pépites pour la forme :

  • “un macbook pro 2015”
  • “Bloqueur de rfc pr cb ;)” : si quelqu’un comprend ce que dit cette personne, mes DM sont ouverts !
  • “Des MacBook pro dédicacés,avec le log JUG gravé dans l’alu.”
  • “Une moto du jug”

Enfin, la section qui fait plaisir, “As-tu des remarques pour le JUG ? Ou peut-être une réponse à une question qui n’a pas été posée ?” :

  • “Merci pour votre taff les gars :)”
  • “merci :)”
  • “Merci à tous de votre travail/implication.”
  • “Continuez, c’est cool !”
  • “Quoiqu’on en dise, ce que vous faites est super!”
  • “Pas de question. Vous faites de votre mieux les gars et je vous en remercie :) “

Et mon préféré :

  • “Q: Es-tu satisfait du JUG ?
    R : Yep. Merci pour votre investissement et le temps que vous y passez.
    Q : Qu’est-ce qu’il y connaît Rick Hunter aux femmes ?
    R : Rien.”

Merci à tous ❤️

Et voici les vidéos de la soirée d’avril où il a été question de Micronaut et des boucles for et autres patterns d’itération/récursion.

Je tiens à vous prévenir : la qualité des vidéos de cette soirée laisse à désirer…

Mea culpa :

  • le son n’est pas aussi clair que ce que nous avons pu obtenir par le passé, c’est parce que j’avais oublié un cable crucial pour l’installation : mon cable TRRS.
  • de plus, la soirée s’étant déroulée dans une salle différente de celle qui nous est habituellement mise à disposition, j’ai eu quelques problèmes de mise en place de la caméra (angle) ainsi que des problèmes d’éclairage.

La deuxième présentation en particulier a subi plusieurs retouches en post-production, notamment au niveau de l’exposition et de la saturation, pour un résultat assez décevant. Rassurez vous, la qualité du contenu est au rendez-vous 😃

Le point positif, c’est que si la qualité de ces vidéos est en dessous de celle de nos productions habituelles, ces deux présentations étaient des répétition avant qu’elles ne soient données par leurs auteurs à de plus grands événements :

  • Olivier présentera Micronaut dans un Tools in Action à Devoxx France
  • Igor reparlera des boucles for et de flatMap à SunnyTech

Micronaut, le framework JVM ultra-light du futur - par Olivier Revial (@pommeDouze)

Temps de démarrage proche de la seconde, empreinte mémoire de 10MB, pas de réflection, approche “cloud native” : autant de caractéristiques qui font du framework Micronaut le compagnon idéal de développement de vos microservices Java/Kotlin.

Si des frameworks comme Spring Boot ont grandement facilité l’écriture d’applications en permettant de générer des applications standalone et auto-configurées, ils souffrent néanmoins de l’historique Spring et de sa “lourdeur”. En effet, l’injection de dépendances au runtime et la réflection rendent plus longs les temps de démarrage et font grossir l’empreinte mémoire de nos applis.

En partant de 0, Micronaut prend le contre-pied de ses prédécesseurs en se passant de la réflection et en utilisant la “Ahead-Of-Time compilation” pour des temps de démarrage en dessous de la seconde !

Pensé de base pour supporter et faciliter le développement de microservices et d’applications serverless, Micronaut offre par défaut le support de nombreux providers et outils cloud, il permet l’écriture d’applications réactives, il rend les applications facilement testables… bref, il apporte tout ce dont on a besoin pour développer des applications modernes !

Cette présentation sera un live-coding pour montrer les principales fonctionnalités et les principaux points forts du framework Micronaut.

Vidéo :

Référence CfP : https://github.com/ToulouseJug/call-for-paper/issues/32

🏋️‍️ Refactoring sans les for - par Igor Laborie (@ilaborie)

Peut-on se passer de la bonne vieille boucle for ? Il est toujours intéressant de creuser les alternatives comme les Stream, ou d’autres options. Mais le plus important c’est de savoir quand il fuir cette instruction. Ou pas !

Au quotidien, les boucles sont les briques de base de notre code. Mais on oublie souvent les alternatives comme l’API Stream, la récursivité… C’est toujours bénéfique de prendre du recul sur le code que l’on écrit, pour analyser ce qui peut être amélioré. Les alternatives sont elles plus lisibles ? Plus maintenables ? Plus performantes ?

Ici on se contentera de regarder ce qui se passe en Java, avec quelques incursion coté Kotlin et Scala. Mais le propos s’adapte aux autres langages de programmation.

Vidéo :

Référence CfP : https://github.com/ToulouseJug/call-for-paper/issues/24

Pendant cette soirée, nous avons discuté d’Apache Kafka et de la Programmation Orientée Aspect.
L’un est un sujet relativement récent et à la mode dont tout le monde parle, l’autre un sujet qui existe depuis des années et dont on ne parle pas assez. J’espère que vous apprécierez.

Easy Kafka comprendre les concepts et jouer avec facilement - par Mikael KROK (@mikaelkrok) & Romain Chartier (@romlinch)

Kafka Starter Kit : marre de revoir les mêmes conférences et envie de mettre les mains dans le cambouis facilement? On vous propose une révisions des concepts (donc débutant accepté) puis de d’utiliser notre framework pour démarrer kafka en mode test unitaire.

On montre les concepts puis on montre notre framework qui permet de lancer kafka dans les tests unitaires > on évite les soucis de persistance des messages et on commence à mieux saisir les concepts.

Vidéo :

Référence CfP: https://github.com/ToulouseJug/call-for-paper/issues/21

Introduction à la Programmation Orientée Aspect - par (@)

Présentation de la programmation orientée aspect : concepts, vocabulaires, exemples avec AspectJ/Spring et CDI.

Vidéo :

Référence CfP: https://github.com/ToulouseJug/call-for-paper/issues/26

Grosse soirée ce jeudi au JUG toulousain ! Nous avons l’événement à une présentation du modèle d’Acteurs.
Le talk d’une durée théorique d’une heure et demi à légèrement débordé, mais c’est largement dû aux multiples sessions de Q&A (ou “breakpoints”) qui ont eu lieu pendant la présentation afin de permettre au public présent de mieux suivre, ou de raccrocher les wagons ^_^

Acteur, un modèle élégant pour le calcul concurrentiel et distribué - par Didier Plaindoux (@dplaindoux) & Alessio Coltellacci (@lightplay8)

Avec l’avènement des architectures multi-cœurs, nous avons besoin de moyens pour les exploiter. Généralement, cela se fait à l’aide des threads natifs et de primitives de synchronisation qui conduisent généralement à des solutions difficiles à mettre en oeuvre et à des problèmes pour appréhender le calcul.

Explorons une approche différente: le modèle de l’acteur, un modèle conceptuel pour traiter le calcul concurrentiel.

Par le biais de la conception d’un jeu vidéo nous illustrerons:

  • ce qu’est un acteur,

  • leurs interactions sans partager la mémoire,

  • la communication entre acteurs dans un système distribué et

  • comment avoir un système distribué tolérant aux pannes.

Vidéo :

Référence CfP: https://github.com/ToulouseJug/call-for-paper/issues/17

Pour le début de l’année 2019 on a décidé de prendre de bonnes résolutions et d’écrire des tests.
Mais avant cela, on a droit à une petite introduction à une nouvelle plateforme d’apprentissage et de mentoring:

Découverte de Exercism - par Lidonis Calhau (@lidodo)

Exercism est une plateforme pour la pratique du code avec mentorat. Le site permet de s’exercer presque 50 langages.

Je souhaite faire découvrir au plus grand nombre ce site que je trouve excellent.

Vidéo :

Référence CfP: https://github.com/ToulouseJug/call-for-paper/issues/16

Présentation du Framework de test Spock - par Rémi Navarro (@NavarroRemi)

Le but est de découvrir un autre framework que Junit afin de réaliser les tests de votre application “java”.

Cette présentation permet également de faire une courte introduction au langage groovy.

Vidéo :

Référence CfP: https://github.com/ToulouseJug/call-for-paper/issues/14

Une batterie de test pour du code Legacy en quelques minutes avec Approval Test - par Gaspard POINTEAU (@Gaspard_PO)

Une appli legacy, on ne sait pas exactement ce qu’elle fait, et elle peut prendre plusieurs paramètres en entrée, ayant plein de valeurs possibles.
Mais il est indispensable de la tester avant de refactorer.

Donc on va voir comment générer un gros paquet de tests de non-regression en quelques minutes.

Vidéo :

Référence CfP: https://github.com/ToulouseJug/call-for-paper/issues/18

On termine l’année 2018 en beauté avec deux sujets sur le thème d’Apache Camel :

Apache Camel - par Emmanuel Vinel (@EmmanuelVinel)

Interconnecter des applications , des services tiers ou des processus au sein d’un SI est un besoin récurrent et pas nouveau.
Dans cette présentation, nous allons aborder une solution possible le framework Apache Camel.

Dans un premier temps, nous retournerons aux basiques : Les EIPs.

Puis nous évoluerons sur l’implémentation avec Apache Camel pour adresser un processus plus complexe.

Nous terminerons par quelques mots sur l’architecture micro-services et apache Camel.

Vidéo :

Référence CfP: https://github.com/ToulouseJug/call-for-paper/issues/15

Outils pour le développement de Projet d’intégration Apache Camel/Red Hat Fuse : du profil technique au profil business - par Aurélien Pupier (@apupier)

Nous verrons l’ensemble des outils de développement existant pour développer des projets d’intégration basé sur Apache Camel.

Nous verrons comment ces différents outils adressent des profils variés et comment ils interopérent pour mener à bien le développement du projet.

Vidéo :

Adresse : EPITECH 40 Boulevard de la Marquette 7eme étage · Toulouse

Nouvelle soirée du Java User Group Toulousain. Nous allons plonger, à l’aide d’Emmanuel VINAS et Igor LABORIE, dans l’univers Kotlin.

Comment aborder un nouveau langage ?

Les uns répondent en codant, les autres en regardant son fonctionnement en détail.

Pour le programme plus en détail, référez-vous aux informations de l’événement meetup.

Adresse : EPITECH 40 Boulevard de la Marquette 7eme étage · Toulouse

Nouvelle soirée du Java User Group Toulousain.

Arnaud Tournier vient nous présenter les technologies blockchain.

Bitcoin, Ethereum, systèmes décentralisés, crypto-monnaie,…

Cette présentation est l’occasion de faire le point sur ce qu’est une blockchain du point de vue du développeur.

Nous y présenterons de manière générale les​ ​grands principes : échanges peer-to-peer, les blocks et le minage, les transactions, la gestion des adresses et des clés cryptographiques,…

Puis un focus sur la plateforme Ethereum,​ ​et notamment le développement de Smart Contract et d’applications décentralisées.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : Epitech 4e étage !

Nouvelle soirée du Java User Group Toulousain. Nous allons vous faire découvrir, avec l’aide de Thomas SEGISMONT (@tsegismont sur twitter) , le toolkit Vert.x afin de faire des applications réactives.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : Epitech 4e étage !

Nous découvrirons ce soir la programmation en Lisp sur la JVM avec Arnaud Bos. Florian Beaufumé, quant à lui, nous présentera la programmation réactive dans un contexte Spring 5 et Reactor.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : A définir

Pour cette nouvelle soirée du Java User Group Toulousain, nous allons rentrer dans les entrailles de notre plateforme préférée avec Sylvain Wallez (@bluxte) aux commandes.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : A définir

Cet évènement sera l’occasion de découvrir les solutions de programmation concurrente dans l’univers Java , des plus simples telles que Thread, synchronized ou Executor, au plus avancées comme StampedLock, fork/join ou CompletableFuture.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : A définir

Cet évènement sera l’occasion de découvrir les dernières nouveautés autour d’Eclipse. Venez échanger avec d’autres utilisateurs et rencontrer les contributeurs Eclipse.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : Harry Cow ( 13 rue sainte Ursule, Toulouse (Plan).

Nous avons l’honneur en ce début du mois de février de recevoir Sébastien Deleuze, qui travaille chez Pivotal dans l’équipe de développement de Spring Framework.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : Epitech Toulouse (cf. lien pour adresse exacte, attention l’Epitech a plusieurs sites) (Inscrivez vous).

Les 2 présentations de la soirée :

• Behavior-Driven-Dev­elopment (alias BDD), Shoun Ichida

• Unicode, Frédéric Cabestre

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : Epitech Toulouse (cf. lien pour adresse exacte, attention l’Epitech a plusieurs sites) (Inscrivez vous).

Les 3 présentations de la soirée :

• Développer des applications Angular 2 100% en Java 8, Arnaud Tournier, 30 minutes • Annotation Java vs. Decorator Python, Didier Plaindoux, 20 minutes • BlueOcean, aperçu rapide de la nouvelle IHM de Jenkins, Baptiste Mathus, 10 minutes

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : Epitech Toulouse (cf. lien pour adresse exacte, attention l’Epitech a plusieurs sites) (Inscrivez vous).

Présentation de Java EE, Micro Profile, TypeScript et Angular 2 avec Antonio Goncalves et Sébastien Pertus.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : Epitech Toulouse (cf. lien pour adresse exacte, attention l’Epitech a plusieurs sites) (Inscrivez vous).

Présentation de SonarQube avec deux développeurs de chez SonarSource, la compagnie éditrice de SonarQube, Nicolas Peru et Michael Gumowski.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : Epitech Toulouse (cf. lien pour adresse exacte, attention l’Epitech a plusieurs sites) (Inscrivez vous).

Présentation de Java 9 par Rémi Forax.

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

Adresse : Epitech Toulouse (cf. lien pour adresse exacte, attention l’Epitech a plusieurs sites) (Inscrivez vous).

Pour le programme plus en détails, référez-vous aux informations de l’événement meetup.

IMPORTANT: si vous avez envie d’animer un sujet particulier en plus de ceux indiqués, c’est tout à fait possible.

Signalez-vous le cas échéant.

Adresse : Epitech Toulouse (cf. lien pour adresse exacte, attention l’Epitech a plusieurs sites) (Inscrivez vous).

Au programme : une présentation du Workflow Plugin, une présentation du Job DSL Plugin et une présentation d’un retour d’expérience de près de 10 ans d’utilisation de Hudson/Jenkins + comment créer et gérer aujourd’hui une forge qui déboîte.

Cf. le lien Meetup ci-dessus pour les détails de chaque session.

Adresse : Epitech Toulouse (cf. lien pour adresse exacte, attention l’Epitech a plusieurs sites) (Inscrivez vous).

Java pattern matching: SuitCase, par Didier Plaindoux (30 min)

Etant jeune vous vouliez coder en OCaml et Haskell mais voila Java est partout dans l’industrie. Au revoir les lambdas et le pattern matching ! Stop les lambdas dans Java 8 c’est une réalité mais quid du pattern matching ?

Durant cette session je me propose de présenter un design du pattern matching par le biais d’un DSL fortement inspiré de Scala.

Nouveautés et limitations de JMS 2, par Florian Beaufumé (20 min)

Nous allons présenter les nouveautés de JMS 2, l’API Java de messaging, ainsi que ses limitations ou difficultés de mise en oeuvre.

Feign(ant) in action, par Igor Laborie (15 min)

Devant le succès des API REST, nous avons de plus en plus souvent besoin d’implémenter des clients REST en Java.

Feign est une alternative aux solutions plus classique comme http-client, fluent-hc, JAX-RS client (Jersey).

C’est une présentation du type LiveCoding.

Petite intro à Go, par Sylvain Wallez (30 min)

Le langage Go, créé par Google, est de plus en plus présent sur les logiciels d’infrastructure et serveur (Docker, Kubernetes, InfluxDB, Grafana, SyncThings, etc).
Un Java-iste peut devenir productif en Go en 2 jours (je suis passé par là).

La présentation fera une petite introduction au Go pour les Java-istes.

Adresse : Epitech Toulouse (cf. lien pour adresse exacte, attention l’Epitech a plusieurs sites) (Inscrivez vous).

WebSocket avec Java EE 7(Florian Beaufumé)

WebSocket est un protocole de communication récent apportant de vraies communications bi-directionnelles standardisées au web. Nous allons présenter ce protocole, son API JavaScript, l’API Java apportée par Java EE 7, ainsi qu’un retour d’expérience de développement d’application.

The Pluggable Annotation Processing API (Arnaud Tournier)

Avec le doux nom de JSR-269, cette API permet de traiter les annotations présentes dans le code en s’insérant dans le processus de compilation de Java. En ayant accès à l’AST du code, il est ainsi possible de générer du code en fonction des éléments annotés. Tout ceci sans impact sur le runtime ! Mal connue et peu documentée cette API est pourtant puissante et peut s’avérer très utile. Elle est au coeur d’outils comme Dagger, Lombok, Google Auto, Immutables, et d’autres. Nous allons découvrir son histoire et son utilisation. On va même essayer tout cela sur place !

Bio :

Florian Beaufumé est un architecte logiciel et spécialiste Java et web de 17 ans d’expérience. Il a créé sa société, Adeliosys, en 2007 et est depuis un consultant indépendant. Il a travaillé pour des grands comptes, des éditeurs de logiciels, des SSII et des startups dans les domaines tels que les banques, les assurances et l’aéronautique.

Arnaud Tournier est archi-dev depuis plus de 10 ans. Il est consultant dans son entreprise LTE Consulting et développe des produits open source sur github (ltearno).

Attention adresse différente: Epitech Toulouse 14 rue Claire Pauilhac (Inscrivez vous).

On n’est pas que des cobayes: ORM et NoSQL sont-ils solubles? (Emmanuel Bernard) 50min

Vous voulez savoir ce que la persistance dans du NoSQL implique dans une architecture Java?

Java est le fief de l’Orienté Objet où les ORMs poussent comme des champignons. Est-ce que les ORMs apportent encore des bénéfices dans le monde du NoSQL et de la persistance polyglotte? On discutera aussi le pourquoi et le comment du design de données dans le NoSQL.

Comme dans l’émission, On n’est pas que des cobayes, on tentera de faire cohabiter ORMs et NoSQL en y analysant le résultat.

Parmi les défis relevés, on pourra y voir:

  • Peut on survivre avec un seul produit NoSQL ?
  • NoSQL implique-t-il des cauchemardas de duplications de données?
  • JPA et NoSQL c’est comme faire rentrer une pièce ronde dans un trou carré?
  • Les ORMs ne peuvent pas abstraire proprement les modèles de données NoSQL?
  • Les ORMs c’est comme la nitro, ça booste les performances… ou pas?
  • Abstraire les langages de requêtage NoSQL, c’est trop difficile?.
  • Sans l’accès natif aux APIs NoSQL, point de salut?
  • Les ORMs n’apportent pas vraiment de valeur dans un monde NoSQL?

Venez discuter et débattre.

Hibernate BoF 20mins (Emmanuel Bernard)

On prendra le reste du temps pour discuter des autres projets Hibernate:

  • Qu’est-ce qu’Hibernate Search, quels sont les nouveautés?
  • Qu’est-ce qui se passe du côté d’Hibernate ORM?
  • Hibernate Validator, Bean Validation, quésako?
  • [insérer votre question ici]?

On fera ~ 55 min pour la première présentation et ~ 20 mins pour la BoF si ça rentre pour vous.

Multitenancy avec CDI/JPA et Spring/Hibernate (Florian Beaufumé 30min)

Les applications multi-clients, par exemple en cloud, isolent souvent les données de leurs différents clients. Il existe plusieurs stratégies de mise en oeuvre dont la multitenancy qui permet à une unique instance applicative de servir dynamiquement des données isolées de clients différents. Nous allons présenter le principe de multitenancy, ses variantes et montrer deux implémentations Java, l’une à base de CDI et JPA, l’autre à base de Spring et Hibernate.

Bio :

Emmanuel Bernard : https://emmanuelbernard.com/bio/

Florian Beaufumé est un architecte logiciel et spécialiste Java et web de 17 ans d’expérience. Il a créé sa société, Adeliosys, en 2007 et est depuis un consultant indépendant. Il a travaillé pour des grands comptes, des éditeurs de logiciels, des SSII et des startups dans les domaines tels que les banques, les assurances et l’aéronautique.

Attention adresse différente: Epitech Toulouse 14 rue Claire Pauilhac (Inscrivez vous).

Vous utilisez encore des requêtes SQL pour faire des recherches ? Vos utilisateurs vous reprochent de ne pas pouvoir chercher sur toutes les rubriques ? Votre temps de réponse moyen est supérieur à la demi-seconde avec seulement quelques millions de documents ? Il vous faut 3 jours pour produire des statistiques sur vos données ? Vous rêvez d’offrir une recherche “à la google” sur les données de votre SI ?

Ne cherchez plus !

David Pilato, évangéliste chez elastic.co, présentera au cours de la soirée pourquoi et comment il est passé de la recherche SQL à Elasticsearch en détaillant les apports de ce moteur par rapport à une solution pure Lucene.

Agenda:

  • Pourquoi Elasticsearch ?
  • L’indexation
  • La recherche
  • Les agrégations et le principe de navigation par facettes
  • La scalabilité horizontale
  • L’analyse et le mapping
  • La percolation
  • La communauté

Bio :

Depuis 2013, David Pilato est développeur et évangéliste chez elastic.co, après avoir passé les deux années précédentes à promouvoir le projet open-source Elasticsearch. Il en anime la communauté française.

@dadoonet et @ElasticsearchFR sur Twitter

dadoonet sur GitHub

Le programme de la soirée :

  • 18:30 - Mot de bienvenue du TDS et Toulouse JUG
  • 19:00 - ElasticSearch, par David Pilato
  • 20:00 - Apéro Pizza + Boisson/Bière

Cette soirée est organisée en partenariat avec le Toulouse Data Science http://www.meetup.com/fr/Tlse-Data-Science/

L’entrée est libre à toutes les personnes.

Attention les places sont limitées (50 pour le TDS, 50 pour le JUG), RSVP obligatoire.

MongoDB

Attention adresse différente: Epitech Toulouse 14 rue Claire Pauilhac (Inscrivez vous).

Le mouvement NoSQL offre des bases de données simplifiées et distribuables pour gérer plus facilement vos données semi-structurées et pour monter en charge horizontalement sur plusieurs machines. MongoDB est un moteur NoSQL solide et open source qui stocke les données en format JSON.

Il permet de gérer aisément de grands volumes de données et est devenu très populaire dans les communautés. Il est utilisé en production sur de nombreux sites tels que Foursquare, Bit.ly, SourceForge ou GitHub.

Tugdual Grall, Evangelist chez MongoDB, nous fera découvrir MongoDB et les applications possibles avec ce type de base de données. Voici le plan :

Première Partie : Presentation Générale de MongoDB

  • Architecture
  • Langage de requête et d’agrégation
  • Haute disponibilité et montée en charge
  • Management
  • MongoDB 3.0 : quoi de neuf?

Deuxième Partie : Développez votre première application

  • Les Drivers : Java, … et autres
  • Les frameworks et outils de mappings
  • Bonnes et mauvaises pratiques
  • Modélisation des données

Bio

Tugdual “Tug” Grall est technical Evangelist chez MongoDB, et un développeur passionné ! Il travaille actuellement avec les communautés de développeurs en Europe pour faciliter l’adoption du NosQL/MongoDB. Avant de rejoindre MongoDB, Tug a travaillé chez Couchbase (Technical Evangelist) , eXo Platform (CTO) et Oracle (Product Manager/Developer OracleAS JavaEE).

Vous pouvez le suivre sur twitter @tgrall

Cette soirée est organisée en partenariat avec le Toulouse Data Science http://www.meetup.com/fr/Tlse-Data-Science/

L’entrée est libre à toutes les personnes.

Attention les places sont limitées (50 pour le TDS, 50 pour le JUG), RSVP obligatoire.

Le programme de la soirée :

  • 18:30 - Mot de bienvenue et présentation du TDS et Toulouse JUG
  • 19:00 - Présentation par Tugdual
  • 20:00 - Apéro Pizza + Boisson/Bière

Jeudi 26 mars, nous organisons une soirée à cheval sur l’univers Javascript et Java, à partir de 18h30 à l’Epitech, au 40 boulevard de la Marquette (Inscrivez vous).

Yeoman logo

Yeoman par Matthieu Lux: démarrez le développement Web moderne

Un tour d’horizon des outils de développement Web moderne à partir du point d’entrée Yeoman qui permet de démarrer facilement un projet.
Yeoman est l’outil de scaffolding pour le Web moderne. C’est à dire qu’il permet de choisir les briques de votre application et vous initialise un projet fonctionnel.

Après une présentation de l’outil, je parlerai des principaux générateurs qu’il propose, c’est à dire, les différentes structures de projet ainsi que certains principes qu’il promeut sans forcément les implémenter concrètement.
Ces générateurs permettent de mettre en oeuvre un panel très important de technologies du développement Web et des meilleurs outils et frameworks. Nous passerons en revue les frameworks JavaScript MVC , les frameworks d’interface (ou UI), les outils de builds, les systèmes de gestion de dépendances, les langages alternatifs pour le JavaScript, le CSS et l’HTML, le processus de développement, les tests…

A chaque étape, nous parlerons des différentes alternatives, lorsque c’est possible, un exemple de code et / ou une rapide démo.

JHipster logo

JHipster par Julien Boulay: Vous allez adorer les barbus à lunettes

Si Jhipster est classé parmi les 3 générateurs Yeoman les plus populaires, ce n’est pas un hasard : il réunit les technologies les plus plébiscitées actuellement (par les développeurs Web/Java) : Spring Boot et AngularJS.

Après une rapide présentation du projet et des technologies sous-jacentes, je vous proposerai d’initialiser une application “prête à déployer”, en moins de 5 minutes.

Je terminerai par un retour d’expérience sur la mise en oeuvre de projets Spring Boot / AngularJS, avec et sans JHipster.

Matthieu Lux

Matthieu Lux

Développeur, formateur et responsable de l’offre Web au sein de l’agence lyonnaise de Zenika.
Après une solide expérience dans le monde Java, je suis focalisé aujourd’hui sur le monde du Web et du JavaScript. Plus précisément, mes technologies de prédilection sont actuellement Angular, Gulp, Yeoman, Node et React.

J’ai également donné un certain nombre de talks sur Angular au MixIt, mais aussi au DevoxxFR et même au ngEurope.
J’organise également le LyonJS, le meetup JavaScript de Lyon http://www.meetup.com/LyonJS/

J’ai enfin crée un générateur Yeoman generator-gulp-angular qui propose le démarrage de projets basées sur les technologies Angular & Gulp.

Julien Boulay

Julien Boulay

Développeur éclectique chez Ekito, accélérateur de Start-up, Toulouse
Pendant plus de 10 ans, j’ai exercé une double expertise fonctionnelle et technique dans le domaine du PLM (Product Lifecycle Management), pour de grands comptes industriels de l’aéronautique, de l’espace ou de la défense.

Aujourd’hui, je me suis tourné vers le développement d’application web/mobiles, l’agilité et l’accompagnement de start-ups.

Contributeur du projet JHipster, j’ai participé à l’intégration d’une nouvelle option pour son générateur Yeoman (Authentification stateless XAuthToken).

Mes hashtags : Docker, MongoDB, Spring Boot, Play!, NodeJS, AngularJS, Ionic.

Jeudi 11 décembre, nous organisons une soirée en partenariat avec le Cassandra Tour, à partir de 18h30 à l’Epitech, au 40 boulevard de la Marquette (Inscrivez vous).

Présentation de l’association Toulibre

L’association Toulibre qui défend les logiciels libres viendront se présenter pendant 30 minutes.

Introduction à Cassandra 2.1

Nous allons présenter Apache Cassandra 2.1 et son architecture. Nous montrerons comment la base de données peut garantir une scalabilité linéaire, une haute disponibilité tout en gardant un niveau de performance constant. Nous présenterons également le modèle de données sous-jacent et le language CQL pour vous permettre de faire vos premiers pas avec Cassandra.

Drivers et outils pour développeurs Java sur Cassandra

Pour cette deuxième partie de soirée, nous présenterons l’architecture du driver Cassandra, pour montrer comment il simplifie la vie des développeurs Java et les aide à être plus productif. Une sélection de quelques frameworks et outils seront montrés en démo live pour illustrer notre propos.

Duy Hai

Duy Hai est évangéliste technique pour Datastax, l’entreprise commerciale derrière la solution open-source Apache Cassandra.
Il partage son temps entre donner des présentations/meetups/talks sur Cassandra, développer sur des projets open-source pour la communauté et aider les projets utilisant Cassandra.

Avant Datastax, Duy Hai a été développeur freelance Java/Cassandra

Jeudi 20 novembre, nous organisons une nouvelle soirée sur la programmation réactive en Java 8, à partir de 18h30 à l’Epitech, au 40 boulevard de la Marquette (Inscrivez vous).

Warning : la conférence est en Anglais !

Going Reactive with Java 8

Les Lambdas de Java 8 facilitent la construction d’applications Réactives. A travers de nombreux exemples de code, cette session vous montrera comment construire des applications event-driven, scalables et résilientes avec Java 8, Play! Framework 2 et Akka.

Sur la partie web, vous apprendrez à utiliser les lambdas pour des requêtes asynchrones et non bloquantes, ainsi que les Websockets. Vous verrez comment les lambdas facilitent l’utilisation du modèle d’Actor avec Akka pour créer les fondations d’une application event-driven basée sur la concurrence, en cluster et fault-tolerant.

Vous retrouverez donc les sujets suivants :

  • Java 8 et lambdas
  • Play! framework
  • Akka et ses acteurs
  • Websockets
  • programmation réactive
  • event-driven

Nilanjan Raychaudhuri

Nilanjan Raychaudhuri is a consultant/trainer and member of Play framework team. He works for Typesafe. He has more than 14 years of experience managing and developing software solutions in Java, Ruby, Groovy and also in Scala. He is zealous about programming in Scala ever since he got introduced to this beautiful language. He enjoys sharing his experience via talks in various conferences and he is also the author of the “Scala in Action” book.

Jeudi 16 octobre, à partir de 18h30 à l’Epitech qui se trouve à présent au 40 boulevard de la Marquette, nous organisons une soirée sur le récent passage de Spring en version 4 (Inscrivez vous) :

Spring Boot

Spring Boot est une boîte à outils qui vous permet de développer et déployer vos applications Spring en un temps record, grâce a son approche orientée convention plutôt que configuration.

Spring Boot inclut également :

  • Un mode de packaging qui permet de lancer son application avec une simple commande java -jar application.jar
  • Des starters qui sont des dépendances spécialisées pour un usage donné
  • Des endpoints automatiques orientés dev (/beans, /env, mapping) ou devops (/health)
  • Une configuration avancée très simple, tout est personnalisable
  • Il propose un mécanisme d’activation de beans sur condition (par exemple présence d’une classe dans le classpath) très utile
  • Guide de référence: http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/
  • Configuration par défaut d’un certain nombre de paramètres via application.properties ou application.yml

En 2014, ne commencez pas un projet Web basé sur Spring sans Spring Boot, il n’y a AUCUNE contre-indication ! Alors venez voir cette présentation.

Quoi de neuf dans Spring 4.0 et 4.1

Spring 4.1 vient de sortir, cette présentation sera l’occasion de vous détailler les nouveautés apportées par cette nouvelle version (ainsi qu’un rappel de celles de Spring 4.0!). Au menu :

  • support de Java 8
  • Amélioration du support JMS
  • Support complet de JCache (JSR-107)
  • Compilateur SpEL
  • Nouveau mécanisme de gestion des ressources statiques
  • support des types génériques pour l’injection
  • annotation @Lazy améliorée
  • Support des JSONView
  • Support des Groovy markup templates
  • Support de JSONP
  • Configuration XML et JavaConfig : ViewController amélioré et ViewResolver
  • Support Websocket, SockJS et STOMP

Brian Clozel

Brian Clozel de Pivotal (société derrière Spring) se déplacera spécialement pour être notre speaker:

Il fait partie de l’équipe Spring Framework; travaille principalement sur les aspects Web et Messaging du framework.
Il occupe aussi la fonction de project lead pour l’application de référence Sagan, qui est en production sur leur site http://spring.io.

Jeudi 25 septembre, à partir de 18h30, nous organisons à nouveau une soirée grâce à vos propositions.

Le CFP organisé il y a quelques semaines nous a permis de vous préparer une soirée intéressante avec des sujets pour tous les goûts ! :-)

L’ordre est encore susceptible d’évoluer, mais voici les différents sujets :

Titre & Speaker Durée prévue Sujet
Vos logs sont une mine d’or avec Kibana!, par Leonardo Noleto 30 minutes Apprenez en 20 minutes chrono à faire parler les logs qui dorment au fond de vos disques. Avec la triade Logstash, ElasticSearch et Kibana transformer les logs en insights et pilotez votre activité business ou technique.
GWT et son nouveau SuperDevMode, par Arnaud Tournier 15 minutes La fin du DevMode tel qu’on le connait dans GWT est proche. Mais tout est prévu pour continuer à débugger le code Java transformé en Javascript dans notre IDE préféré (Eclipse non ?). Venez découvrir la puissance de ce nouveau mode de fonctionnement. Je donnerai aussi quelques indications sur ce qui attends les développeurs et quand, avec les nouvelles version de GWT (Java 8, JsInterop, Web Components, etc…)
Robusta Rest Adapter (Rra), par Stéphanie Pitou, Jean-marc Villatte et Nicolas Zozol 10 minutes Rra est un Work in Progress open source. Quels sont en les objectifs, les doutes et les contraintes ?
L’enquête CORS, par Gildas Le Louarn 15 minutes Fier de votre tout nouveau service REST vous décidez de l’invoquer en JavaScript depuis un navigateur en utilisant JQuery. Patatras, alors que JUnit voit tout vert, rien ne se passe comme prévu. Pour vous, j’ai mené l’enquête ;-)
Démo Glass FluentHttp, par Vincent Ferries 15 minutes Mini présentation du serveur web développé par David Gageot et Jean Laurent De Morlon, Java 8 style inside et de la toute petite application que j’ai faite dessus pour Google Glass.

Un grand merci l’Epitech qui continue à nous accueillir.
MAIS ATTENTION ils ont déménagé : l’Epitech se trouve à présent 40 boulevard de la Marquette, (à Toulouse) quartier Compans Caffarelli.

Mardi 8 avril, nous recevons Stephen Chin, Java Technology Ambassador chez Oracle, mais surtout un hacker un peu fou qui fait le tour du monde des JUG en moto !

Stephen Chin

On continue sur la lancée de Java 8, plus pleins de petites choses amusantes. Au programme : embarqué, internet of things, Lego MindStorms,lambdas et bien plus encore :-)

Pour s’incrire : http://www.jugevents.org/jugevents/event/53388

Le résumé de sa session :

Java 8 Lambdas and Devices

Java 8 is the most impactful update to the Java ecosystem since Java 5, introducing an entirely new programming model with lambda expressions, and a whole new platform of applications with support for ARM embedded devices. In this presentation, you will learn how to take advantage of the new lambda-enabled Java 8 APIs including enhanced collections, functional interfaces, and simplified event handlers. Also, you will see live demonstrations of Java 8 technology running on embedded platforms such as Raspberry Pi and Lego Mindstorms EV3, allowing Java-based applications to support the internet-of-things. Come and learn how to build the future of Java.

Qui est Stephen ?

Stephen Chin is a Java Ambassador at Oracle specializing in embedded and UI technology, co-author of the Pro JavaFX Platform 2 title, and the JavaOne Content Chair. He has been featured at Java conferences around the world including Devoxx, JFokus, OSCON, JFall, GeeCON, JustJava, and JavaOne, where he thrice received a Rock Star Award. Stephen can be followed on twitter @steveonjava, reached via his blog: http://steveonjava.com/, and his hacking adventures can be seen on: http://nighthacking.com/

Pour la prochaine soirée du JUG, on a décidé de tester un format différent de celui habituel.

Le principe est que vous venez avec votre machine et qu’on va pratiquer pour de vrai les sujets.

Les ateliers se dérouleront entre 18h et 21h30 environ. On va en effet essayer de commencer un rien plus tôt que d’habitude afin que le temps consacré aux manipulations soit suffisant pour aller quelque part :-).

Les différents sujets auront bien sûr une trame de fond, mais il est fort probable que l’on se laissera aussi la possibilité de creuser des choses en live en fonction des discussions/demandes.

Les sessions seront animées par une à plusieurs personnes :

Scala Parser Combinators, avec Didier Plaindoux

Vous voulez écrire vos propres analyseurs en Scala ! Pour ce faire nous nous proposons d’explorer les “Scala Parser Combinators” en étudiant par le biais de mini-langages l’ensemble des combinateurs, le principe de règle de production pour finir sur le caractère non-déterministe et les grammaires récursives à gauche !

Hazelcast, avec Sylvain Wallez

Hazelcast : le clustering facile. Au cours de l’atelier, nous construirons un système de chat peer-to-peer, l’ordinateur de chaque participant devenant membre d’une grille élastique et tolérante aux pannes.

Forge (Jenkins & Co), avec Michaël Pailloncy et Baptiste Mathus

L’atelier proposé se basera probablement sur celui donné à l’AgileTour. Mais comme le timing est plus du double, nous aurons l’occasion de creuser davantage (gérer un cluster de Jenkins, comment l’exploiter, stratégies d’IC, trucs & astuces…, etc.).

Autre(s) proposition(s) ?

Si vous avez envie d’animer un sujet qui vous est cher, signalez-vous, on doit pouvoir essayer d’en faire un ou deux de plus max (forcément limité par le nombre de salles, merci encore à l’Epitech pour l’accueil).

Inscrivez-vous vite, le nombre de places de chaque atelier est limité (à 15 pour commencer, il y a 20 places pour gérer une liste d’attente).

Inscrivez-vous !

Plus tard dans la soirée nous enchaînerons avec l’assemblée générale de l’association.

Vous souhaitez vous impliquer dans la gestion du JUG ? N’hésitez pas à venir si vous êtes adhérent. Vous pouvez adhérer sur place aussi :-)

Comme vous le savez sûrement, Java 8 arrive d’ici quelques semaines, normalement fin mars 2014.

Comme le dit Mark Reinhold, le “Chief Architect of the Java Platform”, les lambdas sont la plus grosse mise à jour du modèle de programmation depuis toujours – plus encore que les generics.

Nous avons donc trouvé important de planifier plusieurs sessions pour découvrir sereinement toutes ces nouveautés.

Lambdas, from the great closure war to Java 8, an unexpected journey, par Rémi Forax

Rémi est professeur et travaille dans l’équipe qui implémente les lambdas dans le JDK. Il fait partie des deux Expert Groups de la JSR 292, sur invokedynamic, et de la JSR 335 (sur les lambdas, donc).

Abstract :

Une bonne façon de comprendre les lambdas est de repartir de l’historique puis d’expliquer le cheminement pas toujours en ligne droite qui a été suivi pour arriver à la syntaxe et la sémantique actuelle.

Puis je montrerai quelques exemples d’utilisation des lambdas pour illustrer la façon dont les lambdas impactent le design d’APIs.

Pour l’instant j’ai pas prévu de montrer de code assembleur, mais qui sait ?

Inscrivez-vous rapidement sur JugEvents, les places seront chères :-) !

Java 8 : lambdas, Streams et Collectors, le nouveau visage de l’API Collection, par José Paumard

José est professeur, membre du Paris JUG et rompu aux plus grosses conférences. Son talk sur le sujet à Devoxx 2013, il y a quelques semaines, a été parmi les mieux notés par l’assistance.

Abstract :

L’API la plus utilisée du JDK est sans aucun doute l’API Collection. Brillamment conçue il y a un peu plus de 15 ans, elle est encore aujourd’hui au coeur de toutes les applications Java. En 2004, elle a subi son premier lifting, avec l’introduction des génériques. Cette mise à jour, bien qu’importante, n’a cependant pas modifié ses patterns d’utilisation. Avec l’introduction des lambdas en Java 8, l’API Collection est à nouveau réécrite, mais cette fois la situation est différente : ses patterns d’utilisation sont complètement changés.

La première partie de cette conférence introduit les lambda expressions, comment les écrire, et ce qu’elle nous apportent en tant que développeurs. La deuxième partir présente en détail les nouveaux patterns introduits par les API Stream et Collector. Ces nouvelles API vont changer la façon dont nous allons pouvoir traiter les collections de grande taille, y compris en parallèle, avec un modèle de programmation très simple, et des patterns très puissants. Cette puissance sera montrée dans des exemples réels, qui monteront comment Java 8 va pouvoir nous aider à écrire simplement du code efficace et performant.

Les inscriptions ne sont pas encore ouvertes, mais surveillez bien le compte Twitter @toulousejug ou la liste du JUG, nous allons l’ouvrir probablement d’ici mi-décembre.

Le jeudi 28 Novembre à 17h30 à l’N7, avec la présence de Mike Milinkovich, Directeur Executif de la Fondation Eclipse.


Les démos camp Eclipse, c’est deux fois par an (en juin et en novembre) une série d’événement pour rencontrer la communauté Eclipse de votre région.

Celui de Toulouse est co-organisé par le JUG et la fondation Eclipse et hébergé par l’N7.

Le programme est déjà alléchant, mais il reste encore de la place pour un talk de 20 minutes et quelques quickies. Donc envoyez un mail à gael.blondelle@eclipse.org pour proposer votre sujet.

Une fois encore, la soirée sera suivie d’un moment d’échange autour d’un verre et de pizzas.

N’oubliez pas de vous inscrire sur notre page EventBrite. Il n’y aura peut-être pas de la place pour tout le monde!

Le mercredi 16 octobre à 18h30 à l’Epitech par Henri Tremblay, créateur d’EasyMock et Objenesis.

Nous renouvelons l’expérience pizzas de la dernière fois. Si vous voulez avoir le droit de vous en approcher, n’oubliez surtout pas de vous inscrire (sinon, ce sera chips et rien d’autre :-)).

Les lambda expressions en Java arrivent à grands pas. Les génériques sont eux apparus en 2004. Joshua Bloch en a conclut: “Chaque langage a un quota de complexité. Les génériques ont fait exploser celui de Java.”

Et pourtant, les lambda, aussi sexy soient-ils, vont venir ajouter à la complexité. Mélanger aux génériques, il s’agit d’un cocktail explosif.

Cette session remet les compteurs à zéro. Elle vous donne les clés pour maîtriser les génériques, mais aussi leurs liens avec les lambda. Tout pour aborder ces derniers sereinement.

Ce Jeudi 19 Septembre aura lieu à l’Epitech une soirée commune avec nos amis du Toulouse Android User Group.

Inscrivez-vous pour que nous puissions prévoir suffisamment de quantité pour l’apéritif amélioré qui est prévu :-) !

Au programme :

L’horaire sera un tout petit peu décalé à 18h45 pour commencer les conférences à 19h tapante.

A 18h30 à l’épitech, le JUG reçoit Lucian Precup qui démontrera la puissance des moteurs de recherche.

Inscrivez vous

Avec l’approche BigData et l’essor des technologies NoSQL, les moteurs de recherche sont de plus en plus utilisés sur internet et en entreprise. Dans ce contexte, l’Open Source en général et les technologies basées sur le moteur Apache Lucene en particulier sont en plein développement.

Après une introduction permettant de découvrir ce qu’un moteur de recherche peut faire pour votre entreprise, votre site web ou votre application, nous verrons comment mettre en place des serveurs de recherche pertinents, robustes, performants et évolutifs.


Nous verrons ensuite à l’œuvre Solr, ElasticSearch et leur écosystème d’outils et technologies. Pour finir, nous approfondirons quelques subtilités sur l’analyse du texte, la recherche approximative, l’auto-complétion afin de mieux comprendre les forces mais aussi les limites de la magie Lucene.


Consultant indépendant depuis 2010, Lucian a acquis à travers ses missions une expertise sur les architectures NoSQL et les moteurs de recherche, expertise qu’il partage dans différents barcamps, user groups et conférences.

Auparavant, Lucian a développé des logiciels pour l’intégration des données en temps réel chez Business Objects et SAP. Il a rejoint l’éditeur des solutions BI suite au rachat d’une startup issue de l’INRIA - centre de recherche qu’il avait intégré en 2001.

EclipseCon France 2013

Ce Jeudi 16 mai à 18h30 à l’Epitech, nous faisons un Java RoundUp de différents sujets :

Après les News et le Quizz, nous aurons :

  • EclipseCon US & Europe par Mélanie Bats et Benjamin Cabé
  • Convaincre son DSI sur Big Data par Léonardo Noleto
  • Cassandra par Alexis Krier
  • Les outils du Startupeur par Sylvain Wallez et Nicolas Deverge

puis viendront l’apéro et le resto.

Inscrivez vous

Soirée sur l’écosystème JEE6 présentée par Romain Manni-Bucau commiter sur le projet DeltaSpike. Connaissez vous bien la plateforme V6? JEE7 arrive bientôt mais la vraie révolution a déjà eu lieu, réveillez vous JEE6 est déjà là et c’est pas que du conteneur lourd.

Inscrivez vous

  • Rappel sur les forces de CDI/JavaEE 6


  • Codi

    codi

  • Seam


  • DeltaSpike dans tout ça


    • Core utility
    • Security
    • JPA
    • JSF
    • Rappel sur Arquillian


    • Context
    • En 2 mots…
    • TomEE


    • Qu’est-ce? core values.
    • Features avancées
    • dynamic DS, pooling
    • jpa tweaks (log etc)
    • mvn plugin
    • Arquillian TomEE
    • config avançée
    • enrichement custom!
    • mocks?
    • deploy @startup?
    • 3 adapterS?
    • Arquillian OpenEJB
    • All together (demo)
    • Plus loin
    • TomEE

git

Le Jeudi 2102 18h30 à l’Epitech le JUG organise une soirée Git.

On vous promet une soirée show time, pas de “man git” soporifique.
Un tour de son écosystème vous apportera surement la solution dont vous avez besoin.

L’essentiel

1) 30 mins : Le moteur de Git et ses principes par Baptiste Mathus

Les process

2) 15 mins sur Git Flow par Igor Laborie, ou comment ne pas s’emmêler les branches

3) 10 mins sur Gerrit par Baptiste Mathus, ou comment coder ensemble

Les outils

4) 10 minutes sur Egit par Igor Laborie versus IntelliJ par Nicolas Zozol

5) 5 minutes sur Github versus Bitbucket par Nicolas Zozol

6) Si nous trouvons les speakers : 10 à 20 minutes sur les GitLab, Gitorious, gitosis , gitblit etc.

N’hésitez donc pas à nous envoyer un mail si vous voulez parler de ces outils.

Inscrivez vous !

Après le pot de la soirée, nous enchaînerons avec l’assemblée générale de l’association.

Après l’institutionnelle introduction incluant la vie du JUG, les news et le Quiz, Nicolas Lalevée et François Royer nous parleront jeudi 13 décembre 2012 de la technologie NoSQL Hadoop.

Pour les inscriptions, c’est par là :-).

Big Data et data mining – tour au zoo d’Hadoop.

Hadoop est devenu un socle incontournable pour la fouille de données: ETL, distribution de tâches, collecte et aggrégation, on peut tout faire avec, ou presque.

Nous commencerons par présenter la technologie: l’algorithme MapReduce, son architecture, son déploiement, son utilisation via un eco-système de projets fourmillant autour.

Puis nous entrerons dans un exemple concret d’utilisation : le calcul de statistiques web ala google analytics dans Scoop.it avec Hive. Nous verrons le cas d’utilisation, l’implémentation, l’utilisation, les problématiques de déploiement, de performance.

Puis nous élargirons avec le data mining. Nous passerons en revue les différents algorithmes “MapReduce-able” et verrons pourquoi implémenter soi-même un join sous Hadoop n’est pas une très bonne idée. Des exemples en traitement du langage avec Python et Cascalog seront donnés.

Pensez à vous inscrire sur le site de JugEvents (c’est gratuit).

La deuxième soirée Hero aura lieu ce Jeudi 15 Novembre. Plusieurs juggers toulousains feront une présenation de 15 à 30 minutes.

Vous pouvez vous inscrire ici.

En voici le programme :

  • Méthode Getting Things Done (GTD) par Baptiste Mathus : ou comment organiser sa vie de Développeur

    GTD

  • Développement de plugin Jenkins par Michaël Pailloncy : vous saurez tout pour faire votre propre Plugin.

    jenkins

  • Dessine-moi un DSL par Frédéric Madiot : Une présentation graphique d’un nouvel outil Open Source

    DSL

  • Java FX 2 : what’s new par Sebastien Bordes

    javafx

  • Suit Case Class en Scala par Didier Plaindoux : Scala pris petit bout par petit bout

    scala

Les prezs sont dispos:

Mercredi 24 octobre, à 18h30 à l’Epitech de Toulouse comme d’habitude, nous accueillons Stéphane Epardaud, committer sur le compilateur, et David Festal, développeur de l’IDE associé.

Inscrivez-vous pour réserver votre place !

Stéphane et David nous présenteront le nouveau langage de programmation Ceylon.
Après que David nous aura présenté le langage, David nous montrera le fonctionnement de l’IDE associé.

Le résumé

Ceylon est un nouveau langage de programmation pour la machine virtuelle Java. Nous sommes fans de Java et de son écosystème, cependant nous pensons que le langage Java et ses libraires conçus il y a 15 ans sont désuets face aux challenges actuels.
Ceylon a été conçu avec plusieurs objectifs

  • Facile à apprendre pour les développeurs Java et C#
  • Améliorer le typage fort de Java
  • Fournir une syntaxe déclarative pour exprimer des concepts hiérarchiques (interface utilisateurs, configuration système, etc…)
  • Promouvoir l’approche fonctionnelle par des objets immuables et des fonction d’ordre supérieur
  • Support de la méta programmation
  • Modulaire

Cette introduction à Ceylon vous montrera les fonctionnalités de Ceylon ainsi que les derniers progrès fait sur le compilateur, l’IDE et la communauté autour de Ceylon.

Ceylon IDE

Après avoir présenté le contexte dans lequel a démarré le développement de “Ceylon IDE”, ainsi que les autres outils existants dans le projet, cette session évoquera les objectifs et les contraintes qui ont déterminé les choix de conception initiaux. On évoquera le développement incrémental de l’IDE qui s’est calé sur l’évolution du reste du projet. Enfin on insistera sur les choix effectués pour implémenter l’interopérabilité avec Java et JDT.

Bio

Stéphane Epardaud


Depuis les hautes montagnes de Nice, Stéphane travaille pour Red Hat sur le project Ceylon.

Hacker passionné de Java, C, Perl ou Scheme. Versé dans les standards web et des bases de données, il a travaillé sur divers projets tel qu’un éditeur XML WYSIWYG, une libraire de multi-threading en C, un langage pour agents mobiles en Scheme (compilateur et machines virtuelles), ainsi que des services web 2.0 RESTful et des interfaces web riches en HTML 5 / Javascript.

Avide de partage de connaissance, il va souvent parler dans des conférences tels que Scheme Workshop 2004, l´IUT de Nice en 2008, Polytech’Nice en 2009, le Mars JUG, le Paris JUG et le Riviera Java User Group qu’il a crée avec Nicolas Leroux. Acteur passionné de l´open source depuis le début, il contribute au projet RESTEasy et crée les projets jax-doclets, stamps.js, quelques modules de Play! Framework et travaille sur les projets Ceylon pour Red Hat.

David Festal

David Festal

Après quelques années de C, C++, et autres, David développe en Java depuis l’an 2000, dans des domaines variés tels que les environnements distribués, l’intégration de systèmes, l’analyse et la transformation de langages.

Dans le cadre de SERLI, la SSII où il travaille depuis 15 ans, il a été impliqué dans plusieurs projets OpenSource, parmi lesquels on trouve Sonar, et plus récemment Ceylon.

Affecté à plein temps sur le projet Ceylon par SERLI pendant plusieurs mois, il a principalement travaillé sur le plugin Eclipse pour Ceylon, en posant les bases de ce qui est devenu maintenant “Ceylon IDE”.

Une soixantaine de personnes est venue voir Mathias Seguy nous présenter Android et les bonnes pratiques pour débuter sur des applications sérieuses.

De nombreux goodies ont été gagnés : T shirt du JUG, T shirt Android, clés usb Android, stickers… tant pis pour ceux qui ne sont pas venus ! :-)

L’autre bonne nouvelle c’est que la première captation est dispo sur parleys !
http://www.parleys.com/#st=5&id=3384

A l’avenir toutes les prez devraient s’y retrouver.

Merci à Mathias Seguy de s’être pris au jeu.

Juggy édition spéciale

Comme cela a motivé quelques juggers pour la soirée Android de septembre, on renouvelle pour octobre et on corse un peu le travail :-)

Celle ou celui qui franchira les étapes du challenge (et les aura expliquées) gagnera un T-Shirt du JUG.

C’est parti !

vous devez afficher cette image pour espérer continuer :-)

Android nounours

Ce Jeudi 20 Septembre, Mathias Seguy, toulousain devenu expert Android et speaker à DevoxxFrance, viendra nous présenter cette technologie sur laquelle il a décidé de se spécialiser.
Il dispense d’ailleurs régulièrement des formations Android inter-entreprises.

Nous aborderons les notions et bonnes pratiques élémentaires de ce type de développement. Nous démystifierons également la programmation mobile afin de permettre aux développeurs de s’y lancer à leur tour en ayant en tête une vision globale du système et de son fonctionnement.

L’idée est de commencer par Android et le monde de l’IT puis de partir d’un projet minimaliste possédant une activité et d’élargir la vision : un projet simple, Ressource, Traitement (Handler, AsyncTask), DataBase, ContentProvider, SharedPreference, Service, WebView, Utilisation d’un service Rest, les capteurs).

Nous parlerons enfin des tests et de l’outillage du projet (Junit, Maven, Hudson).

Inscrivez vous !

Neo4j logo

The world’s leading graph database.

Voilà qui annonce le niveau pour la prez de jeudi prochain !

Peter Neubauer créateur de Neo4J nous présentera en anglais ce qu’est le NOSQL et quelles sont les spécificités d’une base graph.

Rendez vous jeudi 14, 18h30 à l’Epitech.

Inscrivez vous sur JugEvents.

Le 26 avril prochain à partir de 18h30 à l’Epitech aura lieu la soirée dont vous êtes le héros, et même les héros .

Voici les trésors que nous allons découvrir :

  • Lambda dans Java 8 (30 minutes) par Didier Plaindoux : Définition d’interface, syntaxe, portée des variables, manipulation de méthodes…


  • Processing Java (15 minutes) par Sylvain Wallez : Environnement Java dédié à la création d’application multimedia interactives (Kinect, pilotage de LED …)


  • Moteurs de Recherche Java (30 minutes) par Igor Laborie : Qu’est ce qu’un moteur de recherche ? possibilités en Java, distributivité


  • Thread et fuite mémoire sous Android (15 minutes) par Mathias Seguy : Tâches de fond et communication avec l’IHM


  • Prototyper un site avec Awestruct et Bootstrap (30 minutes) par Paul Dijou : un prototype beau et fonctionnel sans prise de tête


Et + encore si nous avons du temps.

Un apéro conclura la soirée. Plus de détails sur cette soirée et le formulaire d’inscription sur le site JugEvents.

Venez nombreux, buzzez !

Découvrez Cloudbees

Le 1503 à l’Epitech, à 18h30, Nicolas de Loof, co-auteur du livre Apache Maven, figure de la communauté Java Française, et leader du BreizhJug vous fera découvrir le cloud en Java!

De plus, pour le premier anniversaire du JUG, nous échangerons sur le mouvement des JUG en France et nous ferons le bilan de l’année écoulée.

Plus de détails sur la soirée, et le formulaire d’inscription sur le site JugEvent.

Venez nombreux et parlez-en autour de vous!

Apache Maven, Version 2 et 3, 2e édition

Apache Maven, Version 2 et 3, 2e édition

Présentation rapide

Ce livre est écrit par Nicolas de Loof (CloudBees) et Arnaud Héritier (eXo Platform), avec de nombreuses participations de la communauté francophone.

Pour rappel Arnaud était venu nous présenter Maven 3 lors de la session du 16 Mars 2011. J’espère que l’on verra Nicolas bientôt sur Toulouse, par exemple pour nous présenter Cloudbees ?

UPDATE : Nicolas viendra justement nous présenter CloudBees jeudi 15 mars 2012, pratiquement un an jour pour jour après la venue d’Arnaud.
Réservez votre soirée !

Ce livre présente l’ensemble des concepts de Maven 2 et 3. Il fait le tour des possibilités de cet outil via un cas concret que l’on suit de bout en bout en utilisant les plugins principaux.

Ce livre ne fait pas une revue détaillée de tous les plugins de Maven, ni de leurs options.

Revue

Bien que je fréquente depuis longtemps Maven je n’ai jamais eu l’occasion d’approfondir le sujet. J’attendais donc de compléter mes connaissances et d’apprendre les bonnes pratiques de Maven.

Contrairement aux livres informatiques que je lis traditionnellement ce livre utilise une approche récréative en faisant intervenir de nombreux acteurs de la communauté de Maven. Ceci rend la lecture plus agréable.

En partant d’un cas concret, il met en évidence la puissance de Maven en expliquant et démontrant les bonnes pratiques, j’avais déjà rencontré beaucoup de ces situations, l’apprentissage en est donc bien meilleur.

Cet ouvrage a globalement comblé mes attentes sur Maven. Il me parait important de mettre en pratique les notions abordées sur un projet concret en parallèle de la lecture.

J’ai trouvé particulièrement intéressant les chapitres qui prennent du recul, en particulier le chapitre 15 qui dresse qui bilan, ainsi que le chapitre 16 qui essai de voir plus loin (OSGi, Modules Java).

Un problème courant lorsqu’on parle des outils comme Maven, ANT, Gradle, … et qu’il est difficile d’isoler l’outil par rapport aux autres outils de la forge logiciel (SCM, Intégration Continue, Procès de livraison, …). Dans ce livre on retrouve une présentation rapide de l’intégration continue (Continuum, Hudson et Jenkins) et des outils de qualité (PMD, Findbugs, Sonar).

De mon point de vu, les outils d’intégration continue prennent le pas sur Maven pour ce qui concerne le contrôle qualité voir du processus de livraison (Continuous Delivery). Cela aurait été peut être hors sujet, mais j’aurai préférer un chapitre complet sur Jenkins mettant en oeuvre tout ceci.

Du coté test JavaEE, j’aurai aimer avoir plus de détail sur Arquillian qui aujourd’hui me semble être la meilleur solution de test dans ce contexte.

Dans le chapitre 14: “Un nouveau projet démarre”, il manque peut être une petite note sur les outils comme Springs Roo ou JBoss Forge, et d’expliquer le positionnement des archétypes Maven vis à vis de ces outils.

Conclusion

Les plus :

  • Livre en français, avec un ton récréatif
  • Complet pour les bonnes pratiques
  • Les situations sont réelles
  • Prise de recul sur Maven

Les moins :

  • Il y a beaucoup d’exemples, j’aurai bien aimé pouvoir télécharger les sources.
  • Plus j’utilise Maven, plus j’ai l’impression que c’est l’outil des années 2000’s, et pas celui des 2010’s.

De mon point de vue s’il faut lire un seul bouquin sur Maven, c’est celui la.

Découvrez JavaFX 2

Le 1602 à l’Epitech, à 18h30, Sébastien Bordes animera une soirée JavaFX2.

Sébastien nous a alléché en proposant de faire sa présentation 100% avec JavaFX2. Dans le style “Eat your own food”, la soirée donnera donc lieu à une présentation et démonstration de la techno.

Plus de détails sur la soirée, et le formulaire d’inscription sur le site JugEvent.

Venez nombreux et parlez-en autour de vous !

Ce retour fait suite au gain d’une licence JRebel lors de la soirée du Toulouse JUG autour du Framework Play.

Présentation rapide

JRebel est un outil proposé par la société ZeroTurnaround à destination des développeurs ayant pour but d’améliorer leur productivité. Pour cela, il fournit un système de prises en compte à chaud des modifications sans nécessiter le redéploiement de l’application ou le redémarrage du serveur.

Il se présente sous la forme d’un plugin « java agent » à déclarer au niveau de la JVM du serveur d’application et d’un fichier de configuration « rebel.xml » à placer à la racine du répertoire contenant les fichiers « .class » pour chaque application et module du projet. A l’exécution, cet agent surveille les classpath indiqués dans le fichier « rebel.xml » puis agit sur le Class Loader en chargeant les nouvelles versions des classes (d’après ce que j’ai pu comprendre, il s’agit d’un monitoring des classpath en se basant sur les timestamp des fichiers .class pour détecter les modifications).

Pour plus de détails, la documentation et les forums permettent une prise en main rapide pour les cas d’utilisation standards.

Prise en Main

Pour prendre en main l’outil, j’ai effectué les premiers tests sur un projet personnel basé sur Spring MVC avec utilisation de Spring Web Flow, le tout s’exécutant dans le conteneur Tomcat.

Pour les technologies Spring, ZeroTurnaround fournit de nombreux exemples (documentation, FAQ, screencast). La mise en place de JRebel a donc été rapide. Pour les quelques problèmes survenus au démarrage, une recherche sur les forums permet de rapidement cerner les erreurs de paramétrage.

Pour les personnes ayant assisté aux soirées sur Play ou Grails, les présentateurs ont mis en avant la prise en compte des modifications sans redémarrage du serveur parmi les avantages par rapport aux autres frameworks JEE dits « standards ». Avec JRebel, un projet Spring « classique » profite d‘un fonctionnement très proche.

L’apport de JRebel est un plus indéniable pour le développement. Il permet d’améliorer la productivité du développeur aussi bien dans la phase de création que leur de la validation ou du support d’une application. Malgré quelques ratés ayant nécessité de redémarrer Tomcat, ce premier test m’a convaincu de pousser l’expérimentation en condition réelle sur un projet professionnel.

Utilisation en condition réelle

Afin de faire un retour plus pertinent, j’ai configuré JRebel sur mon environnement de développement professionnel. Point important, la société pour laquelle je travaille utilise un framework interne, donc non listé comme pris en charge par JRebel.

Alors que la mise en place fut plutôt rapide pour le projet Spring, la tâche a été beaucoup plus compliquée sur ce second environnement. Après plusieurs échecs, j’ai fini par trouver un paramétrage assurant la prise en compte des modifications pour les projets web principaux, les modules externes étant plus ou moins bien pris en charge.

Après environ trois semaines d’utilisation en condition réelle, JRebel affiche une estimation de 3 heures économisées (pour 14 jours de développement). Toutefois, malgré la prise en compte des modifications, notre framework interne nécessite un redéploiement de l’application web dans la plupart des cas.

La problématique rencontrée n’est pas à mettre sur le compte de JRebel mais sur le fonctionnement particulier de notre framework. Pour que certaines modifications soient prises en compte, la chaîne de démarrage de l’application web est impérative. Pour utiliser JRebel de manière optimale avec ce framework, le développement d’un plugin JRebel prenant en compte ses particularités semble inévitable et met fin à mes tests.

Conclusion

Les Plus :

  • JRebel améliore la productivité de développement. Il peut être également intéressant lors de la phase de support où le nombre de redémarrages peut être élevé
  • Bonne intégration aux différents IDE et gestion de la majorité des conteneurs de servlet et serveurs JEE
  • Gestion d’un grand nombre de frameworks
  • Documentation et support

Les Moins :

  • Solution payante. Il peut être difficile de justifier l’achat sachant que la solution se limite aux développeurs et ne profite pas aux clients finaux en environnement de production
  • Solution complexe à mettre en œuvre avec certaines architectures (problème sur la gestion des modifications sur plusieurs modules externes) ou des frameworks « exotiques »

votre avis

Alors, plutôt Kotlin ou Lucène ?

Grails logo

Découvrez Grails et l’un des projets les plus importants développé en France avec Grails !

Le 1901 à l’Epitech, à 18h30, Vincent Barrier et Franck Silvestre animeront une soirée Grails.

Ces deux toulousains, grands utilisateurs de Grails, nous présenteront une introduction à Grails, ainsi que l’utilisation de Grails pour développer l’ENT des Lycées de la Région Île de France: Lilie.

Plus de détails sur la soirée, et le formulaire d’inscription sur le site JugEvents.

Venez nombreux et parlez-en autour de vous!

Cette soirée aura été féminine mais surtout performante ;-)

Un retour sur Devoxx où Marianne nous aura résumé les grandes annonces dont celle du premier Devoxx France en Avril prochain.

Claude nous a présenté l’organisation Duchess, ce qui nous a permis de bien comprendre la démarche de ce regroupement. Par exemple, les Duchess apportent également à ses adhérentes des conseils sur l’intégration dans un univers plutôt masculin. Discussion intéressante sur la discrimination positive (celle d’embaucher des filles): Cela n’a pas lieu d’être; la soirée a montré que les Duchess valent bien des Jugger Toulousains.

La présentation sur le thème de la performance a proposé un bon panorama d’un grand nombre de situations sans sombrer dans un cas technique particulier. Claude a placé quelques exemples qu’elle a rencontré lors de son parcours pro, ce qui apportait une touche de concret vu que le thème ne se prêtait pas à l’exposé de code.

L’apéro de fin a permis d’échanger autour du thème de la soirée, et de discuter des thèmes à venir. Le premier trimestre est déjà quasiment bouclé.

Identifiez les problèmes de performances dans vos applications Java !

Le 712 à l’Epitech, à 18h30, Claude Falguière, qui a déjà traité ce sujet dans différents JUG et conférences, nous donnera les clés pour résoudre ce problème difficile.

Nous aurons aussi un retour de Devoxx 2011 par Claude et par Marianne Jullien.

Plus de détails sur la soirée, et le formulaire d’inscription sur le site JugEvents.

Venez nombreux et parlez-en autour de vous. Ce sera la première fois que nous accueillerons des Duchess, donc faisons-leur honneur.

Gaël pour le Toulouse JUG.

Jeudi dernier le JUG a renoué avec les speakers du terroir: Sylvain Wallez, toulousain, a présenté Play! framework java haute productivité.

Une présentation qui a repris les grandes lignes de Play! en étant largement accessible aux 80 participants.
3 retours d’expériences ont démontré que ce genre de nouveau framework n’était pas destiné qu’aux plus Geeks d’entre nous mais avait un réel avenir dans les entreprises.

Ce fut aussi l’occasion de présenter nos nouveaux sponsors, Objet Direct et Valtech. Avec ce nouveau soutien, le JUG va investir dans du matériel pour mettre en place une nouvelle communication sur ses présentations (et sponsors).

C’est aussi l’occasion de sonner la fin de la Kro pour le pot, place à la Desperado ;-)

L’habituel quizz a permis à certains d’entre vous de gagner des licences IntelliJIdea, structure 101 et le reference guide Java 7.

L’idée d’une soirée Play! circulait entre les membres du JUG depuis quelques temps. C’est maintenant prévu pour la soirée du 17 novembre à 18h30 !

Au programme : une introduction à Play!framework par Sylvain Wallez, et trois “REX” (Retours d’EXpérience).

L’inscription se passe par ici. Venez nombreux et parlez-en autour de vous.

Introduction à Play! par Sylvain Wallez

  • origine et inspiration (Rails), “oubliez tout ce que vous savez sur J2EE”, la fin du “anemic domain model”,
  • structure d’un projet Play : organisation des répertoires, contrôleurs, modèle et DAO,
  • le “bytecode magic” de Play et ce qu’il apporte
  • méthodes statiques : les plus et les moins
  • développement : save & reload. Maaaagique !
  • déploiement, configuration, monitoring
  • alors, Play ou pas Play ?

REX - Retours d’expérience de projets Play

Nous présenterons 3 retours d’expérience de projet Play:

Projet Meteo France par Docdoku

Portail d’information dont le but est de donner accès aux scénarios climatiques régionalisés français pour l’impact et l’adaptation de nos sociétés et environnements.

Ce portail est constitué de trois parties :

  • Une partie documentaire proche du wiki
  • Une partie simulation qui permet d’afficher des graphes et cartes en fonction de scénarios climatiques sélectionnés.
  • Une partie commande pour obtenir des données climatiques brutes. Cette partie n’a pas été développée avec Play mais branchée sur un existant.

Pierre Fabre par Docdoku

L’application Play est le back-office d’une application iPad, sorte de lecteur de catalogues produits multimédia.

Fonctionnellement l’application est utilisée par les équipes marketing de Pierre Fabre qui créent, grâce au back-office Play (jQuery, HTML5), de beaux catalogues présentant leurs produits cosmétiques mixant allègrement images, vidéos et liens interactifs.

Ensuite, les commerciaux téléchargent sur leur iPad, depuis le reader iPad client de Play, les données et métadonnées constituant le catalogue.

Enfin, sous les yeux de leurs prospects ébahis devant la restitution léchée du catalogue produits, ils n’ont aucun mal à conclure la vente et de renseigner alors la fiche client sur l’iPad.

Celle-ci sera synchronisée avec Play pour une réintégration au CRM sur simple clic depuis l’iPad.

Empreinte par ekito

  • La société Empreinte est spécialisée dans la création et la production de la signalétique touristique émaillée. Etant un des leaders en France dans sa domaine, Empreinte compte parmi ses clients l’acropole d’Athènes, la ville de Saint Tropez et la ville de Deauville.
  • Avec Emoa, Empreinte enrichit son offre de signalétique avec une solution multimédia mobile.
  • Emoa est une application de type CMS qui gère du contenu web, généré en HMTL 5 et JQuery mobile. Au delà d’une simple gestion de contenu, Emoa permet l’organisation du contenu sous forme de parcours et la mise en relation des parcours avec les signalétiques existants par le billet de QR codes.

Quizz and JUG life

Nous sommes déjà en train de préparer le quizz, et cette fois-ci, nous ferons gagner une licence IntelliJ, le livre de référence de Java7, …

Nous devrions aussi vous présenter nos premiers sponsors.

Enfin, comme d’habitude, on terminera la soirée autour d’un apéro/discussion et un repas dans un restaurant alentour pour les plus vaillants.

Terrence Barr speaker international (Brésil, Chine, Japon, Europe, Amériques) a réussi à faire passer le cap des 80 personnes. Une communauté grandissante qui nous encourage tous !

La présentation de Terrence nous a fait plonger dans les nouveautés de Java 7 et survoler celles du futur Java 8. Il a également résumé la philosophie d’Oracle quand à la communauté Java. Un discours qui s’est voulu rassurant et professionnel.

La barrière de la langue n’aura pas découragé les participants de poser des questions toujours aussi pointues.

Le pot de la fin a heureusement fait chuter la température ambiante. Après quelques verres qui ont réhydraté les gorges, les échanges ont continué entre les invités du JUG équipés de leur T-shirt Java 7 jusqu’à la deadline de 21h.

Les plus assidus auront terminé la soirée autour d’une table et de quelques bouteilles de vin français (of course) dégustées par Terrence.

Merci à vous qui avez fait de cette soirée un évènement fédérateur.

Vous retrouverez bientôt la présentation de Terrence ici.

A bientôt.


Pour bien redémarrer, nous organisons un événement Java 7 le 1409 à l’EPITECH à 18h30. Inscrivez-vous sur le site JugEvent !

Nous aurons le plaisir d’accueillir un speaker international, Terrence Barr, Senior Technologist and Ambassador at Oracle.

Voici la description du talk de Terrence.

Java SE 7: The Platform Evolves

In July 2011, Java SE 7 was released. This evolutionary release brings a host of new features and performance enhancements to the Java platform, designed to increase productivity, re-invigorate the Java ecosystem, grow adoption, and adapt Java to the changing demands of the IT world.

In this talk you will learn about the standards and processes that drive the evolution of Java, the rationale for the changes in Java SE 7, and key new features of the Java platform (Project Coin, NIO2, Fork-Join Framework, The DaVinci Machine, and more). You will also hear about the new operating system platform support and the plans for JVM convergence. Finally, we will conclude with an outlook on Java SE 8.

Soyez la première partie de Terrence !

Pour cette soirée, nous envisageons de faire une première partie avec une démo live d’une nouvelle feature de Java 7. Envoyez votre proposition de démo à toulouse-jug-asso at googlegroups.com.

Faites du bruit !

Nous distribuerons T-shirts et autres goodies. Nous pousuivrons la soirée par le traditionnel apéro/discussion, et les plus passionnés iront dîner en ville avec notre speaker.

Venez nombreux pour cette soirée où nous accueillons notre premier speaker international. Faites passer l’info à vos collègues et amis !

À l’occasion de la sortie de la nouvelle version 3.7 de la plate‐forme Eclipse, nommée Indigo, nous organisons le jeudi 23 juin de 13h à 20h à Toulouse, en collaboration avec  l’association Toulibre, un après‐midi autour du logiciel libre Eclipse, avec conférences et démonstrations.

Les conférences seront animées par des personnalités de la communauté francophone d’Eclipse : Benjamin Cabé (committer sur les projets PDE, e4 et Koneki), Simon Chemouil (committer sur le projet e4), Etienne Juliot (membre du board de l’Eclipse Foundation), Gaétan Morice (committer sur le projet Koneki), etc.

Deux cycles de conférences en français se dérouleront en parallèle, et l’évènement sera clôturé par un apéritif en présence des intervenants.

Le programme riche abordera de nombreux thèmes : Topcased, Osgi, RCP, EMF, EEF, SWTBot, Koneki, Orion, EGit… Le programme complet est disponible sur la page de l’évènement.

Grâce au soutien de nos partenaires Artal, CS, Obeo, OpCoach, l ‘événement est ouvert à tous, libre et gratuit. Il se déroulera à l’ENSEEIHT, 2 rue Charles Camichel à Toulouse (Métro Ligne B - François Verdier).

Alors n’hésitez plus, inscrivez-vous et parlez-en autour de vous !

La soirée - très pointue - sur la gestion des dépendances s’est déroulée devant environ 40 personnes. En voici la présentation SlideShare.

Merci beaucoup à Nicolas Lalevée pour sa présentation, et son travail Open Source.

Le prochain événement de Toulouse Jug, en association avec nos amis de Toulibre, sera l’Eclipse Party le Jeudi 23 Juin, de 13h à 21h.

Réservez votre place sur le site JugEvent !!

News & JQuizz


On réédite la rubrique News & JQuizz.

Avec toujours deux licences IntelliJ Idea à gagner.

N’oubliez pas d’envoyer sur la mailing list les news dont vous voulez parler. La rubrique News, c’est aussi vous qui la faites.

Maven et Ivy vs OSGi : duel au sommet de la gestion de dépendances

Vous aviez aimé la soirée Maven vs Gradle, et la gestion de dépendance dans votre projet est un de vos cauchemars. Nicolas Lalevée, Développeur Java depuis 2005, committeur Apache IvyDE, Ant, Ivy, et mentor du projet Apache EasyAnt viendra nous aider un peu.

Il nous dit:
“La gestion des dépendances, sac de noeuds presque par définition, on va essayer de démêler tout ça.
Après avoir fait un état des lieux avec Maven car il est l’incontournable du moment, nous irons voir comment Ivy peut décrire assez finement et gérer avec souplesse des dépendances. Nous verrons ensuite comment le modèle de dépendances d’OSGi est original et apporte encore de nouveaux concepts. Deux mondes s’affrontent alors, celui de Maven et Ivy face à celui d’OSGi; on tentera enfin d’esquisser un meilleur des deux mondes.”

Apéro & JUGathon

Apportez la cotisation

On finira la soirée autour d’un verre histoire de continuer nos discussions enflammées.

Et aussi, on continue le JUGathon, avec toujours la possibilité d’adhérer à l’association pour la modique somme 20 euros.

La soirée du 21 a été un succès. Malgré une annonce un peu tardive du programme de la session, nous avons tout de même été près de 50 à assister aux présentations de Florent, Bert et Nicolas.

Les supports des présentations :

  • L’intro, les news et le Quiz de l’équipe :
  • HTML5 :
  • Retour d’expérience projet Flex, Spring & Agilité :

Encore merci à tous pour cette soirée.

Réservez votre place sur le site JugEvent !!

News & JQuizz

On vous propose une nouvelle rubrique ce mois-ci:


  • Les news Java du mois qui nous ont marqué (ou qui vous ont marqué si vous nous les envoyez sur la mailing list en mettant [news] dans le sujet).
  • Un petit quizz pour vous réveiller.

HTML5 par Florent GARIN de DocDoku


Florent travaille depuis un moment sur un projet avec HTML5, du web socket, du canvas, du tag video et audio, du CSS3 pour les animations, de la vidéo SIP, …
Donc il nous présentera ce qui nous arrive dans la couche UI au dessus de nos belles architectures JEE. En plus, il vient avec un démo qui déchire du site pour lequel il met tout ça en oeuvre: Webinage.

REX Flex, Spring & Agilité par Nicolas DEVERGE et Bert POLLER, Architectes Ekito.

Retour d’expérience sur un projet dans le domaine de la restauration collective. Projet de 10 mois mené avec Scrum et mettant en œuvre les technos Flex 4.0, Spring 3.0, Maven 3, Hibernate 3.6.

On parlera aussi d’intégration continue avec Jenkins, de gestion de la documentation technique, de conception émergente, de refactoring de base de données, etc.

Apéro & JUGathon

On finira la soirée autour d’un verre histoire de continuer nos discussions enflammées.

Apportez la cotisation

Grande nouvelle, on a enfin eu le retour de la préfecture, donc l’association du JUG est enfin créée.
N’oubliez pas votre chéquier, on sera là pour prendre recevoir vos cotisations de 20 euros.

Nous avons décidé de passer le site du JUG sur Wordpress.

Ca va être plus sympa, mais il faut patienter encore quelques jours.

On y travaille. Stay tuned!

En attendant, vous pouvez vous inscrire sur le Google Group : http://groups.google.com/group/toulouse-jug

La nouvelle équipe du Toulouse JUG a le plaisir de vous annoncer son partenariat avec la conférence What’s Next, organisée à Paris les 26 & 27 mai 2011 au Grand Rex.


Durant deux jours les créateurs de nos frameworks et outils préférés animeront des talks techniques sur Jenkins (anciennement Hudson), Scala, NoSQL, Spring, Clojure… Et bien sûr Java !

Comme l’indique son nom, la What’s Next traitera la question du futur des technologies.
Chaque speaker partagera sa propre vision sur l’avenir de Java.

Les inscriptions viennent d’ouvrir. Notre JUG étant partenaire de l’événement, vous bénéficiez d’une réduction de 25% en entrant le code TOUJUG-25.

Retrouvez toutes les annonces des speakers et talks sur http://whatsnextparis.com/ ou sur Twitter @WsN_Paris.

La prochaine session aura lieu le 6 Octobre 2009 à partir de 18h.

Il y aura deux présentations :

La première sera une introduction générale à Android par Florent Garin (société DocDoku).

Ensuite, Nicolas Fonrose (A2-Artal) nous présentera Google App Engine.

Cela se passera à l’amphi U3 de l’université de Toulouse Rangueil.

A bientôt !

Ce mardi a eu lieu la première session du JUG Toulouse. Beau succès au rendez-vous avec 70 participants.


Merci à l’IUP ISI pour l’accueil. Merci aux speakers pour la qualité des présentations. Et merci aux participants d’être venus en nombre.

Nul doute qu’à l’issue de cette première session, la dynamique est vraiment lancée. La meilleure preuve en est que la mailing liste commence à s’agiter un peu.
Abonnez-vous!

L’équipe du JUG Toulouse.

Après quelques mois de préparation, ça y est, nous sommes en mesure d’annoncer le contenu de notre premier RDV !

Au menu, deux sessions d’une heure avec pour contenu :

GWT par Bruno Marchesson (consultant senior Valtech)

GWT peut aujourd’hui se targuer d’être la seule plateforme RIA réellement Open-Source, et bénéficie à ce titre d’un écho particulier au sein de la communauté.

Au cours de cette présentation, nous verrons les différentes briques logicielles qui font de GWT un véritable framework, les évolutions à venir et les librairies à surveiller.

JavaME par Sylvain Wallez (CTO Goojet)

Java est plus connu pour ses applications serveur, mais c’est aussi la plateforme la plus répandue pour les applications sur téléphone mobile avec Java Micro Edition (J2ME). La présentation exposera les particularités du développement sur J2ME :

  • APIs de base et API optionnelles pour utiliser les services des téléphones comme la photo, la géolocalisation ou l’envoi de SMS
  • outils de développement : preprocessing, obfuscation, packaging
  • contraintes et techniques pour assurer la portabilité, la compacité et la performance

Nous vous rappelons la date et le lieu, il s’agit du 12 mai de 18h à 21h dans l’amphi U3 de l’Université Paul Sabatier. Un buffet clôturera cette soirée.

Nous vous attendons nombreux !

Le JUG Toulousain a pour vocation de fédérer les utilisateurs et développeurs Java de la région Toulousaine.

S’appuyant sur un réseau de partenaires et de sponsors, les JUG proposent gratuitement à ses membres des séminaires, conférences et autres réunions techniques avec pour objet principal l’échange et le partage des connaissances autour de la plateforme Java.

Le JUG Toulousain est constamment à la recherche de sponsors et de généreux donateurs pour assurer la logistique liée à l’organisation de ces présentations techniques.

Pourquoi une telle initiative ?

L’initiative a pour objectif de réunir tous les acteurs du marché Toulousain autour de la technologie Java. En tant qu’intégrateur, utilisateur final ou simple observateur, le JUG est un endroit de partage et de communication. Les sessions techniques couvriront des sujets larges, de l’architecture logicielle en passant par les méthodologies agiles ou les Framework.

Quelle sera la fréquence des sessions ?

L’idée est d’organiser deux sessions trimestrielles en sachant que l’été est peu propice à ce type d’évènement (encore que). En fonction de l’engouement, nous adapterons la fréquence.

Qui seront les speakers ?

Des experts de tous bords et tous origines. Nous solliciterons les speakers du circuit habituel mais aussi des têtes moins connues, parfois des locaux du marché Toulousain. Si vous même souhaitez intervenir et avez des choses intéressantes à nous faire partager, n’hésitez pas à nous contacter.

Où seront organisés ces séminaires ?

A proximité de Toulouse bien entendu. Nous solliciterons les sponsors, les universités et toutes les salles susceptibles de nous accueillir gracieusement. L’idée est de tenir ces réunions de 19h à 20h30 en proposant un apéritif en fin de session pour susciter l’échange entre les différents participants.

Comment devenir partenaire ou sponsors ?

Nous sommes constamment à la recherche de sponsors et de partenaires. Si vous souhaitez faire connaître votre société et votre activité, le JUG est le lieu idéal. Nous affichons votre logo dans la page des sponsors et quelques minutes peuvent vous être consacrées lors d’une introduction de session par exemple. Tout dépend de la nature de votre participation financière. Certaines sociétés peuvent également proposer des goodies aux participants du JUG.

L’aspect organisationnel du JUG est supporté par une association loi 1901 dont les membres fondateurs et bénévoles sont :

  • Président : Florent Garin
  • Secrétaire : Gaël Blondelle
  • Trésorier : Sami Jaber
  • Membre d’honneur : Eric Descargues