Design Principles In C