What is Perceived As Basic

Jul 15, 2013

It remains consistent over the course of the last seven years or so that people who subscribe to Shopify still voice that they believe the platform falls short of their basic expectations. A case in point is a merchant that just posted the following thoughts.

I don’t want to rely on a 3rd party for support or trust that they’ll be around by year’s end, or know that it won’t disrupt or break a part of my site.
And, sure, I don’t want to pay extra for something that I perceive to be a basic feature.

The reason I am singling this out and mentioning it is because it is a problem and exposes a barrier we developers have to overcome. If we have trouble getting merchants to trust that an App they buy or subscribe to won’t be around in a year and that Apps won’t break their shop, our small businesses will fail for sure. It is likely that the percentage of merchants that think about these issues is not small. How do we ensure merchants can trust us? Do we need to provide status logs of our uptime? Do we need to count our transactions and display them in a dashboard?

The second point is even more troubling and has roots in the very existance of hosted platforms like Shopify. If Shopify states that as a platform, ensuring 80% of the most common e-commerce and merchant needs are met with excellence, the remaining 20% is considered to be not important enough to merit resources until some time in the future. Maybe the issues from this 20% pool will be resolved but for now they are simply regarded as suggestions. As developers, we live in this 20% pool of things Shopify does not do. It started with product customization and tweaks to try and make shops bilingual. With the introduction of the API hosted services could be built that merchants could buy or subscribe to that securely just plugged in. But as this quote shows, many merchants believe the services an App provides should just be baked right into Shopify. The language used is pretty consistent and usually goes along the lines of “I can’t believe this is not part of the basic service”.

As a developer there is also the issue of living with Apps over long periods of time and nurturing them along. I created an App that addressed a simple missing need in Shopify. For many months I enjoyed offering an App that solved some merchant’s problems by allowing them to SEO their shop with more specific information and with the bonus of import and export for bulk editing. Then came the least glamourous side of business when the copy cats stepped in and copied my App to attract their own clients. Finally Shopify closed the loop and released upgrades that made these Apps superfluous for their original tasks. This kind of ongoing change or dynamics is complex and can be hard to manage when trying to plan for a future and to innovate. On the one hand you have merchants in a mindset that Shopify should really be everything even though that is clearly a terribly difficult thing to achieve. The 80/20 rule exists for a reason. On the other hand you know you could wake up and find the platform has just changed with the release of a new feature that puts your App out to pasture. A risk you accept but nonetheless it is disheartening when it happens.

I used to address the merchants that cried for features unlikely to make it into Shopify that they should lower their expectations on what they perceive to be necessary and instead try and build their business on maximizing what they can actually do first. If they do actually max out the capabilities of Shopify they are probably capable of paying to develop their own platform. It no longer interests me to fight that battle as experience has taught me that I lose that argument.

I am hoping that a few things eventually happen to make working with this platform easier for independent developers or third parties to Shopify. I hope that Shopify takes a more active role in identifying the Apps that are of true utility and use and that they not only promote them, but also provide those developers with better support. If you have an App with five or ten subscribers you’re in a different class than an App with over a thousand or ten thousand. It would also be very nice if Shopify would provide developers with some metrics revealing more about the 20% pool of needs that are perceived as necessary by merchants, but are not met by Shopify. Additionally it would be great to know if certain features remain on or off the roadmap. Secrecy about the roadmap has always irked mrchants too I am sure. As a developer I am scared to develop any App that could be superseded by Shopify. The rumour mill abounds with whispered sweet nothings about new features about to be released. Charging a client thousands to solve a business need that is replaced by core Shopify is not something I would like to do.

I still think merchants need some education that there is a cost to doing e-commerce with Shopify that goes beyond their basic subscription. They do need to subscribe to certain Apps in certain cases, and that Apps cost money since computing is rarely a free service. A piper somewhere is very sad if he is not paid for his playing. Almost all cars have steering wheels and therefore a Chevy Nova and a Ferrari are kindred spirits. But a Ferrari goes 300 Km/h and costs $300,000 whereas the Nova cost $1200 and goes 100 Km/h. Saying you think the Nova should be a Ferrari is not going to make it so. And no, I am not saying Shopify is akin to a Nova, I just like old Chevys.

For accounting purposes there are a couple of ways of dealing with selling and purchasing of inventory and the changes in the cost of purchasing inventory over time. It is rare that a merchant will purchase items to sell in their Shopify store for the exact same price over time. It can be important to use an average cost price that takes into account these purchasing price changes over time.

The Profiteer App is meant to expose profit or margins on a sale by subtracting the cost price of goods sold from the selling price of the goods sold. A common business issue faced by many merchants is the effect currency exchange rates may have on their sales. A shop located in Canada may sell products to Canadians in Canadian currency, but the products sold may have been purchased and imported from the United States. Many merchants probably source their products from the United States, and it is considered to be one of the standard currencies by which most others are measured.

Had a real laugher/shocker at the same time. I develop so much App code where the data processing is a flow and not a stop:persist:process:continue action that sometimes you get burned by that. Everything was working fine as “hey download all that shop’s orders, parse them, deal with the contents, and move on”. Everything as working fine on MY itty, bitty, little dev shop.

As a way of welcoming in the new year of 2014 and trying to decide which way was up from down, left from right, I made a decision to be a speaker at the local Montréal Ruby group. Having attended a dozen or more meetings over the years I felt like I had 20 minutes of quality material without being too technical, or wildly off of one topic.