Programming is being crystal clear
August throughtsProgramming is like writing.
Code must be easy to read, and understand. For this reason I do not like very much technologies like:
- Aspect oriented programming
- SQL Triggers
- Web filters
- Last minute event listeners (like the one check before an entity save and 'patch' some data on the fly or launch additional events).
Side effects are the evil of programing in my humble opinion because can create unexpected bugs.
Also side effect can increase maintenance costs.
I have some heavy doubts also on event-based programming because tracing and orchestrating events can become a burden.
But heser are just my own opionions for sure: if you have a model-driven system and you are able to keep your mantenance factor low, so far so good!