Featured image of post 博客两岁啦!

博客两岁啦!

有个人更新博客了两年,这是他发生的变化

“AM is a 25 years old student, presenting to the emergency room, over excited.” 兜兜转转,这个小博客竟然已经搞了两年了!?What The Hell?

头图 晨光 取自 EQ真香 在 Pixiv 上上传的一张美丽博丽灵梦,她真可爱,AI大人还是太伟大了。选曲是 凋叶棕 在专辑 縁 中的最后一首 A Fantastic Story,希望你喜欢~

时间过得好快,感觉什么都还没搞就 又 过去了一年诶!这个小博客也是跌跌撞撞来到了两周年~

回顾过去一年,我发现其实没写太多东西:相比起刚开搞博客的第一年写了 24 篇文章,且每一篇我个人感觉质量都还不错,最近这一年我只写了 17 篇,而且起码有 4 篇是有点水的……不过我还是觉得这一年写的东西的含金量还是有的啦,而且加上这篇,我们达到了宇宙的终极答案:42!平均下来一年写 20 篇诶,要是换成写论文的话(嘟囔)……

第二年的文章内容终于(部分)回归了我的研究课题:相场法。水出来的三篇文献阅读,以及我最引以为傲的系列:相场模拟,但是用很多语言,都是围绕相场法这个方法来讲的。文献阅读的话是因为当时顿感文献读太少因而发愤图强表示“一定要多看文章!”然后只写了三篇读了三篇就跑去玩别的去了;而多语言相场模拟这个系列则是我有一天突发奇想:好像调幅分解的模拟很简单诶,要不要干脆整点花活儿?于是就动笔写下了第一篇用 C++ 实现的 相场模拟,但是用很多语言 I。

这个系列计划之初我甚至想过用 Bash 脚本 去搞个什么模拟,反正就搞计算而言我觉得 Bash Script 也能搞定加减乘除和随机数选择,而输入输出对 Bash Script 而言本来就是强项。当然,由于这个活儿太花了,我还是决定以熟悉程度为顺序,从会的 C++ 和 Python 开始写。后来又拓展到不太会但了解过一点的 JavaScript / TypeScript(这里要特别感谢 極限風味 的大力支持!)以及看似会其实要从头开始的 C,这个过程中最大的收获其实不是把模拟做出来,而是了解到不少有趣的程序特性,以及古老程序语言的奇妙故事,比如神人商业决策让无数新人好奇 JavaScript 和 Java 之间是不是有一腿,或者恩情故事之 Ken Thompson & Dennis Ritchie 用纸带发明 C。唉,说到这里不得不提前两篇的缺憾:没有从历史角度聊聊 C++ 和 Python 这两门语言。它们(想必)也有一些有趣的故事。也许?以后我会补上?

这个系列在完成第一篇之后我就意识到一个问题,即只是用不一样的语言写出来同一个调幅分解是在是太无聊了,因此除了会用不同的编程语言之外,我还尝试在每一篇里加点新料。第二篇里加入了一些关于相场演化方程的讨论,而在第三篇中,由于技术哒哒哒哒大提升,我们直接将模拟搬上了浏览器里。啊!浏览器,好神奇口牙!而第四篇的 C 语言的选题其实经历了一些困难,因为从语言本身来看,C 太单纯了,比初恋还单纯;从狠活儿角度来看,C 语言能整的狠活儿我能想到的我也实现不了,而且再狠能有用浏览器跑模拟狠吗!?最后找了一圈,只能从模拟方法本身下手了,就有了第四篇的傅里叶谱方法。而在实际动笔之后发现,要是把傅里叶谱方法讲清楚,就不得不先介绍好傅里叶变换是什么,而这个老大难问题从大一没好好听的那几节高数开始就一直如影随形跟着我,如今我必须直面它。就这样,为了控制篇幅,保护读者的视力,也是给自己一个交代,有了这个系列的一篇番外。正好也因为刚刚搞完内嵌在博客里的交互式功能,在 AI神力 的加持下我给这篇文章加了不少用来解释傅里叶变换来源的交互窗口,从展示效果上讲我个人是非常满意的。那么,让我们恭喜 相场模拟,但是用很多语言——番外 荣获 二周年最佳展示效果奖!888888888

然而提到系列,您也许注意到我的博客里其实还有一个正在进行中的系列,那就是 线性代数笔记 系列。本来这个系列也应该冠以 引以为傲 之类的称呼,但可悲的是就在 2026 年 9 月 21 日,昨天晚上,我发现这个系列的 第二篇 有令人汗颜的逻辑错误,第三篇 有令人头大的 类型不匹配(没错真的是类型不匹配)以及十分头痛的事实错误(其实,$\Mat(m,n)$ 的对偶空间是自然的且就是 $\Mat(m,n)$ 它自己),以及这样的误会所引发的画蛇添足(根本不用定义这个神秘的 对偶乘法,且这个对偶乘法事实上就是矩阵相乘的 迹)。另外,回顾这个系列的三篇文章,实在是没有一个清晰的主线,拓展部分太过随意也抓不住重点,而一个 对偶向量作用在自己身上和内积有联系 就把介绍内积的这个计划给搅烂了,因为二者就没啥太大联系,包括对偶基这个概念也不应该硬往内积上凑。本来昨天我计划光速赶工出这个系列的第四篇,准备结束线性代数然后开启张量代数的新篇章,但由于这样的一些错漏以及内容安排失误,非常可惜地,这个系列可能要提前说拜拜了。那我们也是恭喜 线性代数笔记 系列荣获 二周年最遗憾系列奖!

这个系列即便结局一般(甚至烂尾),写这个系列的时候也是耗费了不小的精力。我的文件夹里至今躺着另一个叫 Tensor_Algebra_Calculus 的文件夹,里面放着的正是本系列最初计划的模样,而在深感内容之差的当时,我就推翻了写的那些内容,决心将这个系列发展成概念清晰、动机明确、观点新颖的系列。后面我应该会给这个系列中有问题的部分打上标记并补充说明,然后暂停这个系列。我想,有生之年它一定会有 Reload 版的,到时候就叫,比如,RE: 从破烂开始的线性代数笔记(RE: Linear Algebra From Scratch)。嗯,当我看完 Paolo Aluffi 的 Algebra-Chapter 0,Sheldon Axler 的 LADR(Linear Algebra Done Right)(顺带它已经有 官译第四版 了!)以及李文威所著的 代数学方法 之后,我一定会写出来这个系列的,一定!(?)好!我们恭喜 RE: 从破烂开始的线性代数笔记 荣获 二周年最痴人说梦奖 吧!

除了这两个我投入了巨大精力的系列之外,我还想聊聊几个独立篇章。和数学相关的部分,线性空间的积与余积 解答了我还在看 Algebra-Chapter 0 的时候就诞生的疑惑:积、直积、余积等等概念究竟有什么区别。我个人感觉这篇写的还不错,毕竟查资料的时候解答了自己的疑问,也了解到了一些有趣的事实,但评论区似乎反响一般,哈哈哈哈。这篇文章应该也是我写 线性代数笔记 系列的动机之一?果然,纯数学只能自娱自乐口牙!另一篇的 到底啥是函数!? 更是让我查了个爽写了个爽,但阅读量似乎还不如聊积和余积…… 可能是写的太长了,又有点标题党,还有点流水账吧。其实直接讲讲 函数 在不同语境下的定义,以及使用时要注意的问题就挺好的,结果变成了查书搬运……到也还好,挺长见识的嘿嘿嘿。最近完成的 怎么找到第 n 个素数? 由于赶工的原因其实有一点小问题和小遗憾,但是,嘛,填坑是这样的。这篇也沾一点算法吧,研究算法的过程还是挺有趣的,希望您也能看得开心。

而和计算机程序相关的,在今年年初写成的 机器学习用 Ubuntu WSL 配置记录 应该算是比较实用的一篇,比如心血来潮重装个系统的时候用里面的脚本还挺方便的来着。不过感觉上可以再做一些改进,也许以后会针对我使用的脚本单独发一篇?而 关于如何人肉解析 C/C++ 类型系统 就显得有点掉书袋了,不过我个人认为是比较有趣的一篇,也算是打开了我 C 语言编程的大门,emmm,狗洞吧。最后短小精干的 记拯救用 git-reset 误删的某代码仓库 希望能给读到它的人小小提个醒,以及 Git 虽然好用但强大的同时伴随风险……

总的来看,这个小博客站依旧坚持了它一开始的定位,就像 一周年时说过的那样, 一个貌似偏技术或者理论的博客。希望新的一年还能保持这样的初心吧!也祝我新的一年能多整点花活儿,多写点博客,以及写点正经论文吧,不然博士真不好毕业咯……目前的计划是继续多语言实现相场法的部分,还有好多好多语言等着我去尝试,而新的点子,比如 有限元法,也值得写一写,相场法耦合外场 这个非常重要的特性也值得更多的笔墨;除此之外,抽象代数 其实是非常值得聊一聊的话题,尤其是当我想从更抽象更具一般性的角度去讨论 线性空间 这个自身结构已经很复杂,分支众多且应用量爆炸大的话题时,没有一些老代数地道方言(抽象废话)的支持是很难的。程序方面去年写的不算多(若是不考虑多语言相场系列的话),我可能会考虑多聊一聊?然后最近想写的也许会是总结一下我在阿里云搞了台小鸡做播放器以及其他神秘服务的事儿,您如果有兴趣的话欢迎关注口圭!(怎么一口气挖这么多坑?)

对了,聊了半天,二周年最佳单篇 要颁给谁呢?我的选择是:请输入文本!您也许会问:何意味?我的回答是敬请期待以后的新文章咯~ 不要脸地骗波关注,嘿嘿()

最后,在这个令人兴奋的日子,感谢所有 朋友们 的陪伴与鼓励,群友的超级技术支持,开源社区提供的强大 Power 以及 AI 还不完的恩情,没有以上种种很难想象这个博客能坚持到现在。当然,也感谢您能读完本篇神秘生庆文章,祝您天天开心,生活顺顺利利~!

Licensed under CC BY-NC-SA 4.0
最后更新于 9月 22, 2026 07:47 UTC