English
Related papers

Related papers: Good Enough Practices in Scientific Computing

200 papers

Software is now a vital scientific instrument, providing the tools for data collection and analysis across disciplines from bioinformatics and computational physics, to the humanities. The software used in research is often home-grown and…

Software Engineering · Computer Science 2019-03-15 Mario Rosado de Souza , Robert Haines , Markel Vigo , Caroline Jay

We present an overview of current academic curricula for Scientific Computing, High-Performance Computing and Data Science. After a survey of current academic and non-academic programs across the globe, we focus on Canadian programs and…

Computers and Society · Computer Science 2019-01-17 Marcelo Ponce , Erik Spence , Daniel Gruner , Ramses van Zon

Recommender systems are software tools used to generate and provide suggestions for items and other entities to the users by exploiting various strategies. Hybrid recommender systems combine two or more recommendation strategies in…

Information Retrieval · Computer Science 2019-01-15 Erion Çano , Maurizio Morisio

Mixed methods research is often used in software engineering, but researchers outside of the social or human sciences often lack experience when using these designs. This paper provides guiding principles and advice on how to design mixed…

Software Engineering · Computer Science 2025-03-26 Margaret-Anne Storey , Rashina Hoda , Alessandra Maciel Paz Milani , Maria Teresa Baldassarre

Computational scientists are facing a new era where the old ways of developing and reusing code have to be left behind and a few daring steps are to be made towards new horizons. The present work analyzes the needs that drive this change,…

Computational Engineering, Finance, and Science · Computer Science 2021-08-23 Zsolt I. Lázár , Jouke R. Heringa , Bazil Pârv , Simon W. de Leeuw

Software produced for research, published and otherwise, suffers from a number of common problems that make it difficult or impossible to run outside the original institution, or even off the primary developer's computer. We present ten…

Software Engineering · Computer Science 2017-07-05 Morgan Taschuk , Greg Wilson

Background: Research software plays an important role in solving real-life problems, empowering scientific innovations, and handling emergency situations. Therefore, the correctness and trustworthiness of research software are of absolute…

Software Engineering · Computer Science 2022-07-27 Nasir U. Eisty , Jeffrey C. Carver

Computer science is also an experimental science. This is particularly the case for parallel computing, which is in a total state of flux, and where experiments are necessary to substantiate, complement, and challenge theoretical modeling…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-08-19 Sascha Hunold , Jesper Larsson Träff

The advent of computers has allowed mathematicians to do increasingly more difficult computations that used to be practically impossible. Peer reviewers will seldom look at any code attached to a math paper, however. In this article, we…

History and Overview · Mathematics 2025-03-04 Jeroen Hanselman

Internet-connected smart devices are increasing at an exponential rate. These powerful devices have created a yet-untapped pool of idle resources that can be utilised, among others, for processing data in resource-depleted environments. The…

Software Engineering · Computer Science 2023-02-14 Niroshinie Fernando , Chetan Arora , Seng W. Loke , Lubna Alam , Stephen La Macchia , Helen Graesser

Computer programming was once thought of as a skill required only by professional software developers. But today, given the ubiquitous nature of computation and data science it is quickly becoming necessary for all scientists and engineers…

Computers and Society · Computer Science 2016-08-23 Christian T. Jacobs , Gerard J. Gorman , Huw E. Rees , Lorraine Craig

Context: Research software is essential for developing advanced tools and models to solve complex research problems and drive innovation across domains. Therefore, it is essential to ensure its correctness. Software testing plays a vital…

Software Engineering · Computer Science 2025-01-30 Nasir U. Eisty , Upulee Kanewala , Jeffrey C. Carver

Peer review is a key activity intended to preserve the quality and integrity of scientific publications. However, in practice it is far from perfect. We aim at understanding how reviewers, including those who have won awards for reviewing,…

Software Engineering · Computer Science 2021-06-21 Neil A. Ernst , Jeffrey C. Carver , Daniel Mendez , Marco Torchiano

Representative sampling appears rare in empirical software engineering research. Not all studies need representative samples, but a general lack of representative sampling undermines a scientific field. This article therefore reports a…

Software Engineering · Computer Science 2021-10-22 Sebastian Baltes , Paul Ralph

The traditional foundation of science lies on the cornerstones of theory and experiment. Theory is used to explain experiment, which in turn guides the development of theory. Since the advent of computers and the development of…

Computational Physics · Physics 2023-11-14 Susi Lehtola

Quantum Computing promises accelerated simulation of certain classes of problems, in particular in plasma physics. Given the nascent interest in applying quantum computing techniques to study plasma systems, a compendium of the relevant…

Plasma Physics · Physics 2023-02-02 Óscar Amaro , Diogo Cruz

Technology is currently ubiquitous and is also part of the educational system at all levels. It started with communication technology systems, and later continued with digital competence. Nowadays, although these previous concepts are still…

Computers and Society · Computer Science 2025-02-18 Javier Bilbao , Eugenio Bravo , Olatz Garcia , Carolina Rebollar

This book on Distributed Computing aims to benefit a diverse audience, ranging from aspiring engineers, and seasoned researchers, to a wide range of professionals. Driven by my passion for making the core concepts of distributed computing…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-11-27 Kenneth Odoh

Computational notebooks are intended to prioritize the needs of scientists, but little is known about how scientists interact with notebooks, what requirements drive scientists' software development processes, or what tactics scientists use…

Software Engineering · Computer Science 2025-03-18 Ruanqianqian Huang , Savitha Ravi , Michael He , Boyu Tian , Sorin Lerner , Michael Coblenz