2024
Feb 11
One Definition Rule
2023
Sep 2
Catalan Number
Mar 10
C Static Storage
Jan 22
Transparent Huge Page
2022
Dec 20
A Good Day to Play Ping-Pong
Dec 18
Context Switch on Linux
Dec 13
CPU-bound vs IO-bound
Oct 8
Memory Fence
Oct 8
Profiling JVM using perf
Jan 2
JNI Hello World
2021
Dec 23
Sudo Without Password
Nov 12
VirtualBox USB
Oct 1
Using Custom DNS on KDE
Sep 18
Boy Or Girl Paradox
Aug 11
Memory Order Consume
2020
Oct 24
Priority Queue in Java
Oct 17
Unsupported Workflow
Sep 20
Linux VM Mapping
Aug 31
Chinese font fallback
Jun 30
Count Inversion (Haskell)
Jun 29
Continuation
May 20
Memory Model
Mar 24
SSH Failed Attempts
Mar 19
OpenJDK CMakeList.txt
Feb 29
Postage Stamp
2019
Dec 9
Sorted Product
Aug 31
Aliases For Git
Mar 17
Monoid example
2018
Sep 24
My Keyboard Layout
Jul 13
Devirtulization in C++
Jun 16
Weak Reference in Java
Apr 8
Cube Shadow Theorem
Apr 1
C++ Constructors
Mar 28
My Music collection
Mar 2
Google Hash Code
Feb 16
N Queens in Haskell
Jan 26
Stack Overflow
2017
Dec 22
The Cost of Branching in C
Dec 11
Wildcard Matching
Dec 9
Circle Sum
Nov 23
My Hexo Theme
Nov 19
Distributed Erlang
Nov 12
What's a Monad
Oct 31
HD Handmade Hero Video
Oct 28
Dynamic Programming
Oct 20
2-3 Tree
Oct 4
V8 CMakeLists.txt
Jul 9
Stack Frame
May 7
Compiler Barrier
Feb 17
Pthread Affinity
Feb 10
Stack Protector
Jan 22
Quine
Jan 18
Back Pressure
2016
Dec 27
Dynamic Linking
Dec 14
Data Size in Assembly and C
Nov 23
Link Time Optimization
Nov 11
Simple Shell (reprint)
Oct 18
Strict Alias
Sep 24
Journey To The West
Sep 17
Rank2Types
Sep 6
Memory Layout
Sep 4
State Monad
Sep 2
Reverse Polish Notation
Aug 27
Parser Combinator
Aug 6
NaN Boxing
Aug 5
Beauty
Jul 31
Very Simple Interpreter
Jul 29
A Poem for the West
Jul 23
Collision
Jul 17
Random C Snippet
Jul 17
Measure CPU time in C
Jul 4
Same Origin Policy
Jun 30
HTTP Cache
Jun 26
Jam Coins
Jun 23
Observe Cache Effect Using C
Jun 11
Bloom Filter
Jun 7
Reverse Bits
May 28
Measure CPU Frequency
May 1
ABA Problem
Apr 23
Restrict in C
Apr 7
Mac PDF Auto Reload
Apr 6
Rails Form Submit
Apr 5
Makefile Built In Rules
Apr 3
Variables in Ruby
Feb 21
Rails Active Record Query
Feb 21
Chasing the Latest TeX Live
Feb 6
Dice
Jan 30
My Android Phone Reborn
Jan 23
The Road Not Taken
2015
Dec 9
Two Aspects of shells
Nov 8
Configuring iTerm 2
Oct 21
Max Opened Files in Linux
Sep 23
Wanderers
Sep 20
Intuition goes a long way
Jul 18
Non-blocking Algorithm
Jul 14
Hackathon
Jul 3
Calculator in Parsec
Jun 30
Real Time Web
Jun 30
Hello World
May 25
Run until segfault in GDB
Mar 23
Return from pthread
Mar 14
Networking
Mar 6
Closure Scope
Jan 20
Clean Git Commit History
2014
Oct 24
Story with MVar
Jul 25
LiveReload
Jul 18
Star -- my dream
Jul 13
It all starts with volatile
Jul 4
Premake
Jun 25
Docker -- one VM runs fast
May 11
Quotes
Apr 21
Concurrency
Apr 21
Library
Apr 7
Mechanical Keyboard
Mar 23
Job-seeking Summary in 2013
Feb 15
Parser
Jan 28
Xfce4 Volumed
2013
Dec 4
Some thought on Careers
Nov 1
Variable Placement in C
Oct 18
X To JS Translator
Oct 17
Keyboard Mapping
Oct 13
Start of Blogging