This is to try my hands in design patterns and some anti patterns as well :)