public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
* [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
@ 2011-07-27  1:31 Gavin Andresen
  2011-07-27  6:40 ` John Smith
                   ` (2 more replies)
  0 siblings, 3 replies; 23+ messages in thread
From: Gavin Andresen @ 2011-07-27  1:31 UTC (permalink / raw)
  To: Bitcoin Dev

[-- Attachment #1: Type: text/plain, Size: 1404 bytes --]

Anybody have advice on how to encourage more bug-fixing and testing of
existing functionality instead of yet-more-features?

When I get back home from here in Australia I plan on trying to
lead-by-example by starting to tackle the huge backlog of reported bugs, but
I'd like to know if anybody has seen other open source projects successfully
get people to fix bugs instead of constantly adding features. Would policies
like "that spiffy new feature you want won't be considered until you've
helped close some open bugs" be effective (or would it just encourage people
to create shill accounts to open trivial-to-fix issues)?

If this was your run-of-the-mill open source project I would be much
more lackadaisical about letting in new features... but when people lose
money because bugs slip through (and several people HAVE recently lost money
because of bugs slipping through) we obviously have a pretty big problem
just making sure that the features we have now work properly.

(Thanks VERY much to those of you have HAVE been helping test and have been
submitting bug fixes; I don't mean to imply that everybody has been
feature-happy, just that it seems like a lot of potential bitcoin
contributors start out by submitting a nifty new feature that sure would be
nice to have if we weren't so busy trying to make sure the features we
already have work properly all the time).

-- 
--
Gavin Andresen

[-- Attachment #2: Type: text/html, Size: 1542 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27  1:31 [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features Gavin Andresen
@ 2011-07-27  6:40 ` John Smith
  2011-07-27 11:14   ` Joel Joonatan Kaartinen
  2011-07-30 11:49 ` [Bitcoin-development] " Mike Hearn
  2011-08-03  1:41 ` David Schwartz
  2 siblings, 1 reply; 23+ messages in thread
From: John Smith @ 2011-07-27  6:40 UTC (permalink / raw)
  To: Gavin Andresen; +Cc: Bitcoin Dev

[-- Attachment #1: Type: text/plain, Size: 872 bytes --]

On Wed, Jul 27, 2011 at 1:31 AM, Gavin Andresen <gavinandresen@gmail.com>wrote:

> Anybody have advice on how to encourage more bug-fixing and testing of
> existing functionality instead of yet-more-features?


Make a list of bugs. Offer BTC bounties for fixing each one according to how
serious/difficult it is. They don't have to be high, just a few BTC. It'll
also help people get interested in the project and *current* source base
(instead of wanting to implement Yet Another Incomplete Client from
scratch).

Or we could do the same as the mozilla/chrome projects, offer bounties for
finding new security holes and serious bugs.

A policy like "that spiffy new feature you want won't be considered until
you've helped close some open bugs" won't work. This is open source, people
can just make their own fork with the spiffy new feature without fixing any
bugs.

JS

[-- Attachment #2: Type: text/html, Size: 1171 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27  6:40 ` John Smith
@ 2011-07-27 11:14   ` Joel Joonatan Kaartinen
  2011-07-27 14:20     ` John Smith
  0 siblings, 1 reply; 23+ messages in thread
From: Joel Joonatan Kaartinen @ 2011-07-27 11:14 UTC (permalink / raw)
  To: Bitcoin Dev

Perhaps even add a way for anyone add to the bounty attached to a bug on
the bug tracker? Also, a listing page for bugs with their bounties might
be nice too.

- Joel

On Wed, 2011-07-27 at 06:40 +0000, John Smith wrote:
> 
> On Wed, Jul 27, 2011 at 1:31 AM, Gavin Andresen
> <gavinandresen@gmail.com> wrote:
>         Anybody have advice on how to encourage more bug-fixing and
>         testing of existing functionality instead of
>         yet-more-features? 
> 
> Make a list of bugs. Offer BTC bounties for fixing each one according
> to how serious/difficult it is. They don't have to be high, just a few
> BTC. It'll also help people get interested in the project and
> *current* source base (instead of wanting to implement Yet Another
> Incomplete Client from scratch).
> 
> Or we could do the same as the mozilla/chrome projects, offer bounties
> for finding new security holes and serious bugs.
> 
> A policy like "that spiffy new feature you want won't be considered
> until you've helped close some open bugs" won't work. This is open
> source, people can just make their own fork with the spiffy new
> feature without fixing any bugs.
> 
> JS
> 
> 
> ------------------------------------------------------------------------------
> Got Input?   Slashdot Needs You.
> Take our quick survey online.  Come on, we don't ask for help often.
> Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> http://p.sf.net/sfu/slashdot-survey
> _______________________________________________ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development






^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 11:14   ` Joel Joonatan Kaartinen
@ 2011-07-27 14:20     ` John Smith
  2011-07-27 14:28       ` Luke-Jr
       [not found]       ` <1311811317.72375.YahooMailNeo@web121005.mail.ne1.yahoo.com>
  0 siblings, 2 replies; 23+ messages in thread
From: John Smith @ 2011-07-27 14:20 UTC (permalink / raw)
  To: Joel Joonatan Kaartinen; +Cc: Bitcoin Dev

[-- Attachment #1: Type: text/plain, Size: 935 bytes --]

On Wed, Jul 27, 2011 at 11:14 AM, Joel Joonatan Kaartinen <
joel.kaartinen@gmail.com> wrote:

> Perhaps even add a way for anyone add to the bounty attached to a bug on
> the bug tracker? Also, a listing page for bugs with their bounties might
> be nice too.
>

Good idea. I'm not sure if the github bug tracker supports extension
attributes, but it'd be a great place to add it. Also, people can let know
that they're already working on a feature using a comment, to prevent double
work.

The biggest problem will be organizational, in getting the BTC together for
bounties; only a high profile member such as Gavin will have enough trust to
ask for support. Or maybe there's something left in the faucet? :-)

Unrelated: what also might help is publishing a roadmap. Plan a few "bug fix
only" releases before scheduling addition of new features. It's also helpful
for people that wonder that direction the project is going in...

JS

[-- Attachment #2: Type: text/html, Size: 1245 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 14:20     ` John Smith
@ 2011-07-27 14:28       ` Luke-Jr
  2011-07-27 14:42         ` Joel Joonatan Kaartinen
  2011-07-27 16:07         ` Rick Wesson
       [not found]       ` <1311811317.72375.YahooMailNeo@web121005.mail.ne1.yahoo.com>
  1 sibling, 2 replies; 23+ messages in thread
From: Luke-Jr @ 2011-07-27 14:28 UTC (permalink / raw)
  To: bitcoin-development

On Wednesday, July 27, 2011 10:20:07 AM John Smith wrote:
> On Wed, Jul 27, 2011 at 11:14 AM, Joel Joonatan Kaartinen 
> <joel.kaartinen@gmail.com> wrote:
> > Perhaps even add a way for anyone add to the bounty attached to a bug on
> > the bug tracker? Also, a listing page for bugs with their bounties might
> > be nice too.
> 
> Good idea. I'm not sure if the github bug tracker supports extension
> attributes, but it'd be a great place to add it. Also, people can let know
> that they're already working on a feature using a comment, to prevent
> double work.

I'm not sure a few small bounties would justify agreeing to GitHub's steep 
demand for potentially unlimited money in their terms of service...



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 14:28       ` Luke-Jr
@ 2011-07-27 14:42         ` Joel Joonatan Kaartinen
  2011-07-27 14:53           ` John Smith
  2011-07-27 16:07         ` Rick Wesson
  1 sibling, 1 reply; 23+ messages in thread
From: Joel Joonatan Kaartinen @ 2011-07-27 14:42 UTC (permalink / raw)
  To: Luke-Jr; +Cc: bitcoin-development

As it's unlikely to be an automated system anyway, I do not see why
people claiming the bounties would need to agree with the GitHub TOS.
Besides which, I suspect most people contributing to bitcoin already
have agreed to it.

Although, if GitHub can't support the feature, it could be an argument
for setting up a bug tracker unrelated to GitHub.

- Joel

On Wed, 2011-07-27 at 10:28 -0400, Luke-Jr wrote:
> On Wednesday, July 27, 2011 10:20:07 AM John Smith wrote:
> > On Wed, Jul 27, 2011 at 11:14 AM, Joel Joonatan Kaartinen 
> > <joel.kaartinen@gmail.com> wrote:
> > > Perhaps even add a way for anyone add to the bounty attached to a bug on
> > > the bug tracker? Also, a listing page for bugs with their bounties might
> > > be nice too.
> > 
> > Good idea. I'm not sure if the github bug tracker supports extension
> > attributes, but it'd be a great place to add it. Also, people can let know
> > that they're already working on a feature using a comment, to prevent
> > double work.
> 
> I'm not sure a few small bounties would justify agreeing to GitHub's steep 
> demand for potentially unlimited money in their terms of service...
> 





^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 14:42         ` Joel Joonatan Kaartinen
@ 2011-07-27 14:53           ` John Smith
  2011-07-27 16:02             ` Douglas Huff
  0 siblings, 1 reply; 23+ messages in thread
From: John Smith @ 2011-07-27 14:53 UTC (permalink / raw)
  To: Joel Joonatan Kaartinen; +Cc: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 567 bytes --]

On Wed, Jul 27, 2011 at 2:42 PM, Joel Joonatan Kaartinen <joel.kaartine

Although, if GitHub can't support the feature, it could be an argument
> for setting up a bug tracker unrelated to GitHub.
>

Well if signing up with github is such a big problem we could make a list of
bounties on our own site with a trivial web application, and link from there
to github issues (if neccesary) for a description. It really doesn't matter
how it's implemented. I think it is useless to discuss technical details or
GitHub TOS right now, let's discuss the merit of ideas...

JS

[-- Attachment #2: Type: text/html, Size: 801 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 14:53           ` John Smith
@ 2011-07-27 16:02             ` Douglas Huff
  0 siblings, 0 replies; 23+ messages in thread
From: Douglas Huff @ 2011-07-27 16:02 UTC (permalink / raw)
  To: John Smith; +Cc: bitcoin-development

Don't worry Luke will basically say that about anything not related to
a crazy base16 number representation system that no decent modern font
can display.

To contribute:

I think the separated-from-github bounty system would be great. BUT:
The bounties need to go into some form of escrow. There have been way
to many bounties that weren't paid since BTC broke the $1USD boundary.

On Wed, Jul 27, 2011 at 9:53 AM, John Smith <witchspace81@gmail.com> wrote:
> On Wed, Jul 27, 2011 at 2:42 PM, Joel Joonatan Kaartinen <joel.kaartine
>
>> Although, if GitHub can't support the feature, it could be an argument
>> for setting up a bug tracker unrelated to GitHub.
>
> Well if signing up with github is such a big problem we could make a list of
> bounties on our own site with a trivial web application, and link from there
> to github issues (if neccesary) for a description. It really doesn't matter
> how it's implemented. I think it is useless to discuss technical details or
> GitHub TOS right now, let's discuss the merit of ideas...
>
> JS
>
>
> ------------------------------------------------------------------------------
> Got Input?   Slashdot Needs You.
> Take our quick survey online.  Come on, we don't ask for help often.
> Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> http://p.sf.net/sfu/slashdot-survey
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>
>



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 14:28       ` Luke-Jr
  2011-07-27 14:42         ` Joel Joonatan Kaartinen
@ 2011-07-27 16:07         ` Rick Wesson
  2011-07-27 16:47           ` Matt Corallo
                             ` (2 more replies)
  1 sibling, 3 replies; 23+ messages in thread
From: Rick Wesson @ 2011-07-27 16:07 UTC (permalink / raw)
  To: Luke-Jr; +Cc: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 1554 bytes --]

personally, if the software works better (less bugs) then btc will be more
valuable. offering bounty is orthorginal to finding the right technical lead
that will hurd the effort.

put a bounty (salary) on the person to lead the effort, not the bugs

-rick


On Wed, Jul 27, 2011 at 7:28 AM, Luke-Jr <luke@dashjr.org> wrote:

> On Wednesday, July 27, 2011 10:20:07 AM John Smith wrote:
> > On Wed, Jul 27, 2011 at 11:14 AM, Joel Joonatan Kaartinen
> > <joel.kaartinen@gmail.com> wrote:
> > > Perhaps even add a way for anyone add to the bounty attached to a bug
> on
> > > the bug tracker? Also, a listing page for bugs with their bounties
> might
> > > be nice too.
> >
> > Good idea. I'm not sure if the github bug tracker supports extension
> > attributes, but it'd be a great place to add it. Also, people can let
> know
> > that they're already working on a feature using a comment, to prevent
> > double work.
>
> I'm not sure a few small bounties would justify agreeing to GitHub's steep
> demand for potentially unlimited money in their terms of service...
>
>
> ------------------------------------------------------------------------------
> Got Input?   Slashdot Needs You.
> Take our quick survey online.  Come on, we don't ask for help often.
> Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> http://p.sf.net/sfu/slashdot-survey
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>

[-- Attachment #2: Type: text/html, Size: 2316 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 16:07         ` Rick Wesson
@ 2011-07-27 16:47           ` Matt Corallo
  2011-07-27 17:11           ` John Smith
  2011-07-27 17:15           ` Joel Joonatan Kaartinen
  2 siblings, 0 replies; 23+ messages in thread
From: Matt Corallo @ 2011-07-27 16:47 UTC (permalink / raw)
  To: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 554 bytes --]

On Wed, 2011-07-27 at 09:07 -0700, Rick Wesson wrote:
> personally, if the software works better (less bugs) then btc will be
> more valuable. offering bounty is orthorginal to finding the right
> technical lead that will hurd the effort.
> 
> 
> put a bounty (salary) on the person to lead the effort, not the bugs
> 
Gavin leads the effort just fine (when he's not on vacation or in
Australia...) but I do agree with paying him, though I'm not sure how
much time he has to spend on development over PR and other
project-building efforts.


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 16:07         ` Rick Wesson
  2011-07-27 16:47           ` Matt Corallo
@ 2011-07-27 17:11           ` John Smith
  2011-07-27 17:15           ` Joel Joonatan Kaartinen
  2 siblings, 0 replies; 23+ messages in thread
From: John Smith @ 2011-07-27 17:11 UTC (permalink / raw)
  To: Rick Wesson; +Cc: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 767 bytes --]

On Wed, Jul 27, 2011 at 4:07 PM, Rick Wesson
<rick@support-intelligence.com>wrote:

> personally, if the software works better (less bugs) then btc will be more
> valuable. offering bounty is orthorginal to finding the right technical lead
> that will hurd the effort.
>
> put a bounty (salary) on the person to lead the effort, not the bugs
>

Bounties would be much less than a developer salary. The idea is not to pay
for people full time, but it would be more of a symbolic gesture to attract
developers and get them some coins.  People with coins are also more
motivated to make the project more valuable, otherwise you have a "tragedy
of the commons" problem.

Not that I don't agree Gavin with getting a salary but that's a completely
independent issue :)

JS

[-- Attachment #2: Type: text/html, Size: 1072 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 16:07         ` Rick Wesson
  2011-07-27 16:47           ` Matt Corallo
  2011-07-27 17:11           ` John Smith
@ 2011-07-27 17:15           ` Joel Joonatan Kaartinen
  2011-07-27 22:45             ` Gavin Andresen
  2 siblings, 1 reply; 23+ messages in thread
From: Joel Joonatan Kaartinen @ 2011-07-27 17:15 UTC (permalink / raw)
  To: Rick Wesson; +Cc: bitcoin-development

When I first found bitcoin, I was a bit surprised there were no paid by
community developers working on it. However, the bounties would be a
more democratic way of guiding the progress as well as allow things to
happen without a stable flow of money.

Having said that, if it's feasible, having someone hired full time to
work on the software would be great. I'm too much of a newcomer myself
to be able to provide any financial support for that though. I could
most likely contribute towards some bug bounties but if there was a bug
I'd want to offer bounty for, I'd be fixing it myself already.

- Joel

On Wed, 2011-07-27 at 09:07 -0700, Rick Wesson wrote:
> personally, if the software works better (less bugs) then btc will be
> more valuable. offering bounty is orthorginal to finding the right
> technical lead that will hurd the effort.
> 
> 
> put a bounty (salary) on the person to lead the effort, not the bugs
> 
> 
> -rick
> 
> 
> On Wed, Jul 27, 2011 at 7:28 AM, Luke-Jr <luke@dashjr.org> wrote:
>         On Wednesday, July 27, 2011 10:20:07 AM John Smith wrote:
>         > On Wed, Jul 27, 2011 at 11:14 AM, Joel Joonatan Kaartinen
>         > <joel.kaartinen@gmail.com> wrote:
>         > > Perhaps even add a way for anyone add to the bounty
>         attached to a bug on
>         > > the bug tracker? Also, a listing page for bugs with their
>         bounties might
>         > > be nice too.
>         >
>         > Good idea. I'm not sure if the github bug tracker supports
>         extension
>         > attributes, but it'd be a great place to add it. Also,
>         people can let know
>         > that they're already working on a feature using a comment,
>         to prevent
>         > double work.
>         
>         
>         I'm not sure a few small bounties would justify agreeing to
>         GitHub's steep
>         demand for potentially unlimited money in their terms of
>         service...
>         
>         
>         ------------------------------------------------------------------------------
>         Got Input?   Slashdot Needs You.
>         Take our quick survey online.  Come on, we don't ask for help
>         often.
>         Plus, you'll get a chance to win $100 to spend on ThinkGeek.
>         http://p.sf.net/sfu/slashdot-survey
>         _______________________________________________
>         Bitcoin-development mailing list
>         Bitcoin-development@lists.sourceforge.net
>         https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>         
> 
> 
> ------------------------------------------------------------------------------
> Got Input?   Slashdot Needs You.
> Take our quick survey online.  Come on, we don't ask for help often.
> Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> http://p.sf.net/sfu/slashdot-survey
> _______________________________________________ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development





^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 17:15           ` Joel Joonatan Kaartinen
@ 2011-07-27 22:45             ` Gavin Andresen
  2011-07-27 22:54               ` Joel Joonatan Kaartinen
                                 ` (2 more replies)
  0 siblings, 3 replies; 23+ messages in thread
From: Gavin Andresen @ 2011-07-27 22:45 UTC (permalink / raw)
  To: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 1044 bytes --]

RE: bounties:

"A couple of bitcoins to fix a bug" sounds to me like nothing but trouble
for whoever is in charge of awarding the bounties, but maybe I'm just
anti-bounty because spending 2 or 3 hours and getting $30 worth of bitcoins
for fixing a bug wouldn't motivate me.

Anybody know how cash bounties have worked for other projects?  Have any
others paid bounties on run-of-the-mill bugs, and did that cause any
problems?  I'm worried that if contributors start getting bounties that will
change the dynamic from cooperative to competitive.  For example, if
somebody has figured out how to solve 90% of some tricky bug I don't want
them to hesitate to ask for help on the last 10% because they're worried "if
I describe the progress I've made so far somebody might swoop in and steal
my bounty...."

RE: road-map and bug-fix-only-releases:  Great ideas.

RE: paid full-time project lead:  I arranged to get paid to work on bitcoin
full-time before I left for Australia; more details when I get back
week-after-next.

-- 
--
Gavin Andresen

[-- Attachment #2: Type: text/html, Size: 1371 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 22:45             ` Gavin Andresen
@ 2011-07-27 22:54               ` Joel Joonatan Kaartinen
  2011-07-27 23:07               ` Matt Corallo
  2011-07-28  0:15               ` Jeff Garzik
  2 siblings, 0 replies; 23+ messages in thread
From: Joel Joonatan Kaartinen @ 2011-07-27 22:54 UTC (permalink / raw)
  To: Gavin Andresen; +Cc: bitcoin-development

On Thu, 2011-07-28 at 08:45 +1000, Gavin Andresen wrote:
>  For example, if somebody has figured out how to solve 90% of some
> tricky bug I don't want them to hesitate to ask for help on the last
> 10% because they're worried "if I describe the progress I've made so
> far somebody might swoop in and steal my bounty...."

Well, the bounty thing can't be automated, so, wouldn't publishing the
work you've done up to then by, for example, mailing this list, pretty
much guarantee someone else couldn't claim they fixed it all by
themselves anymore?

It could, however, end up with some quarrels about how much of the
bounty to give and to whom. Those are not nice things to have.

- Joel





^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 22:45             ` Gavin Andresen
  2011-07-27 22:54               ` Joel Joonatan Kaartinen
@ 2011-07-27 23:07               ` Matt Corallo
  2011-07-28  6:31                 ` John Smith
  2011-07-28  0:15               ` Jeff Garzik
  2 siblings, 1 reply; 23+ messages in thread
From: Matt Corallo @ 2011-07-27 23:07 UTC (permalink / raw)
  To: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 1061 bytes --]

On Thu, 2011-07-28 at 08:45 +1000, Gavin Andresen wrote:
> "A couple of bitcoins to fix a bug" sounds to me like nothing but
> trouble for whoever is in charge of awarding the bounties, but maybe
> I'm just anti-bounty because spending 2 or 3 hours and getting $30
> worth of bitcoins for fixing a bug wouldn't motivate me.

I do think it would motivate some people to fix a bug or two, though I
would say it wouldn't encourage long-term contributors, just a bunch of
hacked together patches which "fix" a bug.

> RE: road-map and bug-fix-only-releases:  Great ideas.
I know jgarzik hates the idea of branching for releases, but quite a few
projects do that, and it seems to work fairly well.  I would support the
idea of starting with 0.4 and branching for bugfixes to an 0.4 branch,
then adding new features to a head branch to be eventually called 0.5.
> 
> 
> RE: paid full-time project lead:  I arranged to get paid to work on
> bitcoin full-time before I left for Australia; more details when I get
> back week-after-next.
Awesome.


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* [Bitcoin-development] Fw: Seeking advice: Encouraging bug-fixing over new features
       [not found]       ` <1311811317.72375.YahooMailNeo@web121005.mail.ne1.yahoo.com>
@ 2011-07-28  0:02         ` Amir Taaki
  0 siblings, 0 replies; 23+ messages in thread
From: Amir Taaki @ 2011-07-28  0:02 UTC (permalink / raw)
  To: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 2402 bytes --]




----- Forwarded Message -----
From: Amir Taaki <zgenjix@yahoo.com>
To: John Smith <witchspace81@gmail.com>
Sent: Thursday, July 28, 2011 2:01 AM
Subject: Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features


I already tried the bounties route- made a forum thread offering $4000 worth of bounties and it got very few  responses before dropping off the page.


Also, http://forum.bitcoin.org/?topic=4761.0 and http://forum.bitcoin.org/?topic=4543.0

In the end I came to the conclusion that the only was is to bring in projects and pay people to work fulltime on Bitcoin under an organisation.



________________________________
From: John Smith <witchspace81@gmail.com>
To: Joel Joonatan Kaartinen <joel.kaartinen@gmail.com>
Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
Sent: Wednesday, July 27, 2011 4:20 PM
Subject: Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features


On Wed, Jul 27, 2011 at 11:14 AM, Joel Joonatan Kaartinen <joel.kaartinen@gmail.com> wrote:

Perhaps even add a way for anyone add to the bounty attached to a bug on
>the bug tracker? Also, a listing page for bugs with their bounties might
>be nice too.
>

Good idea. I'm not sure if the github bug tracker supports extension attributes, but it'd be a great place to add it. Also, people can let know that they're already working on a feature using a comment, to prevent double work.

The biggest problem will be organizational, in getting the BTC together for bounties; only a high profile member such as Gavin will have enough trust to ask for support. Or maybe there's something left in the faucet? :-)

Unrelated: what also might help is publishing a roadmap. Plan a few "bug fix only" releases before scheduling addition of new features. It's also helpful for people that wonder that direction the project is going in...

JS 


------------------------------------------------------------------------------
Got Input?   Slashdot Needs You.
Take our quick survey online.  Come on, we don't ask for help often.
Plus, you'll get a chance to win $100 to spend on ThinkGeek.
http://p.sf.net/sfu/slashdot-survey
_______________________________________________
Bitcoin-development mailing list
Bitcoin-development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-development

[-- Attachment #2: Type: text/html, Size: 4646 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 22:45             ` Gavin Andresen
  2011-07-27 22:54               ` Joel Joonatan Kaartinen
  2011-07-27 23:07               ` Matt Corallo
@ 2011-07-28  0:15               ` Jeff Garzik
  2011-07-28 15:37                 ` Caleb James DeLisle
  2 siblings, 1 reply; 23+ messages in thread
From: Jeff Garzik @ 2011-07-28  0:15 UTC (permalink / raw)
  To: Gavin Andresen; +Cc: bitcoin-development

Linux kernel has not solved this problem; developers simply want to
work on interesting stuff, rather than debug, I think.

The best Linus has done so far it making certain periods of time
bugfix-only, refusing to take new feature pushes during the stability
period.  If there are critical bugs, refusing to release the kernel
until a developer fixes the regressions they added.

Linux is large enough, though, that the ecosystem has grown a support
network, where companies pay for support (one big way my employer
stays in business), which includes bug fixes.  So the paid support
orgs, like Red Hat, wind up going a lot of grunt work fixing because
they are the closest contact to actual users in the field encountering
problems with the Wonderful New Features bestowed upon them by
developers.

"drop and run" coding is a term for developers who appear, commit a
new feature, and then disappear without addressing bug reports or
other feedback regarding their contribution.

-- 
Jeff Garzik
exMULTI, Inc.
jgarzik@exmulti.com



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27 23:07               ` Matt Corallo
@ 2011-07-28  6:31                 ` John Smith
  0 siblings, 0 replies; 23+ messages in thread
From: John Smith @ 2011-07-28  6:31 UTC (permalink / raw)
  To: Matt Corallo; +Cc: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 3080 bytes --]

On Wed, Jul 27, 2011 at 11:07 PM, Matt Corallo <bitcoin-list@bluematt.me>wrote:

> On Thu, 2011-07-28 at 08:45 +1000, Gavin Andresen wrote:
> > "A couple of bitcoins to fix a bug" sounds to me like nothing but
> > trouble for whoever is in charge of awarding the bounties, but maybe
> > I'm just anti-bounty because spending 2 or 3 hours and getting $30
> > worth of bitcoins for fixing a bug wouldn't motivate me.
>
> I do think it would motivate some people to fix a bug or two, though I
> would say it wouldn't encourage long-term contributors, just a bunch of
> hacked together patches which "fix" a bug.
>

Which, in many cases, is enough. Many times, fixing a bug is a few hours of
debugging, then fixing three lines of codes.

Sometimes it just takes a monkey to sit behind a PC and bash on it frantic
enough (with a debugger) to find and fix bugs :-) Competition to fix bugs is
(up to a certain level) good, it gets people off their ass. But I think the
competition problem is very hypothetical. It assumes there will suddenly be
*a lot* of people that want to fix the same bug. That's unrealistic...

Writing a few test-cases (which is better than the 0 we have now) also won't
take a Linus-level developer to work on it full time. A reasonable dev just
needs to put some time into it.

That leaves the more difficult work to the lead devs.

For a distributed currency I must say there is very little belief here in a
distributed process. Yes, you can also start a company and hire people to
work on it full time, but then they'll be working on helping customer not
solving bugs of the issue tracker (which might have an overlap, but not
necessarily). And it also isn't clear whether changes are contributed back
to the project.

You should not underestimate the open source community. There's a lot of
smart students eager to work on interesting, high-impact projects. Bitcoin
certainly fits that description, but the problem is that Bitcoin isn't
really that known yet with devs, and they need a little push to get
involved. And to work on the current code-base, because usually they will
look at the code and decide it's a piece of crap and want to rewrite it (new
people syndrome).

Yes, there might be one-time-and-run-off flakes, but hey that's life... you
only need to gain a few (semi)dedicated devs from it anyway, not recruit an
army of loyal minions.

I'm not saying this push has to be bounties. It could be a nice page, for
example just posting the bounties on the forum is a start, but certainly not
enough. They just get buried in troll poop, and a lot of the forum users are
... *psychological analysis removed*. You really want to reach out somehow.

It should at least have a nice page that attracts people on the
bitcoin.orgsite, and explains why you should work on Bitcoin (because
the project is so
awesome and fun) and some form of attribution (not just a mention in the
gitlog, but bounties is only one option) if you do manage to fix a bug.

Heck a scoreboard with "number of bugs squished" could be a start :-) We
need to be creative here...

JS

[-- Attachment #2: Type: text/html, Size: 3608 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-28  0:15               ` Jeff Garzik
@ 2011-07-28 15:37                 ` Caleb James DeLisle
  0 siblings, 0 replies; 23+ messages in thread
From: Caleb James DeLisle @ 2011-07-28 15:37 UTC (permalink / raw)
  To: bitcoin-development

Bitcoin seems to have a relatively unique problem, there is a perception that there are early adopters who still have large stashes of btc.
Not that this is wrong, they knew a good thing early, the problem is that it is hard for someone (me) to justify volunteering work on a codebase which will directly benefit other people even if they do nothing.
From my brief observation it appears that the developers now are split between early adopters who are working on their investment, ambitious people who are working on alt clients to satisfy certain requirements for their own projects and hobby developers donating code to alt chain clients because chains which have not taken off don't benefit anyone yet.
As far as trying to bring these people together, I don't have any silver bullet answers but I think there needs to be some kind of sponsorship of developers. I2P uses bounties but they are indeed a small community, I can see bounties going very wrong but I suppose it doesn't hurt to experiment. I think grants for active developers make more sense, then we only need someone to decide who is active enough.
Also moving in the direction of seperating bitcoin the program from Bitcoin the blockchain and accepting patches for merged mining and alt chain stuff which doesn't directly benefit Bitcoin would help decrease the "people are making money off of my back" feeling that (IMO) stands in the way of new developers.

Caleb


On 07/27/2011 08:15 PM, Jeff Garzik wrote:
> Linux kernel has not solved this problem; developers simply want to
> work on interesting stuff, rather than debug, I think.
> 
> The best Linus has done so far it making certain periods of time
> bugfix-only, refusing to take new feature pushes during the stability
> period.  If there are critical bugs, refusing to release the kernel
> until a developer fixes the regressions they added.
> 
> Linux is large enough, though, that the ecosystem has grown a support
> network, where companies pay for support (one big way my employer
> stays in business), which includes bug fixes.  So the paid support
> orgs, like Red Hat, wind up going a lot of grunt work fixing because
> they are the closest contact to actual users in the field encountering
> problems with the Wonderful New Features bestowed upon them by
> developers.
> 
> "drop and run" coding is a term for developers who appear, commit a
> new feature, and then disappear without addressing bug reports or
> other feedback regarding their contribution.
> 




^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27  1:31 [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features Gavin Andresen
  2011-07-27  6:40 ` John Smith
@ 2011-07-30 11:49 ` Mike Hearn
  2011-07-30 14:06   ` Rick Wesson
  2011-08-03  1:41 ` David Schwartz
  2 siblings, 1 reply; 23+ messages in thread
From: Mike Hearn @ 2011-07-30 11:49 UTC (permalink / raw)
  To: Gavin Andresen; +Cc: Bitcoin Dev

I've worked on open source projects for over 10 years now. This
dynamic always exists but I've never seen it seriously kill a project.

Thoughts:

 - People who start out with features often stick around and become
core contributors.
 - Unit tests are critical.

Now there's a basic skeleton for unit tests, the bug debt can start to
be paid down by insisting that anyone who touches a piece of code
introduces tests, whether it be for new features or refactorings.
Insist patches won't be accepted without some new tests. In an
untested codebase, adding or improving tests often reveals other bugs
that then get fixed at the same time.

People usually don't want to write tests if there's nothing there
already. So I'd suggest seeding the test suite with a small number of
simple tests for each part (wallet, net, db, etc). Once there are a
few tests already it's easier to get people to add more. It's tempting
to say, well, the wallet or re-org handling or whatever is the most
critical so we'll write lots of tests for that first and do the rest
later, but that's not as conducive to getting people to help.

Most complex projects need some unit testing infrastructure to assist.
For instance, the ability to use mock network connections or minimal
difficulty chains. So if you build up that infrastructure and plant
those seeds, it'll be easier for other people to flesh it out.

Final thought - big test suites take a long time to grow, especially
in codebases developed without them. A good start is a manually
written test plan, that just walks you through the apps features.
Insisting that a patch be signed off as passing the test plan is a
good way to avoid gigantic breakages like the wallet encryption bug
from cold start, at the cost of slowing down development (nobody likes
doing manual test work over and over).

I don't always follow my own advice on this and usually end up
regretting it ....



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-30 11:49 ` [Bitcoin-development] " Mike Hearn
@ 2011-07-30 14:06   ` Rick Wesson
  2011-07-30 14:07     ` Matt Corallo
  0 siblings, 1 reply; 23+ messages in thread
From: Rick Wesson @ 2011-07-30 14:06 UTC (permalink / raw)
  To: Mike Hearn; +Cc: Bitcoin Dev

+1

Putting a bounty on the test framework might put some loose change to work.

http://code.google.com/p/googletest/ would be my choice

the list of c++ frameworks is at
http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#C.2B.2B

-rick

On Sat, Jul 30, 2011 at 4:49 AM, Mike Hearn <mike@plan99.net> wrote:
> I've worked on open source projects for over 10 years now. This
> dynamic always exists but I've never seen it seriously kill a project.
>
> Thoughts:
>
>  - People who start out with features often stick around and become
> core contributors.
>  - Unit tests are critical.
>
> Now there's a basic skeleton for unit tests, the bug debt can start to
> be paid down by insisting that anyone who touches a piece of code
> introduces tests, whether it be for new features or refactorings.
> Insist patches won't be accepted without some new tests. In an
> untested codebase, adding or improving tests often reveals other bugs
> that then get fixed at the same time.
>
> People usually don't want to write tests if there's nothing there
> already. So I'd suggest seeding the test suite with a small number of
> simple tests for each part (wallet, net, db, etc). Once there are a
> few tests already it's easier to get people to add more. It's tempting
> to say, well, the wallet or re-org handling or whatever is the most
> critical so we'll write lots of tests for that first and do the rest
> later, but that's not as conducive to getting people to help.
>
> Most complex projects need some unit testing infrastructure to assist.
> For instance, the ability to use mock network connections or minimal
> difficulty chains. So if you build up that infrastructure and plant
> those seeds, it'll be easier for other people to flesh it out.
>
> Final thought - big test suites take a long time to grow, especially
> in codebases developed without them. A good start is a manually
> written test plan, that just walks you through the apps features.
> Insisting that a patch be signed off as passing the test plan is a
> good way to avoid gigantic breakages like the wallet encryption bug
> from cold start, at the cost of slowing down development (nobody likes
> doing manual test work over and over).
>
> I don't always follow my own advice on this and usually end up
> regretting it ....
>
> ------------------------------------------------------------------------------
> Got Input?   Slashdot Needs You.
> Take our quick survey online.  Come on, we don't ask for help often.
> Plus, you'll get a chance to win $100 to spend on ThinkGeek.
> http://p.sf.net/sfu/slashdot-survey
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-30 14:06   ` Rick Wesson
@ 2011-07-30 14:07     ` Matt Corallo
  0 siblings, 0 replies; 23+ messages in thread
From: Matt Corallo @ 2011-07-30 14:07 UTC (permalink / raw)
  To: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 409 bytes --]

On Sat, 2011-07-30 at 07:06 -0700, Rick Wesson wrote:
> +1
> 
> Putting a bounty on the test framework might put some loose change to work.
> 
> http://code.google.com/p/googletest/ would be my choice
> 
> the list of c++ frameworks is at
> http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#C.2B.2B

We already have boost testing framework implemented, it just doesn't
have many tests.

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features
  2011-07-27  1:31 [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features Gavin Andresen
  2011-07-27  6:40 ` John Smith
  2011-07-30 11:49 ` [Bitcoin-development] " Mike Hearn
@ 2011-08-03  1:41 ` David Schwartz
  2 siblings, 0 replies; 23+ messages in thread
From: David Schwartz @ 2011-08-03  1:41 UTC (permalink / raw)
  To: bitcoin-development

On 7/26/2011 6:31 PM, Gavin Andresen wrote:

> Anybody have advice on how to encourage more bug-fixing and testing of
> existing functionality instead of yet-more-features?

Two things would help a lot:

1) Letting people know that bug fixing is needed and would be 
appreciated. (In fact, until I saw your email, I had no idea this was an 
issue.)

2) Maintaining a list of the most important bugs that most need to be 
fixed in a place that's easy to find.

I bet there are a lot of talented programmers who just can't quite 
figure out how best to help or don't realize that this kind of help is 
needed.

Also, even better than a bounty system would probably be a changelog 
file included in the main source distribution that credited bugfixes to 
those who contributed them for the next few releases.

DS




^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2011-08-03  1:56 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-27  1:31 [Bitcoin-development] Seeking advice: Encouraging bug-fixing over new features Gavin Andresen
2011-07-27  6:40 ` John Smith
2011-07-27 11:14   ` Joel Joonatan Kaartinen
2011-07-27 14:20     ` John Smith
2011-07-27 14:28       ` Luke-Jr
2011-07-27 14:42         ` Joel Joonatan Kaartinen
2011-07-27 14:53           ` John Smith
2011-07-27 16:02             ` Douglas Huff
2011-07-27 16:07         ` Rick Wesson
2011-07-27 16:47           ` Matt Corallo
2011-07-27 17:11           ` John Smith
2011-07-27 17:15           ` Joel Joonatan Kaartinen
2011-07-27 22:45             ` Gavin Andresen
2011-07-27 22:54               ` Joel Joonatan Kaartinen
2011-07-27 23:07               ` Matt Corallo
2011-07-28  6:31                 ` John Smith
2011-07-28  0:15               ` Jeff Garzik
2011-07-28 15:37                 ` Caleb James DeLisle
     [not found]       ` <1311811317.72375.YahooMailNeo@web121005.mail.ne1.yahoo.com>
2011-07-28  0:02         ` [Bitcoin-development] Fw: " Amir Taaki
2011-07-30 11:49 ` [Bitcoin-development] " Mike Hearn
2011-07-30 14:06   ` Rick Wesson
2011-07-30 14:07     ` Matt Corallo
2011-08-03  1:41 ` David Schwartz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox