La Progressive Web Application Codeurs en Seine est disponible pour une expérience hors ligne et la possibilité de créer votre programme personnalisé.
L'accueil des participants démarre à 8h00 7h45.
Pour information, la TCAR prévoit des grèves le 21 novembre de 8h à 8h55. Pour cela, nous ouvrons l'accueil des visiteurs un peu plus tôt à 7h45 pour permettre à tout le monde de prévoir un peu de marge ;)
Beaucoup parlent de la fameuse règle du KISS (Keep it Simple and Stupid). Et c’est dommage. Car simplifier quelque chose est bien loin de le rendre stupide. Comment expliquer la Blockchain, la fusion nucléaire ou le principe de résistance électrique en série à des enfants de 6 ans Dans un monde d’experts, de buzz words et de corporate bullshit, il est peut-être temps de revenir à l’essentiel, et d’oser simplifier. Cela ne peut que nous rendre plus efficace.
Comment hiérarchiser correctement son code CSS ?
Voilà une question à laquelle je me suis régulièrement heurtée ces 10 dernières années…
J'ai essayé plusieurs approches, mais aucune ne m'a réellement séduite jusqu'à ce que je découvre ITCSS l'année dernière.
ITCSS est l'acronyme pour Inverted Triangle CSS. Il s'agit d'une méthodologie développée par Harry Roberts visant à organiser le code CSS de la manière la plus logique et pertinente qui soit. Elle définit un cadre et un certain nombre de règles à respecter quand à la hiérarchisation du code source, et c'est tout. Aucune convention de nommage spécifique n'est imposée, ce qui lui permet d'être appliquée à tous les projets (aussi bien les existants que les nouveaux). À l'instar du fonctionnement de CSS, cette méthodologie tire partie de la cascade pour limiter la spécificité des sélecteurs à leur strict minimum et éviter au maximum les surcharges inutiles.
Si vous aussi, vous en avez marre de vous demander comment organiser votre code CSS, venez découvrir ITCSS.
Vous pourrez commencer à l'utiliser dès la semaine prochaine. ;-)
De nombreux services en ligne existent pour gérer en toute sécurité des appareils IoT à grande échelle : "Azure IoT" de Microsoft et "AWS IoT" d'Amazon sont parmi les plus connus.
Google propose également sa solution : "Cloud IoT" basée sur la plate-forme Google Cloud (GCP). Dans ce talk, nous partirons d'un microcontrôleur neuf ultra connu et abordable, et notre but sera tout d'abord de découvrir comment écrire du code pour ce composant nous permettant de récupérer des informations sur notre environnement. Ensuite, nous ferons en sorte que ce composant envoie ses données vers un service Cloud, pour enfin découvrir ce que permettent ces solutions en ligne dédiées à l'IoT.
Pour l'exemple, et parce qu'il faut bien choisir une solution, nous utiliserons Google Cloud IoT Core, les concepts restant similaires sur les autres plate-formes.
Nous autres développeurs front sommes continuellement confrontés à la nécessité d'apprendre : un nouveau framework / librairie JS (framework React, libs Redux, etc...), un nouveau langage (Dart, Kotlin), et même des changements majeurs sur les domaines que nous pensions connaître (les hooks sur React par exemple).
Mais si au final, cela n'était pas si important? Et si, en maîtrisant la base, c'est à dire nos patterns, nous étions capables de nous adapter à moindre coût aux incessants changements de notre monde frontend?
Nous verrons dans ce talk comment, de manière cyclique, les frameworks et librairies reinvétent la roue, en recyclant pour la énième fois tel ou tel pattern connu de nos arrières grands parents. Et en réussissant à se faire mousser avec ça! Et tant qu'à faire, nous passerons en revue quelques patterns voués à perdurer encore très longtemps dans notre écosystème...
A partir d’un Dockerfile pris “au hasard” sur Github, comme un bon vieux monolithe, nous allons, en appliquant les bonnes pratiques, transformer cette application en un ensemble de microservices réutilisables et compréhensibles
On commencera par externaliser les services utilisés par notre application en utilisant des images existantes et les associant dans un fichier Compose.
Nous allons optimiser notre premier jet en vidant les caches et en supprimant les layers inutiles générés lors du build de notre application.
On découpera les différentes étapes de build pour ne pas avoir à conserver les dépendances de développement dans l’image finale
Nous améliorerons la maintenabilité en utilisant des images officielles plutôt qu’en installant à la main nos dépendances.
Nous allons voir comment éviter de faire tourner notre application en tant que root.
Que se passe-t-il pour vos utilisateurs quand l'un des (micro) services dont dépend votre application vous laisse en plan ?
Le développement d'applications web s'industrialise pour le bonheur de tous : nous testons nos applications, nous les rendons performantes et le plus accessible possible pour nos utilisateurs.
Pourtant, en m'intéressant au sujet de la résilience d'une application web, je me suis rendu compte que nous étions encore tous un peu naïfs dans notre façon de concevoir des sites.
Après avoir rappelé le concept de résilience, j'entrerai rapidement dans le vif du sujet en vous présentant le Circuit Breaker : un design pattern prévu pour rendre un système résistant aux indisponibilités extérieures.
Je m'appuierai sur l'expérience acquise sur PrestaShop (un CMS e-commerce Open Source), qui m'a conduit à créer une librairie PHP nommée Resiliency et que nous sommes en train de déployer dans tous les aspects de notre projet pour rendre notre parc de 300 000 boutiques indépendant de nos propres services internes.
En moins d'une heure, vous apprendrez à mettre en place un Circuit Breaker et à le tester.
(Beaucoup!) plus important, vous adopterez un nouveau réflexe particulièrement utile: penser au pire d'abord, pour garantir une expérience "dégradée" maîtrisée en pensant au confort de vos utilisateurs.
Quel est le rapport entre CIA, sabotage et manifeste agile ?
Vous avez l’impression que votre entreprise vous empêche d’être efficace, et cela vous démotive ?
Le manuel d’anti-sabotage vous apportera des techniques concrètes, applicables par tous. Agissez au quotidien pour rendre votre entreprise plus performante et plus épanouissante.
Et encore une fuite de numéros de cartes de crédit sur internet! https://www.infoq.com/news/2018/11/british-airways-data-breach
C'est révoltant n'est-ce pas ? Mais attends, qu'est-ce qu'on fait nous pour s'assurer que notre appli n'est pas une passoire?
Dans cette live-coding-hacking session, venez découvrir les erreurs les plus communes en sécurité, que la grande majorité d'entre nous font sans même le savoir!
Après cela, vous ne verrez plus votre application de la même manière...
Votre prochaine application React ? C’est avec les hooks que vous devez la faire et nous allons vous expliquer pourquoi !
Tout au long de cette conférence, nous vous montrerons la création d’une application from scratch avec React et ses nouveautés (les hooks !!) mais aussi le routing, la gestion de l’internationalisation et la communication avec le backend !
#react #styledComponents #hooks #webpack #i18N
Tous ces mots vous font peur ? Pas de panique ! Nous somme là pour vous aider !
Une conférence à ne pas rater si vous voulez connaître React de R à t ;)
Nous n’avons pas tous la chance d’être une startup partant de la feuille blanche pour créer son SI.
Avec 58 ans d’existence, la Matmut possède le plus important système d’information de la région qui s’appuie sur 2 Data-Centers et …du Cobol.
Le Cobol est né en septembre 1959 et 60 ans plus tard la finance mondiale repose toujours sur lui.
A la Matmut, il continue de répondre aux 300 nouvelles demandes annuelles du développement Backoffice. Le principe de KISS (Keep It Simple, Stupid) et beaucoup de bon sens ont souvent été déterminants dans les choix de nos architectures.
En 15 minutes, nous vous ferons découvrir la magie du Cobol et les architectures en place pour consommer nos données dans les projets .Net/C#, WepAPI, BigData, IA et React.
Le but de la #webperf c'est de fournir une expérience de chargement rapide, puis de rester fluide lors des interactions utilisateur. LightHouse n'étant pas un outil très précis, nous allons plutôt découvrir Webpagetest et Chrome Dev Tools qui sont les 2 outils majeurs de la performance frontend pour trouver les premières pistes qui feront de votre site un site agréable à utiliser.
Pour profiter pleinement de la démo, pourquoi ne pas précharger un résultat de test Webpagetest et Chrome Dev Tools sur votre portable, si vous l'amenez ? Cela vous permettra de vous familiariser avec ces interfaces complexes.
Sans utilisation des web workers, JavaScript est un langage monothread, qui offre toutefois la possibilité d'exécuter du code de manière asynchrone.
A travers une exploration du fonctionnement de la stack, des diverses queues et de l'event loop, ce quickie sera l'occasion de mieux comprendre le fonctionnement et les limitations de cette gestion l'asynchronisme en JS.Le RGPD est entré en application en France fin mai 2018. Depuis, j’ai exercé mon droit d’accès à mes données auprès de plusieurs entreprises et j’ai appris sur moi-même.
Je propose de présenter les démarches à suivre pour obtenir ses données, les analyses de mes données obtenues auprès de Trainline (billets de train), Monoprix (supermarché) et mes recherches Google.
Enfin, je termine avec une ouverture sur le futur de l’accès et la portabilité des données.
En septembre 2010, à Rouen, naquit Sushee, micro-entreprise spécialisée dans le community management et la communication. 8 ans plus tard, la société est bretonne, elle compte 15 salariés, et développe des jeux vidéo pour Square Enix, un géant du secteur. Ce qu’il s’est passé entre les deux Nous le découvrirons ensemble pendant cette keynote !
Bienvenue dans le JavaScript Main Code Universal ! Comme pour le scénario des films MCU, je vais vous prouver qu’il est possible d’utiliser le même code JS sur des supports différents. Web, Mobile, Desktop App, … rien n’est impossible pour notre langage héros ! Il se trouvera également au côté de ses fidèles compagnons : NodeJS, Cordova et Electron.
Dans les salles le 21 Novembre 2019 à la Kindarena.
Dans un contexte où de plus en plus d’entreprises ont à cœur le bien-être de leurs employés, le télétravail se développe. Lorsque cela reste ponctuel, tout va pour le mieux. Mais lorsqu’une personne décide de partir à l’autre bout du pays parce qu’elle en a marre de Paris, c’est une autre histoire !
Je vous propose de passer en revue quelques clés pour réussir à travailler en équipe tout en étant dans des villes différentes. Vous verrez que la communication est au cœur du sujet et découvrirez quelques conseils, que l'on travaille en télétravail ponctuel ou de longue durée.Que se cache t-il derrière ce titre bien racoleur?
JavaScript, Java, Python, PHP …Tous les développeurs sont persuadés que leur langage est propre, logique, cohérent ... Qu'en est il vraiment?
Je vous propose un petit tour d’horizon des énormités/incohérences que l'on peut retrouver dans différents langages de programmation.
Sortez votre hache de guerre et votre chope de bière car aujourd'hui en Normandie, aucun langage ne sera épargné !
Ça va saigner !
On entend beaucoup parler du Design System aujourd'hui. La nouvelle façon de concevoir le design nous remet en question sur la façon de développer nos interfaces.
Mettre en place un Design System n'est pas chose aisé mais apportera des avantages considérables sur le long terme au sein d'un projet. De plus, il réunit un autre concept d'architecture css, qu'est l'Atomic Design.
Avec le concept d’Atomic Design, les ingénieurs front-end pensent différemment leurs développements pour faciliter la modularité des éléments de l’UI et gagner en efficacité. Le Design System vient créer un pont entre ingénieurs et designers afin d’intégrer la logique de l’Atomic Design dès les premières maquettes.
JHipster est aujourd’hui l’un des projets Open Source Français les plus populaires, avec plus de 14,000 étoiles sur GitHub, plus de 500 contributeurs, et des centaines d’entreprises utilisatrices. Il permet de générer en un temps record une application complète, utilisant une stack moderne basée sur Spring Boot, Angular ou React. L’intégration de nombreuses technologies prêtes à l’emploi avec un focus à la fois sur l’expérience développeur, la qualité du code et la mise en production, en font un outil reconnu pour qui veut rapidement réaliser une application métier.
Dans cette session introductive, nous étudierons les principales options proposées par JHipster, et nous réaliserons une application de bout en bout: génération du code, développement de composants en utilisant les workflows prêts à l’emploi, et mise en production. Ce sera également l’occasion de faire le point sur les dernières nouveautés du projet et de parler de sa roadmap.De plus en plus d'éditeurs logiciels fournissent leurs solutions en SaaS, et tendent à déployer leurs applications en Continuous Delivery. Pour cela, les contraintes business impliquent souvent de pouvoir déployer un nouvelle version applicative sans interruption de service.
Les techniques classiques de Rolling Update permettent de réaliser une montée de version sans interruption de service assez facilement. La complexité intervient lorsque l'on gère une base de données relationnelle, et que l'on souhaite faire évoluer son schéma, le tout, toujours sans interruption de service. Depuis 3 ans, au sein de Mirakl, nous avons mis en place un système de montée de version sans interruption de service avec une base relationnelle. Ce talk est un retour d'expérience présentant les mécanismes que nous avons mis en place pour réaliser ces montées de version sans interruption. Il se concentre sur la partie applicative, et les problématiques engendrées par un tel process. Le but est d'être le plus concret possible, avec des exemples de "la vraie vie", notamment quelques astuces pour réaliser ses migrations sans douleur avec des frameworks comme Hibernate ou jOOQ. Les exemples sont donnés en Java avec une base de données PostgreSQL, mais les principes s'appliquent à n'importe quel language et à la plupart des bases de données relationnelles.Que vous soyez employé, indépendant, manager ou encore dirigeant, le bien-être au travail nous concerne tous. Après avoir cherché le saint-Graal qu'est l'emploi idéal, nous souhaitons partager nos expériences et nos points de vue.
Comment une entreprise peut créer un environnement favorable à l'épanouissement de ses employés ? Qu'est-ce qui a pu nous pousser à démissionner ? Comment pouvons-nous agir pour devenir contributeur du bien-être au travail ? Ensemble, construisons notre job de rêve avec bienveillance, tolérance et patience. ❤️❤️Avez-vous déjà ressenti de la frustration en jouant à un jeu vidéo à cause de commandes non intuitives ? Vous êtes-vous déjà ennuyés devant des pages de chargement trop longues ? Vous aussi, vous pensez que les inventaires sont souvent mal conçus ? Si vous vous sentez concernés par ces problématiques, alors vous avez aussi expérimenté des problèmes d'expérience utilisateur dans votre vie de gamer. Nous vous proposons un nouvel angle de vue sur la UX, en vous apportant des exemples concrets issus des grands hits des jeux vidéo. En partant d'exemples de rétrogaming jusqu'aux blockbusters récents de l'industrie du jeu, nous ferons le tour d'éléments essentiels qui concourent à une bonne expérience. La UX est parfois là où on ne l'attend pas, venez explorer une nouvelle approche plus parlante et plus fun sous l'angle des jeux vidéo, où utilisabilité et jouabilité ne sont pas si éloignées ! Et si vous reconsidéreriez l'expérience utilisateur sous l'angle de l'expérience gamer ?
Aujourd’hui tout le monde connait les frameworks Angular, React Vuejs, mais savez-vous utiliser JavaScript ?
Savez-vous modifier votre framework favori, comprendre comment fonctionne un binding , comment fonctionne un router ?
Et pourquoi utiliser un framework pour un simple POC alors que parfois il est si simple de revenir aux sources ?
Et si on se posait les bonnes questions ?
"La programmation fonctionnelle c'est un truc de matheux" : voilà la vision que j'en avais il y a encore 1 an.
Monade, endofunctor, applicative sont des mots qui viennent régulièrement nous faire saigner les oreilles lorsque l'on nous parle de programmation fonctionnelle. Des concepts nouveaux et une façon de penser différente pour des développeurs qui, comme je l'étais, sont habitués à Java et ses lambdas.
Dans ces conditions la transition POO->FP ne semble pas aisée. Est-elle même vraiment intéressante et utile au quotidien?
Et s'il était possible de démarrer la FP en laissant l'aspect théorique de côté pour introduire petit à petit des concepts fonctionnels dans notre façon de développer, presque sans s'en rendre compte, apprendre au fur et à mesure et finir par ne plus pouvoir développer que comme ça?
A travers ce talk je vais vous présenter comment cette transition très progressive a eu lieu dans notre équipe grâce à Kotlin et Arrow. Le talk laissera la part belle aux exemples qui illustreront que l'objectif n'est pas simplement le côté hype de pouvoir dire "Hey! on fait de la FP !!" mais que notre code est aujourd'hui beaucoup moins sujet aux effets de bord indésirés, plus lisible et plus maintenable.
Attention toutefois, à l'issue du talk vous risqueriez ne plus vouloir écrire de boucles for...
17 ans... Même pas l'âge de raison pour un humain mais l'équivalent d'une période géologique à l'échelle de l'informatique. C'est pourtant l'âge de .NET. Alors comment faire du neuf avec du vieux ? C'est toute l'histoire de .NET Core. Libérer de ses chaînes, .NET redevient une plateforme performante et innovante. Dans ce talk, je me propose de vous conter cette histoire. Maintenant est-ce que vous, vous saurez vous libérer de vos idées préconçues et oserez franchir le seuil de la salle ?
Le deep learning est au coeur de la révolution de l'IA, on en parle beaucoup, ça fascine et ça fait bien peur : on dirait de la "magie noire" hors de portée du spécialiste mais tout ça va contrôler nos vies ! ( ou les contrôle déjà ... )
Ce talk a pour but d'exposer les principes de base qui font marcher le deep-learning afin de démystifier cette technologie, pour les non spécialistes. Notez bien que talk a pour but d'être accessible si vous n'êtes ni une bête en math, ni un developpeur, et il n'est certainement pas pour vous si vous jouez à TensorFlow tout les jours, ou que vous avez lu et compris toute la biblio de LeCun, Hinton et Bengio... Vous n'en sortirez pas expert mais j'espère avec un peu moins l'impression de magie noire, et du coup de leurs limites.
Nous visiterons aussi un petit tour du zoo des réseaux, pour voir un peu de quoi sont capables ces réseaux, et comment ils sont utilisés aujourd'hui.
Ça fait un moment que je me pose cette question : Comment va évoluer mon métier ? L’idée est pour moi de détecter les signaux faibles, de voir l’évolution du métier dans les années à venir. Pour ça, j’ai commencé par synthétiser ma veille et mes idées principales et ensuite je suis allé confronter mes idées avec diverses personnes du monde du design et de l’UX. J’ai vu émerger différentes thèmes autour de l’éthique, la temporalité du design, les promesses technologiques, le « business as usual », les designers stars ou encore la formation.
Delà plusieurs problématiques ont émergé :
Je vous propose de réfléchir autours des résultats de cette enquête et de l'impacts que ça pourrait avoir sur vos organisations.
En quelques années, Kubernetes s’est imposé comme l’orchestrateur incontournable quand on utilise des containers. Mais avec la maturité est venu la complexité: il est difficile de maitriser Kubernetes en détails et on se pose souvent des questions, notamment quand on se lance.
ette présentation est un retour d’expérience autour de bonnes pratiques, d’astuces et d’erreurs à éviter pour utiliser Kubernetes plus efficacement. Bref des choses qu’il vaut mieux connaitre le plus tôt possible quand on fait du Kubernetes.
Etre une équipe auto-organisée et pluri-disciplinaire implique une forte cohérence : il faut bien s'entendre, mais oser se dire les choses, il faut se compléter et se soutenir autant humainement que techniquement. Cette valeur forte de l'agilité est souvent mise à rude épreuve selon la manière dont sont constituées les équipes. Et à la base de la constitution des équipe, il y a l'embauche même des collègues.
Dans ma boite, nous nous embauchons les un·e·s, les autres, du coup nous travaillons notre cohésion dès l'embauche et ça fonctionne ! On aime travailler ensemble et on se tire vers le haut.
Dans cette conf, je vous propose de détailler notre process de recrutement pas si courant et pourtant plein de bon sens, en espérant qu'il fasse germer des idées pour que vous aussi, vous choisissiez vos futur·e·s collègues !
Vous ne savez pas qui consomme quelles APIs ?
Supprimer un champ obsolète ? Vous n’y pensez plus, il est peut-être important pour quelqu’un quelque part !!
Ce vieux Endpoint est-il toujours utilisé ? Par qui ? Personne ne le sait !
Tous les clients ont-ils migré vers la nouvelle version ? Peut-être…
Vous avez une belle architecture micro service et vous échangez des données avec d'autres systèmes.
Mais faire évoluer vos APIs est devenu fastidieux et risqué.
Venez découvrir, à travers différents outils (Pact, Spring Cloud Contract), de quelle manière vous pouvez sécuriser vos montées en version et documenter vos APIs avec le contract testing.
Nous verrons ensemble comment :
Cette année nous donnons 45 mn à Frédéric Leguédois. Nous ne connaissons pas encore le sujet. Cela sera une nouvelle conférence, elle sera peut être plus sérieuse que d'habitude. Mais on est sur que cela sera bien !