
Earn $4 in bitcoins for any commit to sferik/t, a command-line Twitter tool - sashazykov
http://tip4commit.com/projects/102
======
sferik
The problem with this funding model is that it encourages fluff pull requests,
such as this one:
[https://github.com/sferik/t/pull/138/files](https://github.com/sferik/t/pull/138/files).

If there was no financial incentive, I would probably merge it but now I'm
questioning the motivations of the committer. If I merge this, it means there
will be less money for someone else, who makes a more significant contribution
in the future.

Personally, I prefer Gittip’s model to incentivize open-source contributions,
if only because it doesn’t create this kind of noise for project maintainers.

~~~
sferik
This is getting ridiculous:

[https://github.com/sferik/t/pull/142/files](https://github.com/sferik/t/pull/142/files)

[https://github.com/sferik/t/pull/143/files](https://github.com/sferik/t/pull/143/files)

[https://github.com/sferik/t/pull/144/files](https://github.com/sferik/t/pull/144/files)

Shameless.

~~~
SwellJoe
While I love to get documentation updates, the comma thing and semi-colon
thing _is_ ridiculous, and in the comma case is less correct in this context.
The doc re-org isn't a bad thing, though.

But, I also suspect that once there are lots of projects that have this
feature, and the maintainers establish that they won't merge non-useful
commits, like grammar nitpickery (though good grammar has value, and we merge
stuff that fixes grammar in our docs, and I wouldn't mind having people get
paid for it) this would become less common. And, reputation still matters. I
wouldn't want to be "that guy" (and I wouldn't want to _hire_ that guy for
substantial work) that takes advantage of a simplistic system to get paid.

------
edavis
Projects like these is where Bitcoin can really shine.

Maybe Bitcoin will conquer the world, maybe it won't. I have no idea.

What I do know is there is real utility in being "electronic petty cash" which
Bitcoin can easily become.

Imagine: Alice sends Bob a few bitcoins after Bob writes a particularly
insightful comment on HN. Bob then comes across a great blog post by Charlie
and sends him a few bitcoins. Charlie then finds an open-source project by
Diane that will save him hours of work and sends her a few bitcoins. And so
on.

It rarely would get converted to USD and wouldn't amount to much when it did.
Instead, people would just earn a bit here and spend a bit here.

Bitcoin enthusiasts miss that USD works fine for most people. But right now
it's really hard to do the above scenario using traditional banking. I don't
want to connect my bank account to some website to send a someone a few bucks.
It's just not worth the hassle/potential risk.

I can't be the first person to think of this. But I'm just not seeing much
movement in this direction. Am I overlooking something? Or do I just need to
be patient?

~~~
slg
What is preventing USD from being used in this way? It seems to me to only
stumbling block are regulatory and security restrictions. If that is the case,
wouldn't future bitcoin regulation put an end to this type of use case?

Or is the real benefit of your proposed use case the distance of bitcoin value
from perceived financial value (ie you are willing to tip X bitcoin but have
second thoughts when looking it as X cents)?

~~~
olalonde
It's fairly easy to send USD online _if_ you own a credit card and bank
account, but receiving money is a whole lot harder. It's also harder to do it
with the degree of anonymity that Bitcoin provides and without the risk of
your payment provider freezing your funds or banning you from using their
service.

~~~
Smirnoff
bitcoins don't provide anonymity.

~~~
yelnatz
Bitcoin provides anonymity in the way that it doesn't anchor its addresses
with your real life identity.

Yes, the addresses are public, but there isn't a way to prove who's who
according to addresses alone.

Unless of course you publicly attach your identity to one.

~~~
nkuttler
It's pretty easy to track coins through transactions and link them to an IP,
unless the user knows about this and takes care to prevent it.

~~~
smartwater
An IP address is light-years from a real-life identity. Without a warrant,
there's not a chance of figuring out even the account holders name-- which
could be different from the person who actually performed the transaction. It
could be a neighbor, a friend, a roommate, anyone else who ever had the wifi
password, the possibilities are endless.

~~~
nkuttler
If anonymity is a concern getting a court order doesn't sound like a big deal.
Even if not, you vastly overestimate the anonymity an IP provides, and if
anonymity is a concern legal deniability isn't a big win either. You also
ignore that you could potentially get dozens or hundreds of IP addresses.
Anonymity, like security, is hard, and has layers.

------
andrewgjohnson
I like the idea of prepaying bit coins on bounties [presumably tied to an
issue/bug report in GitHub] which is what I thought this was at first. As is
seems a bit confusing, are all commits treated equally? I'd be peeved if I
donated money then saw it get split up among people who did minor clean up,
typo fixes, etc. Flip side, I'd be peeved if I spent a bunch of time on a
commit then saw the same money go to someone doing a typo fix level commit.

Don't know if the whole intrinsic/extrinsic motivations factor will make this
idea crater in any form but I think tweaking the current model is advisable in
any case.

Best of luck.

~~~
arsenische
You are right. But it is not a salary, it is just a tip. If developer spent
time to make even a tiny useful commit - that is good. Probably with time it
will become harder to find tiny commits. And donations will probably keep
accumulating thus creating higher incentive for more complex commits.

~~~
andrewgjohnson
I think your assumptions are incorrect.

------
tinco
I hate to be a party pooper here, but if this project would ever take off, and
the project would receive serious amounts of bitcoin that would mean that
serious amount of bitcoin would have to be managed and secured by whoever runs
that project.

The past has shown that everyone, even persons who run e-wallets and currency
exchanges, severely underestimates the amount of security such an endeavour
requires.

There's a hundred questions you should ask anyone who asks you to keep care of
bitcoin. How large is the hot wallet? How is the offline wallet stored?
Where's the source code? What hardware does the service run on? Who are you?
What will you do when someone steals your hot wallet? What monitors do you run
to make sure the books add up?

So, nice idea, but please make sure this is actually going to be safe.

(BTW there seems to be a way to escrow bitcoin where a third party decides if
the transaction should pass, but that third party never gains access to the
bitcoin themselves, I haven't read the details of it, but that would seem
perfect for this sort of thing)

~~~
slg
If only there was some party out there that could protect us from things like
this. Possibly even insuring us in the case of something going really wrong
and the person holding our money loses it all. They could also establish rules
that anyone holding money would have to comply with in order to be certified
as safe. Wouldn't that be grand...

~~~
tinco
It would be grand indeed. It would even be more grand if a small project like
this would be able to partake in that party's service without paying thousands
of dollars for audits, registration fees, insurance fees and such.

But perhaps it would be more grand if that expensive and bureaucratic third
party could just be avoided with a smart technical solution :)

~~~
CamperBob2
I think he's simply referring to a bank account.

~~~
icelancer
So was tinco.

~~~
tinco
I was not actually, I was talking about how expensive it is to be a bank.

A bank account of course solves all those things, but because of the nature of
bitcoin it's rather hard if not impossible to realize the financial system we
know as banking using Bitcoin instead of government controlled currencies.

So if he was indeed talking about a bank account, then it was a sneer towards
Bitcoin itself, and he'd be quite right, the banking system solves this
problem very well.

I still think the three party transaction system would be preferable even to
banking, if it can be done.

~~~
slg
My criticism was on the idea that so many bitcoin proponents put forward that
not having any central controlling or regulatory body is a strength of
bitcoin. Even if we ignore all of the macroeconomic issues this might cause,
you still lose a lot without any regulations. This particular example is the
complete lack of consumer protection in any dispute you encounter when dealing
with someone in bitcoin.

Instead of trying to improve on the monetary policies and regulations that
exists around the world, bitcoin simply tries to replace them and leave
nothing in their place. It is like going from the current US government to
anarchy. There are a lot of things that can and should be improved in the old
system, but that doesn't mean we should throw it completely out and have
nothing to replace it.

~~~
icebraining
You can add consumer protection systems on top of Bitcoin; they just aren't
forced on every transaction. Even the protocol itself has features that
facilitate escrow and similar protections. And the public ledger allows you to
prove that you sent BTCs to someone without having to use a third-party
service to independently verify that.

------
olouv
Awesome! It looks like a virtuous circle for both open source & the bitcoin
network. Really hope this will take off. However, in my opinion, you should
definitely switch to mB (mili-bits), and please add retina icons for the
readme. I just added one of my projects there (github.com:mgcrea/angular-
strap), this will be quite interesting to watch!

------
rthomas6
Some Bitcoin millionaire needs to drop 10 BTC in that donation address, then
commits would earn $100 each. That would be interesting to watch.

------
nailer
Can someone more familiar with $BITC explain how Bitcoins can be portioned? I
get that each bitcoin is a unique number - how can 0.4 of a number belong to
someone and the other 0.6 of that number belong to someone else?

~~~
jnbiche
There are really no "Bitcoins", there are only a very long series of inputs
and outputs to various Bitcoin addresses, all recorded on the shared block
chain. Inputs (Bitcoins) come in to the system through mining, and then they
are traded out via outputs and in via inputs.

The smallest value for an input/output is 1 Satoshi. 1 Bitcoin equals
100,000,000 Satoshi. So a Bitcoin is just a convenient measurement of inputs
minus outputs.

When you make a purchase from an address, the client adds up your inputs and
outputs at that address, and if you have a positive balance, you can send any
portion of it as an output to another address (as long as you have the private
key to verify that you own the sending address). It is recorded on the block
chain as an input to that receiving address records, and the miners
(eventually) confirm that transaction by including it in a block -- each time
that happens is 1 confirmation (mining is another whole can of worms).

When you make a purchase that is less than the total number of inputs minus
outputs at the address you're spending from, you can receive the difference
via an input to either the same address or another, new address, depending on
the Bitcoin client used.

Does that make sense? It's all just a shared accounting system.

EDIT: Clarified role of block chain.

~~~
nailer
Thanks to you + all who responded about Satoshis.

------
unreal37
I assume it's not affiliated with the projects at all. This is an
independently-run tip system for open source projects. Cool idea.

Key disclaimer though, is that only 95% of donations for tips go to the
coders. And if every commit donates 1% of the balance to the commit, that
means that the project almost never donates it's full balance. So if this ever
really takes off, the original developer of tip4commit will be holding a lot
of money that takes a long time to pay out.

~~~
arsenische
That's right.

We made this project as a part of Rails Rumble contest and are using a
limited-time free server offered by them.

So we need to collect money to move to a new server, to cover transaction fees
and to continue development of this service if it is demanded.

Maybe we should remove the fees, go opensource and crowdfund ourselves. We
were discussing it but haven't made such decision yet.

We don't expect to hold large amounts for a long time because large amounts
should attract dozens of commits every day (and thus will turn into small
amounts quickly).

If it doesn't happen then we will probably introduce a fixed minimum size for
a tip or some other mechanism to solve this problem.

Probably it is good to hold money for some time and to smooth the tip rewards
thus placing authors of commits into nearly equal position.

~~~
JoshTriplett
By all means, please do keep taking a percentage as a sensible funding model;
it doesn't seem at all unreasonable, and it ensures you'll stick around. I'd
be more concerned if you _didn 't_ have any obvious revenue stream.

Alternatively, if you do make your site open (and that'd be awesome, please
do), you should prominently encourage people to post tips to your repository.

------
bearbin
MCServer, a FOSS Minecraft server is also on here:
[http://tip4commit.com/projects/74](http://tip4commit.com/projects/74)

We haven't got any outside donations yet, but I think it would be quite a good
way to reward contributors, and I put a bitcent in to try it out.

------
chrismorgan
It looks to me like bors, the integration bot, will be getting all of the
mozilla/rust tips:
[http://tip4commit.com/projects/149](http://tip4commit.com/projects/149).

~~~
sashazykov
Thanks, we are trying to filter merging commits. I will fix it soon.

------
mnem
Somehow reminded of the bug bounty dilbert cartoon:
[http://www.dilbert.com/strips/comic/1995-11-13/](http://www.dilbert.com/strips/comic/1995-11-13/)

------
MBCook
This seems like an accidental perverse incentive. While you only get the top
if your commit is accepted, I would be worried the maintainers will just end
up with a bunch of low effort trivial patches.

~~~
shortly
the solution is probably a moving-knife procedure[1]:

have a list of rewardable issues. grow the reward for each issue with time.
once the reward makes the time spent on the project worthwhile, people will be
incentivized to commit. they won't let the reward grow too high, for fear that
someone else will take it.

you could let coders freeze the reward for some amount of time, and get
exclusive rights to claim that reward, until the time expires.

[1] [http://en.wikipedia.org/wiki/Moving-
knife_procedure](http://en.wikipedia.org/wiki/Moving-knife_procedure)

~~~
alixaxel
That is very neat idea!

------
olouv
Got a tip putting the tip4commit link in the readme...!
[http://tip4commit.com/projects/143](http://tip4commit.com/projects/143)

Not sure this is intended behavior.

Shouldn't the owner of repositories be out of scope (or at least make it
configurable)? tipping myself minus the commission is no fun ;-).

PS: would make sense to have a signup via github

~~~
arsenische
Yes, why not (we can't be sure that it was you who donated to your project).
At least you know it works ;) Thanks for trying out!

------
pixelcort
Ooh, what if there was a bot that had some unit tests, and then gave BTC to
whomever writes code that passes all those tests?

------
tobyjsullivan
Is this operated with some sort of commit hook or done manually by the project
maintainers or what?

Edit: At present this is obviously an MVP that is probably being completely
"faked" on the back-end, so I suppose my question should be "What is the
intended design?"

~~~
sashazykov
No, it's not an MVP. We retrieve new commits using github API.

~~~
joeyh
I'd like to drop $500 to $1k for git-annex into tip4commit. This is money that
was donated to me in a crowdfunding campaign
([http://campaign.joeyh.name/](http://campaign.joeyh.name/)) and set aside to
get more people committing to git-annex than just me.

Problem is this: git-annex's website and indeed its BTS are part of its git
repository. So it gets lots of commits from eg "name@web". I don't want
tip4commit to try to send bitcoin tips to such dummy email addresses.

Is this something your platform can handle? It would be sufficient if the
emails you send have to be acted on to take bitcoin out of the tip pool, and
it otherwise remains available for the next committer.

~~~
arsenische
We have just implemented this feature. All the commits with email addresses
that don't have "." in its domain name will be ignored. Thanks!

~~~
joeyh
To be clear, do unredeemed tips stay in or eventually get returned to the
balance?

BTW, a@ai is a valid and IIRC actually used email address. :)

~~~
arsenische
Thanks for your question. Currently it will just stay as unclaimed balance.
But probably it is a good idea to return it back to the project eventually.

PS: Thanks for your hint regarding valid email addresses. If your email
address is a@ai or something similar - you won't receive tips, sorry.

~~~
joeyh
I've evaluated using tip4commit, and I need either

* The ability to prevent specific email addresses being tipped. * Or the above-mentioned returning unclaimed balance to the project.

In my use case, I make a lot of commits, but I am entirely interested in
sending the tips to committers who are not me. If I use tip4commit in its
current state, I'll deplete the tip jar quite quickly, and not likely attact
more committers.

Running some numbers, I have made 200 commits to git-annex in the past week.
If I seed the tip jar with $1000, after a week I calculate I will have been
tipped $866 back out of it to myself. After 2 weeks, only $18 will remain in
the tip jar!

Hope this can be improved; it would be a pity to have to roll my own, and this
otherwise seems exactly what I need.

[quick haskell program used to simulate it:

    
    
        main = print $ calc 0 200 500
    
        calc :: Float -> Int -> Float -> (Float, Float)
        calc totalout 0 tipjar = (totalout, tipjar)
        calc totalout n tipjar =
            let payout = tipjar/100
            in calc (totalout + payout) (n - 1) (tipjar - payout)
    
    ]

------
alxndr
All projects on tip4commit, conveniently sorted by tipjar size desc:
[http://tip4commit.com/projects](http://tip4commit.com/projects)

Only 15 projects with a nonzero tipjar at the moment.

------
nkuttler
Seems like a nice idea, but where on that page is the link to the repository?

~~~
BryantD
The home icon links to
[https://github.com/sferik/t](https://github.com/sferik/t). Not obvious.

~~~
nkuttler
Ah, thanks! That was nicely hidden.

~~~
arsenische
replaced it with a little cat.. is it better?

~~~
rspeer
That just looks like an icon to reinforce that "this is a GitHub project". It
doesn't at all draw attention to the fact that clicking the icon is the main
way to get to the GitHub page.

How about making the link cover the entire header ("sferik/t" and the octocat
icon), or adding a "View project on GitHub" link under the description?

------
twodayslate
A 5% fee to sponsor a project seems a little excessive. I'm still a top
sponsor on [http://coingiving.com/](http://coingiving.com/)

------
tomrod
So could I add comments from junk accounts and earn $4 in bitcoin? I'm not
sure I'm following the logic here... and what prevents highly unethical
behavior.

~~~
Yen
In order to actually earn the tip, the project mantainer (sferik) has to merge
your commit.

If you provide a value-less commit, they'll just ignore it, and you'll get no
money.

If you provide a bunch of value-less commits, they'll probably get annoyed.

If you provide a commit worth merging in to the project, they'll likely commit
it, and you'll receive the tip.

------
AbraKdabra
I somehow read "Earn 4 bitcoins for any commit..." and thought "wow that's
really generous", I was like, very wrong haha.

------
zdwolfe
Is this not what
[https://www.bountysource.com/](https://www.bountysource.com/) already does?

------
Mitt
"Enter GitHub project URL to find or add a project"... Why are they limited to
GitHub? Where is support for BitBucket?

~~~
sashazykov
We will add it later.

------
lcasela
This is a really good idea! It really adds an incentive to
contributing.(Though I can see a lot of people abusing this.)

~~~
arsenische
if you mean trivial yet still useful commits, then hopefully it will be harder
to abuse when all the simple things are improved

------
dysoco
I didn't know Linux had Bitcoin tips, could have used that.

------
aram
sferik has a commit for each day over the past year:

[https://github.com/sferik](https://github.com/sferik)

It's the first time I see a full year streak!

------
ostikk
maybe tips per number of lines changed would be a fairer benchmark than tips
per commit. I guess that would still cause a bunch of unnecessary line
changes.

I really don't think this kind of financial incentives are good for open
source projects.

