use a boost circular buffer to simplify the tutorial