Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
5年前关闭。
Improve this question
在我充裕的业余时间里,我与许多科学家(主要是生物学家)合作,他们开发与他们所做的工作有关的软件,数据库和其他工具。
通常,这些项目是一次性创建的,内部使用,最终有人决定“哦,这对其他人可能有用”,因此他们发布了二进制文件或将PHP接口(interface)打了一下,然后推到了网络。但是,通常他们不会为其他开发人员使用它们的源代码或数据库转储而烦恼,因此在实践中,这些项目通常在为其编写代码的项目结束或失去资金时死亡。几个月(或几年)后,其他一些实验室也需要同样的工具,他们不得不重复第一个实验室所做的工作,该项目最终会死掉,起泡,冲洗,重复。
有没有人对如何说服那些主要工作不是编程的人有什么建议,使他们使用自己构建的工具更加开放对他们的社区有利?
同样,关于如何传达专业控制人员认为版本控制,错误跟踪,重构,自动化测试,持续集成和其他常见实践这样的想法的建议是否值得花时间?
不幸的是,许多科学家似乎认为编程是一项枯燥的工作,是必不可少的邪恶,他们的研究更为重要,他们没有意识到,如今,软件开发已成为科学研究的一部分,如果社区总体而言,提高开发标准的标准,每个人都会从中受益。
您是否曾经遇到过这种情况?什么对您有用?
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
5年前关闭。
Improve this question
在我充裕的业余时间里,我与许多科学家(主要是生物学家)合作,他们开发与他们所做的工作有关的软件,数据库和其他工具。
通常,这些项目是一次性创建的,内部使用,最终有人决定“哦,这对其他人可能有用”,因此他们发布了二进制文件或将PHP接口(interface)打了一下,然后推到了网络。但是,通常他们不会为其他开发人员使用它们的源代码或数据库转储而烦恼,因此在实践中,这些项目通常在为其编写代码的项目结束或失去资金时死亡。几个月(或几年)后,其他一些实验室也需要同样的工具,他们不得不重复第一个实验室所做的工作,该项目最终会死掉,起泡,冲洗,重复。
有没有人对如何说服那些主要工作不是编程的人有什么建议,使他们使用自己构建的工具更加开放对他们的社区有利?
同样,关于如何传达专业控制人员认为版本控制,错误跟踪,重构,自动化测试,持续集成和其他常见实践这样的想法的建议是否值得花时间?
不幸的是,许多科学家似乎认为编程是一项枯燥的工作,是必不可少的邪恶,他们的研究更为重要,他们没有意识到,如今,软件开发已成为科学研究的一部分,如果社区总体而言,提高开发标准的标准,每个人都会从中受益。
您是否曾经遇到过这种情况?什么对您有用?
最佳答案
Software Carpentry听起来很符合您的要求:
关于version-control - 鼓励非专业程序员的良好开发实践吗? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1235263/