eCommerce Nightmare: How CS-Cart handcuffed us for years and why we switched to WooCommerce
Oh dear, where do I start? I feel like there’s a huge story behind the scenes that we’ve never let our community in on. To be honest, we’re quite embarrassed about it and we’ve been trying to make things right ever since. But I think it’s time to come clean.
TL;DR: We’ve been trying to upgrade our graphic design resource marketplace, the Arsenal since 2010 and have failed miserably due to working with a heavily customized version of CS-Cart which seemingly handcuffed us to their development team. 4 years, headaches, panic attacks and tens of thousands of dollars later we are FINALLY breaking the chains and getting a taste of freedom! We’ve switched our platform over to WordPress and WooCommerce. WordPress and WooCommerce both happen to also be Go Media’s preferred solutions for so many of our own clients…
So what was the problem?
Arsenal v1 – 2006 – PHP-IPN Monitor
In 2006 we launched Arsenal v1 using software called PHP-IPN Monitor. It was one of the very few tools for selling digital files online at the time. It cost a mere $99 bucks and in a few days we had our first product up for sale. This lasted a year or two until we started releasing more products and needed a way to add search, customer accounts, etc.
Arsenal v2, 2008 – Enter CS-Cart
In 2008 we upgraded to a full shopping cart platform, CS-Cart. Other major eCommerce options at the time were Zen Cart and X-Cart. CS-Cart was actually a splinter cell of the original X-Cart team. We saw progress and innovation in CS-Cart, but it didn’t support selling digital files. In fact, not many shopping cart applications at the time did. So we hired their team to develop custom features for it. They were very affordable (based in Russia) and added what we asked for. Total implementation took maybe 6 months. Admittedly, the resulting code was sketchy according to our own development review. But we were busy, it was stable, and thus didn’t spend much more time on it.
Arsenal v3, 2010 – Outsourced to Death
We designed Arsenal v3.0 in 2010 and it took us until January 2014 to finally launch. We missed our deadline by 3 years. It was a FAIL to live in infamy here at Go Media.
So what happened?!
Failure to Launch
In 2010 we had the next Arsenal planned and designed. We didn’t have the capacity to produce in house, nor was it exactly our expertise. So we requested quotes for the web development and received estimates in the hundreds of thousands from top American firms.
We didn’t have that sort of budget for this. At the time, we were pushing our internal development resources into a design studio management app, Proof Lab. We put Arsenal v3 on hold until we could finish Proof Lab. Proof Lab ended up taking our team two years to finish. By that time, the Arsenal v3 design was tired and the user experience no longer adequately served the community’s needs.
In 2012 we had a relatively small, but workable budget to get it developed. We decided to hire CS-Cart again because they had been okay on v2 and no one knows their software better. They delivered on their commitment the last time we hired them. They had grown a lot since then. Surely they’d do an even better job this time around.
We were sorely mistaken.
We had a 6 month deadline CS-Cart agreed to. The deadline was pushed back because CS-Cart was coming out with version 3 and we agreed to wait for it. We’d all be better off in the long run. It was chock full of exciting new features. Cool. They promised it was just around the corner. They even published articles of anticipation to the public. Surely their road map was remotely accurate.
CS-Cart v3, and therefore the new Arsenal was pushed back 9 months, then a year. Then a year and a half. The CS-Cart Developers would constantly miss deadlines. They would even claim something was done, when it clearly wasn’t. We had to micromanage every detail. We would send reminders, to-do lists and inevitably hassle them as each delay, bug and excuse mounted.
If that wasn’t bad enough, new developers kept getting assigned to our project and we’d practically have to start communication over from scratch.
A year and a half over deadline, just when we thought we were on the homestretch, some confusing conversations (there were many) lead us to discover CS-Cart was about to release an entirely new version 4.0 of their software! They never mentioned a new version was in the works. We discovered so on our own.
We asked if everything would be future proof and our store could receive updates to the software as released. CS-Cart said YEP. They would promptly migrate our customization over to v4. Promptly apparently means “drag your feet and make excuses for months and months.” Later they would conclude that a key feature we needed was entirely not able to be migrated at all. They danced around our issues for several more months before declaring we were stuck with version 3.
Essentially, we were locked out of receiving updates to their software even though they were still providing custom development on what was now a legacy platform with significant known bugs. Yay! At this point we had invested tens of thousands and lost countless months giving CS-Cart the benefit of nearly insurmountable doubt.
Wow, we’re fricking nice. We couldn’t turn back, right?
The Forest from the Trees
The past few years we have been developing most of our client websites on WordPress as well as eCommerce integration using WooCommerce. In 2010 we would not have considered using these applications for something as demanding as the Arsenal. But we joked that with our WordPress and WooCommerce development expertise we could build Arsenal v3 in a few weeks and be happier with the results. Even better, we would feel more in control of the situation. We hated not being comfortable editing the CS-Cart software. Even though it was a PHP core, it just wasn’t in our team’s wheelhouse. Go Media definitely employs WordPress experts. CS-Cart experts, not so much.
After CS-Cart wiped the smile from our faces, we stopped joking. The improvements and extensions emerging from the WordPress and WooCommerce ecosystem started making the switch a real possibility. Maybe a harder part was accepting CS-Cart as a failure and eating the 3 years of time and money invested in it. It was an unprecedented move to put a store the scale of the Arsenal onto a WordPress plugin. It felt like uncharted territory.
But first we still needed to deploy the “new” Arsenal as it was on CS-Cart. Just finish the job and be done with them. They seemed to be done with us anyway. Their code was our problem now. We scrapped many of the features we had been trying to implement since 2010, such as the artist marketplace. We pushed it up, dealt with the fallout and quickly froze production as we focused on testing the viability of WooCommerce.
WooCommerce here we come!
By this point, WooCommerce had answers for nearly every problem we were having with CS-Cart. Artist marketplace? There’s a plugin for that. Bundle products? There’s a plugin for that too. Subscriptions, digital products, product and order migration – all were completely or partially solved by plugins we could implement in short order. Less bugs than CS-Cart v3? God, we hope so! Was it too good to be true? We feared it might be, for several white-knuckled weeks, as we beat on our proof of concept. But the pressure was on for us to replace the questionable version 3 powered by CS-Cart. So we hit it hard.
WooCommerce has a very different database design when compared to CS-Cart. It leans completely on WordPress, which we all know has its roots in blogging. This turned out to be a very square peg going into a round hole when it came to moving data over (see serialized arrays). Nearly every data object was remarkably different. Fortunately, there is a nice plugin that made migrating the products a cinch.
Unfortunately, a similar Customer and Order migration plugin could not handle the volume we were trying to push into it. Because the database tables were very different, we spent days in MySQL working out the formulas. And then converting the 90,000 customers and hundreds of thousands of orders from almost a decade online, took hours of computer processing time to complete.
All said, the new Arsenal, code-name 3.5, DID NOT take us 3 years! Eat it CS-Cart. We developed the new WordPress & WooCommerce custom theme and migrated all of the products, customers and order data in about six weeks time.
We might not go as far as to say WooCommerce is better than CS-Cart, but here are a few places WooCommerce wins out:
- It’s truly more open source. WooCommerce has been the fastest growing eCommerce solution in the last two years with an estimated million+ deployments and counting. With this comes a larger development cadre and more users to be accountable to. This adoption and visibility means better consideration for backward compatibility and less likelihood of bugs.
- An already larger and accelerating ecosystem. Not only is WooCommerce the fastest spreading eCommerce application, but the fact that it is buoyed by the massive WordPress scene (20% of ALL websites!) puts the wind to their backs.
- The API uses PHP and WordPress best practices, as does the core implementation itself. We believe in standards and excel in this arena.
- The documentation is better. The community resources and knowledge base more abundant.
- Did we mention it is on WordPress?! There really is no eCommerce software with the publishing power of WordPress. Most eCommerce CMS features are hardly more than an after thought. The marketing and informational demands of today’s web make content king for online shopping. Marrying WordPress with eCommerce is a customer satisfaction match made in SEO heaven.
- We trust WooThemes. The great ladies and gents in the Woo camp are people we’ve worked with many times over the years as fellow WordPress experts. They’re good about collaborating with us to make improvements, they’re reliable and they’re in our timezone.
- WooCommerce is easier to customize. We discovered a lot of obstacles and had functional disagreements with how CS-Cart handled certain things, only to discover there was no clean way around them. Hence, the reason we were stuck with v3. WooCommerce sprinkles hooks and filters everywhere, making it a snap to override and add things.
- It’s smaller. This is a double edged sword, but we’re kinda control freaks here anyway. CS-Cart is trying to be the big-size-fits-all player, but if you’ve ever worked with, say Magento, you know that sometimes mo-features-mo-problems. WooCommerce is lean and mean and at least if you need a few specific features, you can develop or add a third party plugin that hooks right into place and probably won’t have to be thrown away when that next version comes out.
All in all, we’re thrilled and very optimistic about the results. Moreover, bye bye CS-Cart and we’re not looking back. Nothing will ever be exactly everything you want in software. We’re not naive to the challenges of building complex systems, especially for eCommerce. We’re not going to bash CS-Cart as an application, and they were very nice during all the empty promises they didn’t keep. It’s just that maybe we grew apart. Maybe we thought it best to see younger, sexier applications.
The future of Go Media’s Arsenal
We are very excited about what comes next to the Arsenal. What was originally a veritable clearing house for rejected design concepts from Go Media had set the stage for what is now a major segment of our industry. You deserve better from such veterans. We all do. We’re committed to restoring our position as a leader and trusted source for premium graphic design resources.
We want to make your work lives easier without compromising quality. We want to empower creatives with tools and tricks of our trade as well as provide opportunity for the best to join our efforts. We’ve been inviting our favorite designers to now sell their own resources in the new marketplace. We welcome upcoming talent to show us what you’ve got. We may be able to help you become recognized and clear a nice profit in the process.
We ask ourselves every day, what are we doing to change lives? After last year’s WMC Fest which we tagged “3 days to change your life” that’s become an overarching priority at Go Media. We are not interested in copying the trendiest products out there, but to get to the core of what designers like us are really after. We’re committed to providing the best tools, articles, ebooks, inspiration, education and other resources to become the best designer you can be. And not only the best designer, the best Self you can be. Because there’s a lot more to life than Photoshop.
We really hope you’ll join us to help make the new, new Arsenal great. If you’d please take a moment to comment, we would really like to hear your suggestions for what would help you as a designer. We all know that vectors, textures, and templates are a dime a dozen these days but we still face challenges at the helm of creative production.
Now that we have the technology completely within our control and a brand new outlook for the future, what would you like to see the Arsenal bring you?