This summer, I had a fantastic time as a Unidata intern, strengthening my Python and data visualization skills. Even though my internship was fully remote, I was still able to have a great experience and attend many events at UCAR. My mentor, Thomas Martin, and the rest of the Unidata staff were very helpful and always available for guidance during my time with Unidata.
My Ph.D. research at Florida State University involves developing physics-based models for atmosphere-fire interactions and conducting field experiments to investigate the biogeochemical fluxes within soil post-fire. Coming into the internship, I was excited to be able to work with atmospheric science data. I became familiar with the THREDDS Data Server (TDS) and began working with Xarray datasets at the beginning of my internship. Using Xarray is a great way to house your data in a multi-dimensional array; there is an excellent interface feature in Jupyter notebooks to display any metadata and information about your dataset.
I was a bit new to many of the features in Jupyter notebooks, and Unidata provided many opportunities to learn. I attended the Unidata Users Workshop and Project Pythia Hackathon virtually; these workshops taught me many Python skills gave me experience working with atmospheric science data. Both events were a great introduction to storytelling with data and developing Jupyter cookbooks. After those two events, I was able to get started with the bulk of my project, which incorporated PyVista and RAPIDS for graphical data visualization. PyVista is a powerful tool that simplifies 3D modeling and mesh analysis using a high-level API to the Visualization Toolkit (VTK). RAPIDS is a collection of open-source software and libraries that provide accelerated data science and artificial intelligence using the GPU parallelism of the NVIDIA CUDA framework. I focused my project on giving an overview of the two tools and creating tutorials for new users to learn how to create interactivity with their data and the information they are presenting. I developed multiple Jupyter notebooks, each with its own THREDDS dataset that walks the user through foundational data visualization techniques using PyVista and RAPIDS. I ensured the notebooks were user-friendly and friendly to novice Python users.
My summer was a great experience developing a learning tool that will potentially impact many with their work. Unidata provided a practical environment for me to strengthen my skills in Python programming, problem-solving, source control, data visualization, and storytelling. They also offered great opportunities for personal and professional development growth that I will carry on as I continue my academic journey. After wrapping up my time with Unidata, I plan to improve and maintain my project deliverables on an open-source platform and incorporate the work into my Ph.D. research.