There must be a better way?
I was approached by another developer who needed some help to finish a calendar application promised to a client.
This application was built using procedural php and jQuery using jQuery's full calendar plugin.
The code was a very messy codebase with procedural php function files all over the place and the code was not DRY at all.
I ended up helping to finish the calendar and launch it to the client. After a few feature enhancement requests I decided to refactor this codebase into a custom MVC framework I developed during my degree.
Using this framework I was able to reduce code complexity and help achieve DRY (don't repeat yourself) code. This helped with improving performance and allowed to me to introduce defensive programming into the codebase.