GeoDynamics is a community-driven organization advancing Earth science by providing cyberinfrastructure for creating, developing, disseminating, and supporting open-source software for geophysics and related fields. The organization hosts software in various geodynamics and computational science disciplines, including long-term tectonics, fluid and melt migration, mantle dynamics, seismology, and short-term crustal dynamics.
From individual software pages, users can download or launch popular earth science tools such as “ASPECT” for thermal convection, “Calypso” to simulate spherical harmonics, “PyLith” to simulate crustal deformation for earthquakes and volcanoes, and many more. The portal provides pathways to high-performance computing for researchers and scientists.
In addition, the portal provides many open and free educational resources, teaching materials, reports, and presentations to foster interest in real-world geoscience. Bringing together researchers to share ideas and perspectives, the organization has different calendar events throughout the year, such as webinars, workshop series, and hackathons.
GeoDynamics is incredible at providing many open source software to their user community; download metrics for each tool still needed to be collected, which the team was interested in exploring. Adding tracking statistics on the site would be helpful to show the value and usefulness of each software to scientists and the general public. In addition, bringing statistics from Github repos to the software pages would bring awareness of the different issues, the commits, and the authors contributing to the codebase.
Geodynamics partnered with Hubzero to utilize the Hubzero Content Management System (CMS) to provide valuable tool statistics and data visualization to their user community. Through this partnership, the Geodynamics science gateway has been customized, giving customized data insights into tool usage.
From this planned work, Ka (Jesse) Woo, a full-stack developer with the Hubzero team, worked closely with the Geodynamics team to enhance the functionality of the science gateway.
Jesse worked on enhancements for the newly created statistics tab, which included an amalgamation of custom build GET and POST API, new database tables to store download clicks and Github data, an internal admin cron job that would retrieve geolocation data mapped to IP address, a python script that retrieves data from the Github API based on the tool’s repo URL, and a graphing Javascript library that would provide the data visualization.
Within the detail page and the trifold page that showcases all software tools, vanilla Javascript was layered on top to call APIs based on the user download clicks. Within all scripting, the code can handle errors from the APIs and server issues.
Overall, the statistics tab was a massive lift for the GeoDynamics team, showcasing the value of each software tool. The data visualization was a success, with different ways to segment and filter data that made sense and gave insight to users. The client was pleased with the communication, taking their vision and making it into a reality within the tight time frame.
As the lead developer for this engagement, Jesse Woo shared great satisfaction with the outcomes. “Overall, I’m pleased with the work I’ve gotten to do for GeoDynamics, knowing how my development efforts have helped bring context and value to the software tools that scientists and researchers use daily. I’m thankful that I got a chance to work with GeoDynamics, and that relationship continues today because we, as a team, were able to provide a great feature.”
Contact our team to learn more about how Hubzero can partner with your research project hosting or science gateway development.