2018

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
Jan 2 Section Info for Variables in C

2017

Dec 27 Inspecting JVM JIT assembly using Java Microbenchmark Harness (JMH)
Dec 22 The Cost of Branching in C
Dec 11 Wildcard Matching
Dec 9 Circle Sum
Dec 4 Distributed Hangman using Erlang/OTP
Nov 26 Setting up Development Env for OpenJDK on Mac 10.9 Mavericks
Nov 23 My Hexo Theme
Nov 19 Distributed Erlang
Nov 15 Reading SEI CERT C Coding Standard
Nov 12 What's a Monad
Oct 31 HD Handmade Hero Video
Oct 28 Dynamic Programming
Oct 24 Thread-local Storage Access Costs
Oct 20 2-3 Tree
Oct 4 V8 CMakeList.txt
Jul 9 Stack Frame
Jul 2 Signed and Unsigned Comparison in C
Jun 10 Solving Water Jug Problem by Contradiction
May 7 Compiler Barrier
Apr 14 Reduce Dropbox Auto Update Frequency
Apr 14 Some Tips in Model Checking using Spin
Mar 11 Tracing using ltrace and strace
Feb 17 Placement of Alignment Attribute in typedef
Feb 17 Pthread Affinity
Feb 10 Stack Protector
Feb 7 Dein-Vs-Plug
Jan 22 Quine
Jan 18 Back Pressure

2016

Dec 29 Selecting JVM Garbage Collector
Dec 27 Dynamic Linking
Dec 14 Data Size in Assembly and C
Dec 9 Runtime Scheduling - Theory and Reality (reprint)
Nov 23 Link Time Optimization
Nov 11 Simple Shell (reprint)
Oct 19 Call shell from Ruby using Systemu
Oct 18 Strict Alias
Oct 8 Small-Size Optimization in C (reprint)
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 11 Modulo and Remainder Operator
Aug 6 NaN Boxing
Aug 5 Beauty
Aug 4 Sieve of Eratosthenes in Haskell
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 21 No Need to Be Too Serious on TDD
May 1 ABA Problem
Apr 23 Restrict in C
Apr 7 Mac PDF Auto Reload
Apr 6 Rails Form Submit
Apr 5 Hotpatching a C Function on x86 (reprinted)
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
Jan 10 Analysis on A kind of Permutation Algorithm Using Induction

2015

Dec 9 Two Aspects of shells
Dec 8 Compiler, Build System and Package Manager
Nov 8 Configuring iTerm 2
Oct 21 Max Opened Files in Linux
Oct 16 Run Multiple Instances of an Application on OSX
Sep 23 Wanderers
Sep 20 Intuition goes a long way
Sep 6 Migrating to Github Pages with Hexo
Aug 21 Postgres Authentication Methods
Aug 7 Generalized Algebraic Data Types (GADT)
Jul 30 Notes on Neon Genesis Evangelion
Jul 18 Non-blocking Algorithm
Jul 14 Hackathon
Jul 14 Partial Evaluation
Jul 3 Calculator in Parsec
Jul 2 My notes on Functor, Applicative and Monad
Jun 30 Real Time Web
Jun 30 Hello World
Jun 12 Remove or Keep intermediate files using Makefile
May 25 Run until segfault in GDB
Mar 24 Memory Model
Mar 23 Return from pthread
Mar 14 Networking
Mar 6 Closure Scope
Feb 7 Quick text transformation using Perl one-liner
Jan 20 Double Feature Branch for Better Commit History

2014

Dec 5 Adventure with ucontext on Linux and Mac
Oct 24 Story with MVar
Oct 9 Type Classes vs Interface
Aug 28 Import local DB to Heroku using Dropbox
Aug 13 Rails Deployment using Docker
Aug 9 How to Make Google Plus Photo Storage Tolerable
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 23 Some reasons why Python isn't as elegant as you thought
May 11 Quotes
Apr 21 Concurrency
Apr 21 Library
Apr 7 Mechanical Keyboard
Mar 23 Jobs summary in 2013
Mar 6 Using OpenDNS on Ubuntu
Feb 15 Parser
Jan 28 Xfce4 Volumed
Jan 28 Firefox Show Chinese Font but Chromium Can't

2013

Dec 4 Some thought on Careers
Nov 25 Alternate Screen in Terminal Emulator
Nov 23 Dot2Texi -- combining Tikz and GraphViz
Nov 1 Variable Placement in C
Oct 18 X To JS Translator
Oct 17 Keyboard Mapping
Oct 13 Start of Blogging