新年伊始,「爱好折腾」的我又对服务器搞了一次大迁移&改动。

主要是原来放在 skywt.cn 的博客放到了 blog.skywt.cn(也相应做了 301 重定向),然后重新写了一个极度简洁(?)的首页。以及在看不见的地方,对服务器整个部署的架构都重新探索了一番。

正逢新年,就借此机会记录一下这段时间折腾的东西,然后立一立 flags 吧。


最开始建立这个博客就是写 OI 题解和「学习笔记」用的。题解可以说是一种「内容产出」。由于算法题要求一种思维的「深度」,所以算法题题解是一种比较有价值的「内容产出」。

但是 AFO&AFA 之后就基本上不写题解了,现在学习的重心都是技术方面的东西。而这些东西更要求的是「广度」,并且在实践中的运用具有很强的综合性,没有足够的系统性的学习根本没有办法产生知识的有效「产出」。换句话说,这方面学习的「产出随投入的变化曲线」更加下凸了。所以我越来越少觉得有值得发博客的东西了。

另外一方面,本来还打算在这里记录一些关于生活的「感触」。就是一些平凡的日子里微小和浪漫的、真正值得被记录的情感。然而由于我实在没有很好的文笔 =_=,并且这种「技术导向」的平台也实在没有一种「情感抒发」的氛围……所以最终还是没怎么发过。
(事实上之前有的一个想法是把这种「生活类」的博文分开到「手写版」的 write.skywt.cn,但是由于种种原因,那个子博客也没怎么更新过……)

可能也和人的心态成长有关。最早也想着增加访客量,甚至关注搜索引擎的引流。然而现在完全躺平,不 care 任何搜索引擎了,只是把这个地方作为自己的一个秘密花园,能见证自己的成长,能记录下自己心里疯狂和莫名其妙的探索,就够了。互联网的世界太喧嚣,有这样一番清净的地方,也挺好。

(贴一个非常惊艳我的博客:wind.ink。这风格,这文笔,震撼到我了……)


由于不知道什么原因,某天的程设课上去逛了逛腾讯云,发现那里的「轻量级应用服务器」学生优惠比阿里云力度大多了,价格更低的 VPS 所有配置都是阿里云的两倍,2xCPU + 4G RAM + 80G SSD。于是一冲动,当场就买了三年……

又由于用于不可描述用途的搬瓦工 VPS 也快要到期了,「不思进取」的搬瓦工至今不支持 IPv6,某天就去 Vultr 租了台 VPS。

于是算下来现在我有好几台 VPS 了:

新的服务器自然要尝试一些新的东西。

自从部署 Overleaf「不得不用 Docker」而去了解了一下 Docker 起,我就仿佛踏入了新世界的大门,计划腾讯云这台服务器完全 Docker 化部署,从此便一发不可收拾。有了容器化,服务器的「可玩性」和「可维护性」上了一个数量级,我的服务器上就渐渐地部署了一大堆服务……

以及从 Nginx 换到了 Caddy,这个 Caddyfile 优雅的体验实在是令人感动。

看到了更大的世界,我才了解到更前沿的、生产中的各种技术,才知道之前自己有多「固步自封」。一觉醒来,世界已经是 Vue、Nodejs、Docker、Kubernetes 等等的天下了,之前学得津津有味的 php 的的确确几乎代表着一种落后的设计模式而要「过气」了。感觉全世界的网站都在用 Vue/React/Angular 之类的框架构建前端,Nodejs/Go 之类的构建后端,再搞上 Kubernetes……而这些我都不太会。随便打开某些前沿的技术博客,就会找到很多没见过的名词,甚至在我自以为熟悉的领域。这种感觉是有些可怕的。
印象最深的就是某天看到某博客里的一句话:「如果你用的是更古老的 jQuery 的话,……」原来 jQuery 已经算是「古老」了吗?我在构建自己网站的时候还用得乐此不疲……

最早服务器用的是「LNMP 架构」,也就是 lnmp.org 的「一键安装脚本」(更早还是 AppNode)。对于需要快速搭建生产环境的用户来说,这确实是不错的解决方案,但是这近乎于一个「黑箱」,我天然地很难去探寻各种组件的工作方式和原理。这种「不透明化」让我感觉很不舒服。
慢慢了解诸如 Web 服务器和 php 解析器的交互方式之类的基本原理之后,我就开始抛弃 LNMP。又看到了 Docker 中的曙光,我的服务器就借此全面转为容器化部署,下一步估计是 Kubernetes 了。

自然地,这些服务器也从「主要用来搭建博客」转为一个「HomeLab」(虽然不在我的家里)。博客也就不是最重要了。


既然博客分离到 blog.skywt.cn 了,自然 skywt.cn 的首页也要重新整一个。

你没见过的全新首页

这次首页的设计(可以说是没有设计)遵循「代码越少,人性越多」的理念,采用极极极极极简的风格,甚至没放头像,没写 SkyWT 的标题。(主要还是缺乏一点设计的灵感,只能用「万能的极简」来保持某种「神秘主义」……?)
只写了一句来自《小王子》的话:「你能听到星星的呼唤吗?」

有些东西是看不见的,必须用心去感受。

一直感觉到使用 Bootstrap4 的弊病之一是这样庞大的组件库给个人博客使用,实在是太大材小用。网格布局系统基本没有用武之地(因为全是单栏……),css/js 资源繁多复杂,想要的 js 插件没有,不想要的却集成一大堆,最可怕的表现就是 css 代码利用率不到 10%……
偶然发现了一个叫做 pico.css 的组件库,实在是深得我心!首先代码总量小于 10kb,只提供最简化的网格系统,对于我这种网站构建足够了;其次,最喜欢的一个理念就是「class-less」,样式直接绑定到组件而不用再加上莫名其妙的 css。本来用 Bootstrap 的时候就很想吐槽,为了样式加上各种莫名其妙的 css 让 html 几乎没有可读性。现在,pico.css 终于拯救了我,让我可以真正手写 html 了。

Class-less 的好处,对比鲜明

之前写 Sky Typecho 主题的时候就纠结过该选择 Sans 字体还是 Serif 字体。现在看来,还是 Serif 字体更符合这个简洁优雅的风格。为了保证统一的显示效果,我还是用了 Google Fonts。字号、字重大的宋体有一种神奇的古典美感。

另外,新整了个「实验室」页面,放上我服务器上折腾的各种东西。


其实也想着自己实现一个博客系统。Typecho 年久失修,现在钻研 php 也是有「49 年入国军」之感,看着这写出来的 php 和 js 杂糅在一起的代码,也感觉很不爽。
自己实现的博客计划采用前后端分离的架构,同时也是想要实践一下 vue、golang 等新学的东西。不过现在看起来自己的技术积淀还远远不够。Flag 先立在此吧。任重而道远!

对了,新的一年也想重新捡起我的吉他来着。

一个人应该能够给孩子换尿布、计划一次侵略行动、杀猪、驾驶飞船、设计建筑物、写诗、做会计账目、砌墙、接合断骨、照顾临终的人、执行命令、下达命令、与人合作、独立行动、解方程式、分析一个新问题、施肥、编程、做一餐美味的饭、高效地战斗、勇敢地死去。专业化是为昆虫准备的。
——罗伯特·海因莱恩

最后,新年快乐 🎉