add an article on design patterns