@PatrickHofman someone found a bug with accepting answers. nicael took it much further and abused it in a way that caused two users in MSE to lose thousands of reputation points.
Tracing route to area51.stackexchange.com [104.16.12.13]
4 17 ms 17 ms 17 ms 0.ge-0-2-0.xr1.sara.xs4all.net [194.109.5.2]
5 17 ms 17 ms 17 ms 80.249.211.140
6 18 ms 18 ms 17 ms 104.16.12.13
This is not much of use because it terminates at CF for me in Amsterdam
2. The rules for bots are the same as for people: if they make a nuisance of themselves, they lose privileges. And the rules for socks then apply to their owners...
@JanDvorak The victims included @Roombatron5000, @Unihedron, ShadowWizard and me. We lost thousands of points. I was reduced to 1 rep. I got most of my rep back now.
@nicael was very sporting as always (even after being suspended), he even tried to help me by suggesting ways via which I could trigger a recalc and get the lost rep back. He didn't rant or write a blog like other suspended users. But this suspension workaround bot and reports thing isn't so graceful IMHO. Thanks nicael for honoring my request and stopping.
@InfiniteRecursion When you have time (and want to) you really should tell me what this "I got 1 rep" thing is all about... Tests gone wrong? Errors in suspending procedures?
@SPArchaeologist He wrote JS commands to trigger accept and unaccept of answers multiple times. Every accept gave us +15 and every unaccept gave us -15. The number of unaccepts were more than the number of accepts, hence draining uni and my rep to 1.
Finally the voting has been completely reversed. It took 2 days and the rep came back in chunks. See my reputation meta.stackexchange.com/users/245167/…
We knew he would stop after some time because it was nicael and we trust him. If someone else uses this exploit, it can lead to bigger problems. This is perhaps the best exploit @nicael exposed in the recent past.
@InfiniteRecursion Allow me to define ethical hacking: Performing penetration test when authorized. Nicael's use of spam requests weren't authorized or well-reasoned, so SE suspended him for that reason.
The Therac-25 was a radiation therapy machine produced by Atomic Energy of Canada Limited (AECL) after the Therac-6 and Therac-20 units (the earlier units had been produced in partnership with CGR of France).
It was involved in at least six accidents between 1985 and 1987, in which patients were given massive overdoses of radiation. Because of concurrent programming errors, it sometimes gave its patients radiation doses that were thousands of times greater than normal, resulting in death or serious injury. These accidents highlighted the dangers of software control of safety-critical systems, and...
> Because of concurrent programming errors, it sometimes gave its patients radiation doses that were thousands of times greater than normal, resulting in death or serious injury.
@rene The discussion was retriggered because users are now helping nicael avert suspension and justifying their actions. Victims speak up in such cases.
I hope SE reduces the rep of the helpers to 1, or suspends them for a week for helping users avert suspension.
@InfiniteRecursion I honestly think that goes too far, mostly because the helpers acknowledge the situation and stopped. After all, the penalty box is used over harsh punishments like account deletion so users gets a chance to recognize what they did wrong and stop doing it during their account vacation, same with what reducing their rep would otherwise do - toss the red light signal, which isn't even effective now that the helpers stopped.
In most cases a formal warning is enough over software restrictions.
Then again, nicael is one who would only be stopped by software restrictions, so I'm not justifying their particular behaviour against the suspension.
@Unihedron That's your opinion, this is mine. I believe nicael has stopped after my request to do so, as for the helpers, they are still busy justifying their actions. I guess I will not discuss this any furthur for now. Really not worth the discussion. :)
Better: write single-threaded code in Haskell, then sprinkle par where appropriate. Worst case you'll only reduce the performance as the runtime tries to realise it shouldn't paralelise despite your suggestions.