Skip to content

Commit fc37b2f

Browse files
committed
SciPy blog post
1 parent 01249c1 commit fc37b2f

File tree

1 file changed

+95
-0
lines changed
  • content/posts/2024-07-07-scipy2024

1 file changed

+95
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
---
2+
title: Jupyter4Science at SciPy 2024
3+
author: "admin"
4+
date: '2024-07-10'
5+
slug: scipy2024
6+
categories: []
7+
tags: []
8+
subtitle: ''
9+
summary: 'In this post Nicole reviews the past, present, and future of the Jupyter4Science site and solicits thoughts, ideas, and contributions from the SciPy community.'
10+
authors: [admin]
11+
lastmod: '2024-07-10T23:02:44-07:00'
12+
featured: no
13+
image:
14+
caption: ''
15+
focal_point: ''
16+
preview_only: no
17+
projects: []
18+
---
19+
20+
## Who am I?
21+
22+
My name is [Nicole Brewer](https://nicole-brewer.com). My undergraduate background is in computer science, and after graduation, I spent several years as a software engineer in the academic space - a position known as a [**research software engineer**](https://us-rse.org/about/what-is-an-rse/) or RSE. As an RSE, I worked with a research group to create a rather complex web application in a Jupyter Notebook. At that time (around 2019), our RSE group had experienced some success using Jupyter Notebooks to develop interfaces because tools like ipywidgets and Voila make it easy to transform an existing computational workflows into user interfaces. Using Jupyter Notebooks and Python were also beneficial because the codebase was in a friendly and familiar language that our collaborators were familiar with; they could manageably maintain the web app on their own after the period of collaboration was over. Our RSE group felt that these - largely human - factors were a major part of the success, so we developed a couple of templates for developing web applications using Jupyter Notebooks.
23+
24+
> An obligatory sidenote about my current position: Over the course of my early career, I developed an interest in computational reproducibility, especially with respect to Jupyter Notebooks, so I ended up in a History and Philosophy of Science program at Arizona State University where I'm currently pursuing my PhD. You can read more about that on [my profile page]({{< ref "/authors/admin" >}}).
25+
26+
## How did I came to present widget tutorials at SciPy 2023 and 2024?
27+
28+
Though my dissertation work was focused on computational reproducibility, I felt there was a lot of value in the templates we created for building user interfaces with Jupyter Notebooks. I wanted to further develop our templates into tutorials and other resources to pass along the lessons learned and encourage uptake of the tools. I applied [Better Scientific Software Fellowship](https://bssw.io/pages/bssw-fellowship-program), or BSSw Fellowship, which is a program that aims to foster and promote practices, processes, and tools to improve developer productivity and software sustainability of scientific codes. On receiving the fellowship in 2023, I developed a tutorial for turning scientific workflows into web application. I had never attended SciPy, but as I was hoping to expand on topics often presented in prior ipywidget tutorials, I felt that it would be the right venue for my tutorial. I greatly appreciated the opportunity to present, and I had the meeting [Matt Craig](https://github.com/mwcraig), who had given ipywidget tutorials that I had learned so much from years prior. He introduced me to [Juan Cabanela](https://github.com/JuanCab) and suggested we might collaborate on a future iteration on the tutorial. We just presented [Building Complex Web Applications with Jupyter Notebooks](https://github.com/Jupyter4Science/scipy2024-jupyter-widgets-tutorial) at SciPy 2024!
29+
30+
## What is Jupyter4Science and how did it get started?
31+
32+
After after presenting the 2023 tutorial, [How the Little Jupyter Notebook Became a Web App: Managing Increasing Complexity with nbdev](https://github.com/Jupyter4Science/scipy23-jupyter-web-app-tutorial), I got started on the next deliverable of BSSw Fellowship, which was a website for showcasing all the many resources I was creating and curating. The result was [Jupyter4Science](https://jupyter4.science) - a knowledge base that contains original content and curated resources about developing and sharing Jupyter Notebooks as they are used in the context of scientific applications. The website contains...
33+
34+
### Resources
35+
- tutorials and templates
36+
- original blog posts
37+
- reports on recent experiences with open-source tools
38+
- awesome lists
39+
- annotated resource pages
40+
- a Zotero collection
41+
- publications and other citable objects
42+
43+
### Relevant Topics
44+
45+
- Notebooks as Computational Workflows
46+
- Development Environments for Jupyter Notebooks
47+
- Reproducible Environments
48+
- Sharing Notebooks
49+
- Creating Publications with Quarto
50+
- Templates and Best Practices
51+
- Jupyter Notebooks as Peer-Reviewed Objects
52+
- Building Data Dashboards and Web Applications with Jupyter Notebooks
53+
- and more!
54+
55+
### Student Contributions
56+
57+
From the beginning of the project, I hoped to avoid developing something in isolation. I use my fellowship funds to hire two undergraduate computer science students to help me create and contribute to the knowledge base. I'm incredibly proud of both their efforts. They each created a Jupyter-based web application and wrote an experience report on the tools they used:
58+
59+
- [Network Visualization Dashboard](https://github.com/Jupyter4Science/network-visualization-dashboard)
60+
- [Exploring Network Visualization in Jupyter Notebooks](https://jupyter4.science/posts/network-visualizations/)
61+
- [Manuscript Annotation App](https://github.com/Jupyter4Science/glyptodon)
62+
- [ipywidgets vs. Dash for Image Processing Web Application](https://jupyter4.science/posts/ipywidgets-vs-dash/)
63+
64+
## What does the future look like?
65+
66+
As I mentioned, I'm currently working on my PhD so I have limited bandwidth. The Jupyter4Science project is in early stages and could take any number of future directions. In any case, I'm interested in obtaining more funding for the project to continue working on it full-time next summer.
67+
68+
### Jupyter Notebook - The Hidden Curriculum
69+
70+
University students across science, social science, the digital humanities are often expected to use Jupyter Notebooks in classrooms and research settings. However, students are commonly thrown into the deep end with these tools which, given their reputation as beginner-friendly tools, are introduced without dedicated instruction. I'm currently using project funding from the ACM Computer Science Education SIG to develop a 1-cr hour intro course about notebooks and best practices.
71+
72+
### Newsletter
73+
74+
Perhaps the next-closest thing on the horizon is creating a newsletter to announce the publication of new posts, as well as any news and updates on Jupyter-related tools. Such a newsletter would be on an infrequent, ad-hoc release schedule.
75+
76+
### Community Building
77+
78+
There are currently two ways I've set up processes to contribute to the site, but I'm interested in your feedback and other ideas as well! Please reach out if you have issues or ideas.
79+
80+
- [Contribute a blog post](https://jupyter4.science/contribute/site-content/)
81+
- [Contribute a resource to the Zotero collection](https://jupyter4.science/contribute/zotero-collection/)
82+
83+
### Possible Future Directions
84+
85+
The future of Jupyter4Science isn't completely clear to me yet, but I do hope to continue to connect with everyone at SciPy and grow the project further. Possible endeavours include:
86+
87+
- podcast episodes
88+
- free online tutorials
89+
- open education resources
90+
- entrepreneurship and consulting
91+
92+
I'm interesting in obtaining more funding to work on it full time over the summer of 2025. [**Please reach out with any ideas you may have!**](https://forms.gle/xUTzmgRVUf4NeALB8) I'd love to connect.
93+
94+
<iframe src="https://docs.google.com/forms/d/e/1FAIpQLSfIk1tL0acU8Jud83ZG2AZOWI9f2slkO_Ed5CFZwJ1qa5ce2g/viewform?embedded=true" width="640" height="828" frameborder="0" marginheight="0" marginwidth="0">Loading…</iframe>
95+

0 commit comments

Comments
 (0)