# ReDevOps

## 前言

人生如白驹过隙，无论是做工程还是做研究的黄金时间往往只有短暂的十到二十年。如何能在短时间内做更多有价值的事情一直是我思考的一个问题。因为，我一直有着广泛的研究兴趣，并且在日常生活中一直关心各种可以提高工作效率的方法，，所以，我总结了一套效率提升与项目管理的经验。并在实践中将他们应用于我的科研活动中，自感收益颇深。因为，毕业后工作模式的改变使得校园的两点一线的简单生活被打破，原有的科研模式不再适合于现在的生活与工作状态，所以，在很长一段时间里，我忍受着低效工作的痛苦。恰逢2023年春天，我有一段相对自由的时间，所以，我集中精力来将自己对于科研方面的效率提升知识记录下来，形成ReDevOps一书。也借此机会，对过去在工作模式上积累的知识进行梳理与总结，进而帮助自己继续维系自己在校期间的高效工作模式。

什么是学术领域的护城河？在回答这个问题，首先，让我们回顾一下学术领域的培养模式。对于学术领域来说，由于需要对未解决的问题进行探索并加以解决，所以，注定了其无法对于从业人员进行流水线式地培训。传统的学徒制依然是学术领域培养模式的主流。甚至，很多时候，导师的能力或地位就决定了一个学生的上限。而对于尚处于学习阶段的学生来说，一旦被分配到了一个很难出成果的方向，那么对于其科研甚至职场事业将可能是致命的打击。那么对于普通学生来说，为了避免这种情况，就需要在求学阶段广泛地积累个方面能力。这样做一方面，可以使自己具备毕业之后在自己的职场倒计时中还可以随便换工作的能力，另一方面，则是可以使自己具备在未来深造，做教职时遇到迈步过去的困难时，可以随便换研究方向的能力。那么如何才能做到这一点呢？这就是我开头所提问的，“什么是学术领域的护城河”的答案，高效的跨领域学习能力才是护城河。而高效地跨领域学习能力，在计算机领域则表现为ReDevOps能力。

ReDevOps实际上是三个单词的简称的连接。他们分别是：Research，Development和Operation。一般来说，Research更集中于学术界，而后两者更集中于工业界。对于Research来说，最重要的是发现问题，解决问题的能力。如何发现一个好的问题，这需要阅读大量的论文。而解决问题，则是需要具有一定的工程经验，能够使用计算机语言，数学等工具解决问题。Development则是一项计算机行业最基础的能力，代码开发，对于Development来说，往往更侧重使用代码实现产品功能的能力。而Operation则往往是计算机管理与维护人员的工作，它旨在于对计算机系统进行管理和维护，从而使代码可以正确地部署在计算机系统中。随着，计算机业务的演化，在工业界诞生了Research & Development(R\&D)职位DevOps职位。R\&D职位要求该职位的从业人员既需要有研究经验，有需要有将研究经验应用于企业产品的能力。对于初创的企业来讲，由于经费的短缺，往往缺乏资金来进行关键技术的自主研发。所以这些企业往往选择开源技术来整合到自己的业务中。而对于有一定的规模企业，拥有更多的资金和人才，因此，可以有能力组织既有Research经验，又有Develop经验的人员来对关键技术进行研发，进而形成自己在行业中的优势地位。而DevOps则是要求该职位的从业人员既懂开发，又懂运维，通过自动化的技术，减少产品交付过程中的开销，而ReDevOps则是彻底将三者联系在一起，将他们视作不可分割的整体。通过，Research高效地发现问题，通过Development高效地迭代问题，而通过Operation高效地解决问题。进而拥有在有限的时间内掌握更多的知识，做出更多的成果的能力。

简而言之，ReDevOps是一种结合了科学研究，软件开发和运维的方法论和实践，它可以帮助从业人员高效地完成科研和工业项目的学习，开发与管理。在当今的快速发展的科技领域，掌握ReDevOps能力可以让人们在有限的时间内做更多有价值的事情，从而在职场上获得更多的机会和成功。通过本书的总结和分享，我希望能够帮助更多的人掌握ReDevOps能力，让学习和科研变地更高效。

Johannes Liu

2023年2月22日


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://johannesliu.gitbook.io/redevops/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
