Articles and videos: archive
Our screencasts
“Git undo” or the Art of Rolling Back
Priced contentMaxime is back at it, again with loads of animated diagrams and examples of actual workflows, to set you free by teaching you how to cancel or rollback just about anything, from staging to extraneous commits to merges to rebasing.
JavaScript: this is it
Priced contentFinally grok how “this” behaves in JavaScript, from nominal cases to to arrow functions to API overrides to one-shot binding to persistent binding, etc. A must-watch!
- free!
Git Core Concepts
Free contentMaxime walks you through a series of crystal-clear explanations, replete with animated diagrams and example CLI uses, for all of Git’s fundamental concepts in order to illuminate your daily usage: WD, index/stage, local repo, stash, references, HEAD, branches, labels… An absolute must-have!
Writing Modern Asynchronous JavaScript
Priced contentFrom raw callbacks to async debugging to promises to async/await, this packs everything you need to know to master writing asynchronous code in Node and browsers, steering clear of traps, pitfalls and anti-patterns, and leveraging best practices.
Mastering GitHub
Priced contentThe follow-up to our first video series at O’Reilly, with a deep dive into super-advanced GitHub API topics, fully-customized GitHub Pages, Gist hidden pro-tips, etc.
- free!
Tout ce que vous avez toujours détesté dans le web chez Microsoft
Free contentVous n’associez peut être pas web et Microsoft. Même si on a pu faire quelques erreurs par le passé, nous vous présentons dans cette vidéo la direction intéressante que prend Microsoft dans ce domaine. Réalisé avec Etienne Margraff pour ouvrir la gamme Premium du canal web de MS experiences Online.
Learning GitHub
Priced contentThe reference video course on GitHub, from creating your account to making advanced use of Pull Requests, plus keyboard shortcuts, hidden features, issue management, special files for community management…
- free!
Dev Avengers pour le web front
Free contentÀ partir de rien, comment obtenir une boucle de feedback ultra-rapide (moins d’une demi-seconde) entre l'édition de ses fichiers sources (dans DevTools ou ailleurs) et leur exploitation live dans la page web en cours, même au travers d'une chaîne de build riche.
Slides and videos from our talks
Maîtrisez Git comme un chef !
Flutter France ParisMaxime intervenait dans le cadre du meetup virtuel de fin avril de Flutter France pour leur faire un de ces talks sur les Git Protips dont nous avons le secret…
Astuces d'utilisation des commandes, options utiles, les “must have” en configuration, le rebase sans peur et sans peine… toute ces petites choses qui feront que votre utilisation de Git serait plus agréable et efficace !
So, what‘s new in ES2022?
Confoo Montréal 2019 Montréal, CAYes, okay, ES2015 rules, and ES2016–2019 bring about a lot of cool things (most notably async/await), but a ton of cool stuff is expected to land in the next few years, too… and we can play with it already!
Christophe takes you through a whirlwind tour of the upcoming features he’s most excited about, due to become official in 2020, 2021… or 2022 ;-)
Fun & Games with ES Proxies
Confoo Montréal 2019 Montréal, CAProxies let us do metaprogramming in JavaScript, which is a really cool thing.
There are well-established, useful patterns for it to be sure, and we’ll see a few of these. But they can also be used for less obvious results, or plain fun with mischevious tricks and quirky behavior!
Mastering Webpack from the ground up
Confoo Montréal 2019 Montréal, CAEverybody uses Webpack… and everybody fears to touch the config. It’s always grown organically out of slapdash copy-and-paste from StackOverflow and a myriad of other sources, and it “sort of works,” but nobody owns it. And yet, docs have been consistently getting better since v2, v4 made a major “sane defaults“ push, and it just keeps improving all the time.
It’s time you learn what the building blocks of a Webpack config are, how to start small and how to scale! Not to mention leveraging the amazing DX powers of the Webpack Dev Server, and how to best use its core build optimization techniques.
- Delicious Insights is organizer
dotJS 2019
dotJS 2019 ParisChristophe est le MC résident de dotJS, sans doute la plus grande conférence 100% JavaScript au monde avec JSConf.EU. Sur deux jours (un pour le front-end, un pour le back-end et le langage pur), vivez une trentaine de présentations par des orateur·rice·s de premier plan, en mode single-track, avec de très nombreuses opportunités de discussions et de networking tant avec les intervenant·e·s qu’avec le reste de la communauté.
Watch the video Alors, quoi de neuf en ES2022 ?
Blend Web Mix 2019 LyonAlors oui, OK, ES2015 ça déchire, et ES2017–2019 ont amené plein de trucs cool (notamment autour de async/await), mais il y en a encore davantage qui débarque dans les toutes prochaines années, et on peut le plus souvent déjà jouer avec !Christophe vous emmène faire un tour de manège à travers les prochaines fonctionnalités qu’il aime le plus et qui deviendront officielles bientôt… ou peut-être plus tard.
See the slidesWatch the videoDeep-dive in React Hooks
Tech talks Station F, ParisReact’s been abuzz with hooks for a yea rnow, and they shipped back in Ferbruary. Christophe walks you through this amazing new feature that brings out the core essence of React and makes coding components so much more enjoyable.
See the slides- Delicious Insights is organizer
Git reset : rien ne se perd, tout se transforme
Paris Web 2019 Delicious Insights, ParisGit est un outil incontournable qui apparait parfois trop complexe, surtout quand on a pas lu la documentation. Il nous promet de pouvoir triturer et tordre notre historique de projet dans tous les sens. Sur le papier c'est génial, mais c'est tout aussi effrayant car on a vite peur de perdre du travail. Heureusement la commande `reset` associée souvent au `reflog` vole à notre secours.
On va dédiaboliser une bonne fois Git et voir qu'on a ceinture, bretelles et airbag. On en profitera aussi pour arrêter cette fausse bonne pratique du `git reset --hard` que beaucoup utilisent sans avoir réellement conscience du danger inhérent.
Fun and Games with ES Proxies
Fronteers AmsterdamProxies let us do metaprogramming in JavaScript, which is a really cool thing. There are well-established, useful patterns for it to be sure, and we’ll see a few of these. But they can also be used for less obvious results, or plain fun with mischevious tricks and quirky behavior!
See the slidesWatch the videoQuel format pour transmettre ?
HumanTalks Paris ParisIl existe bien des façons de transmettre la connaissance, notamment la connaissance technique : cours traditionnel, formation professionnelle, screencast, atelier, présentation en conférence… Quel format pour quel objectifs ? Christophe en compare rapidement les forces et faiblesses, parle de leurs pertinences et liste quelques meilleures pratiques à garder à l’esprit.
See the slidesWatch the video- Delicious Insights is organizer
NodeSchool Paris #24
NodeSchool Paris Mozilla ParisSamedi 29 juin 2019, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
- Delicious Insights is organizer
NodeSchool Paris #23
NodeSchool Paris Mozilla ParisSamedi 23 mars 2019, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
- Delicious Insights is organizer
NodeSchool Paris #22
NodeSchool Paris Mozilla ParisSamedi 22 février 2019, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
- Delicious Insights is organizer
NodeSchool Paris #21
NodeSchool Paris Mozilla ParisSamedi 24 novembre 2018, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
- Delicious Insights is organizer
dotJS 2018
dotJS 2018 ParisChristophe est le MC résident de dotJS, sans doute la plus grande conférence 100% JavaScript au monde avec JSConf.EU. Sur deux jours (un pour le front-end, un pour le back-end et le langage pur), vivez une trentaine de présentations par des orateur·rice·s de premier plan, en mode single-track, avec de très nombreuses opportunités de discussions et de networking tant avec les intervenant·e·s qu’avec le reste de la communauté.
Watch the video - Delicious Insights is organizer
NodeSchool Paris #20
NodeSchool Paris Mozilla ParisSamedi 13 octobre 2018, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
- Delicious Insights is organizer
Capitaine Flemme !
Paris Web 2018 Delicious Insights, ParisMaxime montre comment automatiser énormément de contrôle qualité à toutes les étapes de notre développement, de l'écriture du code au déploiement en production.
See the slidesWatch the video - Delicious Insights is organizer
Optimiser la qualité de l’expérience de dev
Delicious Meetups Delicious Insights, ParisMaxime montre comment automatiser énormément de contrôle qualité à toutes les étapes de notre développement, de l'écriture du code au déploiement en production.
- Delicious Insights is organizer
NodeSchool Paris #19
NodeSchool Paris Mozilla ParisSamedi 21 juillet 2018, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
- Delicious Insights is organizer
NodeSchool Paris #18
NodeSchool Paris Mozilla ParisSamedi 23 juin 2018, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
So, what’s in ES2020?
Confoo Montréal 2018 MontréalYes, okay, ES2015 rules, and ES2017 brings about a lot of cool things (most notably async/await), but a ton of cool stuff is expected to land in the next few years, too… and we can play with it already!
Christophe takes you through a whirlwind tour of the upcoming features he’s most excited about, due to become official in 2018, 2019… or 2020 ;-)
See the slidesHot Reloading Everywhere
Confoo Montréal 2018 MontréalDevelopers often waste untold hours a week waiting for rebuilds, manually switching windows, reloading pages, restoring in-page state, and so on. This is unfortunate, as we've been gifted with numerous tools to automate reload, and even *hot reload*, for quite a while now.
In this talk, Christophe showcases workflows, tips and tricks, using widespread editors, tools and browsers, to make that web / Node developer feedback loop ever tighter.
See the slides- Delicious Insights is organizer
NodeSchool Paris #17
NodeSchool Paris Mozilla ParisSamedi 20 janvier 2018, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
- Delicious Insights is organizer
NodeSchool Paris #16
NodeSchool Paris Mozilla ParisSamedi 2 décembre 2017, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
Webpack comme des grand·e·s !
Paris Web 2017 ParisWebpack a globalement « gagné la guerre » des builders, même si encore trop de gens s’accrochent à Gulp ou Browserify… Il est vrai que si Webpack a toujours été au-dessus du lot en termes de possibilités et surtout d’optimisation fine du résultat, sa documentation historique avait de quoi faire fuir, et les concepts de base sont assez différents pour risquer de déstabiliser…
Mais Webpack, c’est comme JavaScript en général : si on le prend bien, si on fait un peu ses devoirs en amont, ça se passe bien—très, très bien. Et on aboutit à une expérience de développement et des performances de build extraordinaires.
Dans cet atelier, Christophe vous prend par la main et vous fait pratiquer, à partir d'une configuration vide et de besoins tout simples, pour monter progressivement en gamme, jusqu’à une configuration aux petits oignons qui couvre tous les besoins usuels de façon optimale et agréable.
See the slidesAlors, qu’y a-t-il dans ES2020 ?
Paris Web 2017 ParisC’est vrai, ES2015 ça déchire, et ES2017 apporte son lot de jolis trucs (notamment async/await), mais plein de trucs intéressants vont arriver dans les années qui viennent… et on peut déjà jouer avec, grâce à Babel !
En 30 minutes, Christophe vous propose un tour d’horizon des fonctionnalités à venir qui le bottent le plus, et qui deviendront officielles d’ici 2018, 2019… voire 2020 ;-)
See the slidesMicrosoft 💕 Node.js
MS Experiences 2017 ParisNode.js est extrêmement répandu aujourd'hui. Cette technologie est au cœur de nombreux sites web, services, applications et même certains systèmes embarqués. Dans cette session, nous vous proposons de (re)découvrir la contribution de Microsoft dans l'univers de Node. Nous parlerons des nouveautés de la plateforme en elle-même (ChakraCore), de langages (TypeScript), d'outils (Bash sur Windows, Visual Studio Code) et de déploiement (App Service on Linux) !
- Delicious Insights is organizer
NodeSchool Paris #15
NodeSchool Paris Mozilla ParisSamedi 23 septembre 2017, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
Node.js partout !
web2day Nantes NantesDepuis sa sortie en 2009, Node.js a émergé doucement… jusqu’à conquérir franchement le monde des gros sites « enterprise » à partir de 2014, au point qu’il est aujourd’hui devenu incontournable. Node.js, c’est pratiquement tout le Fortune 500, nombre des plus gros services en ligne, mais pas seulement : c’est aussi au cœur de la pratique web front, au cœur de la révolution des applications multi-plateformes : desktop, mobile, consoles, robotique, aérospatiale, IoT…
Node.js est aussi l’écosystème et la communauté qui connaissent les plus fortes croissances annuelles, et ce depuis plusieurs années continues, avec des chiffres hallucinants. Cette présentation vise à réveiller celles et ceux qui n’ont pas encore Node.js fermement au centre de leur radar technique, et à élargir la perception qu’en ont les autres, laquelle se limite souvent à « serveurs web + npm ». Always bet on JS.
See the slidesWatch the video- Delicious Insights is organizer
NodeSchool Paris #14
NodeSchool Paris Mozilla ParisSamedi 3 juin 2017, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
Deep-dive dans async/await
Node.js Paris EvaneosLes callbacks, c'est bien, mais ça pose vite des soucis, car les anti-patterns sont nombreux et les usages avancés vite difficiles à maintenir.
Les promesses corrigent pratiquement tous ces soucis (et ceux qu'elles ne corrigent pas, les Observables arrivent…), mais même si elles sont assez faciles à apprivoiser, le code obtenu reste, de toutes façons, moins immédiatement lisible et maintenable que du bon vieux code séquentiel et bloquant.
La syntaxe async / await—officielle depuis ES2017, native depuis v8 5.5 (donc Node 7.6, 21/02/2017), et transpilée par Babel depuis des lustres—nous permet d'avoir le beurre et l'argent du beurre : le code est asynchrone, composable, non bloquant… et parfaitement lisible. On récupère les primitives de base : conditions, boucles, try…catch… Mais attention, ça ne remplace pas les promesses : bien au contraire, c'est intimement basé dessus ! Et du coup, le danger serait de rechercher/remplacer du code bloquant bêtement, sans tirer parti des possibilités de parallélisation, etc.
Qui plus est, pas mal d'extensions d'usage sont possibles, au-delà des seules promesses « classiques ».
Dans cette présentation, Christophe essaiera en 20 minutes de faire le tour du sujet, de bien vous faire saisir l'essence et la puissance de ce nouveau mécanisme, de vous dire où tout ça va, et de vous donner envie, surtout, de l'utiliser partout !
See the slides- Delicious Insights is organizer
NodeSchool Paris #13
NodeSchool Paris Mozilla ParisSamedi 18 mars 2017, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 13e session, mais n’y voyez aucun signe 😊
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
- Delicious Insights is organizer
NodeSchool Paris #12
NodeSchool Paris Mozilla ParisSamedi 21 janvier 2017, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 12e session, la première de 2017 !
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
Tuning Babel to your runtimes
dotJS ParisBabel is amazing, and we all use it to get the latest language goodies now, but we tend to use an all-or-nothing, sledgehammer approach to it.
See the slidesWatch the video- Delicious Insights is organizer
PM2 et Keymetrics dans l’univers Node.js
Delicious Meetups Delicious InsightsPM2 est le gestionnaire de processus incontournable pour les serveurs Node, un des modules les plus téléchargés de tout npm (près de 16 000 téléchargements/jour). Entièrement conçu par une toute petite équipe française, il est aujourd’hui au cœur de la société Keymetrics, qui développe l’outil (open source) et les activités commerciales autour.
See the slidesWatch the video - Delicious Insights is organizer
NodeSchool Paris #11
NodeSchool Paris Mozilla ParisSamedi 19 novembre 2016, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire ! C’est notre 11e session, la dernière de 2016 !
Les ateliers NodeSchool.io, ce sont des outils interactifs en ligne de commande pour apprendre aussi bien les bases de JS que des aspects plus avancés (prototypes, promesses, ES6…), des libs comme Async.js ou Lo-Dash/Underscore, des frameworks comme Express ou encore du WebGL.
État de l’art de ES2015+ dans Node.js et le navigateur
Blend Web Mix 2016 LyonES2015, ES2016, ES2017… Maintenant ou plus tard ? Avec ou sans Babel ? Et pour mon Node ? Et pour mes navigateurs ? Comment faire au mieux tout en restant light ?
See the slidesWatch the videoUse ES2015+ now, not later!
Voxxed Days Thessaloniki Θεσσαλονίκη, ΕλλάδαES6 / ES2015 isn’t something you should “plan to use soon” or even “later.” Actually, neither is ES0217, or parts of ES2018 for that matter. They’re all perfectly usable right now, and have been for a while already. Be it through native support (which has grown tremendously recently) or transpiling, in browsers or in Node, there is a wealth of kick-ass language features at your disposal today.
What we’ll cover in this talk: quick reminder on ES3, ES5, ES6/2015, ES7/2016 and beyond; native support vs. Babel, tooling; comfort every other line: destructuring, rest/spread, arrow functions; scope control with let and const; familiar class syntax; modules; asynchrony goodies: promises, generators, async/await; proxies and metaprogramming; decorators.
See the slidesLe développement web : tour d’horizon
MS experiences 2016De nos jours, faire du développement web nécessite de connaître une quantité incroyable de technologies, frameworks et librairies.
Nous vous proposons de faire un tour d’horizon du web d’aujourd’hui. Nous parlerons backend, frontend et nous évoquerons aussi le futur.
Si vous voulez savoir où en est le web sans des heures de recherche, vous êtes au bon endroit !
JavaScript : le futur, c’est maintenant !
MS experiences 2016ECMAScript (le standard qui gouverne JavaScript) évolue désormais tous les ans, mais vos utilisateurs ne mettent pas toujours suffisamment à jour leurs navigateurs. Découvrons comment pouvoir utiliser quand même les dernières nouveautés dès aujourd’hui !
See the slides- Delicious Insights is sponsor
Asynchrone moderne en JS : promesses, async et await (atelier)
Paris Web 2016Les callbacks ne vont nulle part, mais si on pouvait n'en mettre que là où ça nous arrange, et rendre un peu de lisibilité à nos codes « de la vraie vie », même quand y’a de l’asynchrone de partout et des tas de flux de données qui s'imbriquent ou se parallélisent, ce serait plutôt pas mal. Surtout pour nos collègues qui, eux, viennent de débarquer dans l’asynchrone et veulent s’ouvrir les veines parce que le code bloquant, c’était drôlement plus simple (mais beaucoup moins performant).
Dans cet atelier, on va explorer les promesses sous tous les angles, histoire de voir que non, ça n’est pas juste une autre manière de faire du callback, et par-dessus le marché, on va utiliser les syntaxes async/await qui devraient devenir officielles l’an prochain (mais sont déjà utilisables) pour retrouver du code super lisible et agréable, alors même qu’il reste non bloquant. Je sais, la vie est soudain plus belle.
See the slides - Delicious Insights is sponsor
Node.js partout
Paris Web 2016Depuis sa sortie en 2009, Node.js a émergé doucement… jusqu’à conquérir franchement le monde des gros sites « enterprise » à partir de 2014, au point qu’il est aujourd’hui devenu incontournable. Node.js, c’est pratiquement tout le Fortune 500, nombre des plus gros services en ligne, mais pas seulement : c’est aussi au cœur de la pratique web front, au cœur de la révolution des applications multi-plateformes : desktop, mobile, consoles, robotique, aérospatiale, IoT…
Node.js est aussi l’écosystème et la communauté qui connaissent les plus fortes croissances annuelles, et ce depuis plusieurs années continues, avec des chiffres hallucinants. Cette présentation vise à réveiller celles et ceux qui n’ont pas encore Node.js fermement au centre de leur radar technique, et à élargir la perception qu’en ont les autres, laquelle se limite souvent à « serveurs web + npm ». Always bet on JS.
See the slidesWatch the video - Delicious Insights is organizer
NodeSchool Paris #10
NodeSchool ParisSamedi 3 septembre 2016, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire !
C’est notre 10e session, juste à temps pour la rentrée !
ES6 par la pratique (labo)
Best Of Web 2016 ParisCet atelier de 3 heures, proposé dans le cadre de la journée Formations de cette nouvelle édition de Best Of Web, passait en revue un certain nombre de fonctionnalités clés d’ES2015 avec des mises en pratique par exercice autonome grâce à une version personnalisée de notre ESLab habituel.
Git ProTips
Kiwi Party 2016 StrasbourgMarre de faire du « SVN en Git » ? Marre de te planter avec ton rebase, ton merge, ton reset, ton checkout ? L’impression de jouer à l’apprenti·e sorcier·ère ? Ou simplement envie de passer la 5e avec Git ? Cette présentation est faite pour toi.
See the slidesWatch the video- Delicious Insights is organizer
NodeSchool Paris #9
NodeSchool ParisSamedi 21 mai 2016, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire !
C’est déjà notre 9e session, à l'occasion du International NodeSchool Day !
ES6+ maintenant !
Devoxx France 2016ES6 / ES2015 n’est pas un truc « pour plus tard », c’est parfaitement utilisable dès maintenant, et même depuis début 2015, justement ! En natif ou via transpiling, dans les navigateurs ou dans Node, ça offre énormément de nouvelles possibilités géniales. Et même ES5 / ES2016 est largement exploitable aujourd’hui.
See the slidesWatch the videoGit ProTips (labo)
Devoxx France 2016Git est devenu la gestion de sources de référence, mais la très grande majorité s'en sert (très) mal, ou à tout le moins ne fait qu’effleurer ses possibilités. Dans cet atelier, Christophe mettra en lumière toute une série d’astuces dans les commandes Git visant à rendre votre utilisation quotidienne plus agréable et efficace.
See the slides- Delicious Insights is organizer
NodeSchool Paris #8
NodeSchool ParisSamedi 9 avril 2016, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire !
C’est déjà notre 8e session !
- Delicious Insights is organizer
NodeSchool Paris #7
NodeSchool ParisSamedi 6 février 2016, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire !
C'est notre 7e session, la première en 2016 !
- Delicious Insights is organizer
NodeSchool Paris #6
NodeSchool ParisSamedi 19 décembre 2015, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire !
C’est notre 6e session, la session de Noël !
Modern Asynchronous JS
dotJS 2015Callbacks are not the full story. And it’s not just the promises, either. Generators, async/await, FRP and RxJS… There are a lot of exciting ways to do async in clean, maintainable ways!
See the slidesWatch the videoCollaboration BP’s with Git & GitHub
Meetup SGGitHub is super easy to use… especially to under-use. Let‘s look at cool features but, even more importantly, many best practices for a better workflow.
See the slidesWatch the video- Delicious Insights is organizer
NodeSchool Paris #5
NodeSchool ParisSamedi 31 octobre 2015, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire !
Voici enfin la 5e session, une rentrée certes tardive, mais on ne pouvait pas la faire plus tôt, désolés !
Deep-dive dans ES6
Blend Web Mix 2015 LyonGrâce à des transpileurs de qualité comme Babel, il est possible depuis déjà 2014 d'utiliser la majorité des nouveautés de ES6 partout où ES5 est disponible. Donc Node.js / io.js et, côté navigateurs, IE9+ et tous les autres…
Code plus concis, plus performant, plus propre, plus puissant : ES6 réconcilie beaucoup de monde avec JavaScript, et fait pleurer de joie celles et ceux qui n'avaient pas besoin d'être converti·e·s.
See the slidesWatch the video- Delicious Insights is sponsor
ES6+ c’est maintenant, les gens ! (atelier)
Paris Web 2015Grâce à des transpileurs de qualité comme Babel, il est possible depuis déjà 2014 d'utiliser la majorité des nouveautés de ES6 partout où ES5 est disponible. Donc Node.js / io.js et, côté navigateurs, IE9+ et tous les autres…
Code plus concis, plus performant, plus propre, plus puissant : ES6 réconcilie beaucoup de monde avec JavaScript, et fait pleurer de joie celles et ceux qui n'avaient pas besoin d'être converti·e·s.
See the slides - Delicious Insights is sponsor
Le dev front à Mach 1 au quotidien
See the slidesWatch the video
Paris Web 2015 - Delicious Insights is organizer
NodeSchool Paris #4
NodeSchool ParisSamedi 11 juillet 2015, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire !
Il s'agit de notre 4e session !
- Delicious Insights is organizer
NodeSchool Paris #3
NodeSchool ParisSamedi 23 mai 2015, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire !
Il s’agit de notre 3e session, à l’occasion du International NodeSchool Day, qui verra près de 40 sessions similaires partout dans le monde !
- Delicious Insights is organizer
NodeSchool Paris #2
NodeSchool ParisDevant le succès monstrueux du premier, nous avons tout de suite planifié le deuxième atelier NodeSchool Paris !
- Delicious Insights is organizer
NodeSchool Paris #1
NodeSchool ParisEnfin, le tout premier atelier NodeSchool en France, et à Paris !
Samedi 21 février 2015, de 10h à 18h30, venez avec votre laptop pour pratiquer les workshoppers nodeschool.io de votre choix dans un cadre convivial, avec des mentors pour vous aider et vous débloquer quand vous butez, et à manger, et à boire !
Le dev web pour ceux qui en font peu
Université François Rabelais, M2CCI ToursTour d’horizon du dev web pour les étudiants de ce master qui sont en reconversion depuis leur formation d’origine, et ont eu très peu de dev web au programme.
See the slidesWow, much Web. Very tech.
Codeurs en Seine 2014 RouenEn à peine 25 ans, le web est passé de quelques documents textuels liés entre eux à la plate-forme de facto de tous les nouveaux services, usages, et trucs cool en général. Du terrain de jeu de quelques scientifiques dans leur coin, à la moelle épinière de nos journées, au boulot comme entre amis. Pour prédire l'avenir, il est utile de se pencher sur le passé. À une époque où la majorité des développeurs web ne codaient pas il y a seulement 10 ans, Christophe joue les dinosaures à la mémoire longue et retrace avec humour et énergie l'ébullition technologique et interactive du web, du CERN à l'Internet des Objets en passant par la galaxie WS-*, l'éclatement de la bulle de 2000, le Web 2.0 et la victoire de JavaScript. Entre autres.
See the slidesWatch the videoGit ProTips
France HTML5 UG #18Git est devenu la gestion de sources de référence, mais la très grande majorité s'en sert (très) mal, ou à tout le moins ne fait qu'effleurer ses possibilités. Christophe met en lumière toute une série d'astuces dans les commandes Git visant à rendre votre utilisation quotidienne plus agréable et efficace.
See the slidesWatch the videoGit ProTips
Blend Web Mix 2014 LyonGit est devenu la gestion de sources de référence, mais la très grande majorité s'en sert (très) mal, ou à tout le moins ne fait qu'effleurer ses possibilités. Christophe met en lumière toute une série d'astuces dans les commandes Git visant à rendre votre utilisation quotidienne plus agréable et efficace.
See the slidesWatch the videoFront-end Dev Avengers
Blend Web Mix 2014 LyonÀ partir de rien, comment obtenir une boucle de feedback ultra-rapide (moins d'une demi-seconde) entre l'édition de ses fichiers sources (dans DevTools ou ailleurs) et leur exploitation live dans la page web en cours, même au travers d'une chaîne de build riche.
See the slidesNode.js démystifié (atelier)
Paris Web 2014Node.js est en train de s'imposer comme un acteur majeur des développements petits et gros, de Grunt à PayPal, de Brunch à Walmart… Pourtant, la France accuse comme toujours un retard significatif sans son adoption de cette technologie pourtant si utile.
Cet atelier vise à vous faire découvrir en douceur Node et son écosystème, en réalisant ensemble les diverses briques « classiques » d'un service web, sans frime ni trauma : serveur web, templating, persistence, authentification, etc. Avec en bonus du temps réel et quelques tests automatisés.
See the slides- Delicious Insights is sponsor
JS + toi = ❤️
Paris Web 2014Si quand on comprend vraiment ses ennemis on ne peut faire autrement que les aimer, alors après ça tu vais aimer JS.
JavaScript, l’un des langages les plus incompris de la planète, en est pourtant devenu le langage n°1… Derrière les trucs surprenants, les quelques verrues, les syntaxes inattendues, doit donc bien se cacher une grosse valeur intrinsèque. Car oui, JS n’est pas Voldemort, mais un vrai Good Guy, c’est juste qu’il a eu une enfance pas facile.
En 30 minutes, Christophe va tenter d’éclaircir trois gros points traditionnels d’incompréhension de JS : le binding (« pourquoi this vaut ça, là ? »), les closures, et les prototypes (héritage compris). Parce qu’en comprenant les choses, on les apprivoise…
See the slidesWatch the video Tour d’horizon de Node.js
FranceJS 2013 Toulouse<i>(Également à Blend Web Mix 2013, MS Techdays 2014 et Mix-IT 2014)</i>
Node.js est l’une des technologies les plus en vue de ces dernières années, des services web à la robotique ; désormais bien industrialisé et doté d’un écosystème et d’une communauté très vifs, Node a remis sur le devant de la scène un modèle de programmation non bloquant / asynchrone et, surtout, des techniques de code élégantes pour réaliser celui-ci.
Dans cette présentation—qui s'adresse tant à ceux qui n'ont jamais regardé Node qu'à ceux qui jouent déjà avec—Christophe Porteneuve brosse un tableau de Node.js aussi concret que possible. Il posera rapidement quelques notions fondamentales (Node, modules, npm, asynchrone…) puis explorera le développement d’une application web ludique et interactive, qui mettra conjointement en œuvre quelques-uns des usages les plus célèbres, d’Express à Docco en passant par de l’OAuth 2, du Redis, des Web Sockets, Brunch, Mocha et Uglify.
Avec même un petit bonus qui sortira du strict domaine dématérialisé du web pour se manifester physiquement. ],
See the slidesWatch the videoInternationaliser son JavaScript (élaboratoire)
SudWeb 2013 AvignonNe négligez plus l'internationalisation. A travers quelques démos et exemples, Christophe Porteneuve proposera des outils et services, à commencer par les interfaces de traduction.
See the slidesTirer parti des périphériques mobiles dans une application web (atelier)
Paris Web 2010Le web mobile est en train d’exploser, d’autant que les principaux périphériques proposent désormais de « vrais » navigateurs, de l’iPhone à Androïd, de Mimo à PalmOS, et même les nouveaux Blackberry.
S’il est déjà bien d’exploiter des feuilles de style mobiles pour adapter l’expérience utilisateur, on souhaite souvent accéder aux capacités du périphérique (géolocalisation, vibreur, accéléromètre…) et offrir une expérience globale aussi « native » que possible.
Il n’est pas pour autant nécessaire de développer des versions natives distinctes ! Des frameworks existent pour un déploiement universel, et cerise sur le gâteau : ça se passe en JavaScript !
Cet atelier vous fera faire un tour d’horizon des principaux frameworks actifs, exemples et démonstrations à l’appui
See the slidesSprockets
JSConf.EU 2009 BerlinPrésentation du moteur de gestion d’assets statiques pour les sites web, qui sera par la suite au cœur de la Rails Asset Pipeline.
See the slidesWhat’s up with Prototype and script.aculo.us?
The Ajax Experience 2008 BostonUn passage en revue détaillé des dernières nouveautés de Prototype (notamment en version 1.6) et script.aculo.us.
See the slidesContributing docs to Prototype
The Ajax Experience 2008 BostonSommet distribué pour inviter davantage de membres de la communauté à participer à Prototype, et notamment à sa documentation.
See the slidesWatch the videoBest-practice solutions for common Ajax use-cases with Prototype
@mediaAjax London 2008These use cases drop in time and again: checkbox lists; live login validation; dynamic form rows; server-side processing progress indicators; list reordering using drag and drop; and more… As always, there are a lot of terrible ways to achieve those, several decent ones, and precious few really good takes. This session will review several such use cases and detail various ways to implement them, contrasting the ugly and the beautiful, showing useful reflexes and rules of thumb, with a special focus on performance and maintenance.
See the slidesAdvanced Prototype
The Ajax Experience West 2007 San FransiscoUtilisation avancée de Prototype.js.
See the slidesscript.aculo.us
The Ajax Experience West 2007 San FransiscoPassage en revue des principales fonctionnalités de script.aculo.us.
See the slidesIntroduction to Prototype
The Ajax Experience West 2007 San FransiscoPassage en revue des principales fonctionnalités de Prototype.js.
See the slidesInterview par Rebie.org
RebieRebie interviewe Christophe à l’occasion de la sortie de son nouveau livre, « Bien développer pour le Web 2.0 ».
Watch the video
Our articles
Negative array indices thanks to proxies
Proxies are a wonderful feature from ES2015. This post explores a cool trick you can do with them: negative array indices.
Simulating an abstract class with new.target
Have you heard about new.target? Thanks to this unusual reference, you can easily implement abstract classes by forbidding some uses of the new operator…
The for…of loop: should there remain only one…
Forget numerical for: the for…of loop that came out in ES2015 is your new best friend. Such versatility!
Converting an object to Map and vice-versa
Sometimes a plain object is enough. Other times you’ll want a Map. But why, and how, can you switch between one and the other?
Object spread vs. Object.assign
With everyone boarding the “object spread” train, is there still a place for the Object.assign(…) API? Are they even different? Yes, and yes!
Using named captures
ES2018 finally brings named capturing groups to regular expressions and boy is it cool!
const is the new var
Should you still use “var”? Should we just replace it with “let”? What about “const” anyway? In this post, we’ll explain why “const” should be your go-to declarative keyword.
Properly defining optional named parameters
JavaScript doesn’t have keyword parameters? No worries! Named destructuring offers a way out… but beware of edge cases.
Extracting emojis from a text
Emojis are everywhere, but it’s hard to identify, extract and collect them from a string. They’re on the rise and always use surrogate pairs… How can we be quick and clean about this?
Properly sorting texts
Sorting complex data arrays in JS is often Mission Impossible… yet native capabilities are amazing!
Long live numeric separators!
Tired of having to manually count the digits to get the scale of a number? Annoyed by having to manually split to isolate its components? Numeric separators are finally here!
Easily stripping “blank values” from an array
Need to clean up an array? We’ve got a lot of solutions, and some are… super concise!
Inverting two values with destructuring
If you’re still going through a temporary variable to invert two others, You’re Doing It Wrong™
Short-circuiting nested loops
Sometimes the best way to short-circuit nested loops is statement labels!
Strings and Unicode in JavaScript
Everything you should know to correctly process advanced Unicode codepoints in JavaScript strings.
Array#splice, the Swiss-army knife
Do you *really* know Array#splice, the Swiss-army knife of JavaScript array tweaking?
Properly formating a number
Fine-tuning number formating with JS? Easy as pie!
Efficiently extracting a substring
Splitting strings in JS? Thow away substring and forget substr! Your salvation lies with slice!
Efficiently deduplicating an array
Discover the best way to deduplicate an array since ES2015…
19 JavaScript nuggets!
Every day a JavaScript nugget, for 19 days!
Call a JavaScript function with an explicit this
JavaScript does not intrinsically bind your functions to a specific “this”… but that means JS lets you call them with an explicitly given “this”! What’s it useful for, and how to go about it?
Writing Modern Async JS: our new screencast
Our first screencast is out! 4hr and 40+ code samples for just €29, the go-to top-notch course.
Enhance your commits with Git hooks!
Enhance your code and your commit messages with Git hooks.
The Q2 2018 sessions are here!
A whole slew of new training dates for Q2 2018: Webpack, 360° ES, Git, Node.js, Modern Web Apps…
360° ES and Webpack: 2 new training courses!
Check out our 2 new courses:: 100% of latest-gen JavaScript and a deep-dive into Webpack…
360° JS becomes Modern Web Apps
Our “360° JS” training rebrands as “Modern Web Apps”: why?
Addicted to hooks
Improve quality and reduce stress with tasks automation.
Mastering Git Reset: Commit Alchemy
The git reset command is a formidable tool unfortunately far too often misunderstood or poorly used. This is too bad, as it opens up a wide range of solutions and tips to optimize our work and workflows.
Mastering GitHub: just released!
Last December, we had told you about the release of the first-parter in our GitHub training video series: Learning GitHub. We had then hinted at the second part, aimed at topics even more advanced.
Key figures from the Node.js Foundation user survey
A couple days ago, the Node.js Foundation released its first-ever Node.js User Survey Report. It is chock-full of interesting data points. Here’s what peaked my interest most.
20 years.
A look back on Christophe’s 20 years so far of professional IT career.
Mastering Git subtrees
A month ago we were exploring Git submodules; I told you then our next in-depth article would be about subtrees, which are the main alternative.
Mastering Git submodules
If you used submodules before, you certainly got a few scars to show for it, probably swearing off the dang thing. Submodules are hair-pulling for sure, what with their host of pitfalls and traps lurking around most use cases. Still, they are not without merits, if you know how to handle them.
Git Bisect: quickly zero in on a bug’s origin
Oooh, what a nasty bug you just noticed! Alas, you can’t seem to find out where it originates just now, and it appears to have been around for a while, too… How can you avoid combing through the entire history?
How to make Git preserve specific files while merging
Oh boy, are branches great. They let you have entirely different versions of a given file, depending on the context. The thing is, in a few (not so rare) situations, you may want to version a file that changes from branch to branch, but retain its current content when merging another branch into yours.
Fix conflicts only once with git rerere
So you fixed a conflict somewhere in your repo, then later stumbled on exactly the same one (perhaps you did another merge, or ended up rebasing instead, or cherry-picked the faulty commit elsewhere…). And bang, you had to fix that same conflict again. That sucks.
30 Git CLI options you should know about
You think you know Git? Maybe you do… And yet, I’d bet my shirt that many cool little command-line options remain unknown to you.
What’s new since Git 1.7
A lot of people use Git without quite tracking what’s coming up in later releases. Sometimes you just go with whatever’s available on your Linux distro, even if that is quite outdated.
Getting solid at Git rebase vs. merge
Each one is best for specific purposes, so learn when to use them efficiently, and why.