
$400 bounty started for "simple" OSS node.js module - reddittor
http://groups.google.com/group/nodejs/browse_thread/thread/5b62789562697956?pli=1
======
ssebro
Does this mean that there's a business here - kind of like a reverse groupon?

A group of people want X (digital content), and each will pay whatever they
want to for it. Fulfillment is more likely the larger the "pot" becomes, and
it's an all-out competition to see who wins the pot.

Any ideas for a tweaking of this business model that makes more sense?

~~~
SwellJoe
I looked into this long and hard and even built a website and minimal
implementation, as I'd had some experience running and contributing to
bounties on Open Source projects, but the more I thought about it, the less
like a solid business it seemed.

The biggest problem is that the amounts involved are small, and the number of
projects involved is also small (this is a $400 project, and it was considered
interesting enough to get front page on HN; this indicates a _tiny_ market).
At the time, SourceForge, and several other Open Source sites, were beginning
to add bounty and "hire this developer" features, and I couldn't see how a
third party could more effectively reach those users or those developers
(because you need both sides to buy into your product in order for it to be
useful). The amount a third party could charge for the intermediary service is
bound to be low or developers would go elsewhere; a couple points, maybe. So,
2% of $400 is 8 bucks. It'll take 10,000 projects of that size per year to pay
yourself a decent salary and cover expenses. There probably haven't been
10,000 Open Source bounties in the past decade, much less the past year.

One of the problems a product like this would solve would be the trust issue:
Can the bounty contributors trust the developer to deliver quality code if
paid at the start, and can the developer trust all of the bounty contributors
to pay up in a timely fashion if the code is delivered first. But, there are
already ways to solve that problem. ChipIn solves the latter one, and many
Open Source developers are sufficiently well-known in their community that no
one would doubt they would finish the job. The other problem is connecting
developers with money; but SourceForge and elance and many other sites already
provides mechanisms for users to give developers money, as do traditional
contractor agreements.

Of course, you've specified "digital content", and I was just looking at
software, which opens up the market quite a bit. There were discussions
amongst the browncoats (Firefly fans) of building a system to directly fund
new Firefly episodes through viewer contributions. But, I think in the end,
everyone agreed that the math just didn't add up. It might for lower budget
content.

Back to software, I think github and SourceForge could make a few extra bucks
from this kind of idea, but I don't think there's much room for any third
party to fit into that relationship, if they aren't already in the loop for
some reason.

~~~
slowpoison
Can't I accomplish the same thing using Kickstarter?

~~~
SwellJoe
Yes, but it didn't exist when I was working on the problem. But, it is one of
_many_ competitors you would face trying to make money in the space today.

------
jrockway
This is more of a commentary on the kind of people that use node.js than
anything else.

------
callmeed
Is this common in certain OSS circles? I know stack overflow has a bounty
feature, but I've never really seen this before.

I thought open source was about "scratching your own itch", not "here's $20,
scratch me"

~~~
6ren
No. It possibly can demotivate people (is _that_ all I'm worth?; since I
started doing this for money it's not fun any more)
<http://www.gnu.org/philosophy/motivation.html>

However, I think it's a great idea in principle. There's been the "street
performer protocol"
[http://en.wikipedia.org/wiki/Threshold_pledge_system#Street_...](http://en.wikipedia.org/wiki/Threshold_pledge_system#Street_Performer_Protocol)
(which didn't seem to take off); and <http://www.kickstarter.com> (which did,
but it's mostly not software).

~~~
mnutt
I had the exact same experience. I worked for an open source company that had
bounties and I think it was one of the major factors that completely killed
the open source community around it. A few years later a friend of mine
mentioned she had contributed to the project, but stopped after she worked on
something for 10 hours and realized that worked out to about $10/hour.

However, it seems like a good model if it gets up to market rates (if someone
could do this in an hour or two) and especially if it's something developers
wouldn't do on their own.

------
emehrkay
"Please be clear if you want to be down for the OG bounty"

OG as in original gangsta. Funny to see it used in a programming setting

~~~
reddittor
I'm also the author of the node.js rap.

The OG rap about node.js: <http://soundcloud.com/marak/marak-the-node-js-rap>

~~~
emehrkay
This is hilarious. How did this come about?

------
jmtame
I just tried to add $100 to the bounty from StartupsOpenSourced.com -- not
sure if they'll accept it or not considering it's not necessarily coming from
an individual, and they don't know me personally.

~~~
reddittor
I'll allow it. :-)

~~~
jmtame
if they don't allow it on the forum, and the guy who writes this is reading
this thread, email me at jmtame at gmail and I'll be sure you receive $100
over paypal (I'll verify with the OP)

------
pepijndevos
I don't know Node, but I know all major browsers support <audio> elements, so
there must be audio support in V8 somewhere, right?

~~~
reichstein
That's actually in the browser/rendering part of the browser (i.e., in
WebKit), not in the javascript engine. So, no.

~~~
pyrotechnick
Much like how typed arrays (Float32Array etc) are part of WebKit and not v8
even though logic would suggest otherwise.

------
wyuenho
I for one thing think this whole JS for the server-side thing is just wrong
(typeof(NaN) returns "number", what?), on the other hand NodeJS and V8 sound
more like just a dumb single threaded daemon just had sex with a single
threaded language engine and had a conjoined twin. I have to deploy half a
dozen just to have a useful smallish app. Don't even mention all these
callback non-sense. I like loops and processing return values just the way
I've been programming for 8 years thank you very much.

Seriously, not every time there's some interests shelling out money pushing
for whatever agenda they have, we have to fall for it. If it's bad, it's bad.
Just say it and look away.

On the other hand, I can see $400 being something tempting for bootstrapping
entrepreneurs like me...

~~~
pyrotechnick
Large, "real-world" companies such as ngmoco have slashed their hardware
requirements by an order of magnitude by moving away from the standard stacks
people have been "programming for 8 years thank you very much". Before you
make another contribution to a discussion, about a technology you obviously
know very little about, do some homework.

P.S. picking on a technology because it has some flaws (typeof(NaN) returns
"number") is sign of someone who reads books by their covers and fails to see
the benefits of an otherwise more suitable solution. You will find in many
languages the NaN constant is an instance of some kind of Number type. I'm
interested in knowing "the way [you've] been programming for 8 years". I'm
certain we could begin tearing it to pieces as you're so fond of doing.

Please, in the future, the moment you begin contributing your FUD to a thread
such as this, just say it, and look away.

~~~
ansy
Both of you, typeof NaN == number is not a language flaw! It's part of the
IEEE 754 floating point specification.

<https://secure.wikimedia.org/wikipedia/en/wiki/IEEE_754>

Look, a big "system language" like Java also defines NaN, +inf, -inf as values
of double (see Field Summary).

[http://download.oracle.com/javase/6/docs/api/java/lang/Doubl...](http://download.oracle.com/javase/6/docs/api/java/lang/Double.html)

As in

double mathError = Double.NaN;

Any other standards conformant language supports NaN for floating point
numerical values. I would even argue an absence of NaN should be perceived as
a language flaw.

EDIT: I realize the above might not actually be sufficiently explanatory. "Not
a number" is used to specify the class of numbers that cannot be represented
in floating point notation. This includes the undefined like 0 / 0 and
imaginary numbers (e.g. square root of a negative value). It can also be used
for missing values in a large computation.

Any operator with a NaN results in a NaN. So 1 + NaN = NaN. Most NaNs are
quiet, as in they do not throw an exception and allow the operation to
continue. This allows large batch computations to continue without stopping
the entire process for one bad record. Instead there will be a NaN for that
record and the rest of the data will be processed correctly. You can see why
this might be useful when dealing with large amounts of scientific data and
hopefully why the IEEE would introduce such a feature.

~~~
wyuenho
Good to know. Thank you.

