今年过年没有回父母家,而是在上海过的。几乎没有安排任何和过年相关的活动,对春节的认知变成了一个稍微长点的假期。大年初一去了趟上海动物园,其他几天要么是在家看电影,要么是去公司。
在做的德州小项目目前进展不错,在浏览器里已经可以处理渲染和用户交互了,因此把测试用的 Demo 先搬上了 GitHub Pages,在 https://ichn-hu.github.io/RustyTexas/ 可以看到。因为还没有支持网络,所以 Demo 目前还只能支持按 i 输入、以及按 r 进行 raise,其他操作都是无效的,但大致的游戏形态已经展现出来了。
到这个样子其实踩了很多坑,包括 Rust Wasm 中没有时间的支持,任何 std::time::Instant::now() 的调用可以编译通过,但会在运行时 panic;通过 wasm-pack 构建的 npm 包一旦引入到前端项目后,就会被复制到 node_modules 里,后续更新不会直接生效(这个巨坑无比),要删除后重新 yarn add;futures::stream::SelectAll 在 Wasm 中可能会卡死,至少在处理 crossterm 的 EventStream 的时候只能蹦出一个元素,后续就一直卡住了(感觉是个非常奇怪的 bug,可能可以提个 bug issue),等等。
后续需要支持通过 WebSocket 与服务端通信,这样就可以玩起来了!
这段时间写了很多 Rust,感觉的确是一门很不错的语言,希望之后能在工作中多多使用。
作者是 Slack 的工程师,花了 5 年的时间自己设计、建造了一所现代化的居所,这里是他的总结。
实际上从 16 年开始,作者每年都写一篇博客,介绍房子建造的进展以及这个过程中的思考,有很多细节,也有很多漂亮的照片。
作者一开始就绘制了房子的 3D 设计图,后来建造过程就是在现实中还原。观察 3D 渲染和真实的照片的对比,可以看到还原度极高。掌握正确的工具,通过计算机辅助设计,可以极大地降低现实中的试错成本。
这周还读到的一篇和造房子相关的文章,讲的是一个天文学博士毕业后,先在国内高校当了一段时间老师,然而实在无法接受和学术无关的行政事务以及对整个系统对青年教师和学生的压迫,辞职转行,开了一家装修公司,当起了装修工。
他关于装修的知识是从 YouTube 学的,用他的话说:
我像做科研一样去做装修,一边是自己试错,一边去 YouTube 上看别人装修的经验或者教训。装修总是在不断处理出现的新问题,根据不同的情况解决问题,这是我读到博士学到的也擅长做的事情。
学历和学位在某种意义上说其实也是一把枷锁,限制你的职业和志趣的选择。突破这个限制最大的阻碍是心理上的,而不是能力上的。学术训练对能力是有帮助的,学习能力和解决问题的能力在任何行业都是有价值的。
CS 598XU: Reliability of Cloud-Scale Systems
UIUC 系统方向的研究生课程,关注的是云规模下计算机系统的可靠性。链接是 schedule 页面给出的论文列表,可以参考这个列表找论文读。