07-08, 08:00–12:00 (US/Pacific), Ballroom C
TL;DR
Learn how to turn your Python functions into interactive web applications using open-source tools. By the end, each of us will have deployed a portfolio (or store) with multiple web applications and learned how to reproduce it easily later on.
Tell me more
Work not shown is work lost. Many excellent scientists and engineers are not always adept at showcasing their work. This results in many interesting scientific ideas that have never been brought to light.
However, using today's tools, one no longer has to leave the Python ecosystem to create classy, complete prototypes using modern data visualization and web development tools. With over five years of experience building and presenting data solutions at huge science companies, we show it doesn't have to be challenging. We provide a walkthrough of the primary web application frameworks and showcase Fast Dash, an open-source Python library that we built to address specific prototyping needs.
This tutorial is designed for all data professionals who value the ability to quickly convert their scientific code into web applications. Participants will learn about the leading frameworks, their strengths and limitations, and a decision flowchart for picking the best one for a given task. We will go through some day-to-day applications and hands-on Python coding throughout the session. Whether you bring your use-cases and datasets, or pick from our suggestions, you'll have a reproducible portfolio (app store) of deployed web applications by the end!
Scientific analysis often remains hidden within code repositories, limiting its impact and accessibility. This tutorial bridges the gap between analysis and dissemination by demonstrating how to transform Python scientific code into engaging web applications without leaving the Python ecosystem. Drawing from five years of experience developing data solutions for major scientific organizations, we will showcase how modern tools make this process accessible to scientists and engineers regardless of web development background.
The tutorial begins with an exploration of why web applications are crucial for scientific communication, highlighting real-world examples where interactive visualization significantly enhanced understanding and engagement with complex data. We'll outline common barriers scientists face when trying to showcase their work and how web applications effectively overcome these challenges.
Next, we'll navigate the landscape of Python web application frameworks, comparing Dash, Streamlit, Gradio, Shiny, Solara, and Quarto. This section will provide a decision framework to help participants select the most suitable tool based on their specific needs, taking into account factors such as required functionality, development time, and deployment context. Through guided examples, attendees will learn to identify which framework best serves different scientific scenarios.
The tutorial also focuses on Fast Dash, an open-source Python library we developed specifically for scientific prototyping needs. We'll explain how Fast Dash transforms Python functions into interactive web applications with minimal boilerplate code, emphasizing its advantages for data presentation. Using a real-world case study of chlorophyll-a monitoring in New York's inland waters, we'll demonstrate how Fast Dash enabled the creation of an interactive dashboard that dramatically improved data accessibility compared to traditional static reporting methods.
The hands-on portion guides participants through the process of building their own web applications. Starting with simple data visualization, we'll progress to interactive applications incorporating maps, charts, and user controls. Exercises will cover essential patterns like:
- Converting analytical functions to web interfaces
- Integrating multiple data sources
- Building effective interactive visualizations
- Handling user input and filtering
- Optimizing performance for larger datasets
The final section addresses deployment strategies and best practices for scientific web applications. Participants will learn about hosting options, ranging from local development servers to cloud platforms, with a specific focus on maintaining scientific integrity while enhancing accessibility.
Throughout the tutorial, we emphasize practical applications rather than theory. All examples come from real scientific workflows, demonstrating how interactive web applications can transform complex analyses into accessible tools. The methodology presented is applicable across disciplines, from environmental monitoring to genomics, machine learning, and beyond.
Participants will leave with a working knowledge of the Python web application ecosystem, hands-on experience with Fast Dash, and a framework for selecting and implementing the right tools for their scientific communication needs. Most importantly, they'll gain the confidence to showcase their scientific work effectively through interactive web applications, ensuring their valuable research reaches broader audiences and achieves greater impact.
At minimum, pip install fast-dash streamlit gradio
Prerequisites –Participants should have:
- Python 3.8+ installed
- Familiarity with basic Python programming
- A code editor or IDE of choice
- Git installed for accessing tutorial materials
Research Investigator and Data Scientist at Celanese Corporation (former DuPont)
PhD, Chemical Engineering, Graduate Minor in Statistical Machine Learning
Data scientist at Lam Research with >6 years of experience in statistical data analysis, engineering, and machine learning. Independently researches applications of LLMs and statistical modeling to science and engineering domains. Built Fast Dash, an open-source Python library that transforms Python functions into interactive web applications.