We've been building ExpressionEngine add-ons since ExpressionEngine version 2 and we really like the way that this CMS makes extending its functionality so easy.
In fact add-on development has become easier over the years, or is that just because we've become so familiar with it? I can't be sure but I still love the way that you can hook into events, extend existing functionality or build something completely new.
When I'm networking, I do hear a lot of tales about other CMSs that business owners are using. I hear descriptions of business owners having to key in information in 2 or more systems instead of getting the systems to talk to each other. Previously great automations that have just stopped working after an update. Crazy workflows that are kept totally separate from their website or online shop.
These scenarios could lead me to believe that those systems are completely proprietary or closed off but that is not the whole story, it is usually much more complicated than this. It is usually a combination of poor requirements gathering, poor understanding of the objective or problem, poor documentation, poor user support and perhaps inadequate development experience.
Any one of those things can throw the whole thing off track.
But sometimes it is even simpler than that, the customer doesn't know that a solution could be built and the developer either hasn't told them or doesn't know how to do it.
I often hear people saying that they are unable to connect their website to an API or that they have some other connectivity issue and I tend to think that maybe they have just got the wrong developer. Of course, without looking into the issue properly, I can't really say that that is the problem but in an age where APIs are commonly used, it does seen a little less than plausible.
Why does this matter?
It matters because it causes unnecessary extra work, work that is often tedious and easily forgotten if the workflow is not well documented. Having a website that is so needy is irritating at best and definitely counter intuitive.
Recently we had an enquiry from a potential customer who were having to enter information into their subscription platform and then copy the details onto their website so that their members could see what events we coming up. We were surprised that they were having to do this; they were totally frustrated. But their previous developer had told them that that was all they could expect; that was just the way it had to be.
Surely the events platform that they were using had an API? I mean what century are we in? As part of our investigations, we emailed the events company who told us that it was not possible to use the API on this client's plan. OK, so tell us what plan would give them that access? That would be a sensible email, but no; just "computer says no".
Long story short (and many emails further) it turns out that it was part of their plan and the API was available, the person answering the emails just wasn't very technical.
Luckily for the events platform that we do have the technical knowledge as otherwise the only answer would have been to find another solution for the client.
What sort of Add-ons have Climbing turn made?
We've made a lot of Add-ons that pull or push data to another system via an API, every business is different so often they need something to be built to their requirements.
We created the IP Geo locator so that you can identify where a visitor is located. Nothing sinister! Sometimes a business would like to display alternative content depending upon where the visitor is located, e.g. the site might need to show information in the appropriate language or the shop needs to display the appropriate currency.
We created Lasting Impressions so that visitors could be shown a list of the entries that they have been looking at. This is most useful for an e-commerce site; it enables a customer to see all of the items that they were considering as part of their purchase. We used on a news magazine website to show the most popular articles.
As well as our own Add-ons, we've also extended Cartthrob (e-commerce Add-on) adding coupons, discounts and bespoke shipping options for specific clients.
Is there already an Add-on for this?
We know quite a few of the ExpressionEngine Add-on developers so if we don't see an appropriate addon for a clients' needs, we'll always ask around to make sure that we don't reinvent the wheel. ExpressionEngine has a healthy community of developers so if we know someone who has done a lot of work in a particular area, sometimes it makes sense to collaborate.