AstreoX 这个名字分两半。Astreo 来自希腊语的 astron,意思是“星”;希腊神话里有一位黄昏与星辰之神 Astraeus,意大利语就写作 Astreo,风和群星都是他的孩子。X 是未知数,方程里还没解出来的那一项,也是我最喜欢的部分:还没想清楚的事情。

首页上写着 One sky, a whole flock of ideas。在我这里,天空是这个博客,想法是星星:它们一颗一颗地亮起来,彼此隔得很远,偶尔被一条线连上,就成了一个叫得出名字的形状。我是一个写代码的人,平时做学习工具,也做一些没人会注意到的基础设施;下班以后读点历史,琢磨语言是怎么变的,给一个虚构的海岸画地图,偶尔去海边发呆。这些事情看起来互不相干,但它们一直挂在同一片天空上。这个博客,就是想把它们连起来。

四个主题

博客分成四个栏目,每一个都对应我花时间最多的一件事:

  • Algorithms · 算法:数据结构、字符串、图、搜索。我更关心一个算法为什么是这个样子,而不只是它的复杂度;文章里的代码都能直接运行。
  • Products · 产品:我正在做的东西,以及做的过程中犯的错。uStudy 是一个用对话和知识图谱辅助学习的工具,uWidget 是一组克制的桌面小组件,uNote 是一个带双链和间隔重复的笔记应用,还有一些写给开发者的底层库。
  • Worlds · 世界:人、城市、历史,和它们背后的故事。偶尔也会出现一个叫“北海岸”的虚构世界:给它画地图、编年表,是我理解真实世界的笨办法,自己造一遍,才知道真实的世界有多复杂。
  • Everywhere · 随笔:剩下的一切。读过的书,走过的路,写给自己的周报。

这四个词连起来,就是这个博客的副标题:

Every algorithm & Every product & Every world & Everywhere

AstreoX 的副标题

几条写作上的约定

开一个博客很容易,坚持写下去很难。为了让以后的自己有据可查,我先立几条规矩:

  1. 不追热点。写一件事,是因为它值得想清楚,而不是因为大家都在讨论它。
  2. 代码要能跑。文章里出现的每一段代码,都在发表前实际运行过;如果只是示意,会明确说明。
  3. 承认不确定。观察就写成观察,猜测就写成猜测。“我不知道”是一个完全合法的结论,那也是 X 的意思。
  4. 改动留痕。文章发表以后还会修改,修改记录会保留,读者留下的评注也会尽量跟着原文走。
  5. 慢一点。没有更新频率的承诺。一个月一篇写透,好过一周三篇写浅。
几只渡鸦飞过海边悬崖上的符文石
图 1 · 同一片天空下的一群想法:它们各自飞行,偶尔排成一个形状,像星座一样Illustration · AstreoX

欢迎来到这片天空

这个博客有两种和我说话的方式。一种是文末的评论区,适合聊整篇文章;另一种是划线评注:在正文里选中任意一句话,就能在旁边留下你的看法、问题或者补充资料。我很期待第二种,因为好的对话往往是从一句具体的话开始的。

如果你喜欢这里,可以用 RSS 订阅,或者干脆什么也不做,想起来的时候回来看看。天空一直在那里,星星也是,只是有些夜里要等云散开。