Skip to content

Latest commit

 

History

History
14 lines (9 loc) · 2.53 KB

File metadata and controls

14 lines (9 loc) · 2.53 KB

2 Best Practice in Scientific Computing

*1. The paper describes several problems scientist face when performing scientific data analyses. From your experience in performing GIS and general data analyses, which of these problems seem familiar to you? Have you faced other problems not mentioned in the paper? (~100 words) * For me, several problems described in the paper seem familiar. Especially the problem of consistent, distinctive and meaningful names (1b). Sometimes I searched a solution for a programming problem I had in my current work and I found some code segments on forums in the internet, e.g stackoverflow or the forum for SNAP users. In some cases, the names and variables were not well consistent and meaningful. Ones I wrote a code for a university project, which contained code copied code fragments from the internet. By pushing the code to a server, this caused some problems with running the code. So I made a practical bad experience with copy and pasting code, instead of modularize it.

*2. Which methods described in the paper or which other skills, tools etc. would you like to learn to help you avoid these problems in the future? (~100 words) * I really want to learn how using debuggers and add assertions to programs to check their operations. When I am programming, I often have problem identifying the bugs in the code, so that I spend a lot of time scrolling through the code segments for searching the reasons of the bugs. I also would like to learn more about the VCS in practical, because until now I do not feel well prepared understanding and using VCS. But it seems necessary to me, learning the use of VCS, because of its benefits.

*3. One of the recommendations by Wilson et al. (2014) for scientists is to use a Version Control System (VCS). Briefly explain in your own words, what the benefits of VCS are in the context of scientific analyses. (~100 words) *AVersion Control System takes parts of an existing code and stores these parts as copies in a repository. This makes it easier to modify and admit comments on the code by programmers. When several people are working on a code, a VCS documents the changes which are done in a history. That makes it easier to understand, how the code Is developing and changing. Another advantage of a VCS is, that possible conflicts, caused by the changes of the users, will be well documented, so that every user knows, which parts of the code need to be re-written. Another benefit of VCS is, that information can not be deleted by a single user, because every information is stored in a back-up.