Recently a software I developed, did not work at all on a new customer’s website. It was because of the open source nature of the system where the ecosystem is varying and complex unlike the closed, proprietary ecosystems. In a closed system, things are more controlled and thus there are fewer problem with software standards.
A well intentioned software on open source may suffer glitches when tested on disparate environments. With every glitch however, the software just got better because it incorporated techniques to deal with complexities that it encountered. But since nothing was guaranteed, it failed to work again one more time.
A shaking experience
The reasons could have been conflict within various softwares applied on the site, just plain wrong settings done by customer or a bug in my software. The customer was not happy about it ( and so was I ) . The moment I asked them about their settings panel, I started receiving a flurry of emails some of them not so great. By the start of my day, I got an email asking for refund. It was quite a “shaking” experience for me as till now I have had customers who faced problems but who also understood that I did my best to support them and eventually we solved the problem.
We all get such customers and often people advise is to negotiate with the customer and convince that you will do something that is right. It is indeed easy to negotiate with customers who are reasonable and understand the complexities of the system. They have a right to get angry if their problems are not resolved in a reasonable time frame and also they are not kept informed of progress. However it is really hard to satisfy customers who feel that they own you or that you should solve the problem just by looking at the site.
I have been involved both in situations as customer and vendor in my career and it was far easy to devise a solution where both parties collaborated without making each other mad. Recently I took services from one of my Facebook friend. We had a few glitches in the service but every time I told him about them, he came up with solutions. Most of the problems were because of wrong settings in the data provided by previous vendor. It thus would have made life difficult for both of us if we started blaming each other. I needed to trust him because he was a knowledgeable person and I had known him all along. And if I wanted his service , I needed to help him wherever it was necessary.
Letting ego taking over
Often projects fail because one party has a higher ego than the other. I am better than you or I can boss over you because “ … “ . This has the capability to destroy any well meaning project. When you get in collaboration with someone you will need to also understand that their might be coordination issues at first. But don’t let your ego get better of you. After all your progress or promotion depends upon the successful completion of the project. If you are stuck together and don’t like each other, you can wait till the project is over and then go separate ways.
Its just like a marriage
Whether you are a powerful customer or a powerful vendor you need to understand that a project is like a marriage and you need both partners to work together. Being unreasonable because you are in the position of power would only make things difficult. Also there needs to be an element of trust in between partners. Yes there might be disappointments sometimes but it is how you handle the marriage that will form the backbone of a long lasting, mutually beneficial relationship.
Image courtesy of [Just2shutter] / FreeDigitalPhotos.net