When developing software focus on creating the simplest possible system instead of shoe-horning every solution into your language/framework of preference.