Beware the Software Siren
by Ross Lambert
Published on this site: May 20th, 2005 - See
more articles from this month...

Ive heard several prominent web marketers mention in their
classes and public forums how easy it is to create your own software.
Why, all you have to do is run over to Elance.com or RentACoder.com
and have some poor shmoe from Outer Slobvia whip out what you want.
And all for the price of a few trips to Starbucks.
Uh, not quite.
Is that a spec in your eye?
First of all, there is the matter of specifications. A spec is
a description of what your software should do. The more specific
your desires, the more detailed your specification needs to be.
Even the most malnourished coder in Slobovia is going to balk if
you say, Try a gray backgroundoops, no, dont like
that. Lets try light blue
Oh, thats not right,
either. Lets try mauve. If you just want to specify
the important stuff, you have to be prepared to accept
all the unimportant stuff however it is handed to you.
By the way, both RentACoder.com and Elance.com have provisions
in their process and terms of use that protect their developers
from vague specifications. The good news is that there are
also provisions to protect you, the publisher. Regardless,
the more detailed your specification, the greater the chance
of a happy outcome. Ah, but writing those darn specs takes
a lot of time
far more time than it sounds like when
the gurus tell you how easy it is.
This was only a test
Theres also the small matter of testing. Once you accept
a developers work, they get paid and get on with their lives.
You, however, must live with the software. If you dont find
every bug that must be fixed before you pay the coder, you either
have to put out another project for bid to repair things or live
with the problems until you do.
Therefore, you must test your software upside down and backwards,
on a variety of machines and different versions of operating systems.
You must also test the installer and the help system
oh, you
forgot to specify those? Too bad, those tasks now require an additional
project. Since they are radically different in nature (one is technical,
one is not), you probably need two different people to do the work.
Coders are rarely proficient enough writers to create an effective
help system. Im being kind, so let me emphasize this point
without getting nasty: Dont let your programmer touch your
documentation. Period. Never. Ever.
Help, oh I need somebody
You may be tempted to skimp on your help system.. Trust me, that
is not a good idea. For one thing, in the minds of todays
consumers a reasonably good help system is considered a bare necessity.
For another thing, a good help system will lower your return rate.
It is a worthwhile investment.
A help system also lowers your ongoing technical support
costs. What tech support costs you say? Well, heres
a statistic that will blow your mind: Most software companies
allocate a minimum of 30-40% of a products purchase
price to technical support. The reason is simple: Its
cheaper than refunds. Now you may not have created a Microsoft
Office clone, but I guarantee you that some inexperienced
users are going to need handholding. In my opinion, even in
the world of niche products you must at least offer same-day
e-mail support.
Xena is cool. Xenophobia is not.
Now before you think Im just an American developer
dissing the folks from other lands over on E-lance and RentACoder,
think again. I use both services and love them. And I have
developed some excellent working relationships with individuals
at both sites. My purpose here is to fire a warning shot across
the bow of wannabe software publishers boats: Software
development is a mind-bogglingly labor intensive task whether
you do it yourself or pay someone else to do it for you. Web
sites like E-lance and RentACoder have lowered the cost of
software development to the point that a middle-class American
can think about becoming a publisher without having to sell
the house.
But you can still get burned, and it is worth counting the total
cost of publishing before you get started.

Ross Lambert is co-founder of TheVentureForge.com,
a mentoring, hosting, tooling, and e-commerce incubating membership
site. He is also a Senior Software Engineer for a fast-growing telecomm
in Kirkland, WA and a happy husband and father.

|