2,220 research outputs found
A Revision Control System for Image Editing in Collaborative Multimedia Design
Revision control is a vital component in the collaborative development of
artifacts such as software code and multimedia. While revision control has been
widely deployed for text files, very few attempts to control the versioning of
binary files can be found in the literature. This can be inconvenient for
graphics applications that use a significant amount of binary data, such as
images, videos, meshes, and animations. Existing strategies such as storing
whole files for individual revisions or simple binary deltas, respectively
consume significant storage and obscure semantic information. To overcome these
limitations, in this paper we present a revision control system for digital
images that stores revisions in form of graphs. Besides, being integrated with
Git, our revision control system also facilitates artistic creation processes
in common image editing and digital painting workflows. A preliminary user
study demonstrates the usability of the proposed system.Comment: pp. 512-517 (6 pages
Ten Simple Rules for Taking Advantage of Git and GitHub.
Bioinformatics is a broad discipline in which one common denominator is the need to produce and/or use software that can be applied to biological data in different contexts. To enable and ensure the replicability and traceability of scientific claims, it is essential that the scientific publication, the corresponding datasets, and the data analysis are made publicly available [1,2]. All software used for the analysis should be either carefully documented (e.g., for commercial software) or, better yet, openly shared and directly accessible to others [3,4]. The rise of openly available software and source code alongside concomitant collaborative development is facilitated by the existence of several code repository services such as SourceForge, Bitbucket, GitLab, and GitHub, among others. These resources are also essential for collaborative software projects because they enable the organization and sharing of programming tasks between different remote contributors. Here, we introduce the main features of GitHub, a popular web-based platform that offers a free and integrated environment for hosting the source code, documentation, and project-related web content for open-source projects. GitHub also offers paid plans for private repositories (see Box 1) for individuals and businesses as well as free plans including private repositories for research and educational use.Biotechnology and Biological Sciences Research CouncilThis is the final version of the article. It first appeared from Public Library of Science via https://doi.org/10.1371/journal.pcbi.1004947
TRIQS: A Toolbox for Research on Interacting Quantum Systems
We present the TRIQS library, a Toolbox for Research on Interacting Quantum
Systems. It is an open-source, computational physics library providing a
framework for the quick development of applications in the field of many-body
quantum physics, and in particular, strongly-correlated electronic systems. It
supplies components to develop codes in a modern, concise and efficient way:
e.g. Green's function containers, a generic Monte Carlo class, and simple
interfaces to HDF5. TRIQS is a C++/Python library that can be used from either
language. It is distributed under the GNU General Public License (GPLv3).
State-of-the-art applications based on the library, such as modern quantum
many-body solvers and interfaces between density-functional-theory codes and
dynamical mean-field theory (DMFT) codes are distributed along with it.Comment: 27 page
DataHub: Collaborative Data Science & Dataset Version Management at Scale
Relational databases have limited support for data collaboration, where teams
collaboratively curate and analyze large datasets. Inspired by software version
control systems like git, we propose (a) a dataset version control system,
giving users the ability to create, branch, merge, difference and search large,
divergent collections of datasets, and (b) a platform, DataHub, that gives
users the ability to perform collaborative data analysis building on this
version control system. We outline the challenges in providing dataset version
control at scale.Comment: 7 page
An overview of the planned CCAT software system
CCAT will be a 25m diameter sub-millimeter telescope capable of operating in
the 0.2 to 2.1mm wavelength range. It will be located at an altitude of 5600m
on Cerro Chajnantor in northern Chile near the ALMA site. The anticipated first
generation instruments include large format (60,000 pixel) kinetic inductance
detector (KID) cameras, a large format heterodyne array and a direct detection
multi-object spectrometer. The paper describes the architecture of the CCAT
software and the development strategy.Comment: 17 pages, 6 figures, to appear in Software and Cyberinfrastructure
for Astronomy III, Chiozzi & Radziwill (eds), Proc. SPIE 9152, paper ID
9152-10
Ten Quick Tips for Using a Raspberry Pi
Much of biology (and, indeed, all of science) is becoming increasingly
computational. We tend to think of this in regards to algorithmic approaches
and software tools, as well as increased computing power. There has also been a
shift towards slicker, packaged solutions--which mirrors everyday life, from
smart phones to smart homes. As a result, it's all too easy to be detached from
the fundamental elements that power these changes, and to see solutions as
"black boxes". The major goal of this piece is to use the example of the
Raspberry Pi--a small, general-purpose computer--as the central component in a
highly developed ecosystem that brings together elements like external
hardware, sensors and controllers, state-of-the-art programming practices, and
basic electronics and physics, all in an approachable and useful way. External
devices and inputs are easily connected to the Pi, and it can, in turn, control
attached devices very simply. So whether you want to use it to manage
laboratory equipment, sample the environment, teach bioinformatics, control
your home security or make a model lunar lander, it's all built from the same
basic principles. To quote Richard Feynman, "What I cannot create, I do not
understand".Comment: 12 pages, 2 figure
Reproducible science: What, why, how
Most scientific papers are not reproducible: it is really hard, if not impossible, to understand how results are derived from data, and being able to regenerate them in the future (even by the same researchers). However, traceability and reproducibility of results are indispensable elements of highquality science, and an increasing requirement of many journals and funding sources. Reproducible studies include code able to regenerate results from the original data. This practice not only provides a perfect record of the whole analysis but also reduces the probability of errors and facilitates code reuse, thus accelerating scientific progress. But doing reproducible science also brings many benefits to the individual researcher, including saving time and effort, improved collaborations, and higher quality and impact of final publications. In this article we introduce reproducible science, why it is important, and how we can improve the reproducibility of our work. We introduce principles and tools for data management, analysis, version control, and software management that help us achieve reproducible workflows in the context of ecology.Peer Reviewe
- …