Software Design - Introduction To Solid Principles In 8 Minutes