new blog post about state pattern