mirror of https://gitee.com/XmacsLabs/planet.git
update 无名游侠/siger-mogan.md. 代码——纯文本已经满足不了“我”的野心
This commit is contained in:
parent
4409a525e0
commit
5073688506
|
@ -172,4 +172,73 @@ https://gitee.com/XmacsLabs/mogan/releases/
|
|||
|
||||
https://www.bilibili.com/video/BV1jY4y1L7eX
|
||||
|
||||
一个很棒的发布会!
|
||||
一个很棒的发布会!
|
||||
|
||||
# 代码——纯文本已经满足不了“我”的野心
|
||||
|
||||
### 1. 做两个底层替换的直接原因?
|
||||
|
||||
因为Qt 4.8.x已经不在维护状态了,Qt最新的版本是Qt 6.x,所以我们选择升级到Qt 5.15.x。然而上游还没有做迁移到Qt 5的具体计划。目前Qt 4.8.x仍旧在各大Linux发行版的软件源里面,我认为我们不能等到Qt 4.8.x在Linux发行版里面被淘汰了,再升级到Qt 5。我需要在墨干编辑器里面做一些试验,来证明迁移到Qt 5不会带来新的问题,然后说服上游迁移到Qt 5。
|
||||
|
||||
Guile 1.8.x目前已经不在Debian的软件源里面(这是GNU TeXmacs这么多年没有在Debian软件源里面的最重要的原因),但是Guile 2.x性能上有问题,Guile 3.x在性能上能满足要求,但是暂时还不能在Windows平台正常工作。而S7 Scheme,这个小巧且高性能的实现,能够满足我们的需求。目前,墨干编辑器迁移到S7 Scheme,对于最终用户的影响不大,但是对于资深用户是有一定影响的。和Qt 5一样,我们需要在墨干编辑器中证明,S7 Scheme的切换足够稳定、高性能,最终才能去说服上游切换到S7 Scheme或者新增一个Scheme实现。
|
||||
|
||||
最近,我们在尝试将墨干编辑器投递进入Debian软件源。
|
||||
|
||||
### 2. 做 TEXMACS 上游社区工作的背景故事?
|
||||
|
||||
我在中国科学技术大学计算机系求学期间,是USTC LUG的活跃成员。我从初中开始学习编程,高中有了自己的电脑就开始折腾Ubuntu。我始终认为软件自由是很重要的!在大学期间,我一直想参与开源社区。然后,在2013年,我了解大学同学那边了解到GNU TeXmacs,开始用GNU TeXmacs完成自己的作业报告(用PDF格式提交)。GNU TeXmacs里面的代码片段、二叉树等功能很好地满足了我的需求。我当时看到GNU TeXmacs的官方文档没有中文翻译,就抽空翻译官方文档,借着文档翻译,我对这个软件了解了更多,我觉得这是一个对大学生的日常学习非常有帮助的软件。所以,我联系了GNU TeXmacs官方,得到了代码提交的权限,把我翻译的部分文档提交到了GNU TeXmacs的代码仓库。
|
||||
|
||||
大学期间,我大部分时间还是在翻译文档,虽然我有整个代码仓库的代码提交权限,我把自己的贡献范围缩小在文档翻译这个目录下面。本科毕业,参加工作之后,有了很多做软件工程经验,我才开始有计划地给GNU TeXmacs贡献代码。在早期,我主要在GNU TeXmacs的插件做一些力所能及的工作,另外会修复一些GNU TeXmacs的错误,尤其是和CJK相关的一些错误。
|
||||
|
||||
后来,随着编程经验上的不断的丰富,在工作中,已经有能力参与Apache Spark这样的大型项目的开发,自己也基于Apache Spark的Catalyst引擎研发过SQL引擎。在工作实践中,我对如何维护一个项目有了自己看法,我试着把我自己在工作中行之有效的实践应用到GNU TeXmacs研发当中,比如说在GNU TeXmacs代码仓库中引入C++的单元测试。GNU TeXmacs这个项目事实上是比现在这些常见的软件工程开发方法(比如测试驱动开发)的诞生更早。GNU TeXmacs的代码实现相对来说是比较高质量的,在这样一个和Apache Spark项目差不多规模的项目中引入“现代的开发方法”并不是一件公认的正确的决策。不过测试代码并不影响功能代码,所以我仍旧把这种开发方法或者习惯带入到了GNU TeXmacs的日常研发中。然后,在一些编程理念上,我和GNU TeXmacs的作者是有不同的看法的,比如将Qt升级到Qt 5。
|
||||
|
||||
为了不被GNU TeXmacs这个代码仓库的规则所束缚,所以我自己基于GNU TeXmacs制作了自己的发行版,一开始叫Xmacs,因为我是一个软件工程师,并不是LaTeX用户,我取名Xmacs的最初的想法就是我只关注TeXmacs中TeX之外的那些功能。今年(2022年)开始我把Xmacs更名为墨干编辑器,一方面近两年长期在家办公,自然而然更加关注家乡的山水,用墨干(音同莫干山的莫干)来表达我自己的“乡愁”,另一方面,我觉得GNU TeXmacs这个名字可能是影响它被更多的用户所接纳的一个重要原因,针对中文用户改名墨干,我可以在Bilibili的原创视频中,自信满满地念出这个名字,也让中文用户更能接受这个名字。我们在墨干探索GNU TeXmacs发展的方向,同时在及时地将在墨干中比较可靠的实现提交到上游代码仓库中。
|
||||
|
||||
### 3. 《Scala实用指南》的翻译工作是怎样的背景?
|
||||
|
||||
在日常工作中经常使用Scala,自然而然会去参与Scala语言社区,结识一些志同道合的朋友。当时在Scala中文社区,了解到淘宝虎鸣要翻译《Pragmatic Scala》,我就联系他和他一起翻译并出版了《Scala实用指南》。翻译是很辛苦的事情。我翻译这本书,其实也带着通过实践去了解出版一本书的整个流程的想法,因为我一直有写一本GNU TeXmacs相关图书的计划。
|
||||
|
||||
### 4. 两篇知乎文章落款都是 TEXMACS,当前的工作重心是怎样的?
|
||||
> 墨干是怎么水到渠成的?还是一时的灵感?
|
||||
|
||||
(前面的回到已经充分说明了缘起,以及阿婆主的心愿,一直心中的期待: _因为我一直有写一本GNU TeXmacs相关图书的计划!_ )
|
||||
|
||||
### 5. 结构化编辑器一文的回答,“代码——纯文本已经满足不了“我”的野心”
|
||||
> 代表了一颗改变世界的心,是一个程序员应有的朝气。
|
||||
> 用它来做本次采访的标题是否可以?
|
||||
|
||||
可以
|
||||
|
||||
### 如果做一个自我评价或者给同学们介绍自己,会用什么语言来形容自己?
|
||||
|
||||
我的母语:吴语。
|
||||
|
||||
### 6. MILL SCALA 这是在 RISCV 社区认识的,
|
||||
> 阅读了一些背景后, SCALA 的作用面远不于此?
|
||||
> 对于青少年,是否也会有这样的怪圈“喜欢 Scala 的程序员爱不释手;玩不来的则谈之色变。”
|
||||
> **对于学习之路,青少年面前越来越长,有什么好的建议吗?**
|
||||
|
||||
纸上得来终觉浅,绝知此事要躬行。我觉得编程语言脱离实践是没有意义的,一门优秀的语言,必然是活着的,换句话说就是,有这样一个群体,在用这门编程语言进行创作。
|
||||
|
||||
### 7. 墨客星球更多是社区外围建设的工作,就开发方面,还有那些工作?包括野心?是否可以引入一些青少年?当然门槛确实高。
|
||||
|
||||
社区是我们墨者实验室工作的重心。墨客星球是在为墨者百科做一些社区建设和技术上的探索。墨干编辑器(GNU TeXmacs)只是一个编辑器(工具),我们用这个工具创作的内容才是椟中之珠。
|
||||
|
||||
目前在开发上还有大量工作,其中最重要的就是,目前向墨客星球提交内容需要遵循Git工作流,Git工作流本身是软件开发的标准工作流,是常识。但是非开发者来说,Git工作流过于繁琐,我们想在墨干编辑器中直接编辑完成之后,点击提交按钮,就完成了Git代码合并请求的提交。这样,没有工程背景的墨干编辑器用户,也能够很方便地在墨客星球创建自己的空间。
|
||||
|
||||
我们希望具有探索精神的青少年,能够加入我们。一开始可以是B站视频的观众,墨客星球的阅读者,慢慢地,我希望他们可以成为墨客星球某个空间的主人!
|
||||
|
||||
### 8. 最后,保留问题?《我的兴趣爱好》是 SIGER 编委的必答题,也是同学们之间相互认识一个基础。也邀请您介绍一下自己的兴趣爱好?
|
||||
|
||||
我喜欢游泳,也喜欢和朋友们一起自驾游。
|
||||
|
||||
### 9. 除了对学生,SIGER 读者群也会有老师?除了墨客星球的社区建设,多用,多分享,就“创新”的理解是否有更具体的思路?或者和墨客星球社区是如何结合的?“学习既有科学技术,创造全新科学技术。”
|
||||
|
||||
我们希望老师们能够愉快地使用墨干编辑器,也特别希望能够收到老师们一些针对细节的反馈,正面的或者负面的。目前,墨干编辑器的目标用户中,我们会优先服务中学教师这个群体。
|
||||
|
||||
墨客星球目前和中学教师们最大的联系是内置的可编辑可另存为的高考数学真题(2021年和2022年),这是目前第一个结合点。我们希望能得到一线教师的反馈,比如针对试卷内容的纠错,也希望互联网最初的那种无私的分享精神能够在墨客星球中复兴。
|
||||
|
||||
第二个结合点是,我们后续会在墨客星球中内置一些幻灯片模版,这样老师们可以访问墨客星球,就可以获得这些模版,用于日常目的。比如,Yiqi Xu上传的视频中这个黑板和白色粉笔风格的幻灯片模版:https://www.zhihu.com/zvideo/1508534867768266752
|
||||
|
||||
第三个结合点是,我们后续会花一些功夫在墨干编辑器V1.0.4内置的欧几里得绘图插件上,写一些教程,制作一些视频,告诉老师们将欧几里得绘图软件用于平面几何的教学。教程会和视频配套,访问墨客星球,老师们就可以很方便地将视频中的绘图代码复制出来,稍作修改,用于教学。
|
||||
|
||||
|
|
Loading…
Reference in New Issue