wordpress 312 wp ecommerce 383
This week I had an interesting conversation with Dan Milward, the marketing guy and co-founder of the WP e-Commerce WordPress shopping cart plugin.
Let's start with the facts. WP eComm is now on version 3.8.4. Currently, the reports in from front line users are: 4 say it works, 12 say it's broken.
Why People Hate WP eCommerce so much
Dan told me that sources inside Automattic had revealed to him that in the past as soon as Instinct Entertainment publish a new version there are five reports of the plugin being broken on current WordPress. His sources then erased that feedback.
This is a very bad sign: when you need insider help to erase negative feedback. Not the first time I've seen this happen at Automattic: Mark Jacquith has had to warn plugin database maintainers off deleting plugins which compete with their friends plugins. Second bad sign: people who hate your plugins enough to wait for a new version to mark it as broken.
Dan manages it. There are three strategies he uses which bring Instinct Entertainment to such grief.
Strategy one: releasing alpha code as stable branch.
Just don't do it. Or if you are going to release fragile code, be standing by ready with quick fixes.
Strategy two: constantly be out there marketing and promoting broken code.
When my site is broken and I see you pumping your plugin to the masses as if it actually worked, it makes me really, really cross. I want you back in the office, fixing the code, supervising the developers, in constant contact with the users in pain to suss out the issues. Not doing the marketing rounds and making false promises.
Strategy three: swearing at and maligning past clients.
In the LinkedIn conversation which brought on this investigation, a past paying client stated:
WP-eCommerce is the worst thing out there. Nobody likes it. It's the most hated of all WP e-commerce solutions. Google it some time.
Harsh words but neither obsenity nor personal insult. Dan proceeded to swear at his ex-customer, asking him to leave the discussion: "Brian its probably a good thing you do leave because you're talking shit."
Dan's ex-customer Brian then told this tale of woe:
I paid your company somewhere around $250 back in the '06 - '08 era (can't remember when exactly) when I was building my first WP e-commerce site. I found the product to be clunky and buggy, but I muddled through and never attempted to call or contact your company until the gateway malfunctioned. I spent a week sending emails to no avail. I got absolutely no response at all. I then tracked your company down through my journalism connections (because you gave no information about how to contact you) and called your company, but I got a voicemail. I left a message. I got no response. Finally, out of frustration, we paid a coder to fix the problem at a very high cost. I soon after lost the client who had by then lost confidence in me.
These are hard core facts. I have witnesses. Furthermore, mine isn't the only story like that out there about interaction with your company. I soon found I had lots of new-found friends connected only by their absolute abhorrence of the way they were treated by your company....
The client I lost was paying me $50,000 per year (obviously for more than a little e-commerce site) - it was a little less than one-third of my income at the time - and losing them over that experience was very difficult. I had to let go of my assistant. As time went on, I nearly lost my house and my car. In fact, my car was repossessed at one point, but I managed to scrape up the money to pay off the full note in time. My point isn't "poor me," but that customer service for entrepreneurs who are using products like his can be a very serious business indeed. Lives change if things go badly.
There's a reason people hate WP e-Commerce with a passion. Dan is looking at one in the eye here. Time for humility, apology and amends.
To my surprise, the ex-client very graciously offered to try the latest version of WP eComm for his new projects and re-evaluate his past rating. Dan Milward couldn't be bothered to set him up on the weekend:
So Brian. You can count me in but I don't have the time to muck around, its a long weekend here and I can't do anything until Tuesday NZT (unless you want to answer to the missus). Come next week if you want our premium support then you can email my support team directly or you can go via the premium forums where our staff hang out and we'll look after you. I'll hook you up with an account when you return the email that I sent you via your site. I'd like that.
Long weekend. A bit thin as an excuse but better than nothing I suppose. One problem. Dan was back with five long marketing posts in just this discussion alone. I.e. Dan has time for further marketing but no time to make wrongs right.
If I had a chance to redeem Foliovision after being called out in a public forum like this, I'd jump on it. In fact, even without being called out on a public form. Alas every couple of months that we do drop the ball for one of our clients and I do go into the office on the weekend. If I can't go myself, I pay one of my team a bonus to go in on the weekend and deal with the issue.
Why WP e-Commerce is still broken six years later: Development Analysis
In our telephone conversation, Dan and I spoke frankly about the difficulties of managing a team and long term development of sophisticated plugins.
1. Starting with wretched code but lots of publicity
The first problem WP eCommerce ran into: the original code was just not very good. The developer at the time and co-founder Tom couldn't code very well at the time. The great name "WP e-Commerce", first mover advantage and Dan's marketing skills overwhelmed the quality of the code and what should have been a very small failure ended up being a public shaming.
We have just one really bad plugin at Foliovision, FV WP Link Robot (it's better now but still not very good) which started on a bad codebase and it's difficult to reform. Getting off on the wrong foot is very difficult as you have bad calls and bad data structure right from the beginning. It's like laying in the foundation of a house: get it wrong here and your palace will always sink and slant like the tower in Pisa.
In any case, that's what happened to Dan and WP eComm out of the gate.
Advice: Don't promote broken code. Particularly knowingly.
2. Constantly switching horses in mid-stream
WP e-Commerce has had about a dozen developers work on it seriously in six years. That's just too many cooks and the soup is spoiled. You want one, maximum two developers on any software project. If you go with two, you have to divide the coding in half. With an e-Commerce plugin, that would be say core shopping cart and payment gateways.
Clearly, Dan has not read The Mythical Man Month. More developers equals less code per developer on almost an exponential basis. Here's the group intercommunication formula: n(n − 1) / 2. I.e. 50 developers give 50 x (50 – 1) / 2 = 1225 channels of communication. Or in Dan's case, six of them: 6 x (6 - 1) / 2 = 29 channels of communication.
Two developers maximum. Long term commitment to the project. Wins every time. I have so many awesome sophisticated programs on my computer coded by a single developer. To make a list of what's running right now: Seasonality, Radium, Fluid Browsers, LaunchBar (at the beginning, probably not now), Movist, 1password (team of two to start), TextSoap, Acorn, Keyboard Maestro, Witch, MenuMeters.
Among other WordPress shopping cart solutions, both Market Theme and Shopp have a single core developer. Both work very well.
Advice: Formula for great plugin or application: single, great long term developer. Just say no to programming teams.
3. Engaging Remote Developers for Core
Dan is working with remote developers. Not a good recipe for long term success with a core plugin. We worked with our first CTO very successfully when John was in Prague and I was in Vienna. When he moved to China the relationship gradually broke down, even though Foliovision was doing well and expanding.
Big projects eventually need face to face. Dan, a working ecommerce solution for WordPress is a big solution.
Even David Heinemeier Hansson eventually relocated from Europe to Chicago where he and Jason Fried can collaborate more closely for the long term. It's worked for 37signals and it could work for Instinct Entertainment. There's lots of good developers who'd like to live in New Zealand, there are hobbits in the dales and dwarves in the hills.
Advice: go local with development.
4. Saying yes to new features
Dan has a fatal case of featuritis. In the marketing thread, he trumpeted far and wide about 200 hooks, hundreds of new features, dozens of plugins. Dan admitted as much in our telephone conversation:
I said yes to too many features. Every time someone would ask for a new feature, we'd add it. It was too much. We're trying to cut back now.
Yes, it was. Less is more.
Developer Michael Visser nailed it with this comment:
To be blunt, the rapid expansion of new features back in WP e-Commerce in 3.6 -> 3.7 (2008-2009) may very well have been the reason for it's bad wrap over the years, as a small store owner come WP Plugin developer I'll patiently wait for new features while critical - even non-critical - issues are being sorted.
Dan should read five times Start with No followed by a close reading of Features are a one way street. Keep in mind when Dan was making the mistakes of adding all these new features, the plugin was already on version 3 and on the market for five years. These are beginner mistakes. I really don't know what he was thinking about.
We use Market Theme to develop WordPress shopping sites. Market Theme is great for catalogue type sites. It would be a lot of overhead for a few pages with shopping. I'd be more inclined to use eJunkie for just a few items for sale and post the shopping cartcode into my site.
But what's great about Market Theme is the core code is reliable and easy to work with. There are lots of features missing but as the core is clean it's very easy to add whatever our clients happen to need for their sites.
For Stager's Source, our client didn't need to take money, just orders as she preferred clients to pay on pick up (lower fees) or delivery.
For Hawaii Fun Tours, our client needed to take a small deposit but not full payment and he needed to do so via First Data. No problem. We wrote the custom code to allow for deposits. He didn't want to keep any payment info for security reasons.
Advice: less features, but all features work as advertised.
5. Chasing WordPress/Automattic
WordPress itself has become an awful solution for business websites. Hear me out.
What business and commercial websites need is stability and security. WordPress is constantly releasing new versions adding unneeded new features and which break old features and many plugins. The upgrade path has become a never-ending merry-go-round.
As a commercial development house working with businesses, our concern is keeping our clients' sites running reliably. Wordress/Automattic makes this very difficult. Automattic are also WordPress consultants and the more they can change and upgrade, the more press they get, the more users and the more help their existing clients need.
Automattic takes about $15K/year off its smallest VIP clients, in no small part as a major company cannot think about deploying WordPress without help from the founders (or Foliovision, albeit our VIP program is at a fraction of the price).
In short, WordPress is a moving target. Dan has jumped on the hype and every time WordPress releases a new feature like Custom Post Types or automated theming, WP e-Commerce has to be there first. He admitted to me in our conversation that it's been very frustrating to update WP e-Commerce to work with the latest WordPress features only to have the hooks change or disappear.
My advice: stop chasing your tail. Develop towards stability and wait for new WordPress features to stabilise before trying to work them into an ecommerce plugin. To repeat myself, ecommerce and business sites are about stability.
6. Not helping users, marketing instead
When you do your own support and you do it intensively, you know what works and what doesn't.
Dan is not active on his own forums helping people. Dan's posted there just 10 times in 10 months. While marketing, Dan has posted more times on our LinkedIn discussion in three days than in his own support form in 10 months.
Here's how WP eCommerce user kgaspeed feels about support:
Thank you very much for passing on my request and trying to rally assistance. But to try to tell me "hey, it's free and open source, so why complain?" I don't see that as a valid argument at all - sorry. I have a business outside of this - we offer a free service for a niche industry so when it doesn't work do I say "hey, it's free...what more do you want?"
No way on earth. Our customer service is impeccable and responds to every call and every email we get. That's the policy I've put in place - we likely do not have the customer base you have, but as we grow, that will always be in place. I don't see that as valid at all. You're offering a product that offers very specific functionality and why should I not expect that functionality to work as advertised, right? Therefor, if we all paid a set fee for it, all of these issues would magically work?
Don't be so sensitive - I've read a lot of reviews on this plugin from various other sources, and if people have issues, your staff comes in and attacks. Not the right way to go about presenting your business. I will retract some of my comments, but my concerns are valid. Free plugin or not.
Advice: Feel your user's pain and fix it. Stop looking for new suckers.
Dan Milward WP eCommerce support: MIA (missing in action)
What Dan Milward does right: Marketing
There's been a lot of criticism of Dan Milward, Instinct Entertainment and WP eCommerce here.
There is something which I admire though. He is an indefatiguable marketer. Dan Kennedy didn't say it first but has probably said it loudest: As the entrepreneur your first job is marketing. Serial entrepreneur Michael Masterson among others repeats the advice in his book Ready, Fire, Aim which seems to be Dan Milward's bible. Masterson did not mean shooting yourself in the foot though: Masterson talks about responding to feedback quickly and "fixing a winner". Milward seems to have skipped chapter 14.
Despite a wretched plugin, an incredibly hostile and disillusioned userbase, WP e-Commerce and Instinct Entertainment continue to prosper while treating existing customers poorly, releasing shoddy alpha code and swearing at past customers. Thanks to Milward's relentless marketing.
Milward is a one man marketing machine. He makes hundreds of appearances per day promoting WP eCommerce. Our code is way better but most of our plugins only get a tiny fraction of the downloads which WP eCommerce gets. In particular, FV Thoughtful Comments which makes moderating WordPress comments a pleasure instead of a chore and Foliopress WYSIWYG both deserve much larger audiences, as does our FV Simpler SEO (although SEO is a more crowded space). Oh and we have a great testimonial plugin with a pro version with categories, FV Testimonials which makes sales even without promotion.
But marketing seems like crack cocaine to Milward. If he could just disappear for awhile, lock down a long term partnership with a single ace developer and release a clean and reliable version of WP e-Commerce, he'd be doing himself and the world a favour.
Don't count on it.
Milward's Advice to Kinnear: I've got to do more marketing of our great tech.
I hope my own advice and analysis above helps Dan Milward/Instinct Entertainment find their way to better code and less angry users.
Takeaway for shopping site developers in the meantime: Stay away from WP e-Commerce if you value your time, your reputation and your sanity.
Alec has been helping businesses succeed online since 2000. Alec is an SEM expert with a background in advertising, as a former Head of Television for Grey Moscow and Senior Television Producer for Bates, Saatchi and Saatchi Russia. Alec maintains a photography and culture weblog at uncoy.com. His dance film Lapinthrope won prizes around the […]