Friday, 9 May 2008

Ubercart initial review

Ubercart is an open-source ecommerce solution. It's not osCommerce derived, which immediately fills me with hope. It's got a silly name, but great looking demo sites. It's based on Drupal, and plugs in as a module.

The install process looks promising; Step 1's a remote installer! This needs FTP details, a MySQL login, and the hostname of the destination site. Great stuff. After setting up vsftpd dual logging in order to work out why it doesn't work, it turns out it's expecting passive mode to just work. Punching a firewall hole for the install source host's IP fixed things, and the installer then runs a few tests and becomes familiar with its environment.

Step 2: configuration. Here we set up an admin login, and are given options to configure drupal and the cart, mainly asked to add or drop modules. As we have no idea about Ubercart or Drupal at this point, the huge lists of modules to install or ignore are fairly overwhelming here, but they are hidden to start off with, so that's alright. Slightly disturbing is the choice not to install Paypal, Order, Payment, Shipping and Stock modules by default!

So, after confirming this, a progress bar appears, and chugs along happily as data is pumped onto your server. Watching Ubercart remote install is a bit like watching insects having sex; there's definitely a bit of protrusion and insertion. The install process uploads PgSql files, even though it's working via MySQL; interesting. Files also go up individually. Surely uploading a zip then unpacking it server side would be faster? It already checked phpinfo so it knows we have the gzip and bz2 libs compiled in; there's no excuse.

Anyway, after a good looking upload that went smoothly to 100% without any ftp errors, a message appears that the installation has failed. The user account we set up doesn't work, either. Panic stations!

Luckily, the Drupal basic config screen could be much worse, and signing up as the first user is easy. Trying to administer the site, we find:

PHP Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 7680 bytes) in /var/www/x/html/sites/all/modules/cck/content.install on line 158, referer:

Bah! That could've been easily detected and catered for, or alerts raised, by the installer. Well, never mind; it's easily fixed.

So, we're in, kinda. Looks like a basic Drupal install more than anything else, and there are certainly no pointers as to what to do next. Well, the status section has some flagged status items - easily corrected, again. The Remote installer could've checked for .htaccess function and fixed the rewrites itself, but no problem. Adding a crontab for the site's user doesn't satisfy the cron poin - is cron job detection flaky?

And then we get to.. this horrendous thing - each line is a link to a page of configuration settings to adjust so that you're up and running:

For some reason, the crash reporting is set by default to report your URL, sales, order and product volumes. URL is understandable, but that other data? No thanks!

Product data contains no link to actually add an item. How do we do this? Via the "create content" link at the top of the admin leftnav, obviously! This screen is again filled with detailed settings - fine for the advanced user if they need them, but skipped to start off with. Ubercart requires you to set your own SKUs, with no option to have them autogenerated. Sigh.

So; now we have a shop, with an item, and not much else. The contact info entered hasn't gone onto a nice contact info page; in fact there's no way of contacting the site owners yet. More manual work. The currency symbol seems dead set on following the price, too (e.g. 2.50$) - very odd! It'd be nice to get rid of the login links everywhere.

At this point, there's no add to basket button on the product page. The item has a setting for "how many to add into the basket at once"; the modules that look appropriate are set up; and the guide on the site has been followed, until it got to the point where 20 pages of lists of todos are required to proceed. Given experiences so far, it looks like some special tweak has to be done to let people add to the god damn basket.

I want a shop that installs, I set up basic metadata, add products too, and people go buy. I don't want to learn Drupal; I don't want to hunt for hours for settings to enable basic ecommerce system requirements; I don't want to force my visitors to log in; I just want to sell things, online.

Ubercart - you looked hot, but it turned out that it was all make-up. I'm glad it rained.


Ryan said...

hah Nice review. I'm glad you kept your pants on, too. ; ) In the end, though, Ubercart is tightly integrated with Drupal for better or worse. The modular, pick and choose, only install what you want and tweak it to your liking nature of Ubercart is a direct result of using the Drupal APIs and code practices. We're improving what we can, and have been trying to make a default integration more... well, default. Thanks for the candid look at that weakness.

Also, I'd personally recommend a manual install over the "UberInstaller" anyways. But I'm also a Drupal guy. ^_^

leondz said...

Hey Ryan! Thanks for checking in :) Ubercart does manage to beat a lot of the dedicated open-source ecommerce software out there, which is an achievement in and of itself. It doesn't have a crippled oSc style checkout, and seems to have conversion in mind much more than some other abortions that've spilled out onto the web. The tight integration with Drupal is kind of a turn off for non-Drupal users, but if you're aiming at the Drupal market, then you have a killer module. The Ubercart themes are nice, and the nicely set up shops stay miles ahead of (say) a tuned zencart install. One thing that would be really, really nice would be a walkthrough for morons to adding your first product / launching. Yahoo! stores had a pretty good guide that aims at the target IQ range which may be helpful, I dunno. Good work tho!

Ryan Szrama said...

The walkthrough idea sounds legit to me. I also added a little disclaimer to the site configuration page in the User's Guide so folks wouldn't feel the need to go through all the pages, but a more concise tutorial would probably go a looong way.

Also, you mentioned the crash report stuff. Honestly, that feature had just been forgotten about for a few versions, and the statistics gathering on our end wasn't working anyways. I just committed a change so that it only reports version info and displays a full preview of the report so you can decide whether to send it or not a little easier.

One step closer... :D

StorageCraft said...

I like the reviews of Ubercart as it makes me satisfied in all the ways. Now i am only waiting for my pockets to get heavy so that i can go and purchase this product.

dcleclair said...

As a software developer who happens to be trans, all I can say is, was that really necessary?

I was hoping for an insightful review of the software, not to read about your prejudice.

Marketing & SEO Blogs - Blog Top Sites sitemap