Riviera DEV 2015

Les conférences du soleil : 11 et 12 juin 2015 au campus Sophia-Tech à Sophia-Antipolis

Sessions

  Titre Information Orateurs
Titre: 24 Minutes chrono pour bâtir une appli mobile
Description: Accrochez vos ceintures et plongez dans le monde merveilleux du développement mobile ! Dans cette session 100% Live Coding nous verrons comment bâtir une application mobile robuste, sécurisés et multiplateforme. Pour cela nous utiliserons un environnement de travail entièrement Open Source et familier aux développeurs. En utilisant l'approche hybride avec Cordova couplé avec le framework Ionic, nous pourrons facilement déployer cette application sur les différentes plateformes : iOS, Android, FirefoxOS et même, tenez vous bien, Windows Phone. Coté serveur, étant donné que nous ne disposant que de 24 minutes chrono, nous verrons comment des outils RAD (Rapid Application Development) intégrés à notre IDE peuvent nous faciliter la vie pour élaborer notre API. Cerise sur le gâteau, nous sécuriserons tout ce beau monde de manière non intrusive grâce au serveur d’authentification Keycloak, également Open Source. Bref, une session dynamique, teintée d'humour mais surtout très pragmatique, le but étant que spectateur puisse mettre en pratique le soir même ce qu'il aura vu.
Horaire: 11 juin 2015 14:40 - 15:40
Titre: A Gentle Path into Java EE Applications
Description: Creating a new Java EE Application is a daunting task. Choosing the specifications you need for your application and mixing and matching them is difficult, especially for newbies. In this presentation we will show how JBoss Forge can help overcome these difficulties. We will use it to first create a Java EE application that uses most of the Java EE specifications (JPA, Bean Validation, CDI, JSF, JAX-RS...) and afterwards test it (JUnit and Arquillian). From a white sheet, JBoss Forge will help us to quick start the application and gradually add extra features to it. Finally we will end up with a fully functional and testable application. If you attend this session, you will know how JBoss Forge guides you gently up the hill of Java EE application development.
Horaire: 12 juin 2015 11:30 - 12:30
Titre: Apéro avec les orateurs
Description: Venez prendre l’apéro avec les orateurs, leur poser des questions, continuer les discussions.
Horaire: 11 juin 2015 18:00 - 19:30
Titre: Applications Concurrentes Polyglottes avec Vert.x
Description: Vert.x est une plateforme pour créer des applications concurrentes, performantes et polyglottes sur la JVM. Cette session parlera des choix faits par Vert.x, de son modèle de concurrence et explique comment écrire des applications concurrentes et performantes de manière très simple. Nous aborderons quelques aspects clés de Vert.x comme le bus d'évènement distribué ou la haute disponibilité. La présentation parlera de Vert.x 3.0, de ses nouvelles fonctionnalités et montrera des exemples dans plusieurs languages tels que Java, Javascript, Groovy ou Ruby.
Horaire: 11 juin 2015 13:30 - 14:30
Titre: Boost your professional Karma
Description: Je vais vous révéler le secret pour booster votre karma professionnel !
Horaire: 12 juin 2015 09:20 - 09:40
Titre: Building a Custom Trimmed Down WildFly Distribution
Description: WildFly is a very versatile, highly modular enterprise class application server with very small core footprint, and various capabilities added to it by way of extensions, also known as subsystems. Not every application requires the full set of Java EE 7 APIs, or clustering with centralized management, and thanks to its modular design it’s not so difficult to create a custom distribution of the server. In cloud environments resources like disk space and memory are scarce, so trimming down or assembling a custom distribution of the server can come handy. WildFly 9 comes with completely new set of build assembly tools that allow us to provide different distributions like core, web & full to suite user's needs better. In this talk we will take a look at: * what different subsystems do and when you would need or not need them. * how the different subsystems depend on each other * how to identify the modules needed by a specific subsystem * how to build your trimmed down custom distribution of WildFly
Horaire: 11 juin 2015 14:40 - 15:40
Titre: Ceylon d‘ici à l‘infini : tour d‘horizon et le futur
Description: Ceylon est un nouveau langage de programmation élégant pour la JVM et les VMs JavaScript, fait pour le travail en équipe. Mais plus que ça, c‘est une plate-forme complète avec modularité, un SDK, des outils et IDEs. Nous allons présenter le langage, la plate-forme et son écosystème. Vous allez tout voir : du nouveau projet dans l‘IDE à la publication dans Herd, notre dépôt de modules, y compris le SDK. Nous présenterons également les projets Ceylon en cours tels que le système de build, l‘intégration Vert.x ou Cayla, le nouveau framework Web. Enfin nous présenterons les plans pour Ceylon 1.2 et au delà.
Horaire: 12 juin 2015 10:20 - 11:20
Titre: Comment réduire la quantité de données envoyé par une API avec du Push et JSON Patch
Description: De plus en plus, nos applications sont amenées à interroger une pléthore d'API Rest et à s'adapter à leur support : hier, il n'y avait que le desktop et le browser web comme support de nos applis, aujourd'hui, nous sommes dans l'ère des devices (mobiles, tablettes, etc.) avec leurs contraintes propres (réseau, batterie, etc.). Dans cette session, nous verrons comment économiser des data. D'abord, en éliminant les polling inutiles en appliquant le « Hollywood principle » (à une API Rest) : don't poll us, we will push you. Ensuite, en réduisant la taille des data via la RFC-6902 qui répond aussi au doux nom de « JSON-Patch ». Et tout ça en nous appuyant sur une appli Javascript avec le dernier framework JS de la mort qui tue (ReactJS ou AngularJS saupoudré de famo.us ou AngularDart ou ...).
Horaire: 12 juin 2015 13:30 - 14:30
Titre: Composing with Containers
Description: New container-centric tools are changing the way that projects are distributed and scaled in the cloud. Come learn how these open source building blocks can be used to compose complex, multi-container services that offer distinct advantages in scaling and reliability. This talk provides an overview of Docker, Kubernetes and Red Hat's new ""Atomic"" OS distributions - and preview of the next generation OpenShift platform.
Horaire: 12 juin 2015 14:40 - 15:40
Titre: Containerize your apps and deploy them like a King
Description: In this talk we will take a look at one of the most currently hyped technologies - Docker containers. We will explore Docker and learn when a good time is to use them for your projects. Once we have some containers, we will learn how to deploy them. But wait, the fun doesn't end there! Once you have them deployed, we will explore some tips and tricks on how to make them highly available and scalable to ensure a great end user experience.
Horaire: 12 juin 2015 17:00 - 18:00
Titre: Design Pattern Reloaded
Description: L'introduction des interfaces fonctionnelles en Java 8 permet d'utiliser facilement les notions de programmation fonctionnelle en Java. Mais Java reste un langage objet et il est je pense intéressant de regarder de plus près comment il est possible de tirer partie des deux approches en combinant celles-ci. En prenant comme prétexte de revisiter les design patterns du GoF, ce talk montre comment mettre en œuvre les techniques simples venues du monde fonctionnel en les associant avec les techniques habituelles de la programmation objet et ce dans le but de simplifier le développement de programmes.
Horaire: 11 juin 2015 10:10 - 11:10
Titre: Devoxx4Kids, une aventure fantastique qui a démarré à partir d'une simple question !
Description: En 2012, Arthur, le fils de Stephan Janssen, fondateur de Devoxx, demande à son père de lui montrer comment on peut programmer. A partir de cette simple question, une formidable aventure commence. Cette aventure s'appelle Devoxx4Kids, est représentée dans les 5 continents par 70 équipes, et plus de 4000 enfants y ont déjà participé. Vous aussi vous pouvez partager votre passion pour la programmation, c'est tellement enrichissant et plein d'inspiration qu'il est difficile de ne pas y succomber. Faites la différence, préparez le futur de nos enfants, maintenant !
Horaire: 11 juin 2015 09:30 - 09:50
Titre: Duchess France, 5 ans déjà !
Description: L'association Duchess France (duchess-france.org) vient de fêter ces 5 ans. C'est l'occasion de faire le point, de vous (re)présenter l'association, nos objectifs et nos actions...
Horaire: 11 juin 2015 09:20 - 09:30
Titre: Fast startup of large applications
Description: This talk discusses how one can optimize the startup cost of JavaScript applications. We will show how dart2js, our Dart-to-JavaScript compiler, allows incredibly fast startups of large applications.
Horaire: 12 juin 2015 13:30 - 14:30
Titre: Fier d'être polyglotte !
Description: C'est un fait! Les nouvelles applications, et les nouveaux développeurs sont polyglottes! Ils utilisent de différents langages, différentes solution de persistence... Au cours de cette présentation vous verrez pourquoi il est intéressant, et important d'utiliser plusieurs technologies, langages et datastore, dans vos applications. Vous verrez comment mélanger des programmes Java/Java EE, des langages fonctionnels et langages de scripts mais aussi pourquoi utiliser plusieurs solution de persistence telles que des bases de données relationnelles, des bases NoSQL comme MongoDB mais aussi Hadoop pour répondre aux nouveaux besoin 'Big Data/Big Users' En résumé : le bon outil pour le bon usage
Horaire: 11 juin 2015 11:20 - 12:20
Titre: Functional and Reactive UI Development
Description: The functional and reactive programming styles fit the development paradigm of Vaadin very well. This presentation explores how you can leverage these techniques to build better user interfaces on the JVM. The presentation will include lots of live coding examples using Java 8, Scala and Vaadin. You don’t need any prior experience with the tools to follow the presentation. A basic understanding of Java and interest in the functional approach are sufficient.
Horaire: 11 juin 2015 15:50 - 16:50
Titre: HTML5, the perfect cross-platform
Description: I will show how HTML5 can be used to create apps for different platforms (desktop, web, mobile, etc.) while reusing the same code.
Horaire: 11 juin 2015 11:20 - 12:20
Titre: InfluxDB : la base de données chronologique OpenSource autonome
Description: Après l'émergence des bases NOSQL de ces dernières années, voici une nouvelle espèce mise au goût du jour : la base de données chronologiques, parfaite pour accueillir les données de métrologie. Dans cette session, vous découvrirez cet outil autonome écrit en GO et doté d'un SQL-Like avec un support HTTP natif. Une live-session vous présentera comment l'interfacer avec votre langage préféré Java dans une application JEE classique. Que ce soient pour vos logs ou des évènements métiers, InfluxDB pourrait bien devenir votre backend préféré pour vos métriques. Cette session a été acceptée à DevoxxFR 2105 sous la forme d'une Tools In Action de 30m. Le présent format de 60m me permettra de l'étoffer et de détailler certains points.
Horaire: 12 juin 2015 15:50 - 16:50
Titre: Innovation Culture
Description: Imagine a culture where the input of the whole organization turns an individual idea into a user story in just a couple of hours, where everybody's goal is to make the customer’s job easier and more effective, and where you work on projects you love instead of projects you loathe. A great coding culture concentrates on making developers productive and happy by removing unnecessary overhead, bringing autonomous teams together, helping the individual programmer to innovate, and raising awareness among developers about how to create better code. I will talk about how to establish and foster a strong engineering-focused culture that scales from a small team to a huge organization with hundreds of developers. I'll give lots of examples from our experience at Atlassian to show that once you're working in a great coding culture, you won't want to work anywhere else.
Horaire: 12 juin 2015 09:00 - 09:20
Titre: IOT: de l'objet à la plateforme
Description: "C'est bien beau tous ces objets connectés, mais qu'est-ce que réellement un objet connecté?, comment ça communique? (et avec quoi?) ... Et au fait ça se gère comment? (parce que l'on peut se retrouver avec beaucoup d'objet connectés à gérer ... par exemple les tireuses à bières des pubs londoniens ... si elles étaient connectées ... hein?) On parle d'Internet of Things, mais j'appellerais ça aussi ""Interactions of Things"" Mon objectif est de vous montrer à travers quelques démos avec CylonJS, Mosca, Epoch , MongoDb et même un peu de Groovy (*), comment on peut construire simplement une plateforme IOT, de l'objet connecté à sa gestion et aussi vous présenter les grands principes de l'IOT Pour imager les démos je me ferais ""accompagner"" d'une sphero et d'une leapmotion (et peut-être d'autres jouets, tout dépend du facteur) (*): nous verrons ainsi l'importance des langages dynamiques dans ce nouveau monde
Horaire: 12 juin 2015 11:30 - 12:30
Titre: Keynote organisateurs et sponsors
Description: Présentation de la conférence et des sponsors
Horaire: 11 juin 2015 09:00 - 09:20
Titre: La révolution hors-ligne du Web arrive avec les Service Workers
Description: Les Services Workers arrivent dans nos navigateurs Web et nous promettent une petite révolution : hors-ligne, notifications push, synchro en background... Au cours de cette session, je vous propose de découvrir en détails ces Service Workers. Nous verrons comment les utiliser sur une application Web mobile pour développer une expérience “offline-first”. Nous aurons également l'occasion d'aborder les autres technos modernes utiles pour ce genre d'approche : AppCache, Promises, cache, fetch, IndexedDB...
Horaire: 12 juin 2015 17:00 - 18:00
Titre: Le code expliqué à ma mère - par CommitStrip
Description: On aurait pu dessiner des gaulois. Ou bien un reporter asexué avec son chien. Ou même une grosse famille d'américains jaunes et idiots. Mais non, nous, on a décidé de dessiner des codeurs. Et personne n'y comprend rien. Enfin, sauf peut être vous, mais surement pas ma mère, qui croit au mieux que je fais de l'ordi toute la journée, au pire que je suis toute la journée sur des sites de biiiiip. Alors, on va lui expliquer c'est quoi le code et ce que font les codeurs. Parce que, on rigole, mais faudrait qu'elle finisse par comprendre que tapez Google dans Google, c'est pas comme ça que ça se passe normalement.
Horaire: 12 juin 2015 09:40 - 10:00
Titre: Marché au poisson des présentations
Description: Chaque présentateur à 30 secondes chrono pour vendre sa présentation du jour.
Horaire: 11 juin 2015 09:50 - 10:00
Titre: Marché au poisson des présentations
Description: Chaque présentateur à 30 secondes chrono pour vendre sa présentation du jour.
Horaire: 12 juin 2015 10:00 - 10:10
Titre: Meteor et Startups d'État
Description: Meteor est un framework tout en JavaScript pour construire des applications web. Il est souvent connu pour la facilité avec laquelle il permet de construire des applications temps-réel. Mais ce n'est qu'une partie de l'histoire… Dans cette session, j'expliquerai ce qu'est et n'est pas la réactivité. Je reviendrai sur les isopacks, qui rendent possible l'uniformisation des APIs entre côtés client et serveur, donnant ainsi un sens au partage du langage. J'évoquerai DDP, le « REST des websockets ». Je présenterai ce que j'ai aimé et ce qui n'a pas marché. En bref, je partagerai avec vous l'expérience accumulée dans le contexte assez extrême de la modernisation du gouvernement français par la construction d'applications web au sein des Startups d’État.
Horaire: 11 juin 2015 17:00 - 18:00
Titre: Next-generation asynchronous JavaScript
Description: Callbacks are probably the greatest source of troubles in JavaScript. The good news is that new asynchronous patterns have appeared and callbacks are approaching end of life! In practice two important evolutions - async/await and Observables - are being discussed in the ECMAScript7 standardization group and are going to change the way we develop in JavaScript. Even better: they can already be used today with libraries such as babel or RxJS - so it is worth having a look and anticipate the move!
Horaire: 12 juin 2015 15:50 - 16:50
Titre: On est aussi des David Guettas : apprenez à mixer
Description: Et devenez DJ en un rien de temps !
Horaire: 11 juin 2015 10:10 - 11:10
Titre: On est aussi des MacGyvers : Visitez le FabLab
Description: Visite organisée du FabLab
Horaire: 11 juin 2015 13:30 - 14:30
Titre: On est aussi des parents : Devoxx4parents
Description: L’équipe de Devoxx4Kids Sophia-Antipolis vous présentera les ateliers que nous faisons pour vous permettre d’enseigner la programmation à vos enfants.
Horaire: 11 juin 2015 11:20 - 12:20
Titre: On est aussi des Top Chefs : atelier sushi 1
Description: Comment faire les sushis comme un pro chez vous, en deux parties (vous devez suivre les deux parties).
Horaire: 11 juin 2015 14:40 - 15:40
Titre: On est aussi des Top Chefs : atelier sushi 2
Description: Comment faire les sushis comme un pro chez vous, en deux parties (vous devez suivre les deux parties).
Horaire: 11 juin 2015 15:50 - 16:50
Titre: On n'est pas que des cobayes: Object Mapper et NoSQL sont-ils solubles?
Description: 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](http://www.france5.fr/emissions/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.
Horaire: 11 juin 2015 15:50 - 16:50
Titre: Peut-on encore coder des "webapps" modernes sans une batterie d'outils à la c...?
Description: Au départ, j'avais choisi le JavaScript parce que c'était simple à mettre en oeuvre, que le langage est plutôt facile d'accès (si si!). Et puis JavaScript a gagné en popularité (probablement à cause de la disparition de Flash) et certains se sont dit qu'il fallait rattrapé Java en termes d'outillage. Du coup, maintenant, la moindre webapp nécessite d'avoir installé npm, bower, grunt, yeoman etc... et de télécharger la terre entière. Si en plus tu ne connais pas Angular, tu pars avec un handicap ... Et pourtant il est possible de faire des webapps modernes sans ces outils (presque à l'ancienne) avec des frameworks légers, sans grunt & co, sans transpiler votre code, avec des ""custom tags"" légers à la React (un peu comme des webcomponents sans Polymer), sans les directives compliquées et difficilement maintenables d'Angular. Ce sera l'occasion de voir la différence entre ""custom tags"" et ""web components"" (ou la différence entre le virtual dom et le shadow dom) Je vous démontrerais ça en vous présentant le framework Riot.js qui permet de faire des ""custom tags"" sans se fatiguer (enfin pas trop). Nous verrons aussi à quel point il est facile de l'utiliser avec d'autres frameworks ... Et si vous êtes sages, on fera même un peu d'EcmaScript6 ;)
Horaire: 11 juin 2015 10:10 - 11:10
Titre: PROXY 2.0
Description: Depuis la version 1.3 du JDK, il existe une classe java.lang.reflect.Proxy qui permet la génération de proxy (une classe implantant une ou plusieurs interface) à l'exécution. Utilisée initialement pour le support de RMI, cette API (où ses dérivées) est utilisées par de nombreuses applications/frameworks comme Hibernate, Spring ou Weld. Malheureusement, le design de cette API montre son âge, son usage est non transparent (stacktrace de la mort), son implantation est lente (la VM est perdu) et la gestion des nouveautés comme les méthodes par défaut ne sont pas pris en compte. Ce talk va raconter l'histoire de l'API Proxy 2.0, de son design et de son implantation et juste pour rire répondre à la question que tout le monde se pose "comment faire tourner des lambdas Java 8 sur Java 7". Le code est librement disponible: https://github.com/forax/proxy2
Horaire: 12 juin 2015 14:40 - 15:40
Titre: Switch to Swift
Description: Révélé au public en Juin dernier lors de la conférence WWDC, Swift est déjà classé 22ème au RedMonk index. Adopter Swift ce n’est pas juste faire un relooking de votre code Objective-C avec une syntaxe plus jolie. C’est un réel changement de paradigme: d’un langage dynamique, orienté objet à un langage statique fortement typé ouvrant la voix de la programmation fonctionnelle n’y a-t-il qu’un pas? En travaillant avec Swift (depuis le premier jour, coup de foudre oblige) sur les librairies open source d’AeroGear, en tant que développeur, j’ai enrichi ma boite à outils d’un nouveau couteau suisse plein de super-pouvoirs. J’aimerais partager avec vous mon expérience en illustrant mon propos avec quelques dessins, des extraits de code, des bouts de playground et un soupçon d’Xcode. C’est sûr on va bien s’amuser.
Horaire: 11 juin 2015 13:30 - 14:30
Titre: Tenir ses applications à l'oeil avec Hawkular Metrics
Description: Hawkular Metrics est une base de données de séries temporelles, construite avec Wildfly et Cassandra. Elle permet de stocker de très grandes quantités données qui pourront être interrogées et agrégées par la suite. Cette présentation commencera par une histoire du projet Hawkular, suivie d'un aperçu des fonctionnalités et de l'architecture de Hawkular Metrics. Puis vous apprendrez comment vous lancer avec un serveur et, pas à pas, comment surveiller tous les composants de votre pile logicielle, depuis le système d'exploitation jusqu'à votre application, en passant par le middleware.
Horaire: 12 juin 2015 10:20 - 11:20
Titre: Why Angular 2?
Description: When the AngularJS team announced works on a new version of their super-popular framework the community kept asking: why do you want to change something that works so well? This talk aims at answering this very question by going over motivations for the new version of the framework, main design decisions, its strengths and new exciting features. Hopefully after one hour spent together you will be convinced that Angular 2 is the best client-side framework for your next project!
Horaire: 11 juin 2015 17:00 - 18:00