Following on from my earlier post on ‘Why You Should Use Magento‘, now for Magento’s negative side.
Magento is a beast, if its not the depth of the user interface, its hundreds of settings to get used to or just the sheer scale of it.
I’ll be completely honest with you, it took me two three attempts to get to grips with it, that’s slightly concerning as I would like to think I pick up things fast, very fast. I finally gave in when a client demanded that they needed me to know it, several hours later and many pints of coffee, I felt quite at home.
There is a lot of hype around Magento, for the large part of it, its worthy, but Magento has several other aspects that you need to be aware of:
- Development Costs
Because Magento has taken off, developers are charging a premium for development of extensions & themes. You need to be really careful of this if you need design or coding alterations.I would strongly suggest you document any changes you wish to be made before approching anyone and get at least three quotes from reputable companies. This will stop you looking inexperienced and open yourself to be over charged.
There has been a very mixed feedback with freelancers, I personally suggest you look at the most downloaded extensions in Magento Connect (yes aheadWorks are #1, there is a very good reason for this) also elance.com is a great place to check as Magento developer and development companies have ratings.
- Export/Importing Abilities
This was a shocker, the import and export abiities are astonishly poor. And I mean REALLLLLLLY poor. I’m used to software products that are highly configrable and Magento lacks in every department.I recenty had to hack the code to get some images in via CSV, it felt soooo bad and its just wrong. There are no category exports and inventory exports are primative to say the least.If you’re migrating from another platform, spend a serious amount of time seeing if you can port your data across. This could make or break your decision to use Magento.
- Indexing in Multiple Website/Store Setups
This is an issue if you are SEF rewites enabled . Magento wants to have ALL the SEF (Search Engine Friendly) URL’s in a table for each store view for each website for each product for each category.For single or a small number of stores with a low inventory cound this isn’t a big problem. But for big sites of several thousand records (or more) with multiple store views/sites then this becomes a processing issue.If this is you, then you’ll need to take a look at look at the recommedations on the kit to run Magento and optimisation suggestions; Plus you’l need to take a look at this blog post on a method on how to run the different indexing processes separately because they’ll just never complete on their own.
To give you some idea, one of the sites I recently worked on, takes a minimm of 2 hours and 5 minutes to index. The processes are run in th early hours of the morning, but it does mean new products do not show until they have been ‘indexed’.
- No Bulk Update Tool
This was another shocker, there is no ‘bulk update’ tool. These are taken for granted in other software products I have come across and feel this is a big hole in the Magento platform.Such tools allow a user to update one or more attributes on many inventory records. The save untold amounts of time, effort, oh and frustration.I did find a plugin that was mildly helpful its called ‘Mass Product Related‘ and also its free which helps, but is no substitute. - Server Requirements.
Magneto is far from ‘light’ in resource demands. This I hinted at with the indexing requirements I mentioned above. You’ll be lucky to run this on a shared hosting account, it almost demands an entire server to itself and for bigger installs, several with a load balancer to boot.If this does not put you off, then renting or colocating a dedicted server is absolutely suggested for your site. Colocation starts at about £36 + VAT and you supply the kit or a rented dedicated server can be found for around the £65 + VAT mark that should last you a while. There are also dedicated Magento hosting providers out there, I am unable to comment on these, but I do personally think ‘shared hosting = bad for Magetno performance’ - TCO – Total Cost of Ownership.
Aptly after the server requirements point, unless you have a technical member of staff or deveopment team, you’ll be better off outsourcing this to a 3rd party and when it comes down to total cost, you may ultimately be better off chosing a hosted solution for Magento or another platform less ‘hungry’. - Its Too Good.
Yep this is a negative! Its to deep and offers too much customisation. Sometimes its better off to get someone else to do a task for you and unless youre a webdesigner or a PHP/MySQL developer, you’re better off giving it to someone else. Stick with the basic functionailty and you can’t go wrong.
Here are some suggested documents to read the white paper includes some really good base optimisations for Apache, MySQL & PHP:
- Magento for developers
- A Designers guide for Magento
- System Requirements
- White Paper: Methods and Best Practices for High Performance eCommerce with the Magento Enterprise Edition
I don’t want to knock Magento, I really, really like Magento, but at times its has been extemely frustrating working with it. The forums are not the most active places and some bugs I have found (well, some caused) have been a nightmare to resolve to no one really know what on earth is going on. If I had not been technically competetant, then I would have given up on it ages ago.
If you’re considering this for your business, then I’d suggest you look at the Professional Edition or Enterprise Editions.
If you’re looking for a simple shopping cart that looks pretty, works well and supports multiple sites (yes other products can do this besides Magento), you may want to look at a personal favourite of mine, OpenCart. I’ll be posting an article on OpenCart in the next week or so.
If you would like to discuss whether Magento is right for your business, a hand-holding demo of Magento, require assistance with the outsourcing of the design or require a extension developing, I can help any questions you may have.
Also I can work as a neutral party to ensure that you are delivered what you expect from a third party designer or developer in a smooth process and sensible time frame.
For completeness, I have included the PHP code to run the URL updates, if you are having problems with a different index, then alter the ID number on line 11 from 3 to its ID.
<?php // http://www.sonassi.com/knowledge-base/magento-knowledge-base/catalog-search-index-refresh-running-slow-or-haltingfreezing/ require_once '../app/Mage.php'; umask( 0 ); Mage :: app( "default" ); Mage::log("Started Rebuilding Search Index At: " . date("d/m/y h:i:s")); $sql = "truncate catalogsearch_fulltext;"; $mysqli = Mage::getSingleton('core/resource')->getConnection('core_write'); $mysqli->query($sql); $process = Mage::getModel('index/process')->load(3); $process->reindexAll(); Mage::log("Finished Rebuilding Search Index At: " . date("d/m/y h:i:s")); ?>







Very interesting post. Just couple notes to your points:
- import/export – try the unirgy.com uRapidFlow extension. There is also cart2cart service for Migration.
For everyday import you can try eg running Jitterbit with core API to avoid programming your custom import script.
- bulk update – there is mass update of attributes in core Magento and it is very useful – just select products and use Update Attributes action from the dropdown
- server requirements – while shared hosting is usually not enough, many installations run nicely on virtual instances or Amazon EC2.
- indexing – this was improved a lot in recent versions. For very big sites a Solr indexing might be a better solution – this is available in Enterprise Edition.
Hi Peter,
Many thanks for your comments.
I checked the uRapidFlow extension, it starts at $610! *Getting back on my chair* It does look quite comprehensive and the dry-run import looks a great feature (anyone else going to own up to crucifying data before?), but my point is that a comprehensive import/export option is missing from Magento.
The suggestion of Cart2Cart is a brilliant one, I have this on my research list. I’ll create a separate post once I am more knowledge this service offering (note here this is a 3rd party service, similar to the uRapidFlow extension). Having moved clients data several times now this could be a fab ‘cheat’.
My experience is of Magento 1.4.X community edition, the only the reasons I could see for choosing a paid-for-version were either the offer of PCI, ‘support’ (which is extremely compelling in its own right) or better performance (including indexing).
Matthew
Nice post! All index actions can also be run using the indexer.php located in the shell folder, for reindexing the urls you do “php indexer.php –reindex catalog_url”
Hi Will,
Many thanks for that, wish I knew of that previously, although yours is far cleaner and saves using wget to call the update scripts.
Matthew
Pingback: Lesson 5: Be a user advocate, not a system sales rep. — Guido Jansen
[...] Why you should not use Magento [...]
i agree with your post, but to some people, there is no other option. magento is very buggy, and i made the mistake of altering core files when i first messed around with it when building a website for my boss. im too scared to upgrade and i am finding out more and more bugs and its getting to be really frustrating, not to mention, all of magento’s vast features sure are a memory hog. Im glad i used magento though, because now, i feel confident to tackle any CMS without being too intimidated after jumping through hoops when using magento.
I will try to build open cart site as my next project to see if i can make the transition, thanks!
Hi Joseph,
Yes, I did the same too. Once you work out the structure, extending functions is really quite easy to do.
I’d argue on the “buggy” part, its become a lot better in recent versions, I believe the general idea was “bung a lot of neat ideas & features together and sort the mess out later”, its now later and the unexpected features are being ironed out.
Definitely not a tool to be dismissed lightly, that’s for sure.
Matt
It is an interesting beast i must say, new to it and trying to figure out how to stop google indexing while i tinker!
Howdy, you ahve two simple options, the first is the htaccess the site so that no-one bar you can enter it, the second is the alter the robots.txt file to stop Google from indexing it http://www.e-commercewebdesign.co.uk/blog/magento-seo/magento-robots-txt-seo.php
Many thanks just used the inbuilt SEO options, magento is literally hours old to me but thanks for reply.
It is a complete myth that Magento can’t be run on a shared system or needs a large VPS or dedicated. It just needs to be configured correctly from top to bottom ie from the OS, web servers, php to the store. Once everything is in place magento should take no more resources than any other cart. If you don’t believe me check out our Magneto demo store http://dx3webs.com/magento This runs along side many of our clients. There is nothing slow about any of the stores we host oh and free tech support specifically for magento.
Great suggestions, I hadn’t even heard some of them before. Thanks for the tips!
Anyone know why Magento was not developed with many of it’s features separated into ‘Add-on modules’?
I honestly don’t think every online shop needs all the features it provides.
Howdy Vincent,
That’s an interesting suggestion, may if the took it as far as WordPress with the base functions included, but then everything else as elective addons?
Matt
Great article about magento, but it has been over a year since.
So how about a little update on Magento?
Hi Theo,
Thanks for the comment. This was posted in October, so not quite a year ;-)
I’ve just scanned over the points, they are are still valid even now. Sorry I have no more updates/articles on Magento planned due to another project.
Matt
Why You Should Not Use Magento – http://ow.ly/6G5s3
Matt,
once again you are answering the questions I am asking in my head! I’ve got a large Magento site coming online in the next few days and will be grappling with all of these issues. I guess that like everything Magento is just one that has to be figured out then runs smoothly, we’ll see though.
With your mention of OpenCart here you are right on the money, it’s a great free solution that is feature packed and as long as it keeps updating will be viable e-commerce solutions for many years.
Steve