 In the early 2000s a group of researchers interested in earth surface processes came together in a series of workshops and white papers to discuss computational modeling in their fields and what the future could and should hold One of the outcomes of that was the foundation of the NSF funded community surface dynamics modeling system or CSDMS The acronym for which if you say with a soft C sounds like systems I'm Greg Tucker. I'm the current director of systems and I'm going to give here a very short overview of some of systems activities and community interests, especially those with potential relevance to comm sis so systems Established in 2007 with an initial focus on those branches of the service sciences that deal with the earth surface sediments solutes coastlines Repositional systems landforms and things like that over the years the community has grown Substantially so that we're now up to about 1800 members worldwide the community is organized into a set of working and focus groups These represent for example the three key domains of terrestrial coastal and marine One of the key focus groups to be aware of in this context is the human dimensions focus research group Which is actually co-sponsored by comm sis Systems maintains a small integration facility based at the University of Colorado Boulder and The mission of that integration facility in partnership with community Representatives is three fold we advance community computing and education and Here I'm going to focus primarily on computing one notable thing in the community sphere is an annual meeting that we Sponsor the next meeting will be in May 2020 with an ecosphere and geosphere theme so Systems computing oriented activities are based in part on the notion that research can benefit when Computational modeling is made more efficient more reliable and more collaborative and One way to view that challenge in terms of the software that implements models and the operation of that software is as a six-fold Hierarchy of model operation tasks that range from reproduction to Application all the way up to creating a model in the first place all of those of course require understanding of the underlying theory, but they also involve a number of technical tasks That can form barriers to progress if they are not Framed in an efficient way so reproduction for example requires somebody to Locate the software the correct version to operate it to inspect the output if you want to apply a model You also need to be able to configure its inputs and obtain input data If you want a couple of model in one direction so for example using a model of soil moisture as Input to a model of plant growth you need to create some kind of a workflow and adapt the outputs to inputs in Many cases it's necessary to modify a model to get it to do what you need a model to do That requires knowing the source code doing testing and verification in many cases There's interest and scientific territory in coupling models two ways as for example in merging a human system with a biophysical system that requires some kind of share and execution of Exchange of data which can require substantial programming and finally there is of course the creation of a new model To express new ideas and that requires an additional amount of work with software So systems is interesting interested in helping to make those various technical steps simpler and more efficient than they tend to be currently and Some of the things that we've done along those lines. I'm going to go through now One of the simplest has been to create a model repository Somewhat parallel to the commcess net repository ours currently has a little over 300 models and tools collectively with various kinds of metadata Those that have a DOI associated with Will have an h-index track for that model give the community a sense of usage and that helps with the discoverability In transparency parts another thing that systems is focused on is model interface standards So in our technological world, we take interface standards for granted For example, if you rent a car, whether it's a tiny electric or a huge gas guzzler You assume that there will be a standardized set of controls that any driver will understand Similarly, we've developed a basic model interface that provides a common set of control functions for numerical models So that's things like initializing a model updating it for one iteration querying data values, and if necessary setting data values, which becomes important for coupling and cleaning up when the model is all run The basic model interface consists of a set of about 30 odd functions like these And to learn more about it. There are various resources that we offer on the cstms website So bmi is one key to making models more interoperable But it's it's not the only thing in many communities. There's a diversity of languages in the communities that systems represents. There are four or five primary languages that people prefer And to try to cope with that diversity What we've done is to develop a set of tools collectively called the babelizer that will provide A python language front end two codes written in a variety of different languages, including the sea family and fortran So we've explicitly chosen python as a front end as a increasingly popular and well designed language for scientific computing That then makes possible a tool that systems recently released called the python modeling tool This is a simple python package that allows you to instantiate and execute a variety of different models all from within a python environment Examples of some of the models in the current collection are listed here They include coastal dynamics landform evolution permafrost processes hydrology hydrodynamics and so on There's also a variety of more granular Components that are made possible through the land lab project, which I'll talk about next So land lab is a python language toolkit for creating models. It deals with that item of creation It's explicitly designed for two-dimensional grid based numerical models. Some examples Are shown here from recent publications and land lab Offers several capabilities that ease the process of model construction It allows you to create a grid and all of its topology whether raster or hex or unstructured In a single line of code and to configure it in a few more It allows you to attach layers of data or so-called fields to elements of the grid and it allows you to Relatively easily express finite difference or finite volume solutions using a Collection of built-in functions There are input and output functions that take care of for example reading parameters in or writing grids of data out And one of the key ideas is to encapsulate functionality into reusable components. So if for example, you have a numerical solution to some Key process, let's say heat diffusion That could be encapsulated into a component and then somebody can come along and build a model by essentially assembling components in a short script thereby simplifying the process and enhancing reuse So that's a very quick tour of some of the systems tools and concepts. I'll mention a couple of things that The integration facility and community are focused on now in the realm of community um One major Interest of ours at the moment is in helping research teams Apply some of these tools and concepts to their own projects and needs. So we often work with Visitors and we'll host informal hackathons and things like that In the area of computing One of the things that we hope to roll out in the next year is the idea of a data component So a type of component that provides a bmi like interface to access a particular data set and thereby hides the data format details from the user And finally in the education sphere one initiative that we're looking forward to is the Providing a pair of summer schools summer 2020 and 2020 2021 These are going to be roughly 10 day-ish Events that are targeted at graduate students postdocs early career faculty or really anyone who wants to learn about Computational modeling reverse surface processes as well as best practices in scientific software development Finally to learn more about links between the systems and commcess communities There are a pair of resources one the outcome of a joint workshop that was held a couple years ago That workshop report is available on the web at that url and it inspired a jointly authored paper led by derrick robinson of the university of waterloo That I also recommend so that's a very quick tour of cstms and some of its Some of its resources