你好,我是王若如

中南财经政法大学在读。白天研究区块链,晚上刷算法题,凌晨思考维特根斯坦到底在说什么(至今没想明白)。

一个试图在技术深度和人生广度之间找平衡的人。偶尔会因为 segmentation fault 而怀疑人生,但睡一觉起来又觉得”昨天的 bug 其实挺有意思的”。

这种自我安慰能力大概是我为数不多的天赋。


关于这个博客

“语言的边界就是世界的边界。” —— 维特根斯坦

所以我建了这个博客,试图用语言拓展世界的边界。虽然大部分时候只是在拓展 bug 的边界。

为什么要写博客?

因为我发现最好的学习方式是”教别人”。而最好的”教别人”方式是写下来,这样:

另外,保持向外的交流和输出是保持自我革新的不二法门。不写出来,脑子里的想法永远是一团浆糊。

你会在这里看到什么?

更新频率?

薛定谔的更新——不打开博客永远不知道有没有新文章。

具体来说:

适合什么人看?

理论上适合所有人。实际上可能只适合:

不设限。反正你都点进来了。


技术栈与现状

算法竞赛

现状:ACM 小菜鸡,Codeforces rating 是薛定谔的猫——不打比赛的时候觉得自己还行,一打比赛立刻坍缩到菜鸡态。

擅长:暴力枚举($O(n^3)$ 选手)、看题解(这个最擅长)

不擅长:几乎所有需要智商的算法

主力语言:C++(虽然经常写出 undefined behavior)

区块链

智能合约开发、零知识证明、隐私保护技术这些。

Solidity 写得还行,zkSNARK 还在学(主要在学怎么向别人解释什么是零知识证明)。

最大的成就是写过一个没被黑客攻击的合约。虽然可能是因为没人用。

软件工程

Java 后端开发,热衷于设计优雅的架构。

然后被需求变更打脸,被线上 bug 打脸,被自己三个月前写的代码打脸。

但依然保持着对”优雅代码”的执念。这大概就是所谓的理想主义。

数据科学

Python 数据分析、机器学习、强化学习。

目前的水平是:能跑通 Kaggle 的 baseline,能看懂论文的 abstract,能吹牛说自己在搞 AI。

距离真正的数据科学家大概还差:一个 PhD、三年经验、以及承认自己只是调包侠的勇气。

通用技能


兴趣爱好


喜欢的话

“语言的边界就是世界的边界。把能说的说清楚,对不能说的保持沉默。”
—— 维特根斯坦《逻辑哲学论》

虽然我经常对不能说的也尝试说两句,但至少我在努力把能说的说清楚。

这句话之所以喜欢,是因为它既是方法论(如何表达),也是边界意识(承认局限)。

技术如此,人生亦然。


一些碎碎念

最近的感悟:算法题教会我的不只是优化时间复杂度,还有在有限资源下做最优决策。区块链教会我的不只是去中心化,还有在信任缺失时如何建立共识。

人生大概就是一道超大规模的多目标优化问题。没有标准答案,只有不断迭代的解。

而我们要做的,就是在每次迭代中,让自己变得稍微好一点点。


FAQ(自问自答环节)

Q: 你的博客多久更新一次?
A: 不确定。但可以确定的是,DDL 越近,更新越频繁。因为写博客是逃避 DDL 的最佳方式。

Q: 为什么有些文章里的代码明显是错的?
A: 那是警示后人的反面教材。就像历史书要记录失败的战役。

Q: 你真的懂维特根斯坦吗?
A: 对于不能说的,我保持沉默。(其实就是不懂)

Q: 写博客有稿费吗?
A: 没有。但如果你觉得某篇文章帮到了你,可以考虑请我喝奶茶。(开玩笑的,点个赞就行)

Q: 你最想对读者说什么?
A: 如果你在我的文章里发现了错误(很有可能),欢迎指正。如果你有不同看法,欢迎讨论。如果你觉得某篇文章写得不错,欢迎分享。


联系方式

侧边栏都有。GitHub、Email、各种社交平台。

欢迎

不欢迎


最后

这个博客是我的数字花园,记录着一个普通人的成长轨迹。

有技术的深度,也有思考的温度;有代码的严谨,也有文字的随性;有踩坑的痛苦,也有顿悟的喜悦。

希望你在这里能找到一些有价值的东西,或者至少能会心一笑。

如果某篇文章真的帮到了你,那就更好了。那说明我写博客的初衷达到了——用输出倒逼输入,用分享创造价值。

好了,如果你真的读完了这么长的”关于”页面,说明:

  1. 你很有耐心
  2. 你确实挺无聊
  3. 或者你和我一样话痨

无论哪种,欢迎你。

就这样。

—— 王若如
一个幽默偶尔犯贱的技术伪宅男

P.S. 如果你也在中南财大,或者也在学 ACM/区块链,随时可以找我。线上线下都行。一起踩坑比一个人踩坑有意思多了。

P.P.S. “伪宅男”的意思是:想宅又不甘心宅,最后变成了薛定谔的宅男——既宅又不宅。