7) Share Your Code

Assigned Readings

  • Title: Publish your computer code, it is good enough
  • Author(s): Nick Barnes
  • Year: 2011
  • Journal: Nature 467, 753
  • doi:10.1038/467753a


Reflections

bCourses Submission

Submit your answers—to the following questions—to the corresponding assignment in bCourses.

Accepted formats: PDF, HTML, MS Word (.docx), or Google Doc

Reflection 1

  • Open a script or software pipeline you built just a year ago.

  • If you were forced to post that exact file publicly on GitHub right now, “as is,” would you feel absolute panic or deep embarrassment regarding your programming skills?

  • What would be the primary reason for your hesitation to share your code?

Reflection 2

  • Put yourself in the shoes of a busy researcher managing multiple projects.

  • If a stranger downloads your public GitHub repository and emails you a list of things they don’t understand, where do you draw the personal boundary?

  • How do you separate your duty to provide scientific transparency (the code works for the paper) from your right to protect your personal time from being hijacked by outside users demanding free tech support?

Reflection 3

  • Think about a script or software pipeline you built months ago.

  • If the software environment inevitably breaks, why does simply allowing an outside reviewer to read your raw, un-runnable text logic still hold scientific value?

Rubric

Important

Generic responses that do not mention a specific past assignment name or unique piece of code from your own experience will receive a score of zero.

  • Full Credit (5 Points): Response is highly specific, names unique personal or localized constraints, and explicitly connects the personal experience back to the prompt in each question. Clearly written by a human.

  • Partial Credit (2-3 Points): Response is correct but uses vague or generic examples (e.g., “I lost a file once” instead of naming the script). Sounds like a generic summary an AI could have written.

  • No Credit (0 Points): Response relies entirely on abstract definitions, fails to provide personal context, or uses copy-pasted text from a webpage or AI tool.