A
Confidentiality Clause
If your programmer spills the beans, he gets twenty years
in a Turkish prison. That would be nice, but non-enforceable.
A financial penalty is enforceable though and par for the
course in a work contract.
The information you share stays between you. If the programmer
tells someone else and you lose money, you want to be sure
you’re going to be compensated.
Payments
If this is going to be a cash job, you want every penny put
down. You don’t want to release your product, watch
it make millions then get hit with a lawsuit from your old
buddy claiming 50% in royalties. If you’re paying, the
product is yours and so are the profits.
On the other hand, if you’re not paying, the product
isn’t yours. If you’re working on a profit-sharing
model, you’ll have to negotiate who gets how much of
the profits and for how long. And you must be sure that that’s
all put down clearly in the agreement.
Timeline
Creating a software product can take a fair bit of time —
at least several months and much longer for really complex
programs. Before you write the contract, ask the programmer
to tell you how much he thinks each section is going to take
and include those in the agreement. You could even put in
penalties for failing to meet deadlines, just as you would
if you hired someone to fix your house.
In my opinion though, it’s better to be flexible about
deadlines. All sorts of unseen problems can crop up while
you’re putting together a program.
Maybe
you’ll have some changes; maybe the programmer will
have some suggestions and these things might have an effect
on the timeline. As long as you seem to be heading towards
your target release date, and as long as your programmer isn’t
stringing you along, I advise being flexible about the scheduling.
It’s better to get a great final product than a quick
one. |