understanding buffers