From 04f1e4a48c5be5afbdf8a70b3ea6db6d707e5afe Mon Sep 17 00:00:00 2001 From: Lois Curfman McInnes Date: Thu, 27 Jun 2024 20:39:12 -0400 Subject: [PATCH 1/2] Update DebunkingMyth.md minor edits --- CuratedContent/DebunkingMyth.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CuratedContent/DebunkingMyth.md b/CuratedContent/DebunkingMyth.md index dbbe368fa..f0a4fca09 100644 --- a/CuratedContent/DebunkingMyth.md +++ b/CuratedContent/DebunkingMyth.md @@ -1,7 +1,7 @@ # Debunking the Myth that Upfront Requirements are Infeasible for Scientific Computing Software -The Debunking the Myth that Upfront Requirements are Infeasible for Scientific Computing Software paper argues that upfront requirements are feasible and beneficial for Scientific Computing Software. +The paper **Debunking the Myth That Upfront Requirements Are Infeasible for Scientific Computing Software** argues that upfront requirements are feasible and beneficial for scientific computing software. #### Contributed by [Rinku Gupta](https://github.com/rinkug) @@ -12,7 +12,7 @@ Resource information | Details :--- | :--- Paper title | Debunking the Myth that Upfront Requirements are Infeasible for Scientific Computing Software Authors | Spencer Smith, Malavika Srinivasan, and Sumanth Shankar -Publication | Year 2019, DOI: [10.1109/SE4Science.2019.00011](https://www.doi.org/10.1109/SE4Science.2019.00011) +Publication | 2019, DOI: [10.1109/SE4Science.2019.00011](https://www.doi.org/10.1109/SE4Science.2019.00011) From 6eaa3fe277d882d952619b0a59298659aebbab29 Mon Sep 17 00:00:00 2001 From: Lois Curfman McInnes Date: Thu, 27 Jun 2024 20:42:42 -0400 Subject: [PATCH 2/2] Update PortabilityIsReliability.md minor edits --- CuratedContent/PortabilityIsReliability.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CuratedContent/PortabilityIsReliability.md b/CuratedContent/PortabilityIsReliability.md index 38a163f07..038516cfb 100644 --- a/CuratedContent/PortabilityIsReliability.md +++ b/CuratedContent/PortabilityIsReliability.md @@ -15,12 +15,12 @@ Focus | Testing, Software sustainability, Reliability In this article, the author highlights a number of ways in which compiling and running code with different compilers and architectures improves the quality and reliability of the code. Different compilers are better at manifesting and catching different kinds of issues. The article mentions, for example, that clang often catches a larger set of issues than does gcc. -It also explains that, in spite of challenges in using MSVC, one of the great advantages of compiling with it may be its static analyzer which, in the author's opinion, may be the best part of the MSVC compiler. +The article also explains that, in spite of challenges in using MSVC, one of the great advantages of compiling with it may be its static analyzer, which, in the author's opinion, may be the best part of the MSVC compiler. The article also explains the importance of doing development with as many compiler warnings enabled as possible using flags such as `-Wall`, `-Wextra`, `-Weverything` and `-Werror` or `/W4` for MSVC. By including compilation with strict warningns enabled and with different compilers in CI, it is possible to catch and prevent a lot of issues before they make it into a committed version of the code. -The author also mentions the value in using different architectures such as armv7 (which is more strict about aliasing violations) or s390x (which is a big endian architecture) to also help shake out issues with code. Using various available compilers and architectures (as containers for example) on a code base is a great way to take advantage of some available automation to find and prevent issues from creeping into a code base. +The author also mentions the value in using different architectures such as armv7 (which is more strict about aliasing violations) or s390x (which is a big endian architecture) to help shake out issues with code. Using various available compilers and architectures (as containers for example) on a code base is a great way to take advantage of some available automation to find and prevent issues from creeping into a code base.