Wed, 02 Dec 2009 22:48:14 +0100, Don wrote: > Andrei Alexandrescu wrote: >> Leandro Lucarella wrote: >>> Walter Bright, el 2 de diciembre a las 12:23 me escribiste: >>>> l8night wrote: >>>>> Too many bugs - no way my superiors allow some program with that bug >>>>> list >>>> Here's the gcc bug list with 5,442 open issues: >>>> >>>> http://gcc.gnu.org/bugzilla/buglist.cgi? query_format=specific&order=relevance +desc&bug_status=__open__&product=&content= >>>> >>>> >>>> and the d bug list with 1,403 open issues: >>>> >>>> http://d.puremagic.com/issues/buglist.cgi? query_format=advanced&short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&keywords_type=allwords&keywords=&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Bug +Number&remtype=asdefault&field0-0-0=noop&type0-0-0=noop&value0-0-0= >>>> >>>> >>> I'd like to compare the user base and calculate the bugs/users ratio. >>> I guess GCC's would be orders of magnitude smaller. >> >> I haven't heard of bug/user ratio (but then I know next to nothing >> about such metrics). Probably you want to take the bugs * users >> product. One bug affects more users in a popular product. >> >> Andrei > Interesting question. It'll be some kind of binomial distibution, I > imagine. The more users you have, the higher the fraction of the total > number of bugs that you find. Bug reports ought to follow a logistic > curve: a small number of bugs means that you have very few users, or > that you are Knuth.
You should also keep track of the size of target audience on each platform it supports. If a VAX port has 2 million bugs and x86 version 5, it's not fair to say gcc has thousands of bugs per arch on average. VAX only has a handful of users these days, but x86 has hundreds of millions. What matters to an end user is the amount of bugs on the platform (s)he is on. Some bugs are also more serious than others. Some applications on the shiny leading star of open source desktops, kde 4, can be crashed with less than 10 keypresses on all supported arches because the QA sucks. OTOH if you need 1000 specially hand crafted LOC to trigger a bug in some c++ compiler, that bug has a lot lower visibility. C/C++ compilers like gcc have very little amounts of easily accessible bugs. They have a huge test suite - almost every desktop application is succesfully compiled with them. DMD, on the other hand, has trivial bugs (also in the spec) that affect the end user experience very quickly. For instance you can't tell by looking at the spec what this does: template T(A...) { alias A T; } class B: private Object { T!(int,int) b; } void main() { writefln(B.tupleof.stringof); }