WE 20210320: This week in the ASCL

For spring break, or even not for spring break, this was a busy week. I gave a Physics Colloquium, Schrödinger’s code: Opening the computational box, at Michigan Tech on Thursday; links to the slides, resources/sources, etc. are available online. It was a new talk, and though I could repurpose some slides from various other talks, creating new slides and working out the flow took a good bit of time. The colloquium was scheduled between two meetings of the SciCodes consortium. More about SciCodes is below.

Three code entries from our backlog were edited, assigned ASCL IDs, and moved in production, and three new codes were added to our staged (unpublished) entries. We have hundreds of entries staged; some of these don’t yet meet our criteria and may never do so. Thirty-one entries were curated and social media random code entries have been scheduled through March 31. One would think that scheduling these random code entries would be quick, but it took over three hours to stage the eleven needed to finish out the month, as entry curation is part of this work.

The SciCodes consortium holds two meetings on the same day to accommodate different time zones; members can attend either an early or late meeting. After the early meeting, a couple of people stayed in the Zoom so we could talk, as several people new to the group had questions. The meeting made clear that I had not prepared any on-boarding assistance, so that will have to be corrected.

This coming week, I will send out meeting minutes for the SciCodes meeting, try to figure out what I need to do to get the SciCodes web domain working again, meet virtually with a colleague (I hope) about our NASA project, and spend some number of hours getting a new machine set up, as it is supposed to arrive early in the week. I’m sure I’ll be thrilled with it once it’s set up, right? I’ll also be going back to my office at UMD part of one day this week; it’ll be only the second time I’ll have been in it since before last year’s spring break.

MTU Colloquium talk on Schrödinger’s code: Opening the computational box

On Thursday, March 18, I am giving the physics colloquium at Michigan Technological University (MTU), which has hosted the Astrophysics Source Code Library since the ASCL’s inception in 1999. Despite having worked on the ASCL for nearly eleven years, I’ve never been to MTU; though I wish the visit could be in person, the talk will be presented virtually over Zoom. The presentation abstract is below, as is a link to the slides and links for all of the citations and resources mentioned in the talk.

Abstract: Though computational methods are widely used in many disciplines, many researchers do not share the source code they develop, making it difficult to replicate and reuse the work. This presentation will cover the changing landscape that includes funders’ requirements, policy changes for existing journals, community resources, and more, that make it easy to release and archive codes to ensure they are available to support the research they enabled, improve the reproducibility of science, increase confidence in research, and meet new requirements made by funders and journals in many disciplines. It will also cover how the Astrophysics Source Code Library (ASCL), which has been working since 1999 to improve the transparency of research by registering open codes used in research, has made it possible for software to be cited as a first-order research object, and how researchers can garner credit for their codes by having them cited correctly and improve papers by including citations for the computational methods that enabled the research.

Slides (PDF)

Journals

Astronomy and Computing (A&C)
Computational Astrophysics and Cosmology (ComAC)
Computing and Software for Big Science
Computer Physics Communications (CPC)
Journal of Open Research Software (JORS)
SoftwareX
Journal of Open Source Software (JOSS)

Change leaders and guidelines

CITATION file format (CFF)
CodeMeta
FAIR principles
FORCE11/FORCE11 Software Citation Principles
Software Sustainability Institute
Working toward Sustainable Software for Science: Practice and Experiences (WSSSPE)

Social coding sites and archival services

Bitbucket
DOE CODE; more information
Figshare
GitHub
Software Heritage
Zenodo

Other resources

Asclepias
arXiv/arXiv Next Generation
CiteAs
DataCite
Software licensing resources | Licensing Astrophysics Codes special session at AAS 225
Papers with Code

Cited sources (in order of appearance)

Goble (2014)
Ince, Hatton, & Graham-Cumming (2012)
Allen, Teuben, & Ryan (2018)
Ryan, Allen, & Teuben (2019); Data and code
Collberg, Proebsting, & Warren (2014), PDF
Howison & Bullard (2016)
Mangul et al (2018)
Zorotovic, Schreiber, & Parsons (2014)
Smart (2018)
Neupane et al (2019); Vice article
Barba (2019)
DOE policy
DOE policy FAQ
NASA ROSES policy
NSF policy
Nature Portfolio policy
Science policy
AAS Journals policy

WE 20210313: This week in the ASCL

This past week, I refined the abstract for a talk I’m giving this coming week at MTU; I also did research into funders’ policies on code release to ensure my knowledge about them is up-to-date, this also for the upcoming presentation.

Four code entries submitted by authors were edited, assigned ASCL IDs, and moved back in production, and fifteen entries were curated. Several entries have had two bibcodes, a result of changes in authorship/author order. If you’ve ever noticed when looking at our dashboard that sometimes, ADS has >100% of ASCL codes, these extra bibcodes are why. I finally devoted time into tracking those down and sending the information on the duplicates to ADS to bring us back into agreement. This is a low-level issue, but it’s nice to get this loose end resolved.

The ASCL and similar efforts in other disciplines have come together to share ideas and work cooperatively in areas of mutual concern; at the moment, the coalition is called SciCodes. My main activities on SciCodes this past week has been getting the next 12 months of meetings scheduled, the schedule sent out, and confirming a presentation for it.

Peripheral to the ASCL, though also mostly because of it, I spent a ridiculous amount of time one day looking at new Macs. The OS on my current MacBook Pro is now too old to allow me log into UMD, which means I cannot access journals through the UMD Libraries on this machine, a critical need for ASCL work. It’s also having some issues, one of which, running hot during Zoom meetings, I have been working around by putting the machine on a bag of frozen mixed veggies. I don’t like upgrading and do it only when I absolutely have to. Do I want two ports or four? Apple’s M1 processor or Intel’s i5 or i7? How much memory, how much storage? And why don’t new MacBooks have SD slots?? A new machine is on its way to me.

This coming week will include the presentation at MTU, work on our NASA project, and the SciCodes meeting.

WE 20210306: This week in the ASCL

This past week has been pretty busy, with a presentation at SIAM’s CSE21 meeting on Wednesday and attendance at other software-related sessions. Eight new code entries were moved into production, three new entries staged, and code authors submitted seven new entries that will be worked on in the coming week.

Social media random code entries have been scheduled through March 17, and the forum and blog updated with February’s code entries. Curation and/or archival work was performed on or for 15 holdings; this included updating some entries with preferred citation information, updating links, and adding keywords, and downloading new versions of software that had been updated since we last downloaded it. Correspondence was sent to at least 24 authors.

In addition to working on newly-submitted codes, this coming week will include work on a presentation that will be given later this month, and progress on our NASA project continues.

February 2021 additions to the ASCL

Thirty codes were added to the ASCL in February:

BALRoGO: Bayesian Astrometric Likelihood Recovery of Galactic Objects
binaryoffset: Detecting and correcting the binary offset effect in CCDs
CMasher: Scientific colormaps for making accessible, informative plots
DaMaSCUS-SUN: Dark Matter Simulation Code for Underground Scatterings – Sun Edition
EqTide: Equilibrium Tide calculations

extinction: Dust extinction laws
ForwardDiff: Forward mode automatic differentiation for Julia
GalRotpy: Parametrize the rotation curve and gravitational potential of disk-like galaxies
GLEAM: Galaxy Line Emission and Absorption Modeling
hardCORE: Exoplanet core radius fractions calculator

HUAYNO: Hierarchically split-Up AstrophYsical N-body sOlver N-body code
lensingGW: Lensing of gravitational waves
Lightbeam: Simulate light through weakly-guiding waveguides
mirkwood: SED modeling using machine learning
MOSAIC: Multipole operator generator for Fast Multipole Method operators

MST: Minimum Spanning Tree algorithm for identifying large-scale filaments
Multi_CLASS: Cross-tracer angular power spectra of number counts using CLASS
MUSE-PSFR: PSF reconstruction for MUSE WFM-AO mode
nway: Bayesian cross-matching of astronomical catalogs
OPUS: Interoperable access to analysis and simulation codes

Piff: PSFs In the Full FOV
Pixell: Rectangular pixel map manipulation and harmonic analysis library
polgraw-allsky: All-sky almost-monochromatic gravitational-wave pipeline
PyAutoFit: Classy probabilistic programming
PyFstat: Continuous gravitational-wave data analysis

RASSINE: Normalizing 1D stellar spectra
spinOS: SPectroscopic and INterferometric Orbital Solution finder
ThumbStack: Map and profile stacking pipeline
viscm: Analyzing colormaps and creating new colormaps
X-PSI: X-ray Pulse Simulation and Inference

Resources for SIAM CSE21 presentation on Schrödinger’s Code

I am giving a presentation at the SIAM (virtual) Conference on Computational Science and Engineering today in a Minisymposium on Data-Driven Analysis of Scientific Software Quality, Availability, and Development Productivity to discuss research we published in 2018 and the relevance of our findings to scientific software availability. A link to the slides from the presentation is below, along with links to additional information.


Slides (PDF)

Paper: Schroedinger’s Code: A Preliminary Study on Research Source Code Availability and Link Persistence in Astrophysics
Data and code

Other studies mentioned:
Collberg C., Proebsting T. and Warren A. M. 2014 Repeatability and Benefaction in Computer Systems Research: A Study and a Modest Proposal, Tech. Rep. TR 14-04 (http://repeatability.cs.arizona.edu/v2/RepeatabilityTR.pdf)

Howison J. and Bullard J. 2016 Software in the scientific literature: Problems with seeing, finding, and using software mentioned in the biology literature, Journal of the Association for Information Science and Technology 67 2137

Mangul, S., Mosqueiro, T., Duong, D., Mitchell, K., Sarwal, V., Hill, B., Brito, J., Littman, R., Statz, B., Lam, A., Dayama, G., Grieneisen, L., Martin, L., Flint, J., Eskin, E., & Blekhman, R. 2018, A comprehensive analysis of the usability and archival stability of omics computational tools and resources, bioRxiv

Rewarding the effort involved

Funding
How to fund research software development
Essential Open Source Software for Science
DOE to Provide $12 Million for Research on Adapting Scientific Software to Run on Next-Generation Supercomputers

Recognition
Citations for software
FORCE11 Software Citation Principles
FORCE11 Software Citation Implementation Working Group
Software must be recognised as an important output of scholarly research

Career path
The Society of Research Software Engineering
US Research Software Engineer Association

Training

Better Scientific Software (BSSw)
SciCoder
Software Sustainability Institute
How to Professionally Develop Reusable Scientific Software—And When Not To

Changes in journal practices

In which journals should I publish my software?
Software with impact
An empirical analysis of journal policy effectiveness for computational reproducibility

Better support through technology

Tools for working with CITATION.cff files
Create a CodeMeta file
Getting a DOI for your code

January 2021 additions to the ASCL

Eighteen codes were added to the ASCL in January:

3LPT-init: Initial conditions with third-order Lagrangian perturbation for cosmological N-body simulations
apogee: Tools for APOGEE data
Avocado: Photometric classification of astronomical transients and variables with biased spectroscopic samples
BAYES-LOSVD: Bayesian framework for non-parametric extraction of the LOSVD
cFS: core Flight System

Curvit: Create light curves from UVIT data
DarpanX: X-ray reflectivity of multilayer mirrors
Eigentools: Tools for studying linear eigenvalue problems
EphemMatch: Ephemeris matching of DR25 TCEs, KOIs, and EBs for false positive identification
Mask galaxy: Machine learning pipeline for morphological segmentation of galaxies

Nigraha: Find and evaluate planet candidates from TESS light curves
Octo-Tiger: HPX parallelized 3-D hydrodynamic code for stellar mergers
ptemcee: A parallel-tempered version of emcee
pyUPMASK: Unsupervised clustering method for stellar clusters
PyXspec: Python interface to XSPEC spectral-fitting program

radiowinds: Radio Emission from Stellar Winds
stratsi: Stratified streaming instability
whereistheplanet: Predicting positions of directly imaged companions

The ASCL at the 237th meeting of the American Astronomical Society

It’s that time of year again, when astronomers’ hearts and wings turn to AAS for the winter AAS meeting. This year, however, the wings are virtual; like other conferences in this time of pandemic, the 237th meeting of the AAS is online. I’m very impressed with the online meeting space, which includes a conference center with different locations to visit, a virtual exhibit hall, an iPoster gallery, and many opportunities through Slack and thoughtfully-planned activities to enable and encourage interaction between attendees, exhibitors, and presenters, including the always great Open Mic event, a highlight of the winter meeting, on Wednesday evening.

Members of the ASCL are presenting two iPosters + (the “plus” is a short Zoom session about  the poster) and an oral presentation at this meeting.

On Monday, Siddha Mavuram, an UMD student hired to do development work for the ASCL for our NASA ADAP project, is doing an iPoster + presentation titled Come search the ASCL with our new API! I also have an iPoster + presentation on Monday called Life, the Universe and Everything… you ever wanted to know about the Astrophysics Source Code Library. Though our short talks, using our posters only as our visual aids, are on Monday, our posters are available all week.

On Tuesday, Peter Teuben is presenting results of our NASA ADAP project. Though Siddha is presenting part of the development work done for this project, Peter is sharing the overall results in his oral presentation Increasing the visibility of NASA astrophysics software through the ASCL, showing how this project has made it possible to search the ASCL and ADS for NASA software through the use of keywords and, on ADS, the doctype value software. You can see these results yourself on the ASCL and with an ADS search.

Because I very cleverly failed to realize that all the links I added to the slides for my iPoster wouldn’t work once I made those slides images (doh!), I provide a PDF of these slides for download below in which most, but alas not all, of the links work. Later this week, I’ll provide a full list of links in another post that will contain all of the resources and links the ASCL is presenting this week.

Slides for Peter’s oral presentation (PDF)

Slides for Alice’s ASCL iPoster slideshow (PDF)

December 2020 additions to the ASCL

Twenty-six codes were added to the ASCL in December:

BinaryStarSolver: Orbital elements of binary stars solver
BlackHawk: Black hole evaporation calculator
dolphin: Automated pipeline for lens modeling
DRAGraces: Reduction pipeline for GRACES spectra

EinsteinPy: General Relativity and gravitational physics problems solver
EOS: Equation of State for planetary impacts
getsf: Multi-scale, multi-wavelength sources and filaments extraction
HCGrid: Mapping non-uniform radio astronomy data onto a uniformly distributed grid

HydroCode1D: 1D finite volume code
LALSuite: LIGO Scientific Collaboration Algorithm Library Suite
LIFELINE: LIne proFiles in massivE coLliding wInd biNariEs
MADLens: Differentiable lensing simulator

Magritte: 3D radiative transfer library
MLC_ELGs: Machine Learning Classifiers for intermediate redshift Emission Line Galaxies
NSCG: NOIRLab Source Catalog Generator
Pomegranate: Probabilistic model builder

PyXel: Astronomical X-ray imaging data modeling
Robovetter: Automatic vetting of Threshold Crossing Events (TCEs)
seaborn: Statistical data visualization
sedop: Optimize discrete versions of common SEDs

Sengi: Interactive viewer for spectral outputs from stellar population synthesis models
SimCADO: Observations simulator for infrared telescopes and instruments
Skye: Excess clustering of transit times detection
SLIT: Sparse Lens Inversion Technique

SWIGLAL: Access LALSuite libraries with Python and Octave scripts
TRAN_K2: Planetary transit search

November 2020 additions to the ASCL

Thirty codes were added to the ASCL in November 2020:

ACStools: Python tools for Hubble Space Telescope Advanced Camera for Surveys data
AdaMet: Adaptive Metropolis for Bayesian analysis
ARES: Accelerated Reionization Era Simulations
CAPTURE: Interferometric pipeline for image creation from GMRT data
Clustering: Code for clustering single pulse events

CWITools: Tools for Cosmic Web Imager data
DarkBit: Dark matter constraints calculator
DarkCapPy: Dark Matter Capture and Annihilation
DDCalc: Dark matter direct detection phenomenology package
DeepShadows: Finding low-surface-brightness galaxies in survey images

DYNAMITE: DYnamics, Age and Metallicity Indicators Tracing Evolution
EvapMass: Minimum mass of planets predictor
frbcat: Fast Radio Burst CATalog querying package
GoFish: Molecular line detections in protoplanetary disks
GOTHIC : Double nuclei galaxy detector

GPCAL: Instrumental polarization calibration in VLBI data
HaloGen: Modular halo model code
HSTCosmicrays: Analyzing cosmic rays in HST calibration data
Kalkayotl: Inferring distances to stellar clusters from Gaia parallaxes
kīauhōkū: Stellar model grid interpolation

MCMCDiagnostics: Markov Chain Monte Carlo convergence diagnostics
PNICER: Extinction estimater
REBOUNDx: Adding effects in REBOUND N-body integrations
reproject: Python-based astronomical image reprojection
RRATtrap: Rotating Radio Transient identifier

Scintools: Pulsar scintillation data tools
SEDkit: Spectral energy distribution construction and analysis tools
TLC: Tidally Locked Coordinates
tlpipe: Data processing pipeline for the Tianlai experiment
wobble: Time-series spectra analyzer