Working with various projects using MySQL I observe a lot of problems are coming from very simple fact - product is designed containing features which developers do not know how to implement effectively.
In many companies you would see "waterfall" like approach for web application development at least on business-development boundary. Business people would dream up some features for developers to implement which developers simply take and implement as good as they can - unfortunately often not good enough to match performance and scalability requirements for the application.
In the end such approach may have nasty surprises - application gets serve performance problems due to features which might be not critical after all and even Business people would rather make things running fast than having these features working exactly as required.
So what is my point ? Only plan for features which you know how to …
[Read more]