avatar

whalien's blog

software engineer, dreams make the world a little better.

Arch Linux 运维记录

arch linux maintenance notes

Raft thesis 中文版

Raft is designed to provide an understandable approach to achieving distributed consensus in fault-tolerant systems. Raft simplifies the process by dividing it into three components: leader election, log replication, and safety, ensuring clarity in implementation compared to more complex algorithms like Paxos.

从一篇博客开始的 GoLang Context

golang context from golang official blog

Python 代码风格指南

style guide excerpt from PEP8 and PEP257 for Python

用继承的角度来思考现代 CMake

When we link a target, we immediately inherit (get) its INTERFACE and PUBLIC properties, and make them our own with the access level specified in the linking command. This mechanism is similar to inheritance in C++, so it should be easy to understand.

Hands on Electron

Electron is a framework for creating native applications with web technologies like JavaScript, HTML, and CSS. It takes care of the hard parts so you can focus on the core of your application. This article will show you the main components and how they interact with each other.

Linux Storage Stack Diagram

Linux 存储栈图解

Type Deduction and Why you Care

Template and auto type deduction have consistent rules, with exceptions for lambdas and braced initializers. Understanding these rules is crucial for writing correct and efficient C++ code.