Dec
6
Wed
Better Scientific Software Webinar
Dec 6 @ 1:00 pm – 2:15 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) is resuming the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we will offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. Participation is free and open to the public, but registration will be required for each event.

The next webinar in the series took place on December 6, 2017 and was titled “Better Scientific Software”.

Better Scientific Software (BSSw) is an organization dedicated to improving developer productivity and software sustainability for computational science and engineering (CSE).  This presentation introduced a new website (https://bssw.io)—a community exchange for scientific software improvement.  We’re creating a clearinghouse to gather, discuss, and disseminate experiences, techniques, tools, and other resources to improve software productivity and sustainability for CSE. Site users can find information on scientific software topics and can propose to curate or create new content based on their own experiences. The backend enables collaborative content development using standard GitHub tools and processes.  We need your contributions to build the BSSw site into a vibrant resource, with content and editorial processes provided by volunteers throughout the international CSE community.

Jan
17
Wed
Bringing Best Practices to a Long-Lived Production Code
Jan 17 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. Participation is free and open to the public, but registration is required for each event.

The next webinar in the series was titled “Bringing Best Practices to a Long-Lived Production Code“, and was presented by Dr. Charles R. Ferenbaugh of Los Alamos National Laboratory.  The webinar took place on Wednesday, January 17, 2018 at 1:00 pm ET.

Abstract:  

How can you introduce best software practices to a long-lived scientific production code, with a significant user base, that has “gotten along fine” for years doing things its own way?  Often developers in such projects must struggle with overly complex code, inadequate documentation, little or no software process, and a “just write the code fast” culture; these are challenges to software quality that are generally not issues for new projects.  In this presentation the speaker discussed some of the peculiar problems faced by long-lived codes, and present a case study of how  they are dealing with these issues in the xRage code at LANL.

Feb
28
Wed
Jupyter and HPC: Current State and Future Roadmap
Feb 28 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. Participation is free and open to the public, but registration is required for each event. The next webinar in the series was titled “Jupyter and HPC: Current State and Future Roadmap”, and was presented by Matthias Bussonnier (UC Berkeley), Shreyas Cholia (LBNL), and Suhas Somnath (ORNL).  The webinar took place on Wednesday, February 28, 2018 at 1:00 pm ET.

Abstract:  

During the last few years the Jupyter notebook has become one of the tools of choice for the data science and high-performance computing (HPC) communities. This webinar will provide an overview of why Jupyter is gaining traction in education, data science, and HPC, with emphasis on how notebooks can be used as interactive documents for exploration and reporting.  We will present an overview of how Jupyter works and how the network protocol can be leveraged for both a local single machine and remote-cluster work.  We will discuss the nuts and bolts of how Jupyter has been deployed at NERSC as a case study in implementation of Jupyter in an HPC environment. This work implies learning the Jupyter ecosystem to take advantage of its powerful abstractions to develop custom infrastructure to satisfy policies and user needs. The webinar showed, as a use case, how Jupyter notebooks have transformed data discovery, visualization, and interactive analysis for the scanning probe and electron microscopy communities at Oak Ridge National Laboratory. It also showed how notebooks can seamlessly accommodate measurements from a wide variety of instruments through Pycroscopy, a framework for instrument agnostic data storage and analysis.

Mar
21
Wed
Scientific Software Development with Eclipse
Mar 21 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. Participation is free and open to the public, but registration is required for each event. The next webinar in the series was titled “Scientific Software Development with Eclipse”, and was presented by Gregory Watson of ORNL.  The webinar took place on Wednesday, March 21, 2018 at 1:00 pm ET.

Abstract:  

The Eclipse IDE is one of the most popular IDEs available, and its support for multiple languages, particularly C, C++ and Fortran has made it the go to IDE for scientific software development. Although an IDE like Eclipse can provide advanced development capabilities such as code recommendation and refactoring, these features can be difficult to utilize for complex code bases. Other challenges, such as ease of installation and use, reliability, and compatibility with existing  development practices also play a role. Ultimately the usefulness of the  tool is a tradeoff between the capabilities it provides and the  challenges of incorporating it into the development workflow. This  webinar will demonstrate some of the latest features available in Eclipse that are particularly useful for scientific application development, and examine how they can be used in a variety of different scenarios using realistic sample codes.

Apr
18
Wed
Software Citation Today and Tomorrow
Apr 18 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. Participation is free and open to the public, but registration is required for each event. The next webinar in the series was titled “Software Citation Today and Tomorrow”, and was presented by Dan Katz.  The webinar took place on Wednesday, April 18, 2018 at 1:00 pm ET.

Abstract:

Software is increasingly important in research, and some of the scholarly communications community, for example, in FORCE11, has  been pushing the concept of software citations as a method to allow software developers and maintainers to get academic credit for their work: software releases are published and assigned DOIs, and software users then cite these releases when they publish research that uses the  software. This webinar discussed the state of software citation, starting with history of work done by the FORCE11 Software Citation Working Group, leading to a published set of software citation principles (https://doi.org/10.7717/peerj-cs.86), as well as other prior work. It will also talk about where the community is going, what the obstacles to progress are, and how they may be overcome.

May
9
Wed
On-demand Learning for Better Scientific Software: How to Use Resources & Technology to Optimize your Productivity
May 9 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. Participation is free and open to the public, but registration is required for each event. The next webinar in the series was titled “On-demand Learning for Better Scientific Software: How to Use Resources & Technology to Optimize your Productivity”, and was presented by Dr. Elaine Raybourn.  The webinar took place on Wednesday, May 9, 2018 at 1:00 pm ET.

Abstract:

Continual advances in new technologies for computational science often require members of the HPC community to learn new tools, techniques, or processes on-demand, or outside of a formal education setting. While the variety of media and deluge of content make on-demand learning a reality, very few learners apply guiding principles from learning science to set themselves up for success. Applying on-demand learning strategies for self-paced “learning in the wild” can augment professional learning courses from EdX, Udacity, and YouTube. Employing use cases and examples from Python and Git, this webinar will demonstrate how to develop a personalized learning framework leveraging massively open online courses (MOOC), podcasts, social media, videos, and more. A walk through of relevant learning applications will be provided. Participants of this webinar will take away practical strategies, resources, and tools that can be applied toward learning more productively in general, and specifically to software development.

 

Jun
13
Wed
Popper
Jun 13 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. The next webinar in the series is titled “Popper: Creating Reproducible Computational and Data Science Experimentation Pipelines”, and was presented by Ivo Jimenez of UC Santa Cruz.  The webinar took place on Wednesday, June 13, 2018 at 1:00 pm ET.

Abstract:  

Current approaches used in computational and data science research may require significant time without necessarily advancing scientific understanding. For example, researchers may spend countless hours reformatting data and writing code to attempt to reproduce previously published research. What if the scientific community could find a better way to create and publish workflows, data, and models that are easy to reproduce, thus streamlining scientific analysis? Popper is a protocol and command language interpreter (CLI) tool for implementing scientific exploration pipelines following a DevOps approach of unifying software development and operation in order to handle complexity in large codebases. Popper repurposes DevOps practices in the context of scientific explorations, so that researchers can leverage existing tools and technologies to enable reproducibility.  This webinar will introduce the Popper protocol, including a demo of the CLI tool and HPC examples.

 

Jul
18
Wed
Open Source Software
Jul 18 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) facilitates a webinar series on Best Practices for HPC Software Developers.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. The next webinar in the series was titled “How Open Source Software Supports the Largest Computers on the Planet”, and was presented by Ian Lee of Lawrence Livermore National Laboratory.  The webinar took place on Wednesday, July 18, 2018 at 1:00 pm ET.

Abstract:

This talk provided an overview of the work at Lawrence Livermore National Laboratory to re-vamp their open source project offerings, release processes, and engagements across the Department of Energy and the US Government through efforts such as DOECode and Code.gov. The presenter discussed ongoing work to make it easier for Livermore staff to engage with open source communities, via both the creation of new projects and contributions to existing open source projects.  These experiences and insights may be useful to a wide range of developers of high-performance scientific software.

Aug
21
Tue
Software Sustainability – Lessons Learned
Aug 21 @ 12:00 pm – 1:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. The next webinar in the series is titled “Software Sustainability – lessons learned from different disciplines”, and will be presented by Neil Chue Hong of the Software Sustainability Institute (University of Edinburgh).  The webinar will take place on Wednesday, August 21, 2018 at 12:00 pm ET.

Abstract:

How do you make software sustainable? How much is it about process and how much about practice? Does it vary between countries or disciplines? In this webinar, I’ll present what the UK’s Software Sustainability Institute has learned from 8 years of work in this area including efforts around understanding the scale of software use in research, raising the profile of software as a key part of the research ecosystem, and how we can enable researchers and developers to build better software.

Sep
19
Wed
Modern CMake
Sep 19 @ 1:00 pm – 2:00 pm

The IDEAS Productivity project, in partnership with the DOE Computing Facilities of the ALCF, OLCF, and NERSC and the DOE Exascale Computing Project (ECP) has resumed the webinar series on Best Practices for HPC Software Developers, which we began in 2016.

As part of this series, we offer one-hour webinars on topics in scientific software development and high-performance computing, approximately once a month. The next webinar in the series was titled Modern CMake, and was presented by Bill Hoffman.  The webinar took place on Wednesday, September 19, 2018 at 1:00 pm ET.

Abstract:

Bill Hoffman, the creator of the CMake project, will give an introduction to development with modern CMake constructs. CMake is 17 years old and has evolved over time into the most widely used C++ build  tool in the world. In the past 5 years, many new features have been added to CMake to make the creation of cross-platform build files easier. This webinar will provide best practices for development and maintenance of a CMake build system.  The webinar will cover the “target centric” approach to writing CMake files. In addition, testing and quality dashboards with CDash will be covered. Kitware’s experience with HPC systems and CMake will also be discussed.