- MValdez Blog - http://www.mariovaldez.net/webapps/blog -

Imitation: the ultimate form of flattery

Was Armani who said imitation is the ultimate form of flattery? Recently I found a bidding at Rent-a-coder to clone the osCommerce Product Manager for Windows (OSCPMWin). Wow, is my software that good?

Sometimes I do a quick search in Google using the name of my open-source software, just to see what is being said about it in the internet. I always find useful comments, tips, and criticism. I enjoy finding two things: sweet words and criticism.

Sweet words just help me in feeling well. Yeah, my software is free (as free beer and as free speech) so I don’t expect money, but I like to read how good it is.

Criticism, on the other hand, help me a lot to improve the software. Sometimes is a lacking feature, some usage problem that I did not think of (or that I thought it was not important), comments about how my software compares to some other application, or about why the hamburger or the sliced bread are better inventions.

A few days ago, in my usual monthly search, I found something different. I found someone asking help to create a clone of the osCommerce Product Manager for Windows [1] (OSCPMWin) application. Paid help. I felt a lot of curiosity (meow). The site was Rent-A-Coder [2], a place where software buyers offer money and programmers (the coders) offer a solution, for a price. Yes, it is an virtual market.

When I finished reading the description of the Rent-A-Coder bidding I smiled. I felt sooooo flattered! Yeah, my software is a reference others are trying to copy. Ha ha ha. I’m sounding like the novice actor who celebrates that he has his first stalker. Whatever.

The bidding details.

You can visit the Rent-A-Coder page for bid 408715 [3], titled OSCommerce manager in VB6. Yes, you read it right, VB6 (Visual Basic 6). The page may be hidden or unavailable (I think the buyer can hide it at any time).

I like to make some comments about the bidding. First, the bid limit is too low: $1,000 USD. I think that’s too cheap. The buyer may be thinking this software can be written in a weekend. Even if it could be written in a weekend it is still too cheap. I can say I have invested more than 700 hours designing and coding the OSCPMWin application, and certainly, one thousand dollars does not cover that work. (Even the lowest programming rate around here as a freelance is $15 dollars per hour; you do the math).

Ok, maybe I’m not thinking globally; maybe in another part of the world the programming rates are so low that $1,000 USD are not only good, but great.

The description of the bid says something like: I need someone to create a WORKING clone of mariovaldez.net/software/oscpmwin/screenshots.php this program. This program is not built in Visual Basic 6… The program should access the database via a php bridge. Ok, the last part describes something better than the current version of OSCPMWin, because I have not finished the HTTP tunnel. So, I feel flattered but I will also take the last sentence as a criticism, translated as: OSCPMWin lacks a HTTP tunnel.

I won’t comment on the requested language (VB6), because I don’t want to taint this text with ugly words. He he he. Kidding. But really, I find it kind of weird to start a new development project in an unsupported language (at least unsupported by its maker [Microsoft]). If they want to use VB so badly, then they should use VB.Net. Of course somebody could ask me the same thing: why am I using a development tool (Delphi) which is being dumped by its maker (Borland). I don’t know, but I have faith in the future of Delphi and in the Lazarus project [4].

Other interesting detail is described in the deliverables section of the bidding: …Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components… So, the buyer will underpay the programmer and then he/she wants the copyright of the software. He he. Go figure. That’s a common complain I hear about the Rent-A-Coder typical buyer: greedy like a child with a lollipop. (Ok, not all children are so greedy).

Giving away the copyright of your code is not good.

To explain why giving away the copyright is not good for a freelance developer, I will explain a little about how I do my software development freelance work.

When I propose a development job to a client, I always set the price considering that the copyright holder of the code is me; I only gives the clients use, distribution and modification rights. Yeah, all those rights. You guessed: I give the clients my software under an open-source license. Usually I use the MPL (Mozilla Public License), so they can create their own derivative software, even their own proprietary version. That’s fair game.

What’s the problem if I give away the copyright too? Reusability. If the code is not mine then I cannot reuse it for other jobs. Imagine rewriting low-level database or string-manipulation code again just because I no longer can reuse my own old code, because now the copyright belongs to someone else. And no, I cannot release the code under the MPL because the copyright is no longer mine. The exception to this personal rule is: when the code is already open-source or will be released under an open-source license by the client.

Want some? Then show me the money!

What if the client wants to be the copyright holder? Well, the development price is multiplied by ten. Yes, by 10. If a MPL-licensed piece of code would cost $500 USD, with the copyrights it would cost $5000 USD. So far nobody has asked the second option, but it is always stated in the contract.

So, if they want it, they can have it, but for a big fat price. A price so high most clients will not desire, and high enough so that it will worth it in case someone accept to pay for it. Fair game.

Is the price the reason none of my clients has accepted to pay for the copyright? I don’t think so. As soon as I explain them that they will have a license that allows them to use, redistribute and modify the code to their heart content, they no longer discuss the copyright thing. If you do the same thing I give you this tip: always explain them that their data is not covered by the software license. I’m not sure why, but it seems this is not obvious to many persons, and if they believe you will own or have any form of control on their data (in any way or any sense), they will refuse to accept the contract.

Greedy people.

Regarding the No GPL, etc. text in the bidding, it simply means that the software will become a proprietary product. No surprises here. Their choice. As I said, greedy like a… mmmh… very much.

Conclusions.

Well my conclusions are: