How Can You Trust a Software Developer?


The world is full of deception.
Many creatures use it to capture their next meal. Many of the rest of them use deception to avoid becoming someone else’s next meal. Deception is used to entice mates. Orchids are masters of deception in the plant world, enticing pollinators with false promises of everything from bee sex to meals of rotten flesh, all completely bogus.
And humanity is not immune from deception. Even near-comic forms of deception work on some of us. Who’s inbox hasn’t been graced with an appeal from a generous Nigerian prince? Who falls for those? I don’t know, but someone must or the prince would stop trying.
It would seem that in a world like ours it would be the height of folly to trust anyone. But that’s not the whole story.
Dead Leaf Mantis.
Trust is necessary.
Despite the near-universal existence of deception among living things, trust exists.  Why would that be? Why would any living creature trust any other? Wouldn’t it be sensible to live in distrust of everything? Wouldn’t it be safer to avoid contact with everything, just to avoid being tricked?
Well, no. No species could survive in the complete absence of trust. Some level is required for one generation to produce another. And among social animals trust is especially necessary. Without it there could be no cooperation. Ants couldn’t build nests, lion prides couldn’t benefit from cooperative hunts, and humans couldn’t live in cities cheek-by-jowl, raising families and going about our daily lives. We have to trust. Without it we would be paralyzed.
Effective relationships are built on trust. But how much should we trust? And who?
Trust is rooted in our biology.
Neuroscience has found that trusting relationships among humans are rooted in behavior common to all mammals and begin with the caring behavior of parents for offspring. Our brains contain structures and chemistry that bond us together and encourage us to trust those close to us for assistance. But still, we can’t “just trust” everyone. That Nigerian prince may be trustworthy in some context, but woe unto those of us who trust too much.
Oxytocin color
Oxytocin. The hormone on which we build trust.
Trust is not binary.
Trust turns out not to be something that either exists or is absent. Trust comes in degrees. We may trust a political leader to follow through on promises made during campaign season, at least enough for us to vote one way or the other, but experience shows that promises are often not kept. When the next election comes around our level of trust may be just a bit lower, or on rare occasions, higher. Closer to home, we may trust our children to behave well on the next school outing. But it would be a mistake for most parents to simply trust that homework will be done without checking now and then. We trust in degrees because complete trust is often unwise.
Trust is earned.
Would you trust a complete stranger who knocks on your door and asks for a loan of a hundred dollars? Probably not. Would you trust your best friend who makes the same request? Quite likely. The difference is entirely down to shared experience. When you met your best friend he/she probably was a complete stranger. But over time as you participated in various activities you came to know one another and trust was increasingly earned. Trust happens as we learn that our friends are dependable and we find we can reasonably predict their honest interactions with us.
How to build trust.
Start with little trust. Don’t go into a new relationship without understanding that your new partner may not be trustworthy. Don’t trust that Nigerian prince just because he promises a large payout when his bank accounts in Switzerland are released to him.
Respect those who haven’t yet earned your trust. You don’t need to trust someone in order to respect them. Respectful relationships can grow into trusted relationships over time. But if you disrespect people out of the box, it is unlikely that the relationship will turn into a good one over time. Nobody likes to be disrespected.
Build credibility. Be clear about what you know and what you don’t know. Don’t try to fool people into thinking you are more of an authority on a subject than you are. It is likely to backfire and show that you yourself are not to be entirely trusted. Bluster often backfires.
Communicate openly. Trust is all about getting to know that you can be relied on. Honest and open communication is critical. You don’t want to become known as someone who is hiding an alternative agenda that may run counter to the shared goal you and your partner are pursuing. And if there are other agendas involved, make them known. By communicating them you and your partner can work toward satisfying the shared agenda without someone feeling undermined.
Listen, don’t argue. If you and your partner are going to have a long and prosperous relationship you will both need to feel that your interests are fairly represented and understood. Don’t just express your opinion. Listen to the other guy’s. Trust comes as both parties feel they understand one another.
Build on the positives. All relationships involve some level of conflict and some level of success. Recognize which is which and build on successes.
Share mistakes and be forthright. Trust grows as partners feel they can help one another. When you own up to a mistake you’ve made you make possible the other person’s tendency for helpfulness. It may be a bit counter-intuitive, but mutual vulnerability enhances trust.
Remember that problems faced in the relationship are not necessarily problems with the participants. As you and your partner work together problems will arise in whatever you are building. Blaming one another for the problem is counter productive and very likely just wrong. Many, if not most, difficulties that arise are results of uncertainty inherent in the project and not the result of incompetence or malfeasance.
What does this have to do with software development?
Nothing, in particular. And everything.
Many business people find themselves with a project that requires custom software. They have a business workflow that can be improved with automation. Or they have an idea for a product that they believe will be useful to future customers. Unless they work for a company with an internal development staff, and sometimes when internal resources are insufficient, they will need to reach out and find a partner.  Who should they trust?

Well, as we’ve learned… nobody at first. Expect to have to build trust with a partner using all of the techniques we need in all relationships. Look for clues that suggest that your partner will be trustworthy.

Have they been in business long? This isn’t a perfect metric because a very trustworthy partner may not have been in business long. But on the other hand, an untrustworthy one will probably not survive long.

How much interest do they show in the project? Have they bothered to learn much before offering an estimate? Do they respect you enough to honestly describe the limits of their understanding of the system to be built?

Recognize uncertainty. There is probably a good deal of uncertainty in the project you are proposing. Take time to address that uncertainty and see what your partner’s response is. Do they account for it in their estimate?
A successful project is always built on respect at the beginning and trust earned along the way. By the time your second project is ready to start you should have built a relationship of trust and mutual benefit.

+ more

Accurate Timing

Accurate Timing

In many tasks we need to do something at given intervals of time. The most obvious ways may not give you the best results. Time? Meh. The most basic tasks that don't have what you might call CPU-scale time requirements can be handled with the usual language and...

read more