Bugs and a Contest


Hey guys, so I've got these monkeys here staring me in the face and an idea for a contest popped into my head.  Why don't we have a bug hunting contest?  We could give monkey dolls to the top 3 hunters based on score (rather than number of bugs found)

I'd like to do score to even out easy bugs vs. hard bugs found.  So say we had 100 points:

1. 25 points for finding the bug (must be verified as a bug by at least 3 of the 5 main devs)
2. 0-50 points for bug effect (how bad it affects jME)
3. 25 points for also providing the solution.

Something like that.  We could require the bugs be found in the jme package (not jmetest) and maybe jmex as well.

Thoughts?

Cool idea…



I guess the 3+ devs that verify it can each give a score and we'll just average it out?

great idea for a contest that takes us closer to a .11 release…lets do it

Cool.  And sorry that I said 5 main devs, I really meant 6.  Also I figure the bugs can be posted on the tracker and we'll give the scores in the tracker as well.  We can tally scores on the main contest post.

Doesn't sound like fun to participate in that contest - but yeah, why not trying it, the idea of awarding bug hunter is very good. The worst thing that could happen is that fewer people participate than in the last contest :wink:

renanse said:
And sorry that I said 5 main devs, I really meant 6.


No no, I understand what you meant.  :P

I guess it wouldn't be fair for the devs to participate particularly since we (by we I mean me) might be tempted to introduce a rather serious bug just to find it and get points. ;)

should be a forever ongoing contest…find bugs and get status points or monkey dolls s but might be hard to get it as intense as in a deadlined contest

Here's the post I will make in the contest forum.  Please review and comment:


Hello fellow jME users!  It is high time we had a new jME contest.  So this is an announcement about our next upcoming contest.  This contest will be about fame, glory and improving jME for everyone.  What are we doing that will accomplish all of that, you ask?  We are going hunting for bugs.  Every bug you find will earn you glory, provide a fix and you get more glory.  Will you be the ultimate jME hunter?

There will be some fabulous prizes for our top three hunters, more on that later.

The judges for this contest are MojoMonkey, myself, llama, irrisor, MrCoder and DarkFrog.

Here are the rules:

Earning GP:

1. What you are going for here are glory points (GP).  You can get 100GP per bug (well, actually, there is a bit of extra credit that could boost you to 110.)
2. Each bug entry must be submitted via the bug tracker.  You can find the tracker here: https://jme.dev.java.net/servlets/ProjectIssues
3. Once submitted, at least two judges for this contest must approve it as a real bug.  They will do this by adding a note to the bug accepting it as such.  Congrats, you've now earned some GP.  You get 20GP for finding a bug in jme core or jmex and 10GP for jmetest bugs.
4. Approved bugs are then rated by at least two judges (scores are averaged) on a couple of criteria and more GP are handed out (up to 50!):
    a. Description of bug - how well did you test out, describe and provide detail on your bug (0-20GP)
    b. Overall impact - how bad was this bug affecting the code?  (0 - 20GP)
    c. Challenge of finding bug - how hard was it to find this bug?  (0 - 10GP)
5. If you also provide a code fix for your bug, you earn more points.  You can earn up to a total of 30GP here.  Again, at least two judges will weigh in and the scores will be averaged.  Here's the criteria:
    a. Completeness of fix - Does your fix repair the bug while maintaining the original intended functionality?  (0-15GP)
    b. Performance impact of fix - Does your fix still maintain jME standards for near zero object creation and low frame rate impact?  (0-15GP, weighted by 5a)
Bonus fix points:
    If you provide a unit test for the code you are fixing that can both show the error and prove it is fixed once your fix is applied, you can earn an additional 10GP!

Stealing / grabbing GP:

1. You can earn unawarded GP on someone else's bug (or your own).  For example, if someone only earned 5GP for bug fix completeness, there's 10GP remaining that someone can grab part or all of by providing a more complete fix.  Grabbing points is possible in the following categories: 4a, 5a, 5b and the bonus.
2. As with all judge decisions, it is completely up to the judges how many points you will receive in a grab and their decisions are final.

Other rules:

1. Official jME Developers (the judges) and their family members may not participate, sorry.  ;)
2. All bugs and fixes MUST be timestamped between December 1st 12:00am and December31st 11:59 pm GMT or they do not count.  (The contest is being announced now to give you a chance to prepare for it, and this gives the developers some time to finish checking in whatever code they may be currently working on.)
3. All bug reports must be reported against the CVS version of jME code as of the date you post.

Some ideas for bugs are performance bottlenecks, bad math class results, card assumptions (like use of GL functionality without testing for compatibility), bleeding of state values, etc.

The next post in this thread will be used for a running scoreboard.  If you plan to participate, go ahead and announce it in this thread.  Remember once the contest starts (December 1st) to post the actual bugs you find in the bug tracker, not in this thread.

Oh, so what about the prizes, you ask?  To be honest, we are still finalizing some of the prizes, but as of today:

1st place:
  - The forum avatar title "Supreme jME Bug Hunter"
  - jME t-shirt
  - Official jME contest plush monkey

2nd place:
  - The forum avatar title "jME Bug Hunter"
  - jME t-shirt
  - Official jME contest plush monkey

3rd place:
  - The forum avatar title "jME Bug Hunter"
  - jME t-shirt
  - Official jME contest plush monkey

We're looking at some other great prizes as well, so stay tuned!

Looks good and, yes, I agree this is a good idea. As Mr. Coder suggested, a running contest would be cool (perhaps reset the scores every month?). I noticed that 2nd and 3rd place have the same prizes.



We might consider making jme core worth a little bit more than jmex? I.e. Bounding bugs are worth a lot more than a particle bug (IMO).

mojomonk said:
I noticed that 2nd and 3rd place have the same prizes.


Yeah, any ideas on prizes?  Suggestions for the various titles?  If we make this ongoing, maybe you can lose your title if you don't keep participating?  Also, anyone want to pitch in with more prizes?  Perhaps a copy of the latest graphics gems/ game gems book?

mojomonk said:
We might consider making jme core worth a little bit more than jmex? I.e. Bounding bugs are worth a lot more than a particle bug (IMO).


Good idea. maybe jmex = 15?

often prizes are less important than getting on a top list, so that could be an idea after this contest…if we convert it to a running one after that, i suggest we have a bug-hunter list and no prizes(perhaps monkeydolls for exceptional cases :wink: ). people love to hunt for the first place and try to stay there…

Any thoughts on this?



http://www.jmonkeyengine.com/jmeforum/index.php?topic=4150.msg33770#msg33770



I don't see any problems with extending to January if the other participants are cool with it.  What do you guys think?

So, shall we extend to Jan 15?  So far we have 3 bugs entered.  (Only one has been jedge scored so far btw.)

I say, "sure, why the heck not"…sure, why the heck not (see, I told you so)

:wink:

Yes extend it…



I'll take a look at the bugs this weekend.

Can anyone help judge these things, we have half a dozen or so that are waiting for scores.  See issue 233 for a template of the judging card:



https://jme.dev.java.net/issues/show_bug.cgi?id=233

Java.net has been giving me weird login problems for a while now… including with updating from CVS. I guess the contest is over so we should judge them, I'll just post to this thread if I have to.



I don't think there were that many entries though… maybe (in the future?) the contest should run till x amount of bugs is found, rather than a time period?

There were about 7-8 bugs found.  And yeah, a bug limit might have been good.  Ah well.  There's enough for us to have the 3 winners (and 1 or more non-winners) though.  Only 2-3 of the bugs have been judged so far.