News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 
Download Current Issue
ISSUE 2/1/2010 PDF

Need Back Issues?
DOWNLOAD HERE

Receive the print Edition?


 
blogs tab
Visual Studio 2010 Release Candidate Available Today
A Visual Studio 2010 release candidate is available on MSDN.
02/09/2010 09:45 AM EST

Is Microsoft eyeing Office subscription pricing?
Microsoft may be preparing to offer a new Office pricing option called "union," which charges the same for cloud as on-premises.
02/01/2010 09:38 AM EST

Facebook rewrites PHP runtime
Facebook is about to open source its own PHP runtime, written from scratch for speed.
01/30/2010 08:53 PM EST

 

Events calendar tab
2/9/2010 to 2/13/2010
San Francisco
IDG World Expo

2/10/2010 to 2/12/2010
San Francisco
BZ Media

2/17/2010 to 2/25/2010
Atlanta
Python Software Foundation

2/19/2010 to 2/20/2010
Los Angeles
SCALE

2/21/2010 to 2/24/2010
Las Vegas
IBM


 
Most Read Latest News Blog Resources

The Clearinghouse Model




May 15, 2006 — 
The notion of a “clearinghouse” is central to executing secure transactions with entities you don’t trust. The main idea is for the clearinghouse to guarantee that both parties to the transaction have an acceptable outcome, taking a fee or percentage of the transaction cost for this service.

Probably the most familiar example of a clearinghouse architecture is a stock exchange, which makes it possible for two entities who do not trust each other to buy and sell stock. Both the buyer and the seller have a relationship with the exchange, but neither has a direct relationship with the other. All transactions are with the exchange, not with your counterpart in the transaction.

For example, the exchange buys the stock from the seller, and you buy the stock from the exchange. If the seller turns out to be dishonest—if he didn’t actually own the shares he sold, for example—the exchange will absorb the cost of the fraud and get the stock from somewhere else at the agreed-to price. By the same token, the seller is paid by the exchange whether or not the buyer’s check clears. Both the buyer and seller have a legal, contractual relationship with the exchange that defines enforceable penalties if they’re dishonest.

I recently came across an interesting, though somewhat flawed, application of the clearinghouse architecture

in RentACoder (www.rentacoder.com). RentACoder matches contract programmers with clients in such a way that some of the risk associated with a project is minimized for both. Buyers post “Bid Requests” on the site for specific programming projects.

Most of the RentACoder projects seem quite small in scope (for example: I want a shell script that runs the same four SQL queries against four different databases), but some projects are more significant. Programmers bid on the projects they find interesting. When buyer and seller agree on a price and scope of work, a virtual contract is signed and the buyer puts the money into an escrow account managed by RentACoder. No work happens until funds are available to pay for the work.

At present, there are about 140 coders on the site and about 5,300 projects, but many of these projects are not viable, typically because the price cap specified in the bid is way too small. Most of the buyers are based in the United States, the United Kingdom and Australia. The programmers are based all over the world, with the majority of them in Romania, India and the United States. (My guess is that the U.S. programmers don’t live in high-priced areas of the country, given that they’re competing with programmers from locations with very low costs of living.)

If a project goes over budget or can’t be completed in the agreed-to time frame, then the contract goes into mandatory mediation performed by RentACoder. If the overage isn’t the programmer’s fault (changing specification, failure of a third-party tool, etc.) then the programmer will get paid for work performed.

RentACoder is not a full-blown clearinghouse. To be such, it would have to guarantee that the project be completed in the specified time frame and budget, which is to say that it would need its own programming staff or equivalent to fill in when a contractor failed. The clearinghouse would also have to be involved in the pricing model.

As it is, an inexperienced contractor could agree to do a project at a ridiculously low cost based on a faulty notion of what needed to be done. Solving that problem would require that the clearinghouse vet the projects to make sure that a worse-case scenario (the clearinghouse would have to do all the work) was viable. To handle that, RentACoder would have to be much more involved in the requirements-gathering, project-specification and price-setting process than it now is. The deadly combination of inexperienced buyers and inexperienced sellers agreeing to build insufficiently specified software for a ridiculous price should simply not be possible. That is, part of the RentACoder fee should go toward vetting to at least improve the odds of a successful outcome.

On the other hand, even a partially implemented clearinghouse model provides some benefit: The programmers will get paid if they do the work, and the buyers will not have to pay anything if the programmer doesn’t deliver. Moreover, the most unpleasant part of dealing with an inexperienced software buyer (explaining why a project will take longer or cost more than you thought) is handled by RentACoder, which makes sure that the programmer is compensated even if the project can’t be completed because of unforeseen problems. These are all valuable services.

Allen Holub is an architect, consultant and instructor in C/C++, Java and OO Design. Reach him at www.holub.com.


Share this link: http://www.sdtimes.com/link/29315
 

Add comment


Name*
Email*  
Country     


  • Comment
  • Preview
Loading