When we launched Perch we were, in most cases gently, mocked for writing it in that language everyone loves to hate – PHP. We were quizzed as to why we were not using a trendy NoSQL database. Our technology decisions however, were entirely sensible. They were based on what we knew to be true – that our target customers would not have Python, Ruby on Rails or the latest database available on their cheap hosting. We couldn’t even rely on them to have up to date PHP.
Perch is self-hosted not software-as-a-service. At the time we launched everyone we spoke to questioned why we would want to open ourselves up to the horror that would be supporting our code on other people’s hosting. Downloadable software seemed like something quite old fashioned. Support for poor hosting does take up a lot of our time, however our early customers were looking for something that didn’t charge a monthly fee. More recently that decision has meant that we have started to pick up customers who are migrating away from hosted services. When Posterous announced that it was closing we were able to offer an importer for people wishing to own their own content in future.
When it comes to launching your own product, it is very tempting to use it as the chance to do all of those things you never get to do in your day job, or on client projects. At last YOU are the client, as a developer there is little more fun than getting to grips with a new technology, building things with the shiniest tools. However, will that serve your customers well? Will they even care, or worse will your latest and greatest languages, tools and techniques actually prevent them from using your product?
PHP isn’t fashionable, a NoSQL database could actually be a great fit for Perch, however if it isn’t available on our target customer’s hosting then there is no point considering it. The developer audience who would be impressed by our using a particular technology or technique are not the customers who have made Perch into the success for us that it is. Our customers have clients who refuse to leave the most terrible of hosting. Our customers create sites that have incredibly tight budgets. They are doing a great job for their clients and we are helping to support them, by enabling them to use what they have at their disposal.
The same holds true in chasing coverage in the various tech blogs and magazines, or trying to get some influencer to say nice things about your product. It’s brilliant when someone high profile mentions Perch, especially if they are someone we really respect the work and opinion of. Those mentions do send traffic our way, and I always try and reciprocate and sing the praises of products that I use and love. That said, the high profile influencers flit around from product of the moment to product of the moment. Other developers will try every new thing that comes along, they may think your product great, but won’t be able to resist checking out the next player in the market.
The people who will allow you to build a great business around your product are far more invested in your success, because they use your product every day. In our case customers have built their business around selling sites built using Perch. Often they are not developers, but designers and learning a new CMS takes a considerable investment of time. They put a great deal of faith in us, that we won’t turn Perch into something that they can’t use. They trust that we won’t sell out, or otherwise abandon them and we really value that trust.
It’s important that we, as professionals, are aware of new tools and techniques. It’s important to keep at least an overview of what is on the horizon, otherwise we run the risk of sticking to older methods because that is all we know, or because we are afraid of change. What I do advocate though is taking great care about diving into the latest shiny techniques when it comes to your product. There are products to be built and profit to be made when you turn your focus to your real customers, who tend to care more about reliability and less about what is fashionable.