I work with Magento since 2008, which means I saw Magento being born and growing up. I took some time to understand how Magento works and what I could do with it, what were its goals, its strengths. But faster than that, I discovered how Magento could drive us crazy, with several small bugs and problems which could be solved only after hours and hours of investigation. Ok, currently, last releases are much more stable than first ones, of course, but sometimes I still ask to myself: “why did I choose Magento?”
Let’s start with the bad perspective: Magento is hated by lots of people. And I mean hated, because constantly we face errors and problems, sometimes apparently unsolvable. Maybe Varien developers have their share of guilty, when they tried to build a non-complete-platform, offering room to 3rd party developers to build modules which would fill up this gap, allowing other people to earn money with that. This choice drove us to a series of lots of Magento modules poorly developed, conflicting among themselves and resulting in errors and broken stores.
Every time a Magento store goes out of service, a store owner says: “Well, they said Magento was problematic”. The problem is not with Magento but it is the bad guy, on store owner’s mind. Beyond that, we find lots of developers who are not familiar with Magento but sold a Magento store because they can use the code, for free. Now we have poor modules plus poor developers, resulting in a bad support service.
Another point, Magento requires special server specs. Despite of some people saying that, you can’t run it in a shared server if you have more than few visits on a daily basis. I don’t say you can’t install it in a shared server at all but you can do it only in the very beginning, if you want to test the market. Low-resources-server, many visits, no capacity, Magento store down. And the store owner says again: “Magento is heavy, is problematic, let me find another platform”.
As all these points can be solved, my share of hating Magento goes only on one point: Magento Inc. could act more on education and control. If we had some kind of real control (not only verifying modules upon developer payment but a real check of good practices attendance) and more actions to educate people how to use Magento, things would be much better.
But at the end of the day, reasons to love Magento are higher than to hate it. Magento is free (no costs and no leashes) and it’s a good platform, even keeping most of original features exactly as they were in 2008. If we don’t have a feature, we can develop it, using modules and modularity concept. There are several developers that code fine, without bugs and respecting other modules. After tuning a server, you can get fast stores with not-really-expensive resources. And finally, you can do whatever you want with Magento, even hate it.