这里对本项目开源相关的事项进行解释和说明。
开源背景
开源,我认为是软件技术发展的最好的形式,尤其是比较底层的基础设施。其中不光是因为开源能够聚集更多的开发力量和吸收新的创新思维,另一个重要原因是提升应用的透明度。从用户隐私保护、去中心化、以及平台型的基础设施等角度,开源几乎是能够给予上述问题唯一的答案。
我自Reality World设计的第一天就决定以后会将它彻底开源,但是由于它的一些技术上的复杂性,我觉得还是需要自己以创业的形式先做到一定的程度,再去发布给社区,这样社区能够比较容易地理解它的目的和意义,从而能够更好地参与。然而经过过去一年半的尝试,我还是很难在国内找到资金能够支持这件事情(我会分享我这一年的创业经历,希望能够对希望从技术进行创新的小伙伴一些经验和启示),再加上这个技术还处于非常早期的阶段,这可能不是我一个人或者一个公司的力量可以实现的,所以现在决定把过去的工作完全开源给社区,希望借助社区的力量去发展。
开源目的
我希望Reality World的开源可以实现以下几个目的:
- 为未来5-10年的数字世界基础架构的技术发展方向提供一种系统的视角,这个问题是非常复杂的,不光是技术本身就充满复杂性,要考虑很多问题,同时在认知上去理解也是非常复杂的,所以我们必须构建一套清晰的视角去理解这些问题,为后续的研究提供一些有价值的参考思路。
- 为上述的架构体系提供一种可行且简易的技术实现方案,提出一种想法有时候看起来很容易,例如很多科技媒体也提出许多对于未来软件应用的畅想。但一套可行的技术方案涉及很多细节,例如你对现有技术体系进行怎样的调整,理由和必要性是什么,调整之后对其它模块的交互方式是怎样,调整之后怎样建立新的生态,用户怎样去学习等等,这一切后面涉及非常复杂的架构思考。所以我们必须有一个可行的技术实现方案,才能说明它的可行性,因此才具有参考价值。
- 为程序员对技术的学习提供一些不同维度的理解,我们程序员终极一生的努力可能都是尝试去更好地理解软件构建的逻辑思维,因为软件的逻辑表达是极度复杂的,这种复杂性随着软件规模的增大而急剧上升。程序员应对这种挑战的最好方法,就是尽可能去更好地理解软件构造的逻辑。这种逻辑可能超出对一个技术本身作为工具属性的掌握,更要理解这些技术背后的思想,我认为掌握技术思想的衡量方式就是你有可能把它用于超出它本身被定义用来解决问题的范围,Reality World的设计和思考过程充满着大量的这类对技术的不同解读,相信能够提供很多不同的启示从而助力我们掌握技术背后的思想。
- 借助社区的力量去挖掘这种新型技术架构能够支撑的产品形态,最近几年关于Web 3.0、元宇宙、以及大模型AI应用的持续不断出现,人们对未来数字化的预期会越来越大,未来的数字化形态必然会发生一些变化。但是目前很多因素糅合在一起使得我们很难去看到清楚的路径,这里面必然涉及到底层技术以及上层产品形态的相互驱动及进化,任何单一实体可能都很难从这种耦合中看到清晰的逻辑。所以Reality World聚焦于技术的思考,并将这些思考全部开源,然后不同的行业可以吸取这种思考去融入自己的产品思维,这样也许我们可以共同来理清未来的思路。
License
Reality World所有的源代码及其技术架构思路均采用非常宽松的MIT开源协议:
特别说明
如果阅读了白皮书,相信可以感受都其中涉及的知识的复杂性,所以这里开源的必然不是一个成熟的产品,本项目具有更多探索性质。它更多提供的是一种技术思路,如果要使这种技术愿景成为现实,可能还需要社区持续做出很多思考和贡献。也许最后演变出来的东西会完全不一样,但是如果本项目在其中起到了很大的一些作用,也是一种价值体现。后面我们也提供了一种《建议的产品化路径》来帮助企业思考怎样去更快地接入业务产品。