Designed a Backend System
Contributed to open source
The larger a codebase is and the more users it has, the harder it is to make changes in it. While we've all seen this in legacy enterprise systems, it also affects open-source projects where internal code quality is one of the key requirements.

Doctrine DBAL is a project with more than a decade of history and isn't an exception. There are quite some documented issues where it behaves incorrectly when it comes to dealing with reserved SQL keywords and quoting identifiers.

All those issues are by design, so fixing them requires a design change. While prototyping it, I'm stumbling upon other design decisions that may have made sense a decade ago but no longer stand.

This weekend, I'm trying to do some spring cleaning, identify and deprecate the features that nobody hopefully relies on and clear the path towards a better design.