Laws of Software Engineering,软件工程定律
在互联网上闲逛的时候发现了一个很有趣的网站整理了一些软件工程的定律,叫做 Laws of Software Engineering,于是利用 LLM 在这里整理了一下。
JDK Projects 备忘录
他们开始建造城和塔。他们用火烧砖,把砖当石头来用。他们又拿石漆当灰泥,石漆来自海水和希纳尔的泉水。他们用了四十三年的时间来建城和造塔。塔的宽度有 203 块砖。每块砖的长度是高度的三倍。塔的高度是 5433 腕尺又 2 掌。〔塔的墙〕长十三斯塔德。
再见,Oh My Zsh。
Oh My Zsh 陪伴了我一整个学生时代,自从使用 zsh 后就没有离开过 Oh My Zsh。 不过终有离别的时候,上一次改革自己的工作条件是因为 VSCode 工作速度太慢不跟手导致体验非常不好,现在这把砍刀终于砍到 shell 上了。
你不应该复用 strings.Builder
在编写 Go 程序的时候在程序所占用的堆足够大后经常会遇到 GC 缓慢的问题,在这个时候第一个入手的地方就是利用对象池来处理对象复用问题减轻 GC 压力。 特别是对于 strings.Builder 类型,更应该利用 sync.Pool 来复用它对...吧?
RVA23 包含了什么
Ubuntu 计划在 25.10 的 RISC-V 架构中只支持 RVA23 配置文件,于是打算大概看下 RVA23 有什么是比较重大的指令集成为了必选
Rust 的边界检查是否已经有很大的进步
最近又听到有人说 Rust 做不了高性能程序的原因是内插的边界检查会降低程序运行速度,我想这么多年了应该 Rust 开发团队不会不知道这个问题,因此做了个简单的实验来测试一下是不是这方面已经有了长足的进步
使用 Rust 编写操作系统:Barebones
这是 Philipp Oppermann 的操作系统系列博客的第一大章节,主讲如何搭建起一个基本的操作系统框架。
编译器笔记:rope
在实现 paradoxical 的时候注意到很多语言服务器或者编辑器都会使用一个叫作 rope 的东西来保存对文件的操作结果,因此简单记录下这个神奇的东西。
Paradoxical 札记
最近把 neorg 作为笔记和规划系统有点上头,但苦于没一个好用的 Language Server,自己又对编译器前端方面略有了解于是决定写下这篇大概会持续更新的札记
让 OpenCV 可以被静态链接
在 Alpine 的环境里,需要尽可能让程序被静态链接,否则程序还需要安装巨大的 glibc 和其他动态库,不符合 Alpine 的原则,也不太方便被部署。但 OpenCV 并不是那么容易被静态链接,应该怎么办?
使用 Rust 实现 SnowflakeId
在最近的业务中更改设计的时候最终决定使用 雪花 ID (下文称之为 SID)作为数据库的主键,这样可以避免使用发号器等中间件。 但是广为使用的 snowflake 的实现实际上是线程级别的唯一,而不是分布式意义上的唯一,因此在生产上如果和分布式搭配会产生极大的问题。 怎么办?只能自己写了。 原理 SID 实际上是 Rust 的 i64,他有 64...
EN:The Journey of Rust and Procps
Hi, I'm Krysztal Huang, a contributor to Debian's uutils/procps.
GSoC2024 笔记:使用 Rust 重新实现 procps
procps 是一套用于收集统计系统信息的套件,也指代一套访问 /proc 文件系统的 API。uutils 的 procps 是用 Rust 重新实现的,而这正好是本次 GSoC 的提案内容。
Guava:Cache
在开车的时候,与前方车辆一定要保持适当的距离,不管车速如何都是如此。这段距离叫做缓冲距离;在开发中也有类似的概念,不过分为 Buffer 和 Cache,Cache 偏向无序,Buffer 偏向有序。
Gradle秘境:添加一个类似modCompileOnly的依赖块
FabricLoom 里有类似 modCompileOnly、modApi、modImplementation、modRuntimeOnly 配置块,那应该怎么做才能在自己的 Gradle 插件里实现类似的功能?
Minecraft:原始经济系统设计简述
如何在 Minecraft 设计经济系统是一个服务器维护人员以及策划组持久讨论的问题,那么过了这么多年我能给出什么方案?