Best Practices for Scientific Computing

  • Write programs for people, not computers 사람을 위해 만들어라 컴퓨터가 아니라
  • Automate repetitive tasks
  • Use the computer to record history
  • Make incremental changes
  • User version control
  • Don't repeat yourself
  • Plan for mistakes - Defensive programming, Write and run tests, Use a variety of oracles, Turn bugs into test cases, Use a symbolic debugger
  • Optimize software only after it works correctly 최적화는 제대로 작동한 후 할것
  • Document design and purpose, not mechanics 설계와 목적을 문서로 만들 것 작동원리가 아니라
  • Collaborate
,