Web
Article

Magento vs. X-Cart (+ Screencast)

By Jacco Blankenspoor

It’s been a while since I did my last Magento comparison, and the sad thing is: Nothing much has changed since then. Magento still looks and works the same, and in this industry standing still is the same as moving backwards.

True, Magento has moved on from version 1.7 to 1.8, but that was mostly rolling out bug fixes. And it still has some serious flaws which haven’t been addressed. Any real progress seems to be stalled while awaiting for Magento 2.0, the version rumoured to be heavily influenced by eBay, its new owner. This should be a real leap forward and should make Magento the top dog again. But the fact remains, 2.0 is still far from being ready.

And then there is X-Cart 5. While it technically follows up on X-Cart 4, it is a rebuild version of this decently successful shopping cart. Basically X-Cart 5 is to X-Cart, what Magento 2.0 should be be to Magento 1.8. And with X-Cart having a rapid development cycle, this could mean X-Cart 5 takes the lead – at least for small- and medium sized business, which is where X-Cart is at its best.

So what is wrong with Magento?

That is a good question, because they clearly didn’t become this big by being a flawed product. But to remain this big, they really need to work on some of the downsides.

While it’s overall a great product, the main reasons of concern are:

  • The large file system and database setup, along with the inefficiencies this brings.
  • The complicated theming system that requires many files for each part of your layout. This is the best example of the file system’s inefficiency.
  • Lack of mobile support. They do have some (very) expensive apps, but lack a decent mobile or responsive theme. All they have is a buggy one that doesn’t do much for your site.
  • Not listening to feedback. This despite being open source and having a community edition to get feedback. Developers are constantly asking for a rebuild of the file system, a more efficient database and mobile support. But they are not being heard.

What about X-Cart?

What does X-Cart bring to the table? Well, for one, a feature set that comes close to Magento (still not close enough though). But what’s more important for you as a developer, is that they know Magento’s flaws and they’ve ensured their product is better.

This means:

  • A more efficient file system (half of Magento’s) and database setup.
  • An easier templating system. Templating will be something you have to learn, but it helps if you don’t have to wade through tons of files for a few simple adjustments.
  • Mobile! They made it an integrated part of their product, which is always better than adding stuff later on.
  • Warm hugs for every developer. They know who to love, and make sure you feel welcome and supported as a developer. Naturally, this means they respond to your feedback.

Looks good right? And while I am the first to admit that Magento is a perfect solution for large and enterprise-sized business, X-Cart does seem to be a really good alternative for the “smaller” guys (we are still talking about web stores with potentially millions in revenue annually). Only downside: X-Cart comes with a price. But you can start at $99 for a license that includes mobile, so that shouldn’t be too big of a problem.

See them in action

To see how it all comes together, I’ve included an example of Magento’s insane file system and database in my video, and I show you how X-Cart looks under the hood. I also take a look at the attribute system of both products. I’ve always found this to be a great part of Magento, and was curious how X-Cart handles this (a little less fancy I’m afraid). What you don’t see in the video is the use of pre-defined attributes. It is possible with X-Cart though, just not as I show it unfortunately.

Please note that in this trial version you can’t work with pre-defined settings (like color for the apple). However, X-Cart has confirmed it does work when you get a paid license.

And to round it off, I will show you how mobile should be done.

Enjoy watching the video, and let me know in the comments what you think of both systems (or any better alternatives).

Resources:

Free Guide:

7 Habits of Successful CTOs

"What makes a great CTO?" Engineering skills? Business savvy? An innate tendency to channel a mythical creature (ahem, unicorn)? All of the above? Discover the top traits of the most successful CTOs in this free guide.

  • Peter Mumford

    thanks, for the post! you said X cart works better for small to medium web stores.. why doesn’t it scale up to large stores then?

    • Tony Sologubov

      Hi! My name is Tony. I am X-Cart community manager.

      I would say that X-Cart 5 scales better for medium to large web-stores, because it is highly customizable and customizations do not break the upgrade process. Besides that modular architecture allows to integrate the store with sophisticated solutions like Solr, so you virtually have no limits to enhance your system.

  • Jingqi Xie

    Doesn’t X-Cart use jQuery Mobile?

    • Maxim Mukhin

      X-Cart has the jQuery Mobile integration module out of the box. “Mobile skin” module is included into every X-Cart edition.

    • Tony Sologubov

      As Maxim said, X-Cart 5 uses jQuery Mobile. You may not notice jQuery lib at the first glance, because all JS files are aggregated to the single one in order to increase the load speed.

  • Oscar Blank

    I’d never checked out X-cart before, so I followed your link to the demo. After adding an item the cart, I can’t view the content of the cart. I’m using an iPad, and when I try to follow the link to the cart, nothing happens. Is that just the way it is?

    • Ksenia Emelyanova

      Hi Oscar! X-Cart 5 is optimized for tablets and mobile devices ( and Desktop too, of course). It looks like something is wrong with this very demo – I tried and reproduced the problem too, from both iPad and Desktop (Lenovo Yoga).So I went on and checked official demo, and everything is ok regardless of device I use. Please check this X-Cart 5 demo store: http://demostore.x-cart.com/

    • Tony Sologubov

      I just checked the Jacco’s demo on my iPhone and works properly to me. Could you please let me know what product you were trying to add to the cart?

    • http://www.buildyourownwebstore.com/ Jacco Blankenspoor

      Hi Oscar,

      I checked my demo, and there is one way to get in the cart right now, by using the link which is shown after you add a product (“This product is in your bag”). I am working with the X-Cart team to get the top right cart button working as well, as it should. Thank you for your notification!

      Jacco

    • http://www.buildyourownwebstore.com/ Jacco Blankenspoor

      Hi Oscar,

      bug is fixed, cart is functional again. You can check it out if you like.

  • Tony Sologubov

    Hi guys!

    My name is Tony and I am community manager at X-Cart. I am here to answer your questions.

    @oscar_blank:disqus I just checked Jacco’s demo here: http://buildyourownwebstore.com/x-cart-demo/ and product adding routine works fine to me on my iPhone. Could you please tell me what product you are trying to add? You may also want to check our official demo sitre here: http://demostore.x-cart.com

    @jingqixie:disqus Yes, we are using jQuery mobile in mobile interface. You may not easily find jQuery files in the HTML code, because all JS files are aggregated into one to reduce loading time. Just in case, you want to check this aggregated JS file, it is here: http://buildyourownwebstore.com/x-cart-demo/var/resources/js/0ee249d2bc3d1b253541906123ab732bc6ab4406362d9f3669d0b043574965ff.js?1390941994

    @disqus_4GqtqsZcRo:disqus to be honest, I would say that X-Cart 5 works best for medium to large stores, because of its flexible architecture that encourages modification. X-Cart products were always about giving store owners as much control over the code as possible. In X-Cart 5 we created a system that allows you to change absolutely everything while keeps upgrades working (which was a problem in X-Cart 4).

    As for small stores, we do understand that this is an important niche and that is why we created X-Cart Cloud http://www.x-cart.com/x-cart-cloud. Its purpose to let e-commerce beginners quick start platform. On the other hand, once merchants realize that they have grown enough and need some specific functionality, they will not need to switch to another platform, because X-Cart Cloud is X-Cart 5 and it allows and even encourages modifications to the core.

  • Jack Saat

    $99 for a license that includes mobile is a lot for Web developers that get payed almost nothing to do this kind of jobs…

    • http://www.buildyourownwebstore.com/ Jacco Blankenspoor

      Hi Jack,

      well, $99 for a license is actually quite cheap. But to me it seems that you as a developer are hired to develop, and your customer pays for the license. Or, if you buy the license itself, you take this into account when quoting a customer, right?

      • Jack Saat

        Of course, however most customers not need everything Xcart got or may need more so most of the time I create one simple cart for more clients that they can use and admin with ease. Most of my clients seems to love WordPress as well and it got already some good Ecommerce plugins that just need some small plugin (coded by me, no way I spend money on plugins for simple stuff) to do exactly what my clients need!

        • http://www.buildyourownwebstore.com/ Jacco Blankenspoor

          I see what you mean, but offering your own custom build cart is a totally different approach than using X-Cart of Magento, so I guess your not the target audience for my article :-) But still, whether you develop it yourself or not, $99 is a low price.

    • Roman

      Jack, I suggest that you look for better clients that are willing to pay much more than “almost nothing” for your work.

      • Jack Saat

        You don’t have to tell me that :P

  • http://chrishattery.com/ MadHatrix

    I was hired by a company to learn magento based off of a previous employee’s recommendation. Huge pain in the ass. they fired me after 20 days because their new 10,000 product site with new modules for everything wasn’t done. That and it running on Amazon Web Services was a huge learning curve for 20 days. Haha. So, yeah, bad blood with Magento. Will take a look again when 2.0 comes.

    • http://www.buildyourownwebstore.com/ Jacco Blankenspoor

      That’s bad luck my friend. Don’t think you can blame Magento for it though, looks like your employer had some wrong expectations ;-)

  • Tim

    I just installed Magento Community edition to play around with a week ago. The admin is pretty terrible. And, as you stated, the theming options are even more terrible. Not to mention that you actually have to type in the names of themes to get them to work. There is no preview or even a list of currently available themes. Very odd.
    One thing I will say I was pretty impressed with is that they have a built-in mobile app creator. Under the Mobile tab in the admin you can create an app that pulls categories and products from your store and style it however you want. It’s actually really nice. I wish they put as much thought into the rest of the admin.

  • luiseduardocolon

    Some of your points are valid, some totally miss the mark. I have worked with Magento for 5 years now, and I can appreciate your comments about a) 2.0 taking way too long, b) being heavily influenced by eBay, where the original founders have moved on to projects like Sellvana, c) not being as driven by the community. Still, Magento is a true workhorse. You make a big point of Magento’s log table as an example of too much data, while highlighting the attribute system. It is that flexibility of attributes that is implemented as EAV models that is partly to blame for the large number of tables/objects. Notwithstanding, I don’t know that looking at a 80k log table is the best way to make that point – you may want terse logs for a myriad of other analytics reasons – so, would x-cart’s logs be easy to extend? Finally, to your point on mobile: making a Magento mobile theme is not trivial, but there are many of them available. The “mobile support” is more of a function of a good front-end designer vs cart logic, etc. Magento has had some out-of-box and 3rd party mobile themes for years now, for example: http://bit.ly/1e7Z01r – which is a freely downloadable responsive theme. In summation, the three points above are valid, but the mobile “shortcomings” are not a valid reason to dismiss Magento. The software, file structure (?) and db complexity are issues and they come with the territory – if you are not a heavy-caliber developer, Magento can easily intimidate you. You’ll find more third-party themes for Magento (like you would with WordPress, but obviously not nearly as many as WP) that you would for any other open commerce system…

  • http://www.buildyourownwebstore.com/ Jacco Blankenspoor

    Hi Tim

    thank you for your contribution. And you’re definitely right about “type in the names of themes”, that’s just strange. The mobile app creator is an undervalued piece of Magento, maybe I can take a more detailed look into for an article. Thanks!

  • Sergey Kudich

    1. The large file system and database setup, along with the inefficiencies this brings.

    Large file system it’s not a problem at all – for development it’s good, all files structured and every file have its own role. On production you can compile them into 1 big file, but we use it on big projects w/o compilation with opcode cachers and all working good

    Database is really problem, but here 2 reasons for that. 1) that we have EAV structure – that means that you can create as many different attributes for products / categories / customers etc. as you wish, and you will never come to situation that database can’t create table with such count of columns – for stores with many different product types it’s very important 2) That we have many index fields and also used foreing keys in db – here indexies creating taking time, but it means that later, when we getting data – we using this index fields

    2. The complicated theming system that requires many files for each part of
    your layout. This is the best example of the file system’s inefficiency.

    All files in this themes are different logical blocks – so they must be different files and they mostly copy logical structure of mosules. If you want – you can create template that would have only 1 file for whole page and put all logic to this page.
    One small example – you wanna change price template in all site. Standart way is to change catalog/product/price.phtml and mostly all frontend would show you price in new way, but if u use 1 big template for each page – you must change this in each file,
    So I mean you can play with templates and change there structure as you wish – you can change layout files and generate much more simple layout if you need this

    About support I can’t say anithing, because never asked (or I don’t remember that ))) something on official forum, but I talked with core developers (that was before ebay bought magento) on another resources and they gived me answers w/o any problems

  • cmpreshn

    Thanks for the great review. I’ve been working with Magento for a few years now, and I’m just testing X-Cart for the first time. It looks as if it could be a much quicker platform for initial launch. Thanks again!

  • pixelBender67

    I just installed Magento today and right out of the box it was responsive.

Recommended
Sponsors
Because We Like You
Free Ebooks!

Grab SitePoint's top 10 web dev and design ebooks, completely free!

Get the latest in Front-end, once a week, for free.