极简主义的博客

从开始编程以来已经无数次搭建博客了,不知道用过多少系统,WordPress、Hugo、Wagtail 等。 每次使用这些技术都有种一开始就要放弃的感觉,可能打心底不喜欢框架吧。自从前段时间开始看到Youtube博主Zozin后, 觉得极简主义完全是可行的。

最早接触 Zozin 是从他的使用D语言做一个Shell开始。做一个Shell第一次听到感觉不是一个简单的项目,但其实没有仔细想过 Shell是怎么做出来的。经过 Zozin 的拆解,发现 Shell 原来仅仅是一个 input/output 的循环,本质是这样,感觉其实自己知道 只是并没有自信做出来,总觉得这种项目是一个大型的、无法自己做出的东西。有了这种想法会导致自己不再去思考,这才是 可怕的地方。

总听人说程序员不应该自己造轮子,也就是不要写别人写过的代码,如果有现成的实现拿来用就是。我觉得拿来用没问题,问题是自己 没有思考过怎么解决这个问题,其它行业也许没有这种得天独厚的条件,例如学习建筑,你不能自己先做个建筑再改进,建筑做出来就 必须是可用的,没有试验的余地,但是程序可以,通过写代码解决问题是可以验证的。这不要求自己去做一个生产可用的东西,只是说 自己可以解决这个问题。不过说实话,大部分时候写的业务代码没那么健壮,勉强能用,一改还经常出问题,全靠运气保证,不过大部分 应用没有那么强的可用性保证,崩了再想办法改就是。

Zozin 不仅掩饰造轮子,而且大部分时候还是用 C 语言来造轮子,他叫这种是 Recreation Programming,像是一种数学游戏来锻炼脑子。 解决各种问题是为了好玩、锻炼思维以及驱散自己的恐惧……

不说 Zozin 了,以后还有很多机会。总之,有了这个经历后,我觉得技术应该从简单开始。框架没有语言稳定,程序员最擅长的不是 舞弄框架,而是用编程语言这个很好的工具去解决自己的问题。我原本就喜欢极简技术,记得2020年开始自己编写一个程序来记账,还有 记录日常想法的程序。只是不知道是不是一个好想法,慢慢这些都放弃了。现在重新拾起来吧。

我选择的技术是通过编写 markdown,使用 pandoc 工具转换成 html,使用 nginx 部署到自己的 VPS 上,原本不想引入脚本语言,和Gemini 讨论过后发现还是需要工具提取 markdown 的 meta 信息并且汇总生成首页的,例如处理标签、分类等,既然如此还是引入 Ruby 做这件事情吧。

不知道写博客这件事情能否坚持下去,就像2017年的夏天突然开始写日记,也没有想是否能坚持下去,最后写了好多年。我对写博客没有抱有多大 期望,只是随心写一写,当作生命流逝的见证吧。

自己搭建博客的好处是内容可以随便改,没有什么压力。公众号发布后就很难大幅修改了。总之这是极简的第一篇博客,感觉不像是正式的能给别人看 的东西,不过就这样吧,估计也没有人看,就像互联网上的大部分内容一样。