Downloadable pdf

remotes/1693055039339581669/master
Igor Laborie 5 years ago
parent 39ed876ba0
commit db4922e749
  1. 4
      content/schedule/_index.fr.md
  2. 2
      content/sessions/10_est_une_puissance_de_2.md
  3. 2
      content/sessions/3_techniques_faciles_de_manipulation.md
  4. 2
      content/sessions/_47_ans___ils_nont_toujours_pas_remarque__.md
  5. 2
      content/sessions/__lunch.md
  6. 2
      content/sessions/__open.md
  7. 2
      content/sessions/__party.md
  8. 2
      content/sessions/__pause.md
  9. 2
      content/sessions/_numerique_et_environnement__ou__on_aurait_pu_sauver_les_abeilles__on_a_prefere_sortir_un_nouvel_iphone_.md
  10. 2
      content/sessions/_votre_api_web_passe_t_elle_le_controle_technique__.md
  11. 2
      content/sessions/a_kotlin_multiplatform_evolution.md
  12. 2
      content/sessions/a_la_decouverte_de_la_realite_augmentee_avec_arcore.md
  13. 2
      content/sessions/allo_paris__ici_san_francisco__et_si_on_codait_ensemble_avec_vs_code_.md
  14. 2
      content/sessions/applications_de_brainfuck__langage_minimaliste_mais_turing_complet.md
  15. 2
      content/sessions/authentication_authorization_starters_battle.md
  16. 2
      content/sessions/brace_yourself__vanilla_is_coming__back__.md
  17. 2
      content/sessions/comprendre_le_role_du_noyau_d_un_systeme_d_exploitation_en_creant_un_from_scratch.md
  18. 2
      content/sessions/de_java_a_un_executable_natif___graalvm_et_quarkus_changent_la_donne.md
  19. 2
      content/sessions/developpeurs_en_reconversion__developpeurs_quand_meme__.md
  20. 2
      content/sessions/devops_at_scale.md
  21. 2
      content/sessions/four_diseases.md
  22. 2
      content/sessions/introduction_a_la_programmation_par_contraintes.md
  23. 2
      content/sessions/keynote_close.md
  24. 2
      content/sessions/keynote_open.md
  25. 2
      content/sessions/l_histoire_de_la_decouverte_d_une_backdoor_signe_oneplus.md
  26. 2
      content/sessions/le_burn_out_agile.md
  27. 2
      content/sessions/le_design_de_l_erreur.md
  28. 2
      content/sessions/le_troll_dans_ta_machine_____une_courte_introduction_a_la_pensee_de_jean_yves_girard.md
  29. 2
      content/sessions/live_coding_musical___vous_savez_coder___devenez_compositeur_avec_webaudio_et_webmidi__.md
  30. 2
      content/sessions/machine_learning_avec_des_allumettes_et_des_cotillons.md
  31. 2
      content/sessions/modern_forms_in_react.md
  32. 2
      content/sessions/mon_p____de_voyant_moteur_est_encore_allume___comment_debugger_mon_moteur___plongeon_dans_les_entrailles_des_calculateurs_moteur.md
  33. 2
      content/sessions/monitoring_ovh__300k_serveurs__27_dcs_une_plateforme_de_metriques.md
  34. 2
      content/sessions/office-hour-01.md
  35. 2
      content/sessions/office-hour-02.md
  36. 2
      content/sessions/office-hour-03.md
  37. 2
      content/sessions/office-hour-04.md
  38. 2
      content/sessions/office-hour-05.md
  39. 2
      content/sessions/office-hour-06.md
  40. 2
      content/sessions/office-hour-11.md
  41. 2
      content/sessions/office-hour-12.md
  42. 2
      content/sessions/premiers_pas_avec_un_microcontroleur_et_google_cloud_iot_core.md
  43. 2
      content/sessions/quand_les_rates_des_ias_nous_renvoient_a_nos_propres_biais_societaux.md
  44. 2
      content/sessions/rockin_in_the_angular_world.md
  45. 2
      content/sessions/rust__webassembly__and_the_future_of_serverless.md
  46. 2
      content/sessions/rust_as_a_high_level_langage.md
  47. 2
      content/sessions/the_freedom_of_static_typing.md
  48. 2
      content/sessions/the_rise_of_the_web.md
  49. 2
      content/sessions/un_distributeur_automatique_d_argent_de_poche_pour_les_enfants.md
  50. 2
      content/sessions/webgpu__next_generation_3d_graphics_on_the_web.md
  51. 4
      package.json
  52. BIN
      static/schedule/schedule.pdf
  53. 2
      themes/devfest-theme-hugo
  54. 57
      tools/pdf.js
  55. 222
      yarn.lock

@ -16,5 +16,9 @@ draft: true
<svg class="icon icon-calendar"><use xlink:href="#calendar"></use></svg> ICal
</a>
<a class="btn primary btn-lg" href="/schedule/schedule.pdf">
<svg class="icon icon-pdf"><use xlink:href="#pdf"></use></svg> ICal
</a>
<!-- TODO: filter and search -->
{{% /hero %}}

@ -18,4 +18,4 @@ Le code barre est une invention qui a radicalement modifié nos sociétés. Sans
Mais comment coder les chiffres de façon fiable avec des petites barres noires et blanches ? Quand les contraintes matérielles empêchent d'utiliser le binaire, l'ingéniosité et un peu de chance ont permis de créer ce produit, maintenant présent partout.
Nous découvrirons les détails de ce codage, et comment il pourrait même contenir davantage d'informations.
Nous découvrirons les détails de ce codage, et comment il pourrait même contenir davantage d'informations.

@ -16,4 +16,4 @@ Qui ne s’est jamais fait manipulé ? Évidemment, on est tous allé à une soi
L’idée de cette présentation est de vous ouvrir les yeux sur les relations et les influences entre les gens. Je vous exposerai les mécanismes de prise de décision au travers de 3 techniques simples de manipulation.
A la sortie de ce talk, vous devriez être moins influençable et maître de vos décisions (voir même manipuler les autres).
A la sortie de ce talk, vous devriez être moins influençable et maître de vos décisions (voir même manipuler les autres).

@ -23,4 +23,4 @@ Pourtant, codage et sénioritude semblent loin d'être incompatibles.
- Les cheveux gris sont-ils un Handicap pour la Sécurité de l’Info ?
- Le Cloud doit-il être « Arthrose-free » ?
Et surtout, comment se fait-il qu’à 47 ans je vienne d’intégrer l’équipe Devops & Tools de Continental Digital Services et que personne ne m’ait encore rien dit ?
Et surtout, comment se fait-il qu’à 47 ans je vienne d’intégrer l’équipe Devops & Tools de Continental Digital Services et que personne ne m’ait encore rien dit ?

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Bon appétit
Bon appétit

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Acceuil, Thé, Café et Chocolatines
Acceuil, Thé, Café et Chocolatines

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
🎉 Party time
🎉 Party time

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Pause
Pause

@ -25,4 +25,4 @@ Tous les mails de votre vie (que vous ne lirez plus jamais) disponibles sur Gmai
On arrive dans "l'âge des limites", pour le numérique comme pour le reste. Quels sont les leviers pour basculer vers un numérique durable ?
Et si malgré tout on décidait de s'en foutre ? 2 degrés en plus, c'est juste un pull en moins non ? Non. Par contre c'est 30% en moins sur les rendements agricoles pour ... 30 % de population en plus en 2050. En 1970, Dennis Meadows modélisait sur les ordinateurs du MIT un crash du système planétaire pour les décennies 2020-2030. Pour l'instant, c'est cette trajectoire que notre monde suit.
Et si malgré tout on décidait de s'en foutre ? 2 degrés en plus, c'est juste un pull en moins non ? Non. Par contre c'est 30% en moins sur les rendements agricoles pour ... 30 % de population en plus en 2050. En 1970, Dennis Meadows modélisait sur les ordinateurs du MIT un crash du système planétaire pour les décennies 2020-2030. Pour l'instant, c'est cette trajectoire que notre monde suit.

@ -14,4 +14,4 @@ draft: false
---
Nous savons tous développer une API mais avons-nous tous bien intégré les problématiques d'environnements et de cycles logiciels multiples ? L'opérabilité, la gouvernance, le versioning, la traçabilité, la sécurité — et bien plus encore — de ces API web une fois en production ?
Durant ce talk, c'est plusieurs dizaines de points d'attentions rarement évoqué que je vous propose d'aborder, à la lumière de retours d'expériences provenant de chez Uber, Stripe, Facebook, ...
Durant ce talk, c'est plusieurs dizaines de points d'attentions rarement évoqué que je vous propose d'aborder, à la lumière de retours d'expériences provenant de chez Uber, Stripe, Facebook, ...

@ -10,4 +10,4 @@ speakers:
draft: false
---
Have you heard of the code-sharing feature in Kotlin, accompanied with "Write once, run everywhere" slogan? Among its users not only libraries and frameworks authors; there are some projects which have already adopted multiplatform for production. Their applications, written in Kotlin for *both* iOS and Android, are published in stores.
With this talk, you'll get a brief overview of the evolution of multiplatform technology in Kotlin, concerning the tasks it's evolved to solve. How it was and how it is expected to be; what has changed and which tasks can be already solved with it. What are the facilities right now and which real projects already use multiplatform?
With this talk, you'll get a brief overview of the evolution of multiplatform technology in Kotlin, concerning the tasks it's evolved to solve. How it was and how it is expected to be; what has changed and which tasks can be already solved with it. What are the facilities right now and which real projects already use multiplatform?

@ -18,4 +18,4 @@ Avec les annonces de l'arrivée de la réalité augmentée (ou RA) dans Google
Au cours de cette session, nous vous proposons de découvrir ARCore, via l’utilisation dans un navigateur, des applications natives ou des moteurs 3D comme Unity ainsi que les CloudAnchors qui permettent la persistance et le partage de positions d’objets dans les scènes de réalité augmentée, y compris avec des utilisateurs d’iOS.
Après une initiations aux concepts liés à la RA (meshes, 6 DoF,...), nous présenterons les différentes fonctionnalités d’ARCore. Nous discuterons aussi des différentes approches d’utilisation, de leurs limitations et avantages au travers d'une application de cartographie 3D en réalité augmentée.
Après une initiations aux concepts liés à la RA (meshes, 6 DoF,...), nous présenterons les différentes fonctionnalités d’ARCore. Nous discuterons aussi des différentes approches d’utilisation, de leurs limitations et avantages au travers d'une application de cartographie 3D en réalité augmentée.

@ -16,4 +16,4 @@ draft: false
Vous aimez VS Code car il est simple, intuitif et qu'il fait ce que vous lui demandez.
Mais saviez-vous que vous pouviez coder à plusieurs dans VS Code? et même permettre à une personne tierce de jouer avec votre débugger depuis l'autre bout du monde? Saviez-vous que vous pouviez avoir un client slack dans VS Code, et même un chat audio?
Et avez-vous exploré toutes les possibilités que VS Code offre quand vous utilisez github?
Nous verrons dans ce talk tout ce qui fait de VS Code l'éditeur de code parfait pour faire du code collaboratif.
Nous verrons dans ce talk tout ce qui fait de VS Code l'éditeur de code parfait pour faire du code collaboratif.

@ -15,4 +15,4 @@ draft: false
---
Brainfuck est probablement le plus connu des langages de programmation ésotériques. Ses 8 instructions en font un langage Turing-complet avec lequel il est théoriquement possible d’écrire n’importe quel programme.
Et en pratique ? Après une explication du langage (avec 8 instructions c’est rapide !) on verra comment j’ai utilisé Brainfuck pour les qualifications au concours d’informatique Prologin, sur un problème de parcours de graphes !
Et en pratique ? Après une explication du langage (avec 8 instructions c’est rapide !) on verra comment j’ai utilisé Brainfuck pour les qualifications au concours d’informatique Prologin, sur un problème de parcours de graphes !

@ -15,4 +15,4 @@ draft: false
---
When you start a brand new app or service, you need to think about how you will manage authentication and permissions. But if you are like everyone else, you genuinely do not want to actually think about this. If someone else could do that for you, life would be great. And this has actually happened, you have the choice between several boilerplate projects or authentication/authorization libraries. In fact, you have a lot of options. Which one to choose? Let's have a closer look to them!
At the end of this talk, you will have a good overview of the common existing solutions and their benefits.
At the end of this talk, you will have a good overview of the common existing solutions and their benefits.

@ -17,4 +17,4 @@ Dans un monde de saveurs complexes et sofistiquées, la guerre du toping fait ra
Durant ce temps, loin de ces vicissitudes, la petite saveur basique vanille fait son bonhomme de chemin. S’agirait-il du héro de la légende, succeptible de renverser le destin de ce monde sans heurts ?
Sache, voyageur, qu’elle est déjà passée par nos contrées. Laisse moi te raconter comment elle nous a permis de renverser notre vieux roi, et tu saura enfin ce qui se prépare pour ton royaume.
Sache, voyageur, qu’elle est déjà passée par nos contrées. Laisse moi te raconter comment elle nous a permis de renverser notre vieux roi, et tu saura enfin ce qui se prépare pour ton royaume.

@ -23,4 +23,4 @@ Dans ce talk je présenterai:
- La réalisation d'un secteur de boot avec une micro console
- Comment gérer les interruptions hardware (clavier) et software
- La gestion des appels systèmes
- Un système multi-process simple qui va permettre de découvrir le surcoût des changements de contexte liés à la programmation concurrentielle
- Un système multi-process simple qui va permettre de découvrir le surcoût des changements de contexte liés à la programmation concurrentielle

@ -19,4 +19,4 @@ Plus maintenant.
Entre en scène Quarkus, une stack Java orientée microservices qui supporte vos composants favoris (Hibernate, Vert.x, Camel, RESTEasy ...) sur GraalVM et HotSpot avec une faible empreinte mémoire et un démarrage rapide. Tout ce qu'il faut pour tirer pleinement parti des containers.
La gestion de la donnée est souvent l'aspect le plus complexe : découvrons comment Quarkus gère la persistance avec Hibernate ORM. Venez explorer le live reload, notre vision de la persistance avec Hibernate Panache, l'indexation full text avec Hibernate Search, l'environnement de test, la compilation native GraalVM et bien plus. Quarkus se vit plus qu'il ne se verbalise, attendez-vous à une démo détaillée.
La gestion de la donnée est souvent l'aspect le plus complexe : découvrons comment Quarkus gère la persistance avec Hibernate ORM. Venez explorer le live reload, notre vision de la persistance avec Hibernate Panache, l'indexation full text avec Hibernate Search, l'environnement de test, la compilation native GraalVM et bien plus. Quarkus se vit plus qu'il ne se verbalise, attendez-vous à une démo détaillée.

@ -15,4 +15,4 @@ draft: false
---
Ces dernières années, les "fabriques de dev" et autres formations courtes explosent. C'est un fait, tout dev a été ou sera amené à travailler avec l'un de ces jeunes développeurs.euses. Mais qui sont-ils ? Pourquoi une reconversion dans ce genre de d'organisation ? Qu'ont-ils appris lors de leurs formation express ? C'est fiable ce genre de dev ? Comment puis-je les intégrer au mieux dans ma structure ?
Autant de questions que vous vous êtes sans doute déjà posées. Pendant ces 15 minutes, je vous présenterai mon retour d'expérience en tant que développeuse provenant de l'une de ces écoles de dev et maintenant développeuse Javascript depuis 2 ans au sein d'une startup Toulousaine.
Autant de questions que vous vous êtes sans doute déjà posées. Pendant ces 15 minutes, je vous présenterai mon retour d'expérience en tant que développeuse provenant de l'une de ces écoles de dev et maintenant développeuse Javascript depuis 2 ans au sein d'une startup Toulousaine.

@ -14,4 +14,4 @@ draft: false
---
DevOps is everywhere, and every new or existing project is at least considering to follow its principles. While implementing DevOps for single projects become more and more straightforward, it's still a challenge to have a coherent DevOps approach at Enterprise level.
Let's dig in what it takes to achieve DevOps in large companies, with Airbus as an example.
Let's dig in what it takes to achieve DevOps in large companies, with Airbus as an example.

@ -16,4 +16,4 @@ draft: false
How a developer can tell if the system is sick just by taking a look at the input and the output? If you'd like to know that (plus you like standup comedy), come an see! The treatment is safe ;-)
One approach to get familiar with a system is a long and intense reading the manual (and to run an eye over the source code sometimes). Another approach is to take a deep dive into the data model (often in the DB) and to surf the user interface. Both are natural ends of the system, the legendary Input and Output. By examining these ends one can check if there's good digestion or if guts are rotten. Careful examination can confirm "common DDDosis", "malignant stringosis", "regex diarrhoea" or "not-made-here syndrome".
Unfortunately, sometimes developers get infected in their prenatal life (meaning: at their university). Let me invite you to treatment. A laxative one. (That is: a sequel of "Passwords. Do you keep them safe?")
Unfortunately, sometimes developers get infected in their prenatal life (meaning: at their university). Let me invite you to treatment. A laxative one. (That is: a sequel of "Passwords. Do you keep them safe?")

@ -15,4 +15,4 @@ draft: false
---
Quel est le point commun entre un jeu de sudoku, la planification d'une conférence et les déplacements d'un commercial ?
Quand on souhaite les traiter automatiquement, tous ces problèmes peuvent être résolus par un solveur de contraintes. Dans ce talk, je vais essayer de vous faire une introduction pratique à la programmation par contraintes, en présentant les concepts de base, puis en les mettant en application avec plusieurs exemples de problèmes connus de tout le monde (ou presque), pour finir par un cas plus complexe sur lequel je travaille actuellement.
Quand on souhaite les traiter automatiquement, tous ces problèmes peuvent être résolus par un solveur de contraintes. Dans ce talk, je vais essayer de vous faire une introduction pratique à la programmation par contraintes, en présentant les concepts de base, puis en les mettant en application avec plusieurs exemples de problèmes connus de tout le monde (ou presque), pour finir par un cas plus complexe sur lequel je travaille actuellement.

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Surprise!
Surprise!

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Surprise!
Surprise!

@ -29,4 +29,4 @@ Lors de la détection et l'analyse de cette faille nous aborderons la philosophi
Native mobile apps
## Format
Une conférence de 40 min
Une conférence de 40 min

@ -26,4 +26,4 @@ En 2019 le monde de l’informatique est au bord du burn-out agile.
- Petit historique : l’évolution des pratiques sur les 20 dernières années
- Pourquoi ce bordel agile ?
- Finalement l’agilité c’est quoi ?
- Est-ce qu’il faut revenir au cycle en V ?
- Est-ce qu’il faut revenir au cycle en V ?

@ -22,4 +22,4 @@ Mais avec les architectures microservices, la distribution des traitements ou un
Que fait-on lorsqu’une erreur intervient ? Peut-on compenser voire gérer l’erreur depuis le système pour l’utilisateur ?
La réponse a ces questions se trouvent autant dans la définition du produit que dans le choix technique.
Un outil bien conçu est un outil intelligent qui peut faire les bons choix au bon moment pour l'utilisateur. Et si on apprenait ensemble à concevoir nos erreurs ?
Un outil bien conçu est un outil intelligent qui peut faire les bons choix au bon moment pour l'utilisateur. Et si on apprenait ensemble à concevoir nos erreurs ?

@ -29,4 +29,4 @@ Dans cette courte présentation, on s'attachera à comprendre pourquoi Girard es
----
Dans le cas d'un créneau à 40min, on pourrait donner quelques pointeurs sur ses travaux plus récents, et expliciter en quoi ils sont porteurs de nouvelles avancées pour les prochaines décennies (réseaux de démonstrations, géométrique de l'intéraction, etc.).
Dans le cas d'un créneau à 40min, on pourrait donner quelques pointeurs sur ses travaux plus récents, et expliciter en quoi ils sont porteurs de nouvelles avancées pour les prochaines décennies (réseaux de démonstrations, géométrique de l'intéraction, etc.).

@ -22,4 +22,4 @@ Après un rapide tour d'horizon des environnements de codage musical comme Sonic
Quelques samples bien choisis, une pincée de séquences harmonieuses, une bonne dose d'aléatoire encadré, et hop, tout le monde se mettra à danser ! Et puisque la musique c'est aussi des maths, on parlera de musique générative avec des chaînes de Markov et des L-Systems.
David Guetta n'a qu'à bien se tenir !
David Guetta n'a qu'à bien se tenir !

@ -13,4 +13,4 @@ videoId: null
presentation: null
draft: false
---
Dans ce talk je vous montrerai comment expliquer simplement le fonctionnement de l'apprentissage par renforcement. Pour cela pas besoin d'ordinateur : quelques allumettes, des sacs de cotillons et un peu de pédagogie sont suffisant pour mettre en évidence les mécanismes intrinsèques de cette technique et pour aborder les enjeux et les limites des algorithmes d'"intelligence artificielle" basés sur l'apprentissage.
Dans ce talk je vous montrerai comment expliquer simplement le fonctionnement de l'apprentissage par renforcement. Pour cela pas besoin d'ordinateur : quelques allumettes, des sacs de cotillons et un peu de pédagogie sont suffisant pour mettre en évidence les mécanismes intrinsèques de cette technique et pour aborder les enjeux et les limites des algorithmes d'"intelligence artificielle" basés sur l'apprentissage.

@ -12,4 +12,4 @@ videoId: null
presentation: null
draft: false
---
If the new React Context API and Suspense killed Redux (they didn't), surely Hooks kill the need for a form library, right? Well, not exactly. Managing form state is more than just holding your current values in state; it's about sync and async validition errors, and much more! But that doesn't mean that Hooks are irrelevant to the situation. Hooks make building forms in React easier than ever before.
If the new React Context API and Suspense killed Redux (they didn't), surely Hooks kill the need for a form library, right? Well, not exactly. Managing form state is more than just holding your current values in state; it's about sync and async validition errors, and much more! But that doesn't mean that Hooks are irrelevant to the situation. Hooks make building forms in React easier than ever before.

@ -20,4 +20,4 @@ Les moteurs des voitures modernes sont des systèmes informatiques complexes qui
Comment ça fonctionne ? A quoi ressemble ce code et que fait-il ?
Qu'est-ce qu'il se passe lorsqu'on fait une "reprog" ?
Qu'est-ce que signifie le voyant moteur allumé ? Comment débugger tout ça ?
Soulevons le capot (électronique), analysons le matériel mis en oeuvre mais surtout le logiciel grâce aux sources des calculateurs "Megasquirt" et allons explorer la face cachée numérique de nos voitures.
Soulevons le capot (électronique), analysons le matériel mis en oeuvre mais surtout le logiciel grâce aux sources des calculateurs "Megasquirt" et allons explorer la face cachée numérique de nos voitures.

@ -16,4 +16,4 @@ Comment faire quand on doit faire le suivi de toute l'infrastructure du plus gra
Dans ce talk nous racontons notre expérience sur la construction et la maintenance d'OVH Metrics, la plateforme utilisée pour monitorer toute l'infrastructure OVH. Nous avions besoin d'aller à des endroits ou la plupart de solutions de monitoring ne sont jamais allées, opérer à l'échelle du plus grand fournisseur Européen de cloud et hosting : 27 data centers, plus de 300k serveurs (physiques !) et des centaines de produits pour accomplir notre mission avec nos 1,3 millions de clients.
Venez pour entendre cette histoire de séries temporelles, de solutions open-sources poussées à l'extreme, de clusters HBase opérés en limite de capacité, et de comment une petite équipe s'est appuyé sur une poignée de solutions open-source et une bonne dose de code maison pour construire une des solutions de monitoring les plus performantes au monde.
Venez pour entendre cette histoire de séries temporelles, de solutions open-sources poussées à l'extreme, de clusters HBase opérés en limite de capacité, et de comment une petite équipe s'est appuyé sur une poignée de solutions open-source et une bonne dose de code maison pour construire une des solutions de monitoring les plus performantes au monde.

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Venez poser vos questions aux speakers de manière plus calme et détendu
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Venez poser vos questions aux speakers de manière plus calme et détendu
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Venez poser vos questions aux speakers de manière plus calme et détendu
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Venez poser vos questions aux speakers de manière plus calme et détendu
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Venez poser vos questions aux speakers de manière plus calme et détendu
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Venez poser vos questions aux speakers de manière plus calme et détendu
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Venez poser vos questions aux speakers de manière plus calme et détendu
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -7,4 +7,4 @@ tags:
speakers: []
draft: false
---
Venez poser vos questions aux speakers de manière plus calme et détendu
Venez poser vos questions aux speakers de manière plus calme et détendu

@ -18,4 +18,4 @@ Google propose également sa solution : "Cloud IoT" basée sur la plate-forme Go
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.
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.

@ -19,4 +19,4 @@ Cette présentation propose des root cause analysis sur des exemples concrets de
Nous verrons notamment que l’éthique peut directement être abordée au niveau des données et de leur préparation à l’apprentissage. Nous nous concentrerons principalement sur l’impact des statistiques des données d’entraînement et les transformations à appliquer en pré-processing (métriques de fairness, améliorer la fairness sur des données annotées), et nous montrerons comment des benchmarks permettent d'appréhender l’impact des méthodes de fairness sur la précision des modèles entraînés.
La confiance et l’équité passe avant tout par une compréhension de la prise de décision par l’utilisateur. Par conséquent, nous présenterons diverses méthodes pour expliquer la prise de décision d’un modèle boîte noire (principalement des algorithmes de deep learning) et mettons en garde contre une mauvaise interprétation de ces explications.
La confiance et l’équité passe avant tout par une compréhension de la prise de décision par l’utilisateur. Par conséquent, nous présenterons diverses méthodes pour expliquer la prise de décision d’un modèle boîte noire (principalement des algorithmes de deep learning) et mettons en garde contre une mauvaise interprétation de ces explications.

@ -23,4 +23,4 @@ L’accueil d’un nouveau développeur·euse dans une équipe est un des meille
Nous vous proposons dans ce talk un retour d’expérience sur quelques années de consulting sur des projets Angular au travers de cas concrets :
- quelles sont les mauvaises pratiques à éviter ?
- quels sont les choix orientés et assumés d’Angular pour vous éviter tout ça ?
- quelque soit la taille de votre équipe, l’expérience de vos collègues, quels sont les principes d’architecture à adopter pour améliorer tout ça ?
- quelque soit la taille de votre équipe, l’expérience de vos collègues, quels sont les principes d’architecture à adopter pour améliorer tout ça ?

@ -21,4 +21,4 @@ serverless application platforms, combining two brand-new technologies
together. We're also seeing a lot of growth of the Rust programming
language, and its close alignment with WebAssembly. In this talk,
Steve will talk about Rust, WebAssembly, serverless technologies, and
how it all fits together.
how it all fits together.

@ -22,4 +22,4 @@ The focus of the talk is fearless concurrency. Data races are a pervasive and un
* predictable performance due to absence of garbage collection
* control over the memory layout of objects, which gives you extra performance if you need it
* module (crate) system that, at the language level, prevents dependency hell
* additional correctness guarantees, like the absence of iterator validation or strict control of error conditions
* additional correctness guarantees, like the absence of iterator validation or strict control of error conditions

@ -17,4 +17,4 @@ It's a common idea: Dynamic typing gives you freedom to do whatever you want, bu
This isn't entirely false. Yes, it can be quite hard to write a Rust or Haskell program that compiles, enough that it's a running gag in their communities. "But once you get it to compile, it's probably correct!", the joke goes. On the other hand, when writing Ruby or Javascript, you're free to call functions with all sorts of things, and then runtime errors can easily slip into production. That said, it's not as simple as a sliding scale between "freedom" and "safety". Neither of these terms is one-dimensional -- a language feature that restricts your freedom in one way can actually free you in different ways.
I'd like to demonstrate some interesting language features in Rust that make it easier to write code and to express concepts compared to dynamic languages. Features that don't just protect you from shooting your foot, but give you power that's only available within the rules and "limitations" of a statically typed language. Even if you're not familiar with Rust, I hope to focus the examples on the features themselves rather than on the specifics of the language, so come by and let's talk about being (type-safely) free.
I'd like to demonstrate some interesting language features in Rust that make it easier to write code and to express concepts compared to dynamic languages. Features that don't just protect you from shooting your foot, but give you power that's only available within the rules and "limitations" of a statically typed language. Even if you're not familiar with Rust, I hope to focus the examples on the features themselves rather than on the specifics of the language, so come by and let's talk about being (type-safely) free.

@ -19,4 +19,4 @@ C’est ça inspecteur. C’est ça la bonne question.
Si tu ne les as pas vécus, viens découvrir l'arrivée du Web, l'histoire de Netscape, la browser-war, la naissance du serveur d'application, les débuts du web dynamique et la prise d'assaut du JS.
Sit back, relax, and Enjoy!
Sit back, relax, and Enjoy!

@ -19,4 +19,4 @@ Avec mon épouse nous avons commencer à donner de l'argent de poche à nos enfa
Pour qu'ils puissent faire comme les grands (et parce que c'est fun aussi :D) j'ai conçu un DAAP (**D**istributeur **A**utomatique d'**A**rgent de **P**oche) qui leur permet, le jour de la distribution de l'argent de poche, d'insérer leur "carte bleue", saisir leur code et de voir la machine s'ébranler pour distribuer les pièces.
Dans ce talk on parlera d'Arduino, d'impression 3D, de carte à puce, d'électronique et des problèmes que j'ai rencontré et comment j'ai pu les résoudre.
Dans ce talk on parlera d'Arduino, d'impression 3D, de carte à puce, d'électronique et des problèmes que j'ai rencontré et comment j'ai pu les résoudre.

@ -12,4 +12,4 @@ videoId: null
presentation: null
draft: false
---
This talk will give an overview of the WebGPU API that will provide modern features such as “GPU compute” on the Web as well as lower overhead access to GPU hardware and better, more predictable performance. This will allow for much more graphically intensive games on the Web and boost performance of frameworks like Tensorflow.js up to 10x.
This talk will give an overview of the WebGPU API that will provide modern features such as “GPU compute” on the Web as well as lower overhead access to GPU hardware and better, more predictable performance. This will allow for much more graphically intensive games on the Web and boost performance of frameworks like Tensorflow.js up to 10x.

@ -5,6 +5,8 @@
"author": "Igor Laborie <ilaborie@gmail.com>",
"license": "Apache-2.0",
"scripts": {
"generate:pdf": "node tools/pdf.js",
"prebuild": "hugo",
"build:minify": "node tools/minify.js",
"build": "run-p build:*"
},
@ -13,6 +15,6 @@
"html-minifier": "^4.0.0",
"npm-run-all": "^4.1.5",
"plop-logger": "^2.3.0",
"tslib": "^1.10.0"
"puppeteer": "^1.19.0"
}
}

Binary file not shown.

@ -1 +1 @@
Subproject commit 641f66d2731adacbda7c7b42c53da79a4ceae9ac
Subproject commit 1c1c7bac824e50d7fa3fd3de2e5f9ce09a285c36

@ -0,0 +1,57 @@
const puppeteer = require('puppeteer');
const {Logger, LogLevel} = require('plop-logger');
const {colorEmojiConfig} = require('plop-logger/lib/extra/colorEmojiConfig');
Logger.config = colorEmojiConfig;
Logger.config.defaultLevel = LogLevel.Debug;
const logger = Logger.getLogger('pdf');
(async () => {
logger.info("launch puppeteer browser");
const defaultViewport = {width: 1280, height: 1700};
const devtools = false;
const browser = await puppeteer.launch({devtools, defaultViewport});
try {
logger.info("open new page");
const page = await browser.newPage();
logger.debug("opened new page");
const file = 'schedule/index.html';
const url = `http://localhost:1313/${file}`;
logger.info("go to", url);
const pageResponse = await page.goto(url, {waitUntil: 'networkidle2'});
logger.debug("gone", pageResponse.statusText());
const toHide = [
'body>header',
'body>footer',
'main .hero',
];
await page.$$eval(toHide.join(','), function (elts) {
// debugger;
elts.forEach(elt => {
elt.parentNode.removeChild(elt);
// elt.style.display = 'none';
});
});
await page.addStyleTag({
content: '@page { size: auto; }',
});
logger.info('export pdf');
const path = 'static/schedule/schedule.pdf';
const format = 'A3';
const scale = .4;
const printBackground = true;
await page.pdf({path, format, scale, printBackground});
logger.debug("pdf done");
} catch (e) {
console.error(e);
logger.error('Oops!', e);
} finally {
logger.info('close puppeteer browser');
await browser.close();
}
})();

@ -2,6 +2,13 @@
# yarn lockfile v1
agent-base@^4.3.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee"
integrity sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==
dependencies:
es6-promisify "^5.0.0"
ansi-colors@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348"
@ -14,6 +21,11 @@ ansi-styles@^3.2.1:
dependencies:
color-convert "^1.9.0"
async-limiter@~1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"
integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
balanced-match@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
@ -27,6 +39,11 @@ brace-expansion@^1.1.7:
balanced-match "^1.0.0"
concat-map "0.0.1"
buffer-from@^1.0.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
camel-case@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73"
@ -73,6 +90,21 @@ concat-map@0.0.1:
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
concat-stream@1.6.2:
version "1.6.2"
resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
dependencies:
buffer-from "^1.0.0"
inherits "^2.0.3"
readable-stream "^2.2.2"
typedarray "^0.0.6"
core-util-is@~1.0.0:
version "1.0.2"
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
cross-spawn@^6.0.5:
version "6.0.5"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4"
@ -84,6 +116,27 @@ cross-spawn@^6.0.5:
shebang-command "^1.2.0"
which "^1.2.9"
debug@2.6.9:
version "2.6.9"
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
dependencies:
ms "2.0.0"
debug@^3.1.0:
version "3.2.6"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
dependencies:
ms "^2.1.1"
debug@^4.1.0:
version "4.1.1"
resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==
dependencies:
ms "^2.1.1"
define-properties@^1.1.2:
version "1.1.3"
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
@ -119,11 +172,40 @@ es-to-primitive@^1.2.0:
is-date-object "^1.0.1"
is-symbol "^1.0.2"
es6-promise@^4.0.3:
version "4.2.8"
resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a"
integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==
es6-promisify@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203"
integrity sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=
dependencies:
es6-promise "^4.0.3"
escape-string-regexp@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
extract-zip@^1.6.6:
version "1.6.7"
resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.7.tgz#a840b4b8af6403264c8db57f4f1a74333ef81fe9"
integrity sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=
dependencies:
concat-stream "1.6.2"
debug "2.6.9"
mkdirp "0.5.1"
yauzl "2.4.1"
fd-slicer@~1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65"
integrity sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=
dependencies:
pend "~1.2.0"
fs.realpath@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
@ -134,7 +216,7 @@ function-bind@^1.0.2, function-bind@^1.1.1:
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
glob@^7.1.4:
glob@^7.1.3, glob@^7.1.4:
version "7.1.4"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255"
integrity sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==
@ -191,6 +273,14 @@ html-minifier@^4.0.0:
relateurl "^0.2.7"
uglify-js "^3.5.1"
https-proxy-agent@^2.2.1:
version "2.2.2"
resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.2.tgz#271ea8e90f836ac9f119daccd39c19ff7dfb0793"
integrity sha512-c8Ndjc9Bkpfx/vCJueCPy0jlP4ccCCSNDp8xwCZzPjKJUm+B+u9WX2x98Qx4n1PiMNTWo3D7KK5ifNV/yJyRzg==
dependencies:
agent-base "^4.3.0"
debug "^3.1.0"
inflight@^1.0.4:
version "1.0.6"
resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
@ -199,7 +289,7 @@ inflight@^1.0.4:
once "^1.3.0"
wrappy "1"
inherits@2:
inherits@2, inherits@^2.0.3, inherits@~2.0.3:
version "2.0.4"
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
@ -233,6 +323,11 @@ is-symbol@^1.0.2:
dependencies:
has-symbols "^1.0.0"
isarray@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
isexe@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
@ -263,6 +358,11 @@ memorystream@^0.3.1:
resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2"
integrity sha1-htcJCzDORV1j+64S3aUaR93K+bI=
mime@^2.0.3:
version "2.4.4"
resolved "https://registry.yarnpkg.com/mime/-/mime-2.4.4.tgz#bd7b91135fc6b01cde3e9bae33d659b63d8857e5"
integrity sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==
minimatch@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
@ -270,6 +370,28 @@ minimatch@^3.0.4:
dependencies:
brace-expansion "^1.1.7"
minimist@0.0.8:
version "0.0.8"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
mkdirp@0.5.1:
version "0.5.1"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
dependencies:
minimist "0.0.8"
ms@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
ms@^2.1.1:
version "2.1.2"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
nice-try@^1.0.4:
version "1.0.5"
resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
@ -356,6 +478,11 @@ path-type@^3.0.0:
dependencies:
pify "^3.0.0"
pend@~1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA=
pidtree@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.3.0.tgz#f6fada10fccc9f99bf50e90d0b23d72c9ebc2e6b"
@ -367,13 +494,42 @@ pify@^3.0.0:
integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=
plop-logger@^2.3.0:
version "2.4.0"
resolved "https://registry.yarnpkg.com/plop-logger/-/plop-logger-2.4.0.tgz#b6032529842f1bf0394fc5a6791516e00314a2a8"
integrity sha512-fl/VXih1xs3/O718lH9wo+P8hTmFRynh+Y3yPsyYHo2ub2AhuwvqcQkS8dBusK7HnK1uJW6riqONd8GHITivkg==
version "2.5.0"
resolved "https://registry.yarnpkg.com/plop-logger/-/plop-logger-2.5.0.tgz#3a80cf4edb98cc6c91a83cc39ba6eff9343308cd"
integrity sha512-sudMgIddrxQYw/UpLWjK//CcA4kCCTr87OWTPlf8gLCoBni2vodp5BbhCH6lMXXINUD//5yPmA9jAMwT3tUSCA==
dependencies:
ansi-colors "^4.1.1"
tslib "^1.10.0"
process-nextick-args@~2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
progress@^2.0.1:
version "2.0.3"
resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"
integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==
proxy-from-env@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.0.0.tgz#33c50398f70ea7eb96d21f7b817630a55791c7ee"
integrity sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4=
puppeteer@^1.19.0:
version "1.19.0"
resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-1.19.0.tgz#e3b7b448c2c97933517078d7a2c53687361bebea"
integrity sha512-2S6E6ygpoqcECaagDbBopoSOPDv0pAZvTbnBgUY+6hq0/XDFDOLEMNlHF/SKJlzcaZ9ckiKjKDuueWI3FN/WXw==
dependencies:
debug "^4.1.0"
extract-zip "^1.6.6"
https-proxy-agent "^2.2.1"
mime "^2.0.3"
progress "^2.0.1"
proxy-from-env "^1.0.0"
rimraf "^2.6.1"
ws "^6.1.0"
read-pkg@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389"
@ -383,6 +539,19 @@ read-pkg@^3.0.0:
normalize-package-data "^2.3.2"
path-type "^3.0.0"
readable-stream@^2.2.2:
version "2.3.6"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==
dependencies:
core-util-is "~1.0.0"
inherits "~2.0.3"
isarray "~1.0.0"
process-nextick-args "~2.0.0"
safe-buffer "~5.1.1"
string_decoder "~1.1.1"
util-deprecate "~1.0.1"
relateurl@^0.2.7:
version "0.2.7"
resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
@ -395,6 +564,18 @@ resolve@^1.10.0:
dependencies:
path-parse "^1.0.6"
rimraf@^2.6.1:
version "2.7.1"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
dependencies:
glob "^7.1.3"
safe-buffer@~5.1.0, safe-buffer@~5.1.1:
version "5.1.2"
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
"semver@2 || 3 || 4 || 5", semver@^5.5.0:
version "5.7.1"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
@ -457,6 +638,13 @@ string.prototype.padend@^3.0.0:
es-abstract "^1.4.3"
function-bind "^1.0.2"
string_decoder@~1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
dependencies:
safe-buffer "~5.1.0"
strip-bom@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
@ -474,6 +662,11 @@ tslib@^1.10.0:
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a"
integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==
typedarray@^0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
uglify-js@^3.5.1:
version "3.6.0"
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.6.0.tgz#704681345c53a8b2079fb6cec294b05ead242ff5"
@ -487,6 +680,11 @@ upper-case@^1.1.1:
resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598"
integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=
util-deprecate@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
validate-npm-package-license@^3.0.1:
version "3.0.4"
resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a"
@ -506,3 +704,17 @@ wrappy@1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
ws@^6.1.0:
version "6.2.1"
resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb"
integrity sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==
dependencies:
async-limiter "~1.0.0"
yauzl@2.4.1:
version "2.4.1"
resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005"
integrity sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=
dependencies:
fd-slicer "~1.0.1"

Loading…
Cancel
Save