Data Science in the Browser with Iodide

2b6d7bdd43058e87f53866eb86538a59?s=47 Galuh Sahid
November 03, 2019

Data Science in the Browser with Iodide

Mozilla Tech Speakers Meetup - Singapore

2b6d7bdd43058e87f53866eb86538a59?s=128

Galuh Sahid

November 03, 2019
Tweet

Transcript

  1. 3.
  2. 4.
  3. 6.
  4. 8.

    !

  5. 9.

    ! "

  6. 10.
  7. 11.
  8. 12.
  9. 13.
  10. 16.

    https://hal.archives-ouvertes.fr/hal-01676633/document “Many analysts simply choose to explain and share their

    analyses using other, more established media, and provide a link, for the “curious”, to the notebook where they performed the analysis in the first place.” Adam Rule, Aurélien Tabard, James Hollan. Exploration and Explanation in Computational Note- books. ACM CHI Conference on Human Factors in Computing Systems, Apr 2018, Montréal, Canada. pp.1-12, 10.1145/3173574.3173606 . hal-01676633
  11. 17.

    !

  12. 20.
  13. 22.

    & Hey, can I have that analysis you did yesterday?

    Sure, here is the link. ' & I added some variables that I thought could be useful & the result is better, but could you please help check? This is my link. Yup. No problem, on it. ' Seems like everything is OK! Thanks a lot, this is an awesome work! ' Easy to share & remix
  14. 26.
  15. 32.

    Bringing data science to the browser unlocks a lot of

    ✨ superpowers ✨ • DOM • WebGL • Canvas • WebVR
  16. 36.

    Use your favorite Python packages • numpy • pandas •

    scikit-learn • nltk • networkx • Complete list: https://github.com/iodide-project/pyodide/tree/ master/packages
  17. 37.

    Python+JS? Now with even more ✨ superpowers ✨ • Workflows

    that make use of the best of both worlds! Data processing with Python Interactive data visualization with d3.js Example: visualizing complex fraud rings with interactive graph networks
  18. 38.

    • Workflows that make use of the best of both

    worlds! Data processing with Python Interactive data visualization with d3.js Example: visualizing complex fraud rings with interactive graph networks • Access browser APIs straight from Python! Manipulate DOM without touching JavaScript Python+JS? Now with even more ✨ superpowers ✨
  19. 39.

    Data science communication matters • Influences how people make decisions

    • We have to make sure that our work is: - Transparent - Reproducible
  20. 40.

    There are a lot more things to do “We envision

    a future workflow that allows you to do your data munging in Python, fit a quick model in R or JAGS, solve some differential equations in Julia, and then display your results with a live interactive d3+JavaScript visualization... and all that within within a single, portable, sharable, and hackable file.” https://github.com/iodide-project/iodide Contribute to Iodide @ GitHub
  21. 42.

    References • Iodide @ Mozilla Hacks • Pyodide @ Mozilla

    Hacks • https://alpha.iodide.io/ • Iodide @ GitHub