A dive into the mistakes we as developers make and the best practices we can employ in object-oriented programming and design. We start with an example plugin and remove issues addressed using the STUPID principles. We then apply the five basic principles of SOLID design ending up with a word class WordPress plugin.
STUPID: (Singleton, Tight Coupling, Untestability, Premature Optimization, Indescriptive Naming, Duplication)
SOLID (Single Responsibility Principle, Open/Closed Principle, Liskov Substitution Principle, Interface Segregation Principle, Dependency Inversion Principle)