Best Practices for Scientific Computing
1–10 of 11 posts
Re: Best Practices for Scientific Computing
#2This is exactly what happens for many users when you suggest them to install GNU/Linux and enjoy freedom. They say: «I don't want to learn another OS. I just use the computer to get things done». Then they'll keep using Excel.
Re: Best Practices for Scientific Computing
#3Summary:
1. Write programs for people, not computers.
2. Automate repetitive tasks.
3. Use the computer to record history.
4. Make incremental changes.
5. Use version control.
6. Don’t repeat yourself (or others).
7. Plan for mistakes.
8. Optimize software only after it works correctly.
9. Document design and purpose, not mechanics.
10. Conduct code reviews.Re: Best Practices for Scientific Computing
#4Recent version is v2 http://arxiv.org/abs/1210.0530v2 Summary: 1. Write programs for people, not computers. 2. Automate repetitive tasks. 3. Use the computer to record history. 4. Make incremental changes. 5. Use version control. 6. Don’t repeat yourself (or others). 7. Plan for mistakes. 8. Optimize software only after it works correctly. 9. Document design and purpose, not mechanics. 10. Conduct code reviews.
Re: Best Practices for Scientific Computing
#5Very good points (indeed, I totally agree on each and every of them!), but there's the risk that someone writing a software just for sake of the task will just argue «I'm not interested in doing this, but in the task». This is exactly what happens for many users when you suggest them to install GNU/Linux and enjoy freedom. They say: «I don't want to learn another OS. I just use the computer to get things done». Then…
It's not a risk, it's a certainty! That's why the the last point is about conducting reviews.
Re: Best Practices for Scientific Computing
#6I shall never understand why a work like this (useful and to the point) needs a 'Conclusion' section. There are no conclusions, just a list of practices.
I know this is an absurd rant but can we stop this nonsense?
Conclusion: please stop concluding something which is not an argumentation.
Re: Best Practices for Scientific Computing
#7Re: Best Practices for Scientific Computing
#8Honestly, I shall never understand why a work like this (useful and to the point) needs a 'Conclusion' section. There are no conclusions, just a list of practices. I know this is an absurd rant but can we stop this nonsense? Conclusion: please stop concluding something which is not an argumentation.
1. Read abstract. Interesting? Go to 2, else stop reading.
2. Read introduction. Still interesting? Go to 3, else stop reading.
3. Read conclusion. Still interesting? Read the rest of the paper, else stop reading.
The conclusion is there to summarise everything and let people decide whether they want to bother reading the entire thing.Re: Best Practices for Scientific Computing
#9Recent version is v2 http://arxiv.org/abs/1210.0530v2 Summary: 1. Write programs for people, not computers. 2. Automate repetitive tasks. 3. Use the computer to record history. 4. Make incremental changes. 5. Use version control. 6. Don’t repeat yourself (or others). 7. Plan for mistakes. 8. Optimize software only after it works correctly. 9. Document design and purpose, not mechanics. 10. Conduct code reviews.
This sounds like best plans for computing in general, not just scientific computing
Re: Best Practices for Scientific Computing
#10Earlier quoted context omitted.
This sounds like best plans for computing in general, not just scientific computing
Yeah for scientific computing specifically i was more expecting to see concerns like ensuring intermediate working state is persisted to a durable medium and facilitating restarting from a working state "dump" instead of from the top each time.