And the Annoying Twit of the Month Award Goes to…

And the annoying twit of the month award goes to… this guy, a student at the Ozarks Technical Community College, for his truly legendary effort of generating 38 support emails to us without considering that the problem might be in his own code.

Over the course of just two days, he managed to open five bug reports, the last one, World revolving around me. . ., definitely out of spite. It even involved a thinly veiled threat of badmouthing our product, DrJava. And to be even more annoying, he kept resetting our priority and resolution fields on the tracker to super urgent. And I even installed Windows Vista for him!

And what was the problem? No incompatibility with Vista, no bug in DrJava. When he finally sent his files (on Chris Warrington’s request — thanks), it turned out he was using a modified version of the Georgia Tech multimedia library, and those (probably self-made) modifications happened to cause an infinite recursion. Is anyone surprised he always blew the stack?

He was creating an infinite recursion in his own program. He could have just look at the stack trace:

...
at SimplePicture.getPixel(SimplePicture.java:323)
at SimplePicture.setAllPixelsToAColor(SimplePicture.java:189)
at SimplePicture.(SimplePicture.java:88)
at SimplePicture.(SimplePicture.java:60)
at Pixel.(Pixel.java:36)
at SimplePicture.getPixel(SimplePicture.java:323)
...

In SimplePicture.getPixel method, line 323, he is calling the Pixel constructor. Pixel extends SimplePicture, so when Pixel‘s constructor (line 36) gets called, it first calls the constructor of the superclass, namely the SimplePicture constructor.

The SimplePicture constructor in line 60 calls first delegates to another SimplePicture constructor, and that second SimplePicture constructor calls the setAllPixelsToAColor method in line 88.

Finally, in line 189, setAllPixelsToAColor calls SimplePicture.getPixel, and the whole thing starts over again.

Hopefully he will not file another bug report or discuss this issue any further on our bug tracker. Instead, he should refer his professor to this analysis of his own programming bug and let the professor help him understand his own mistake.

Closed for good. Hopefully.

Share

About Mathias

Software development engineer. Principal developer of DrJava. Recent Ph.D. graduate from the Department of Computer Science at Rice University.
This entry was posted in DrJava, Ramblings. Bookmark the permalink.

2 Responses to And the Annoying Twit of the Month Award Goes to…

Leave a Reply