Today I had the chance to explain to one of our users why a feature was not added to WooCommerce core, but released as a separate extension:
I understand that this specific feature is a heavy requirement for your projects, but you have to understand that we come from a very different angle than Magento does. In fact, we are not near Magento when it comes to the number of features. This is done on purpose and let me explain why.
Magento having a huge load of features packed in the default version of it may benefit a lot of people, but it also has a big downside. This is exactly the reason why WooCommerce has far less features in its core plugin. We provide extra features via extensions to keep the core WooCommerce plugin as lean and clean as possible. The people who do not use extra features can benefit of a faster and less code bloated plugin. When you do need the extra features, there will be extensions to add these features.
This way of spreading features between the core plugin and separate extensions makes our plugin usable for a much bigger audience. You don’t need to be an expert in eCommerce to start working with our plugin and run your first webshop.
Especially this last sentence is a very important reason to not stack all sorts of complicated features in the core plugin. WordPress and her plugins are renowned for their user experience, ease of use and low entry barrier. Let’s keep it that way, let’s keep it simple and easy to expand with new features.