No one likes to see a business relationship end, right? Be it that the customer is unhappy with their current service provider or agency, the agency does not want to continue to work with the client or as in our case found a more fitting business partner going forward. In all cases it means something went wrong with the project and both sides need to deal with the resulting aftermath. But wait, I already hear you say, “An agency only loses a project that is easily replaceable, while the customer in the worst case needs to redo everything from scratch or lose a product and just invested a lot of money for nothing.” It is true that this can easily happen if an agency uses one simple trick you will hate: vendor lock-in!
What is Vendor Lock-in?
Vendor lock-in means designing or writing software in a way that no outside third party can take it over and the customer is forced to stay with the agency or at least pay licensing fees. Usually done with closed source software, packages that no one else has access to or in-house frameworks that are not publicly shared. This most of the time means a switch is not as easy as you need to rewrite at least parts of the software to remove the vendor lock-in. The alternative, we very much support, is Open Source.
Open Source Software to the Rescue!
What does open source mean? Well the code is available to everyone, there are no secrets, anyone can work with and on it. Additionally a lot of feature rich open source software come with excellent documentation, which makes working with it a pleasure (looking at you Django and Postgres for example). Of course if you don’t own the code of your software all is for naught. Yet in this example we will neglect this case as with djangsters the code belongs to the customer. In this case basing your project on open source software is great, because it is a lot easier to take over or find developers for it. The interesting question now is, does open source software alone make the difference if you want to switch your service provider or agency? Well let’s have a look as this has happened to us when a customer wanted to switch to a different agency.
Breaking Up Can Be Hard!
Regardless of the preconditions, leaving your service provider or agency is always a risk, because you never know how the one will measure up to the old. It is also unavoidable that there will be some road bumps as knowledge needs to be regained, transferred or in the worst case is lost. Additionally the new developers need time to get into the project and a handover period is guaranteed. At this point you will probably also see how professional your previous agency is, because they can be an asset if they handle the transition with care and support you on the way. So without further ado how did it work out from our perspective?
All’s Well That Ends Well?
Was the transition easy and flawless? Well it is never that easy in life right? Sadly the switch came quite suddenly for us and we were also largely kept out of communication with the new agency. As the code was clean and based on well known open source software there was not much input needed from our side. Direct communication however could have facilitated an even smoother and faster transition.
For future projects we will keep in mind to lay out the advantages of direct communication more clearly and be better prepared to guide the customer through the transition. Still we can be happy with the result regardless of the longer feedback loops as the actual web app and code did not cause any problems. In general it is a good idea to always think about how a switch should work and in what capacity you involve your old agency as this can make a great difference.
The Other Side
Giving something up is always easy, taking over a project from someone else is the hard part. Well fortunately we can also offer insight on that. Because while we lost one customer we also gained a new one during that time. We needed to take over a web app that was solely based on open source software with Django, Postgres and Apache. Thanks to our experience and the familiar software stack it was really easy to update and maintain the project. We were even under the projected budget of the customer, which meant we could do a lot of additional feature development and improve code quality as well as the test coverage. Was it only because of us? No, of course not, yet having no vendor lock-in and an application based on excellent supported open source software helped a lot to make a fast transition, which in turn made the customer very happy and that is always a good feeling.
Open Source yay, Vendor lock-in nay? While we are staunch supporters of the open source approach and could summarize it that easily, for you as a customer there are also reasons to go with a closed source software. Most of them are written for specific use cases and it can be more beneficial in the long run to go with that instead of writing your own software from scratch. So at the end of the day it always depends on what you need and consulting can help you find the best solution to your requirements. By the way, this is also one of the many services we provide, so don’t hesitate to reach out to us.