Thank you for taking the time to read this.
For the purposes of this largish posting, please consider yourself to be an owner and feel free to take up fair and opinionated positions on either side of the coin.
I am looking for feedback on an idea I have, but I want to give you some background first.
During a recent period with nothing else on my plate, I realized that it would be interesting to explore the idea of building a freelancing site.
I've seen freelancer, odesk and even a few bitcoin enabled clones of the above, but none of them have really struck me as ideal.
So I'm starting this thread about creating a bitcoin enabled freelancing site. What features it should have, what are the best rules for operating it etc.
Bitcoin has some interesting characteristics relating to market volatility that make working purely for BTC very, very hard at times.
By the time your project completes, your funds might be worth pennies or millions. It can be really random and disconcerting.
It can also be the perfect way to get paid once you control forex risk factors.
Freelancing sites come with their own issues that tend to encourage a race to the bottom in terms of both quality of people and quality of projects.
There's also the whole "You've done the work, we have your money and now here are 30 hoops you need to jump through if you ever want to see your paycheck", junk that I've seen many of these sites pull in the interests of protecting the world from the decepticons or whatever.
Besides the risk from the site pulling a fast one on you, there is also the risk that at any time, the creator of a project can simply decide not to fund/pay you and suddenly you are stuck with really nowhere to turn.
Freelance sites have to cater to creators, but also need to offer talent. Unfortunately talent is subjective. Having been on both sides of the freelancer equation (project creator and project worker), I've seen the most astonishing lack of clarity, direction and competency from both sides, that you can possibly imagine.
Scope creep is incredibly common, as a worker I have seen project after project experience scope creep because there was no clear delineation of what a milestone entails.
As a worker you have to be very careful not to deliver too quickly or too slowly. If you deliver too quickly then I can guarantee the project initiator will increase his expectations for that milestone. If you deliver too slowly, in many cases they just won't pay.
On the flip side, as a project initiator you have to deal with workers who boast qualifications that they copy/pasted from your description when in fact they've never even heard of some of the technologies, let alone have any competence. Many sites allow you to specify skillsets that the worker must then at least test for. Then the site charges the worker money to take the test, sadly most are worthless.
In other words, it's really hard to find good help, who will work cheaply and quickly while producing excellence.
Also, excellence is entirely subjective as are the other terms.
Having been a development manager in a previous life, I know that with a bit of coaching, any worker who is willing to learn, can be taught about any skill. The flipside of that, is that I don't want the worker building his skills on my dime.
Having been a worker myself, I know that in many cases, projects get riddled with buzzword soup and just because I ran out space on a page to list skills doesn't mean I can't pick it up quickly enough to be useful to the project.
The solution? Let's build our own and do it right this time!
There are 4 driving themes in all of the things I've mentioned.
#1 Scope
#2 Payment
#3 Opportunity (skill can only demonstrated through opportunity)
#4 Time
I believe that if one can tightly control all four variables in a freelancing site, that the user experience on both sides of the isle could be greatly improved.
I call this the SPOT problem for obvious reasons.
I'm hardly perfect. I am very opinionated. I have a diploma from the school of hard knocks and I've got the lumps to prove it.
I think my proposal is a good one. It involves controlling scope by limiting time.
A project is composed of milestones. A milestone is exactly 5 days.
Scope: The project creator creates the project, assigns it a project budget and breaks that budget up into weekly chunks.
Payment: When the first milestone is funded then we say it has been "initiated".
Opportunity: Everyone can bid on any milestone and 5 are selected randomly
Time: Once selected, a worker has exactly 5 days to deliver the project milestone.
This is a competition of sorts, and the only one paid is the one who's work is selected by the project creator as "meeting or exceeding requirements".
(there is a flaw right here, but let's assume the creator is honest for now, since I don't yet have a way to deal with self dealing to get free workers, I will explain more later on)
Advantages of this approach..
For the worker, they are always paid exactly what they bid for their work, period.
For the creator, they are always charged exactly what they budget, period.
If there aren't 5 bidders then the milestone's bidding period is extended until there are 5.
A bidder can elect to drop out at any time with no penalty up until the close of bidding.
If a worker bids outside the budget range their bid will be rejected instantly, it is up to them to determine what their time is worth.
Project initiators are encouraged to limit milestone scope to only what can be delivered within a total of 7 days (5 days work, plus 1 day bidding and 1 day critique/selection)
Disadvantages of this approach...
There is an 80% chance for a worker that they will work their butt off for a week and receive nothing. There is a critique/feedback system in place to show someone how they could have improved and the selection rejection process mandates the creator critique submitted work. But yes as a worker, you have an 80% chance of having learned new skills or improved upon existing ones on your own dime.
There is a non-zero chance that the project creator will get 5 bot-like junk bids, sadly this increases proportional to site popularity.
There is also a non-zero chance that workers may create sock-puppet accounts to try and increase odds of being selected or paid.
Questionable ponderings...
Now assume that the project creator does not select anyone. Is it fair that they pay anyways?
My opinion is that it's fair. This is sunk money. I'm open to ideas on controlling this though.
If the creator does not select anyone, then who should get paid?
No matter which way we turn, there is an opportunity for the creator to game the system by double dealing.
Admittedly there is some incentive there for double dealing by creating fake accounts on both sides, but since feedback is solely for personal growth and not a public thing at all, the normal incentive is sharply negated. But it still leaves open the possibility of "selecting" your sock puppet while actually utilizing someone else's work. Open to ideas here...
You don't get to see the qualifications, and there is no feedback system for workers.
The people selected, either deliver to your satisfaction, and it's done on time and on budget or they don't.
On the workers side, we want to guarantee payment for work delivered and encourage quality work and fair pay.
This is why neither worker, nor initiator are aware of the other's financial picture. We can't stop them talking to one another, but since we all know that someone is not going to be selected unless their bid is less than the project budget, does the worker really want to let the initiator know (hey you could have saved $5 by going direct?) If that's the case then they both lose the protection of using the site, and we lose 2 customers at least temporarily.
I do wonder if this is the right approach which is why I'm bringing it up here.
An alternative I have considered is that instead of "all or nothing" with 5 people in direct competition with eachother, that each person is joined to a team and the team splits the highest bid evenly, or even according to a rate & rank system. The idea of everyone working together on a team, has it's appeal as does winner take all. The budget and time limitations being what they are though, I figure that teams may crop up on their own if they are beneficial.
On the bitcoin side of things I think that bitcoin technology can be leveraged to make this all happen. I am very interested in hearing what parts of bitcoin other than a coinbase style "pay in coins and get a check for fiat" might help this along. I'm not familiar with all aspects of bitcoin, but I do know that in reality it's just a giant database that can be written to, and contracts can exist that are fully enforced by the blockchain.
Satoshi for your thoughts???