Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

An idea about vigil-ng #24

Open
vi opened this issue Dec 16, 2015 · 6 comments
Open

An idea about vigil-ng #24

vi opened this issue Dec 16, 2015 · 6 comments

Comments

@vi
Copy link

vi commented Dec 16, 2015

The problem of Vigil is that it tries to punish a program. But not a program is a subject of programming, but a programmer.

By tracking (using Git or however) what programmer has implemented a function, it can punish programmers instead (probably in addition to removing the offending function).

It may work with a help of Arduino/RaspberryPi and some external cirtuit.

Being obviously more efficient, it has luxury to also be merciful, so that punishment needn't be lethal.

@munificent
Copy link
Owner

By tracking (using Git or however) what programmer has implemented a function, it can punish programmers instead (probably in addition to removing the offending function).

I like where you're heading with this.

it has luxury to also be merciful, so that punishment needn't be lethal.

Let's not back down now!

@sdboyer
Copy link

sdboyer commented Jan 3, 2016

Let's not back down now!

VERY WELL.

Pursuant to #17, Vigil should punish oathbreakers not merely by deleting the source code, but by committing that change into any source repository that can be found.

If something resembling the offending code is ever seen again, then Vigil shall explore the source history and rewrite commits to un-exist the offender. Naturally, to accomplish this, Vigil must inform a central service about all broken oaths. Even better, such a service can ensure that an oath broken anywhere is an oath broken EVERYWHERE.

In the event that the offending code reappears YET AGAIN - making the oath thrice broken - the central service shall dispatch a drone, outfitted with the necessary...surgical devices, Arduino-driven or otherwise...to the physical location of the programmer. On arrival, this quadcopter paragon of justice can then take the NECESSARY STEPS to ensure the deceitful scrivener can never break an oath again.

@danShumway
Copy link

If something resembling the offending code is ever seen again, then Vigil shall explore the source history and rewrite commits to un-exist the offender.

I'm assuming that by offender you mean the author of that specific commit, not the original oathbreaker?

If programmer "A" has broken an oath, and has learned their lesson, they should continue to live a righteous life ever vigilant not to stray into temptation again. If programmer "B" has repeated the mistake, they should be punished doubly for not learning from their neighbor's previous transgressions. And so on.

In this way Vigil can ensure that each subsequent punishment creates further incentive for other team members to search their hearts and code and purge themselves of dishonest intent.

@sdboyer
Copy link

sdboyer commented Jan 4, 2016

I'm assuming that by offender you mean the author of that specific commit, not the original oathbreaker?

I had actually meant the code, not the author of it. However, sir, you are clearly correct: after all, how could a virtuous disciplinary system truly consider itself virtuous if its punishments do not induce better behavior in onlookers?


Bring them back, I say!

@munificent
Copy link
Owner

Now we're talkin'!

@ghost
Copy link

ghost commented Jun 1, 2017

For those interested on working through the consequences of this, I offer a fork https://github.com/themusicgod1/vigil

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants