阅读量: 次  文章字数: 2k字  阅读时长: 6分钟

本篇文章介绍《木心开发环境-重新出发》的相关内容。

前言

事实再次证明那句至理名言:只要一件事你现在不去做,以后大概率也不会去做。去年6月份我们团队携木心处理器项目在第一届RISC-V中国峰会上与大家见面,当时有很多志同道合的朋友对我们的开源项目感兴趣,但是由于下半年我们团队受到公司加班和学校毕业等诸多因素的影响,木心开发环境第一版并没有如期发布,不过好在我的队友maksyuki国科大第三期“一生一芯”项目为契机,成功编写出了木心处理器核第一版(代号TC-L1)并通过了前端仿真与验证,得到了一次极其宝贵的流片机会,这可以算是2021年木心项目为数不多的高光时刻。转眼间来到2022年,项目开发依旧处于半停滞的状态,为此我和队友深入地探讨了一番,终于搞明白了问题出在哪里并制订了详细的解决方案。接下来我会以为本项目为例,简要分享一下我们对开源项目的可持续发展的一些见解,如有表述不对之处,欢迎大家批评指正。

问题

  • 开发项目的决心依然不够坚定

    决心是做成一件事情最重要的因素,如果不抱着破釜沉舟般的决心,就算是掌握了事半功倍的方法,在遇到各种诱惑或艰难险阻时,也大概率会败下阵来。以我本人为例,去年在第一届RISC-V中国峰会落幕之后,由于自己开发项目的决心发生了些许的动摇,被压制在骨子深处的惰性便轻而易举地占据了上风,使得自己本就不富裕的业余时间被各种娱乐活动消磨殆尽,而且再加上本人手头上还有几个跟机器人有关的开源项目要做,顾此失彼,从而导致木心项目被一拖再拖。现在回头想想如果当初我能将全部的时间和精力投入到木心项目中去,也许维持决心也不是一件那么难的事情。

  • 缺少简单强大的项目管理工具

    古人曾经说过:工欲善其事,必先利其器。在拥有了坚定的决心之后,方法就显得尤为重要了,因为它不仅可以提高开发项目的效率,而且还能让我们逐步积累成就感,更好地促进项目不断向前发展,从而形成一个良性的正反馈闭环。还是以我们木心团队为例,在日常开会或开发的过程中,我们会统一使用印象笔记的共享笔记功能来记录项目文档,如果在网上发现比较好的资料也会用印象笔记进行裁剪收藏。此外,印象笔记还允许用户以Markdown格式编写文档,这对于经常写个人博客的程序员来说非常友好,但是它的缺点也很明显,第一就是富文本编辑模式下跨平台的字体和格式无法做到统一,比如经常会发生队友写的文章在我浏览器端显示错位的问题。第二就是文件目录树的层级只有两级,这肯定无法满足后期展示项目复杂层级结构的需求。

解决

经过一段时间的搜索以及比较后,我们决定使用我来(wolai)笔记来构建属于我们团队自己的知识体系,它最吸引我的特点是其引入了不同于传统云笔记(如印象笔记、有道云笔记)的块系统,可通过嵌套任意个块的方式搭建出复杂的多层级知识结构,此外得益于块的双向链接功能,文档中的信息不再是一座座没有联系的孤岛,而是依靠彼此之间的链接形成了一个庞大的网状结构,这相比传统线性知识管理更有助于我们思考和梳理项目内部各个模块间的关系,并可由此打造出一套属于每个团队自己的高效协作新模式,所以这里推荐给大家使用。

项目文档首页图

项目开发进度图

项目开发日志图1

项目开发日志图2

项目开发日志图3

除了构建全新的项目文档体系之外,我们团队还对已有的组织代码仓库进行了优化,添加了木心项目的介绍文档并根据其他开源项目的模板重新编写了每个代码仓库的README,与此同时我们也规范化了代码仓库的协作开发流程,即每位开发人员仅在自己负责的模块分支上进行开发,所有变动只有在提交时才会依次合并到开发分支和主分支上(合并前须从远程仓库拉取最新的提交),这使得多人协作开发一个大型工程项目不再是个棘手的问题,极大地提高了项目开发的效率。

项目代码仓库图1

项目代码仓库图2

项目代码分支图

在Docusaurus开源项目的帮助下,我们在很短的时间内便将木心网站的基础框架搭建了出来,虽然很多页面还没来得及设计和优化,但是木心项目终于有了属于自己的主页,算是基本凑齐了一个标准开源项目所需的所有元素。未来我们会对项目网站进行不断地改进,拟采用全新的方式来呈现项目的教程、新闻、社区等内容,届时我们希望木心网站能够成为启发并激励爱好者学习处理器知识的在线乐园。

项目开源网站图

总结

在前一篇文章中我介绍了我们木心团队目前是由两位非微电子专业的爱好者所组成的,论专业知识和开发经验我们确实不如很多具有学术背景的领域内人士,所以目前我们是处于边学习边探索的阶段,肯定会在开发项目的过程中遇到各种各样的问题,希望大家能够给予一定的理解。Vue创始人尤雨溪在码云的一篇报道中曾经讲到自己开发了三年多时间才发布Vue 1.0版本,因此我们也决定开发和维护木心项目至少三年时间,到时候欢迎新老朋友们回来看看,也许那时木心项目也能成为开源世界天空中一颗闪耀的明星!

前几天在知乎上看到一篇文章,里面有一段话让我感触很深:我国是全球唯一拥有联合国全部工业门类的国家,但高端数控机床、工业设计软件、智能制造等领域的基础设备却严重依赖进口。对于半导体行业来说,工业设计软件几乎全部被欧美几大巨头所垄断,涉及处理器前端设计和后端制造的整个生命周期,如果未来有朝一日欧美像制裁华为一样不再允许中国使用这些工业软件,那我们的核心产业该如何生存下去?个人认为我们可以先从开源工业软件做起,经过一段时间的版本迭代与知识积累之后,再适当地进行商业化运作,以保证软件的稳定性不会受到开源框架碎片化问题的影响,当然最关键的还是要有人愿意去开发这些难度高且收益低的底层工业软件,期待不久的将来能有更多的团队去做这方面的研究,为处理器自主可控贡献自己的一份力量。

留言

2022-06-19